As stated in marvell-orion-mdio.txt deleted in 'commit 0781434af811f
("dt-bindings: net: orion-mdio: Convert to JSON schema")' if
'interrupts' property is present, width of 'reg' should be 0x84.
Otherwise, width of 'reg' should be 0x4. Fix 'examples:' and extend it
by second example from marvell-orion-mdio.txt.
Signed-off-by: Michał Grzelak <mig@semihalf.com>
---
.../devicetree/bindings/net/marvell,orion-mdio.yaml | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml b/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml
index 2b2b3f8709fc..d260794e92c5 100644
--- a/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml
+++ b/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml
@@ -47,9 +47,10 @@ unevaluatedProperties: false
examples:
- |
+ // MDIO binding with interrupt
mdio@d0072004 {
compatible = "marvell,orion-mdio";
- reg = <0xd0072004 0x4>;
+ reg = <0xd0072004 0x84>;
#address-cells = <1>;
#size-cells = <0>;
interrupts = <30>;
@@ -62,3 +63,12 @@ examples:
reg = <1>;
};
};
+
+ - |
+ // MDIO binding without interrupt
+ mdio@d0072004 {
+ compatible = "marvell,orion-mdio";
+ reg = <0xd0072004 0x4>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
--
2.34.1
On 27/12/2022 02:05, Michał Grzelak wrote: > As stated in marvell-orion-mdio.txt deleted in 'commit 0781434af811f > ("dt-bindings: net: orion-mdio: Convert to JSON schema")' if Drop '' quotes. BTW, read the original binding to find the answer for your first patch. > 'interrupts' property is present, width of 'reg' should be 0x84. > Otherwise, width of 'reg' should be 0x4. Fix 'examples:' and extend it > by second example from marvell-orion-mdio.txt. The original binding did not say that, unless you mean giving different examples? Examples are not a binding. > > Signed-off-by: Michał Grzelak <mig@semihalf.com> > --- > .../devicetree/bindings/net/marvell,orion-mdio.yaml | 12 +++++++++++- > 1 file changed, 11 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml b/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml > index 2b2b3f8709fc..d260794e92c5 100644 > --- a/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml > +++ b/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml > @@ -47,9 +47,10 @@ unevaluatedProperties: false > > examples: > - | > + // MDIO binding with interrupt > mdio@d0072004 { > compatible = "marvell,orion-mdio"; > - reg = <0xd0072004 0x4>; > + reg = <0xd0072004 0x84>; > #address-cells = <1>; > #size-cells = <0>; > interrupts = <30>; > @@ -62,3 +63,12 @@ examples: > reg = <1>; > }; > }; > + > + - | > + // MDIO binding without interrupt > + mdio@d0072004 { > + compatible = "marvell,orion-mdio"; > + reg = <0xd0072004 0x4>; > + #address-cells = <1>; > + #size-cells = <0>; > + }; Why? The same compatible, the same nodes. No differences. Missing pieces is not a big difference justifying new example. Best regards, Krzysztof
As stated in marvell-orion-mdio.txt deleted in commit 0781434af811f
("dt-bindings: net: orion-mdio: Convert to JSON schema") if
'interrupts' property is present, width of 'reg' should be 0x84.
Otherwise, width of 'reg' should be 0x4. Fix 'examples:' and add
constraints checking whether 'interrupts' property is present
and validate it against fixed values in reg.
Signed-off-by: Michał Grzelak <mig@semihalf.com>
---
Changelog:
v1->v2:
- remove second example
- add 'if:' constraint to 'allOf:'
- move 'allOf:' before 'examples:'
.../bindings/net/marvell,orion-mdio.yaml | 31 ++++++++++++++++---
1 file changed, 27 insertions(+), 4 deletions(-)
diff --git a/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml b/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml
index d2906b4a0f59..381cd8edebed 100644
--- a/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml
+++ b/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml
@@ -16,9 +16,6 @@ description: |
8k has a second unit which provides an interface with the xMDIO bus. This
driver handles these interfaces.
-allOf:
- - $ref: "mdio.yaml#"
-
properties:
compatible:
enum:
@@ -39,13 +36,39 @@ required:
- compatible
- reg
+allOf:
+
+ - $ref: "mdio.yaml#"
+
+ - if:
+ required:
+ - interrupts
+
+ then:
+ properties:
+ reg:
+ items:
+ - items:
+ - $ref: /schemas/types.yaml#/definitions/cell
+ - const: 0x84
+
+ else:
+ properties:
+ reg:
+ items:
+ - items:
+ - $ref: /schemas/types.yaml#/definitions/cell
+ - enum:
+ - 0x4
+ - 0x10
+
unevaluatedProperties: false
examples:
- |
mdio@d0072004 {
compatible = "marvell,orion-mdio";
- reg = <0xd0072004 0x4>;
+ reg = <0xd0072004 0x84>;
#address-cells = <1>;
#size-cells = <0>;
interrupts = <30>;
--
2.34.1
On 28/12/2022 02:54, Michał Grzelak wrote: > As stated in marvell-orion-mdio.txt deleted in commit 0781434af811f > ("dt-bindings: net: orion-mdio: Convert to JSON schema") if > 'interrupts' property is present, width of 'reg' should be 0x84. > Otherwise, width of 'reg' should be 0x4. Fix 'examples:' and add > constraints checking whether 'interrupts' property is present > and validate it against fixed values in reg. > > Signed-off-by: Michał Grzelak <mig@semihalf.com> > --- > Changelog: > v1->v2: > - remove second example > - add 'if:' constraint to 'allOf:' > - move 'allOf:' before 'examples:' > > .../bindings/net/marvell,orion-mdio.yaml | 31 ++++++++++++++++--- > 1 file changed, 27 insertions(+), 4 deletions(-) > > diff --git a/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml b/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml > index d2906b4a0f59..381cd8edebed 100644 > --- a/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml > +++ b/Documentation/devicetree/bindings/net/marvell,orion-mdio.yaml > @@ -16,9 +16,6 @@ description: | > 8k has a second unit which provides an interface with the xMDIO bus. This > driver handles these interfaces. > > -allOf: > - - $ref: "mdio.yaml#" > - > properties: > compatible: > enum: > @@ -39,13 +36,39 @@ required: > - compatible > - reg > > +allOf: > + Drop blank line. > + - $ref: "mdio.yaml#" Drop quotes while moving it. > + > + - if: > + required: > + - interrupts > + > + then: > + properties: > + reg: > + items: > + - items: > + - $ref: /schemas/types.yaml#/definitions/cell > + - const: 0x84 > + > + else: > + properties: > + reg: > + items: > + - items: > + - $ref: /schemas/types.yaml#/definitions/cell > + - enum: > + - 0x4 > + - 0x10 Rest looks good. Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof
© 2016 - 2025 Red Hat, Inc.