diff mbox series

[V2,1/2] dt-bindings: PCI: brcmstb: add BCM4908 binding

Message ID 20201130083223.32594-2-zajec5@gmail.com
State Superseded
Headers show
Series brcmstb: initial work on BCM4908 | expand

Commit Message

Rafał Miłecki Nov. 30, 2020, 8:32 a.m. UTC
From: Rafał Miłecki <rafal@milecki.pl>

BCM4908 is a SoC family with PCIe controller sharing design with the one
for STB. BCM4908 has different power management and memory controller so
few tweaks are required.

PERST# signal on BCM4908 is handled by an external MISC block so it
needs specifying a reset phandle.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
---
 .../bindings/pci/brcm,stb-pcie.yaml           | 30 +++++++++++++++++--
 1 file changed, 28 insertions(+), 2 deletions(-)

Comments

Rob Herring (Arm) Dec. 8, 2020, 11:44 p.m. UTC | #1
On Mon, Nov 30, 2020 at 09:32:22AM +0100, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal@milecki.pl>

> 

> BCM4908 is a SoC family with PCIe controller sharing design with the one

> for STB. BCM4908 has different power management and memory controller so

> few tweaks are required.

> 

> PERST# signal on BCM4908 is handled by an external MISC block so it

> needs specifying a reset phandle.

> 

> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>

> Acked-by: Florian Fainelli <f.fainelli@gmail.com>

> ---

>  .../bindings/pci/brcm,stb-pcie.yaml           | 30 +++++++++++++++++--

>  1 file changed, 28 insertions(+), 2 deletions(-)

> 

> diff --git a/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml b/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml

> index 807694b4f41f..d3ab9e22f97c 100644

> --- a/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml

> +++ b/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml

> @@ -14,6 +14,7 @@ properties:

>      items:

>        - enum:

>            - 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

> @@ -64,8 +65,6 @@ 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"


This should really just be 'maxItems: 1'. 'resets' already has a type.

>  

>    reset-names:

> @@ -98,12 +97,39 @@ required:

>  

>  allOf:

>    - $ref: /schemas/pci/pci-bus.yaml#

> +  - if:

> +      properties:

> +        compatible:

> +          contains:

> +            const: brcm,bcm4908-pcie

> +    then:

> +      properties:

> +        resets:

> +          items:

> +            - description: reset controller handling the PERST# signal

> +

> +        reset-names:

> +          items:

> +            - const: perst

> +

> +      required:

> +        - resets

> +        - reset-names

>    - if:

>        properties:

>          compatible:

>            contains:

>              const: brcm,bcm7216-pcie

>      then:

> +      properties:

> +        resets:

> +          items:

> +            - description: phandle pointing to the RESCAL reset controller

> +

> +        reset-names:

> +          items:

> +            - const: rescal

> +

>        required:

>          - resets

>          - reset-names

> -- 

> 2.26.2

>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml b/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml
index 807694b4f41f..d3ab9e22f97c 100644
--- a/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml
+++ b/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml
@@ -14,6 +14,7 @@  properties:
     items:
       - enum:
           - 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
@@ -64,8 +65,6 @@  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:
@@ -98,12 +97,39 @@  required:
 
 allOf:
   - $ref: /schemas/pci/pci-bus.yaml#
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: brcm,bcm4908-pcie
+    then:
+      properties:
+        resets:
+          items:
+            - description: reset controller handling the PERST# signal
+
+        reset-names:
+          items:
+            - const: perst
+
+      required:
+        - resets
+        - reset-names
   - if:
       properties:
         compatible:
           contains:
             const: brcm,bcm7216-pcie
     then:
+      properties:
+        resets:
+          items:
+            - description: phandle pointing to the RESCAL reset controller
+
+        reset-names:
+          items:
+            - const: rescal
+
       required:
         - resets
         - reset-names