Re: [PATCH v4 01/11] dt-bindings: net: add STM32MP13 compatible in documentation for stm32
From: Christophe ROULLIER
Date: Wed Jun 05 2024 - 05:58:55 EST
On 6/5/24 10:14, Krzysztof Kozlowski wrote:
On 04/06/2024 16:34, Christophe Roullier wrote:
New STM32 SOC have 2 GMACs instances.
GMAC IP version is SNPS 4.20.
Signed-off-by: Christophe Roullier <christophe.roullier@xxxxxxxxxxx>
---
.../devicetree/bindings/net/stm32-dwmac.yaml | 41 +++++++++++++++----
1 file changed, 34 insertions(+), 7 deletions(-)
diff --git a/Documentation/devicetree/bindings/net/stm32-dwmac.yaml b/Documentation/devicetree/bindings/net/stm32-dwmac.yaml
index 7ccf75676b6d5..ecbed9a7aaf6d 100644
--- a/Documentation/devicetree/bindings/net/stm32-dwmac.yaml
+++ b/Documentation/devicetree/bindings/net/stm32-dwmac.yaml
@@ -22,18 +22,17 @@ select:
enum:
- st,stm32-dwmac
- st,stm32mp1-dwmac
+ - st,stm32mp13-dwmac
required:
- compatible
-allOf:
- - $ref: snps,dwmac.yaml#
-
properties:
compatible:
oneOf:
- items:
- enum:
- st,stm32mp1-dwmac
+ - st,stm32mp13-dwmac
- const: snps,dwmac-4.20a
- items:
- enum:
@@ -75,12 +74,15 @@ properties:
st,syscon:
$ref: /schemas/types.yaml#/definitions/phandle-array
items:
- - items:
+ - minItems: 2
+ items:
- description: phandle to the syscon node which encompases the glue register
- description: offset of the control register
+ - description: field to set mask in register
description:
Should be phandle/offset pair. The phandle to the syscon node which
- encompases the glue register, and the offset of the control register
+ encompases the glue register, the offset of the control register and
+ the mask to set bitfield in control register
st,ext-phyclk:
description:
@@ -112,12 +114,37 @@ required:
unevaluatedProperties: false
+allOf:
+ - $ref: snps,dwmac.yaml#
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - st,stm32mp1-dwmac
+ - st,stm32-dwmac
+ then:
+ properties:
+ st,syscon:
+ items:
+ maxItems: 2
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - st,stm32mp13-dwmac
+ then:
+ properties:
+ st,syscon:
+ items:
+ minItems: 3
I don't think this works. You now constrain the first dimension which
had only one item before.
Make your example complete and test it.
Best regards,
Krzysztof
Hi Krzysztof,
"Official" bindings for MP15: st,syscon = <&syscfg 0x4>;
"Official" bindings for MP13: st,syscon = <&syscfg 0x4 0xff0000>; or
st,syscon = <&syscfg 0x4 0xff000000>;
If I execute make dt_binding_check
DT_SCHEMA_FILES=Documentation/devicetree/bindings/net/stm32-dwmac.yaml with:
For MP15: st,syscon = <&syscfg>;
=>bindings/net/stm32-dwmac.example.dtb: ethernet@40027000: st,syscon:0:
[4294967295] is too short
For MP15: st,syscon = <&syscfg 0x4 0xff0000>;
=>devicetree/bindings/net/stm32-dwmac.example.dtb: ethernet@40027000:
st,syscon:0: [4294967295, 4, 16711680] is too long
For MP13: st,syscon = <&syscfg 0x4>; =>
devicetree/bindings/net/stm32-dwmac.example.dtb: ethernet@5800a000:
st,syscon:0: [4294967295, 4] is too short
For MP13: st,syscon = <&syscfg 0x4 0xff0000 0xff>; =>
devicetree/bindings/net/stm32-dwmac.example.dtb: ethernet@5800a000:
st,syscon:0: [4294967295, 4, 16711680, 255] is too long
So it is seems good :-)