On Mon, 07 Nov 2022 23:49:24 +0300, Serge Semin wrote: > Even though there is a more-or-less limited set of the CSR spaces can be > defined for each DW PCIe controller the generic DT-schema currently > doesn't specify much limitations on the reg-space names used for one or > another range. In order to prevent the vendor-specific controller schemas > further deviation from the generic interface let's fix that by introducing > the reg-names definition in the common DW PCIe DT-schemas and preserving > the generic "reg" and "reg-names" properties in there. New DW PCIe device > DT-bindings are encouraged to use the generic set of the CSR spaces > defined in the generic DW PCIe RP/EP DT-bindings, while the already > available vendor-specific DT-bindings can still apple the common > DT-schemas. > > Note the number of reg/reg-names items need to be changed in the DW PCIe > EP DT-schema since aside with the "dbi" CSRs space these arrays can have > "dbi2", "addr_space", "atu", etc ranges. > > Also note since there are DW PCIe-based vendor-specific DT-bindings with > the custom names assigned to the same CSR resources we have no much choice > but to add them to the generic DT-schemas in order to have the schemas > being applicable for such devices. These names are marked as > vendor-specific and should be avoided being used in new bindings in favor > of the generic names. > > Signed-off-by: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx> > > --- > > Changelog v3: > - This is a new patch unpinned from the next one: > https://lore.kernel.org/linux-pci/20220503214638.1895-2-Sergey.Semin@xxxxxxxxxxxxxxxxxxxx/ > by the Rob' request. (@Rob) > - Split up reg-names in the same way as the interrupt-names: common, > Root Port and Endpoint specific names. (@Rob) > - Drop synonymous from the names list since the device schemas create > their own enumerations anyway. > > Changelog v5: > - Add platform-specific reg names, but mark them as deprecated. > > Changelog v6: > - Move the common reg-names definitions to the RP/EP schemas. Thus drop > the 'definitions' property. (@Rob) > - Drop the 'deprecated' keywords from the vendor-specific names. (@Rob) > --- > .../bindings/pci/snps,dw-pcie-common.yaml | 22 +++++ > .../bindings/pci/snps,dw-pcie-ep.yaml | 82 +++++++++++++++++-- > .../devicetree/bindings/pci/snps,dw-pcie.yaml | 78 ++++++++++++++++-- > 3 files changed, 169 insertions(+), 13 deletions(-) > Reviewed-by: Rob Herring <robh@xxxxxxxxxx>