This series adds a driver for the MDIO controller on the RTL9300 family of devices. The controller is a little unique in that we can't access the SMI interfaces directly. This means we need to use the hardware description from the DTS to compute a mapping of switch port to mdio bus/address. Note that the dt-bindings: mfd patch is dependent on the dt-bindings: net patch. It looks as if we're off Google's naughty list. It's kind of hard to tell. This iteration makes use of the ethernet-ports property to figure out the mapping from port to PHY which removes the need for any extar vendor specific properties. I've sent this as net-next. The first 4 patches could probably come in via net-next if the mfd maintainers are happy with that. Not sure about the mips ones. I've included them because the updated bindings will start complaining about missing properties on the one in-tree dts file. Chris Packham (6): dt-bindings: mfd: Add switch to RTL9300 dt-bindings: net: Add Realtek MDIO controller dt-bindings: mfd: Add MDIO interface to rtl9301-switch net: mdio: Add RTL9300 MDIO driver mips: dts: realtek: Add MDIO controller mips: dts: cameo-rtl9302c: Add switch block .../bindings/mfd/realtek,rtl9301-switch.yaml | 47 +- .../bindings/net/realtek,rtl9301-mdio.yaml | 86 ++++ .../cameo-rtl9302c-2x-rtl8224-2xge.dts | 96 ++++ arch/mips/boot/dts/realtek/rtl930x.dtsi | 33 ++ drivers/net/mdio/Kconfig | 7 + drivers/net/mdio/Makefile | 1 + drivers/net/mdio/mdio-realtek-rtl9300.c | 472 ++++++++++++++++++ 7 files changed, 741 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/net/realtek,rtl9301-mdio.yaml create mode 100644 drivers/net/mdio/mdio-realtek-rtl9300.c -- 2.48.1