[PATCH v3 1/6] dt-bindings: PCI: dwc: rockchip: Add mandatory atu reg

Heiko Stübner heiko at sntech.de
Fri Oct 27 10:07:00 PDT 2023


Hi Niklas,

Am Freitag, 27. Oktober 2023, 18:14:32 CEST schrieb Niklas Cassel:
> On Fri, Oct 27, 2023 at 10:58:28AM -0500, Rob Herring wrote:
> > On Fri, Oct 27, 2023 at 9:56 AM Niklas Cassel <nks at flawful.org> wrote:
> > >
> > > From: Niklas Cassel <niklas.cassel at wdc.com>
> > >
> > > Even though rockchip-dw-pcie.yaml inherits snps,dw-pcie.yaml
> > > using:
> > >
> > > allOf:
> > >   - $ref: /schemas/pci/snps,dw-pcie.yaml#
> > >
> > > and snps,dw-pcie.yaml does have the atu reg defined, in order to be
> > > able to use this reg, while still making sure 'make CHECK_DTBS=y'
> > > pass, we need to add this reg to rockchip-dw-pcie.yaml.
> > >
> > > All compatible strings (rockchip,rk3568-pcie and rockchip,rk3588-pcie)
> > > should have this reg.
> > >
> > > The regs in the example are updated to actually match pcie3x2 on rk3568.
> > 
> > Breaking compatibility on these platforms is okay because ...?
> 
> I don't follow, could you please elaborate?

you're adding the atu reg unconditionally as required element.

Newer kernel versions (strongly) _should_ work with older devicetrees.
So a kernel with that change should also work with a dtb build from the
old style.

DTBs are essentially part of the device firmware, so while some devices
can update theirs easily, you can't really require a dtb update.

I guess you could something like:

   reg-names:
     oneOf:
       - deprecated: true
         items:
         - const: dbi
         - const: apb
         - const: config
       - items:
         - const: dbi
         - const: apb
         - const: config
         - const: atu
 
(may not be accurate and to spec yet)





More information about the linux-arm-kernel mailing list