Re: [PATCH 2/4] dt-bindings: net: dsa: Add SoC-e switch IP and DSA bindings

Krzysztof Kozlowski <[email protected]> Tue, 4 Aug 2026 08:25:20 +0200
Newsgroups gmane.linux.drivers.devicetree,gmane.linux.kernel,gmane.linux.network
Message-ID <[email protected]>
On 03/08/2026 18:15, Vasilij Strassheim wrote:
> On Thu, 2026-07-30 at 10:56 +0200, Krzysztof Kozlowski wrote:
>> On Wed, Jul 29, 2026 at 06:36:55PM +0200, Vasilij Strassheim wrote:
>>> Add DT schema documentation for SoC-e FPGA switch devices.
>>> The binding is split into:
>>>  - a switch IP node describing the MMIO register block
>>>  - a DSA MDIO node describing the DSA-facing switch instance
>>> Both nodes are linked through the soce,switch-ip phandle.
>>>
>>> Signed-off-by: Vasilij Strassheim <[email protected]>
>>> ---
>>>  .../bindings/net/dsa/soce,switch-dsa.yaml          | 195 +++++++++++++++++++++
>>>  .../bindings/net/dsa/soce,switch-ip.yaml           |  54 ++++++
>>>  2 files changed, 249 insertions(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/net/dsa/soce,switch-dsa.yaml b/Documentation/devicetree/bindings/net/dsa/soce,switch-dsa.yaml
>>> new file mode 100644
>>> index 000000000000..a04e2838d14e
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/net/dsa/soce,switch-dsa.yaml
>>> @@ -0,0 +1,195 @@
>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/net/dsa/soce,switch-dsa.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: SoC-e DSA switch MDIO device
>>> +
>>> +maintainers:
>>> +  - SoC-e <info-D6cG/[email protected]>
>>
>> Nope, as explained more than once group boxes are not accepted.
> 
> That rule makes actually sense. I just saw [email protected] in
> several places and thought it wasn't completely forbidden here.
> Will change it to my address in the next version.
> 
>>
>>> +
>>> +description: |
>>> +  This node is the MDIO-bus device entry for the SoC-e DSA switch driver.
>>
>> Node is not for a driver. Explain the hardware, not drivers, not DTS.
> 
> Got it, will change it for the next version.
> 
>>
>>
>>> +  It is a lightweight configuration node that lives on the MDIO bus of the
>>> +  SoC Ethernet controller acting as the DSA conduit (CPU port).
>>> +
>>> +  The switch hardware itself (MMIO register interface) is a separate IP core
>>> +  described by a companion node with one of the SoC-e compatible strings,
>>> +  for example:
>>> +    - soce,mrs-<version>
>>
>> How is this relevant here? do you describe this compatible?
> 
> I will completely rework the documentation to reflect other code changes and
> take the comment into account.
>>
>>> +  See the consolidated IP-core binding:
>>> +    - Documentation/devicetree/bindings/net/dsa/soce,switch-ip.yaml
>>> +  The two nodes are linked via the "soce,switch-ip" phandle property.
>>> +
>>> +  Port sub-nodes follow the DSA port binding documented in dsa-port.yaml.
>>> +  User ports should reference PHY nodes through "phy-handle". These PHY nodes
>>> +  live under the optional "mdio" child node of the switch and are exposed on
>>> +  the switch's synthetic DSA user MDIO bus.
>>> +
>>> +  The PHY-specific properties "soce,mdio-output" and "soce,phy-addr" describe
>>> +  the MDIO bus index and hardware PHY address used by the on-chip MDIO master
>>> +  of the switch IP core.
>>> +
>>> +properties:
>>> +  '#address-cells':
>>> +    const: 1
>>> +
>>> +  '#size-cells':
>>> +    const: 0
>>
>> You need to follow DTS coding style.
> 
> I will check and correct this.
> 
>>
>>> +
>>> +  compatible:
>>> +    const: soce,switch-dsa
>>
>> Way too generic. I understand that SoCe will NEVER - and you certify
>> that - develop a second, different "switch-dsa" model and they call this
>> one like this?
> 
> It is intentionally generic to cover the common basics of all variants and
> configurations of the synthesized switch in DSA.

Compatible must not be generic, as expressed hundreds times and
documented in writing bindings.

> I'm not sure what kind of guarantee I'm supposed to provide here regarding
> SoCe. If switch-dsa is already mainline in the future, then a different
> compatible will be needed for incompatible new models.

I also don't know what guarantee you must provide, it's you who wants to
add an exception.

...

>>> +
>>> +examples:
>>> +  - |
>>> +    switch_ip: switch@80020000 {
>>
>> ethernet-switch
>>
>> And drop unused label.
> 
> I will adjust it.
> 
>>
>> Considering this wasn't tested I should not even give here review...
>>
> Thank you very much for the review!
> I'm not sure what you mean by not tested. I ran make dt_binding_check` few
> times, but forgot to do it after making the latest adjustments.

Untested as it has an obvious failure as reported by bot.


Best regards,
Krzysztof