diff mbox series

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

Message ID 20201130083223.32594-2-zajec5@gmail.com (mailing list archive)
State Superseded, archived
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