From: David Miller <davem@xxxxxxxxxxxxx> Date: Tue, 30 Jul 2019 09:44:36 -0700 (PDT) > From: Claudiu Manoil <claudiu.manoil@xxxxxxx> > Date: Tue, 30 Jul 2019 12:45:15 +0300 > >> First patch fixes a sparse issue and cleans up accessors to avoid >> casting to __iomem. >> Second patch just registers the PCIe endpoint device containing >> the MDIO registers as a standalone MDIO bus driver, to allow >> an alternative way to control the MDIO bus. The same code used >> by the ENETC ports (eth controllers) to manage MDIO via local >> registers applies and is reused. >> >> Bindings are provided for the new MDIO node, similarly to ENETC >> port nodes bindings. >> >> Last patch enables the ENETC port 1 and its RGMII PHY on the >> LS1028A QDS board, where the MDIO muxing configuration relies >> on the MDIO support provided in the first patch. > ... > > Series applied, thank you. Actually this doesn't compile, I had to revert: In file included from ./include/linux/phy.h:20, from ./include/linux/of_mdio.h:11, from drivers/net/ethernet/freescale/enetc/enetc_mdio.c:5: drivers/net/ethernet/freescale/enetc/enetc_mdio.c:284:26: error: ʽenetc_mdio_id_tableʼ undeclared here (not in a function); did you mean ʽenetc_pci_mdio_id_tableʼ? MODULE_DEVICE_TABLE(pci, enetc_mdio_id_table); ^~~~~~~~~~~~~~~~~~~ ./include/linux/module.h:230:15: note: in definition of macro ʽMODULE_DEVICE_TABLEʼ extern typeof(name) __mod_##type##__##name##_device_table \ ^~~~ ./include/linux/module.h:230:21: error: ʽ__mod_pci__enetc_mdio_id_table_device_tableʼ aliased to undefined symbol ʽenetc_mdio_id_tableʼ extern typeof(name) __mod_##type##__##name##_device_table \ ^~~~~~ drivers/net/ethernet/freescale/enetc/enetc_mdio.c:284:1: note: in expansion of macro ʽMODULE_DEVICE_TABLEʼ MODULE_DEVICE_TABLE(pci, enetc_mdio_id_table); ^~~~~~~~~~~~~~~~~~~