On 10/22/20 5:37 AM, Vladimir Oltean wrote: > On Thu, Oct 22, 2020 at 12:54:52PM +0200, Kurt Kanzenbach wrote: >> On Wed Oct 21 2020, Florian Fainelli wrote: >>> On 10/21/2020 5:16 PM, Vladimir Oltean wrote: >>>> On Wed, Oct 21, 2020 at 08:52:01AM +0200, Kurt Kanzenbach wrote: >>>>> On Mon Oct 19 2020, Christian Eggers wrote: >>>>> The node names should be switch. See dsa.yaml. >>>>> >>>>>> + compatible = "microchip,ksz9477"; >>>>>> + reg = <0>; >>>>>> + reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>; >>>>>> + >>>>>> + spi-max-frequency = <44000000>; >>>>>> + spi-cpha; >>>>>> + spi-cpol; >>>>>> + >>>>>> + ports { >>>>> >>>>> ethernet-ports are preferred. >>>> >>>> This is backwards to me, instead of an 'ethernet-switch' with 'ports', >>>> we have a 'switch' with 'ethernet-ports'. Whatever. >>> >>> The rationale AFAIR was that dual Ethernet port controllers like TI's >>> CPSW needed to describe each port as a pseudo Ethernet MAC and using >>> 'ethernet-ports' as a contained allowed to disambiguate with the 'ports' >>> container used in display subsystem descriptions. >> >> Yes, that was the outcome of previous discussions. > > And why would that disambiguation be necessary in the first place? My > understanding is that the whole node path provides the necessary > namespacing to avoid the confusion. For example, the 'reg' property > means 100 things to 100 buses, and no one has an issue with that. I am > not expecting an Ethernet switch to have an HDMI port, I might be wrong > though. The disambiguation is more of a hint given to DT analysis tools to validate a given node with little to no knowledge of the containing node. I don't really have a dog in the fight here. -- Florian