On Mon, Jun 20, 2022 at 05:02:22PM +0200, Marcin Wojtas wrote: > Describe the Distributed Switch Architecture (DSA) - compliant > MDIO devices. In ACPI world they are represented as children > of the MDIO busses, which are responsible for their enumeration > based on the standard _ADR fields and description in _DSD objects > under device properties UUID [1]. I would say this is too limiting. In the DT world, they are not limited to MDIO children. They can be I2C children, SPI children etc. There are plenty of I2C switches and SPI switches. This is actually something we got wrong with the first DT binding. We simply translated the platform data in DT, and at that time, there was only MDIO switches supported. That was a real blocker to I2C, SPI and MMIO devices until we discarded the DT binding and had a second go. DSA switches are just devices on a bus, any sort of bus. Look at Documentation/devicetree/binding/net/dsa/dsa.yaml. There is no reference to MDIO. I would expect the same with ACPI. Somehow the bus enumerates and instantiates a device on the bus. The device then registers itself with the DSA core. The DSA core does not care what sort of bus it is on, that is the drivers problem. Andrew