On Saturday 13 November 2021 12:31:06 Pali Rohár wrote: > On Friday 12 November 2021 14:56:26 Rob Herring wrote: > > The only > > versioning we have ATM is the kernel requires a minimum version of > > dtschema (which we'll have to bump for all this). > > > > We could have something like: > > > > old-pci-bridge.yaml: > > allOf: > > - $ref: pci-host-bridge.yaml# > > - $ref: pcie-port.yaml# > > > > new-pci-bridge.yaml: > > allOf: > > - $ref: pci-host-bridge.yaml# > > properties: > > pci@0: > > $ref: pcie-port.yaml# > > > > And then both of the above schemas will have $ref to a pci-bridge.yaml > > schema which should be most of pci-bus.yaml. linux,pci-domain and > > dma-ranges? go to pci-host-bridge.yaml. max-link-speed, num-lanes, > > reset-gpios, slot-power-limit-milliwatt, and the pending supply > > additions (Broadcom) go to pcie-port.yaml. > > This looks like a nice solution. > > I would propose just one other thing: Do not allow new kernel drivers > to use old-pci-bridge.yaml schema, so new drivers would not use old > "deprecated" APIs... > > So should I prepare some schemas and send it for review via github pull > request mechanism? (I'm not sure how is that github project related to > kernel DTS bindings and how is reviewing on it going...) I prepared something for discussion: https://github.com/devicetree-org/dt-schema/pull/64