Re: [PATCH v3 net-next 12/14] dt-bindings: net: dsa: ocelot: add ocelot-ext documentation

Colin Foster
2023-01-20T18:17:03Z

On Thu, Jan 19, 2023 at 10:21:13PM +0200, Vladimir Oltean wrote:
> Hi Colin,
>
> On Wed, Jan 18, 2023 at 12:28:36PM -1000, Colin Foster wrote:
>
> - ethernet-ports:
> - type: object
> -
> - properties:
> - '#address-cells':
> - const: 1
> - '#size-cells':
> - const: 0
> -
> - additionalProperties: false
> -
> - patternProperties:
> - "^port@[0-9a-f]+$":
> -
> - $ref: ethernet-switch-port.yaml#
> -
> - unevaluatedProperties: false
> -

I think removing this entire section was the one thing I didn't try. And
sure enough - it seems to work exactly as I'd hope! Thanks!

Next week I'll do some verification and will hopefully get the next
patch set sent out.

> required:
> - compatible
> - reg
> - reg-names
> - - interrupts
> - - interrupt-names
> - ethernet-ports
>
> -additionalProperties: false
> +unevaluatedProperties: false
>
> examples:
> + # VSC7514 (Switchdev)
> - |
> switch@1010000 {
> compatible = "mscc,vsc7514-switch";
> @@ -154,6 +175,7 @@ examples:
> reg = <0>;
> phy-handle = <&phy0>;
> phy-mode = "internal";
> + ethernet = <&mac_sw>; # fails validation as expected
> };
> port1: port@1 {
> reg = <1>;
> @@ -162,5 +184,51 @@ examples:
> };
> };
> };
> + # VSC7512 (DSA)
> + - |
> + ethernet-switch@1{
> + compatible = "mscc,vsc7512-switch";
> + reg = <0x71010000 0x10000>,
> + <0x71030000 0x10000>,
> + <0x71080000 0x100>,
> + <0x710e0000 0x10000>,
> + <0x711e0000 0x100>,
> + <0x711f0000 0x100>,
> + <0x71200000 0x100>,
> + <0x71210000 0x100>,
> + <0x71220000 0x100>,
> + <0x71230000 0x100>,
> + <0x71240000 0x100>,
> + <0x71250000 0x100>,
> + <0x71260000 0x100>,
> + <0x71270000 0x100>,
> + <0x71280000 0x100>,
> + <0x71800000 0x80000>,
> + <0x71880000 0x10000>,
> + <0x71040000 0x10000>,
> + <0x71050000 0x10000>,
> + <0x71060000 0x10000>;
> + reg-names = "sys", "rew", "qs", "ptp", "port0", "port1",
> + "port2", "port3", "port4", "port5", "port6",
> + "port7", "port8", "port9", "port10", "qsys",
> + "ana", "s0", "s1", "s2";
> +
> + ethernet-ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> + ethernet = <&mac_sw>;
> + phy-handle = <&phy0>;
> + phy-mode = "internal";
> + };
> + port@1 {
> + reg = <1>;
> + phy-handle = <&phy1>;
> + phy-mode = "internal";
> + };
> + };
> + };
>
> ...
>
> Of course this is a completely uneducated attempt on my part.