dt-bindings: net: mediatek,net: add missing mediatek,mt7621-eth

Message ID ZIUSZR6I3Ki6mZRO@makrotopia.org
State New
Headers
Series dt-bindings: net: mediatek,net: add missing mediatek,mt7621-eth |

Commit Message

Daniel Golle June 11, 2023, 12:16 a.m. UTC
  Document the Ethernet controller found in the MediaTek MT7621 MIPS SoC
family which is supported by the mtk_eth_soc driver.

Fixes: 889bcbdeee57 ("net: ethernet: mediatek: support MT7621 SoC ethernet hardware")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
---
 .../devicetree/bindings/net/mediatek,net.yaml | 27 ++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)
  

Comments

Arınç ÜNAL June 11, 2023, 7:12 a.m. UTC | #1
Thanks for working on this.

On 11.06.2023 03:16, Daniel Golle wrote:
> Document the Ethernet controller found in the MediaTek MT7621 MIPS SoC
> family which is supported by the mtk_eth_soc driver.
> 
> Fixes: 889bcbdeee57 ("net: ethernet: mediatek: support MT7621 SoC ethernet hardware")
> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> ---
>   .../devicetree/bindings/net/mediatek,net.yaml | 27 ++++++++++++++++++-
>   1 file changed, 26 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/net/mediatek,net.yaml b/Documentation/devicetree/bindings/net/mediatek,net.yaml
> index acb2b2ac4fe1e..38aa3d97ee234 100644
> --- a/Documentation/devicetree/bindings/net/mediatek,net.yaml
> +++ b/Documentation/devicetree/bindings/net/mediatek,net.yaml
> @@ -19,6 +19,7 @@ properties:
>       enum:
>         - mediatek,mt2701-eth
>         - mediatek,mt7623-eth
> +      - mediatek,mt7621-eth
>         - mediatek,mt7622-eth
>         - mediatek,mt7629-eth
>         - mediatek,mt7981-eth
> @@ -32,7 +33,7 @@ properties:
>     clock-names: true
>   
>     interrupts:
> -    minItems: 3
> +    minItems: 1

I suppose this is to allow a single item for mediatek,mt7621-eth?

>       maxItems: 4
>   
>     power-domains:
> @@ -131,6 +132,30 @@ allOf:
>   
>           mediatek,wed-pcie: false
>   
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - mediatek,mt7621-eth
> +    then:
> +      properties:
> +        interrupts:
> +          maxItems: 1
> +
> +        clocks:
> +          minItems: 2
> +          maxItems: 2
> +
> +        clock-names:
> +          items:
> +            - const: ethif
> +            - const: fe
> +
> +        mediatek,wed: false
> +
> +        mediatek,wed-pcie: false
> +
>     - if:
>         properties:
>           compatible:

I'm getting warnings with this patch applied:

arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dtb: ethernet@1e100000: 
resets: [[2, 6], [2, 23]] is too short
arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dtb: ethernet@1e100000: 
reset-names:1: 'gmac' was expected
arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dtb: ethernet@1e100000: 
reset-names: ['fe', 'eth'] is too short
arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dtb: ethernet@1e100000: 
clock-names:0: 'ethif' was expected
arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dtb: ethernet@1e100000: 
clock-names:1: 'fe' was expected
arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dtb: ethernet@1e100000: 
mac@0: 'fixed-link' does not match any of the regexes: 'pinctrl-[0-9]+'
arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dtb: ethernet@1e100000: 
mac@0: 'phy-handle' is a required property
arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dtb: ethernet@1e100000: 
mac@1: 'fixed-link' does not match any of the regexes: 'pinctrl-[0-9]+'
arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dtb: ethernet@1e100000: 
mac@1: 'phy-handle' is a required property
arch/mips/boot/dts/ralink/mt7621-gnubee-gb-pc1.dtb: ethernet@1e100000: 
Unevaluated properties are not allowed ('reset-names', 'resets' were 
unexpected)

I see the bindings for the MT7621 SoC are a bit different than the 
bindings for the current SoCs on this schema, interrupts, phy-handle non 
requirement, resets, reset-names, etc. Maybe we should overwrite things 
under the check for mediatek,mt7621-eth.

I'm not very confident all the bindings for mediatek,mt7621-eth on 
mt7621.dtsi are correct either.

Arınç
  

Patch

diff --git a/Documentation/devicetree/bindings/net/mediatek,net.yaml b/Documentation/devicetree/bindings/net/mediatek,net.yaml
index acb2b2ac4fe1e..38aa3d97ee234 100644
--- a/Documentation/devicetree/bindings/net/mediatek,net.yaml
+++ b/Documentation/devicetree/bindings/net/mediatek,net.yaml
@@ -19,6 +19,7 @@  properties:
     enum:
       - mediatek,mt2701-eth
       - mediatek,mt7623-eth
+      - mediatek,mt7621-eth
       - mediatek,mt7622-eth
       - mediatek,mt7629-eth
       - mediatek,mt7981-eth
@@ -32,7 +33,7 @@  properties:
   clock-names: true
 
   interrupts:
-    minItems: 3
+    minItems: 1
     maxItems: 4
 
   power-domains:
@@ -131,6 +132,30 @@  allOf:
 
         mediatek,wed-pcie: false
 
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - mediatek,mt7621-eth
+    then:
+      properties:
+        interrupts:
+          maxItems: 1
+
+        clocks:
+          minItems: 2
+          maxItems: 2
+
+        clock-names:
+          items:
+            - const: ethif
+            - const: fe
+
+        mediatek,wed: false
+
+        mediatek,wed-pcie: false
+
   - if:
       properties:
         compatible: