Re: [PATCH v3 1/3] dt-bindings: net: marvell,pp2: convert to json-schema

From: Krzysztof Kozlowski
Date: Wed Oct 12 2022 - 10:34:53 EST


On 11/10/2022 19:01, Marcin Wojtas wrote:
,
>>
>> ethernet@
>> {
>> ethernet-port@0
>> {
>> }
>> ethernet-port@1
>> {
>> }
>> }
>>
>> What do you recommend?
>>
>
> I moved the ethernet-controller.yaml reference to under the subnode
> (this allowed me to remove phy and phy-mode description)) and it
> doesn't complain about the node naming. Please let me know if below
> would be acceptable.
>
> --- a/Documentation/devicetree/bindings/net/marvell,pp2.yaml
> +++ b/Documentation/devicetree/bindings/net/marvell,pp2.yaml
> @@ -61,7 +61,11 @@ patternProperties:
> type: object
> description: subnode for each ethernet port.
>
> + allOf:

Skip the allOf, just $ref is enough.

> + - $ref: ethernet-controller.yaml#
> +
> properties:
> interrupts:
> minItems: 1
> maxItems: 10
> @@ -95,19 +99,11 @@ patternProperties:
>
> port-id:
> $ref: /schemas/types.yaml#/definitions/uint32
> + deprecated: true
> description: >
> ID of the port from the MAC point of view.
> Legacy binding for backward compatibility.
>
> - phy:
> - $ref: /schemas/types.yaml#/definitions/phandle
> - description: >
> - a phandle to a phy node defining the PHY address
> - (as the reg property, a single integer).
> -
> - phy-mode:
> - $ref: ethernet-controller.yaml#/properties/phy-mode
> -
> marvell,loopback:
> $ref: /schemas/types.yaml#/definitions/flag
> description: port is loopback mode.
> @@ -132,7 +128,6 @@ required:
> - clock-names
>
> allOf:
> - - $ref: ethernet-controller.yaml#
> - if:
>

Yes, except:

1. top-level (so with no indentation) unevaluatedProperties: false
should be now additionalProperties: false.
2. You need unevaluatedProperties here:

+ type: object
+ description: subnode for each ethernet port.
+ $ref: ethernet-controller.yaml#
+ unevaluatedProperties: false

Best regards,
Krzysztof