On 03/07/2024 20:02, Jim Quinlan wrote: > - Update maintainer; Nicolas hasn't been active and it > makes more sense to have a Broadcom maintainer > - Add a driver compatible string for the new STB SOC 7712 You meant device? Bindings are for hardware. > - Add two new resets for the 7712: "bridge", for the > the bridge between the PCIe core and the memory bus; > "swinit", the PCIe core reset. > - Order the compatible strings alphabetically > - Restructure the reset controllers so that the definitions > appear first before any rules that govern them. Please split cleanups from new device support. > > Signed-off-by: Jim Quinlan <james.quinlan@xxxxxxxxxxxx> > --- > .../bindings/pci/brcm,stb-pcie.yaml | 44 +++++++++++++++---- > 1 file changed, 36 insertions(+), 8 deletions(-) > > diff --git a/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml b/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml > index 11f8ea33240c..a070f35d28d7 100644 > --- a/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml > +++ b/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml > @@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml# > title: Brcmstb PCIe Host Controller > > maintainers: > - - Nicolas Saenz Julienne <nsaenzjulienne@xxxxxxx> > + - Jim Quinlan <james.quinlan@xxxxxxxxxxxx> > > properties: > compatible: > @@ -16,11 +16,12 @@ properties: > - brcm,bcm2711-pcie # The Raspberry Pi 4 > - brcm,bcm4908-pcie > - brcm,bcm7211-pcie # Broadcom STB version of RPi4 > - - brcm,bcm7278-pcie # Broadcom 7278 Arm > - brcm,bcm7216-pcie # Broadcom 7216 Arm > - - brcm,bcm7445-pcie # Broadcom 7445 Arm > + - brcm,bcm7278-pcie # Broadcom 7278 Arm > - brcm,bcm7425-pcie # Broadcom 7425 MIPs > - brcm,bcm7435-pcie # Broadcom 7435 MIPs > + - brcm,bcm7445-pcie # Broadcom 7445 Arm > + - brcm,bcm7712-pcie # STB sibling SOC of Raspberry Pi 5 > > reg: > maxItems: 1 > @@ -95,6 +96,20 @@ properties: > minItems: 1 > maxItems: 3 > > + resets: > + items: > + - description: reset for phy calibration > + - description: reset for PCIe/CPU bus bridge > + - description: reset for soft PCIe core reset > + - description: reset for PERST# PCIe signal This won't work and I doubt you tested your code. You miss minItems. > + > + reset-names: > + items: > + - const: rescal > + - const: bridge > + - const: swinit > + - const: perst This does not match what you have in conditional, so just keep min and max Items here. > + > required: > - compatible > - reg > @@ -118,13 +133,10 @@ allOf: > then: > properties: > resets: > - items: > - - description: reset controller handling the PERST# signal > - > + minItems: 1 maxItems instead. Why three resets should be valid? > reset-names: > items: > - const: perst > - > required: > - resets > - reset-names > @@ -136,12 +148,28 @@ allOf: > then: > properties: > resets: > + minItems: 1 > + reset-names: > items: > - - description: phandle pointing to the RESCAL reset controller > + - const: rescal > + required: > + - resets > + - reset-names Why? > + - if: > + properties: > + compatible: > + contains: > + const: brcm,bcm7712-pcie > + then: > + properties: > + resets: > + minItems: 3 Again, you do not have 4 items here. > > reset-names: > items: > - const: rescal > + - const: bridge > + - const: swinit > > required: > - resets Best regards, Krzysztof