On Fri, Jun 05, 2020 at 05:26:43PM -0400, Jim Quinlan wrote: > From: Jim Quinlan <jquinlan@xxxxxxxxxxxx> > > - Add compatible strings for three more Broadcom STB chips: 7278, 7216, > 7211 (STB version of RPi4). > - add new property 'brcm,scb-sizes' > - add new property 'resets' > - add new property 'reset-names' for 7216 only > - allow 'ranges' and 'dma-ranges' to have more than one item and update > the example to show this. > > Signed-off-by: Jim Quinlan <jquinlan@xxxxxxxxxxxx> > --- > .../bindings/pci/brcm,stb-pcie.yaml | 58 ++++++++++++++++--- > 1 file changed, 51 insertions(+), 7 deletions(-) > > diff --git a/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml b/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml > index 8680a0f86c5a..4a012d77513f 100644 > --- a/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml > +++ b/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml > @@ -9,12 +9,15 @@ title: Brcmstb PCIe Host Controller Device Tree Bindings > maintainers: > - Nicolas Saenz Julienne <nsaenzjulienne@xxxxxxx> > > -allOf: > - - $ref: /schemas/pci/pci-bus.yaml# > - > properties: > compatible: > - const: brcm,bcm2711-pcie # The Raspberry Pi 4 > + items: > + - enum: > + - brcm,bcm2711-pcie # The Raspberry Pi 4 > + - 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 > > reg: > maxItems: 1 > @@ -34,10 +37,12 @@ properties: > - const: msi > > ranges: > - maxItems: 1 > + minItems: 1 > + maxItems: 4 > > dma-ranges: > - maxItems: 1 > + minItems: 1 > + maxItems: 6 > > clocks: > maxItems: 1 > @@ -58,8 +63,33 @@ properties: > > aspm-no-l0s: true > > + resets: > + description: for "brcm,bcm7216-pcie", must be a valid reset > + phandle pointing to the RESCAL reset controller provider node. > + $ref: "/schemas/types.yaml#/definitions/phandle" > + > + reset-names: > + items: > + - const: rescal > + > + brcm,scb-sizes: > + description: u64 giving the 64bit PCIe memory > + viewport size of a memory controller. There may be up to > + three controllers, and each size must be a power of two > + with a size greater or equal to the amount of memory the > + controller supports. Note that each memory controller > + may have two component regions -- base and extended -- so > + this information cannot be deduced from the dma-ranges. > + > + allOf: > + - $ref: /schemas/types.yaml#/definitions/uint64-array > + - items: > + minItems: 1 > + maxItems: 3 This can be (dropping 'allOf'): $ref: /schemas/types.yaml#/definitions/uint64-array minItems: 1 maxItems: 3 With that, Reviewed-by: Rob Herring <robh@xxxxxxxxxx>