From patchwork Thu Mar 12 16:06:06 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ioana Ciornei X-Patchwork-Id: 243596 List-Id: U-Boot discussion From: ioana.ciornei at nxp.com (Ioana Ciornei) Date: Thu, 12 Mar 2020 18:06:06 +0200 Subject: [PATCH 00/14] net: ldpaa_eth: transition to CONFIG_DM_ETH Message-ID: <20200312160620.29593-1-ioana.ciornei@nxp.com> This patch set targets to add support for CONFIG_DM_ETH in DPAA2 based SoCs. We start by adding a DM MDIO driver for the MDIO interface found on the mEMAC. The next two patches start the transition of the ldpaa_eth and fsl-mc drivers towards using the 'struct udevice' and probing on DTS nodes. Any unnecessary configurations made for the DPAA2 ethernet devices are compiled out when CONFIG_DM_ETH. This is because any information necessary is available in its associated DTS node. For the moment, only configs of RDB boards are transitioned to CONFIG_DM_ETH since its more of a straightforward move than for the QDS ones. As an example, the 'dm tree' output for a LS2088ARDB board looks something like the following: => dm tree Class Index Probed Driver Name ----------------------------------------------------------- (...) simple_bus 0 [ + ] generic_simple_bus |-- fsl-mc at 80c000000 simple_bus 1 [ + ] generic_simple_bus | `-- dpmacs eth 0 [ + ] ldpaa_eth | |-- DPMAC1 at xfi eth 1 [ + ] ldpaa_eth | |-- DPMAC2 at xfi eth 2 [ + ] ldpaa_eth | |-- DPMAC3 at xfi eth 3 [ + ] ldpaa_eth | |-- DPMAC4 at xfi eth 4 [ + ] ldpaa_eth | |-- DPMAC5 at xfi eth 5 [ + ] ldpaa_eth | |-- DPMAC6 at xfi eth 6 [ + ] ldpaa_eth | |-- DPMAC7 at xfi eth 7 [ + ] ldpaa_eth | `-- DPMAC8 at xfi mdio 0 [ + ] fsl_ls_mdio |-- mdio at 8B96000 mdio 1 [ + ] fsl_ls_mdio `-- mdio at 8B97000 Ioana Ciornei (14): drivers: net: add Layerscape mEMAC MDIO driver drivers: net: ldpaa: add support for probing based on the DTS drivers: net: fsl-mc: add support for CONFIG_DM_ETH board: ls1088ardb: transition to DM_ETH board: ls2088ardb: transition to DM_ETH arm: dts: lx2160a: add external MDIO nodes arm: dts: ls2088a: add external MDIO nodes arm: dts: ls1088a: add external MDIO nodes arm: dts: lx2160ardb: add DPMAC and PHY nodes arm: dts: ls2088ardb: add DPMAC and PHY nodes arm: dts: ls1088ardb: add DPMAC and PHY nodes configs: ls1088ardb: enable CONFIG_DM_ETH and related configs: ls2088ardb: enable CONFIG_DM_ETH and related configs: lx2160ardb: enable CONFIG_DM_ETH and related arch/arm/dts/fsl-ls1088a-rdb.dts | 102 ++++++++ arch/arm/dts/fsl-ls1088a.dtsi | 102 +++++++- arch/arm/dts/fsl-ls2080a.dtsi | 90 ++++++- arch/arm/dts/fsl-ls2088a-rdb-qspi.dts | 88 +++++++ arch/arm/dts/fsl-lx2160a-rdb.dts | 52 ++++ arch/arm/dts/fsl-lx2160a.dtsi | 65 +++++ board/freescale/ls1088a/eth_ls1088ardb.c | 2 + board/freescale/ls1088a/ls1088a.c | 5 + board/freescale/ls2080ardb/eth_ls2080rdb.c | 7 + board/freescale/ls2080ardb/ls2080ardb.c | 4 + configs/ls1088ardb_qspi_SECURE_BOOT_defconfig | 5 + configs/ls1088ardb_qspi_defconfig | 5 + ...1088ardb_sdcard_qspi_SECURE_BOOT_defconfig | 5 + configs/ls1088ardb_sdcard_qspi_defconfig | 5 + configs/ls1088ardb_tfa_SECURE_BOOT_defconfig | 5 + configs/ls1088ardb_tfa_defconfig | 5 + configs/ls2088ardb_qspi_SECURE_BOOT_defconfig | 4 + configs/ls2088ardb_qspi_defconfig | 4 + configs/ls2088ardb_tfa_SECURE_BOOT_defconfig | 4 + configs/ls2088ardb_tfa_defconfig | 4 + configs/lx2160ardb_tfa_SECURE_BOOT_defconfig | 4 + configs/lx2160ardb_tfa_defconfig | 4 + drivers/net/Kconfig | 7 + drivers/net/Makefile | 1 + drivers/net/fsl-mc/mc.c | 48 +++- drivers/net/fsl_ls_mdio.c | 158 ++++++++++++ drivers/net/ldpaa_eth/ldpaa_eth.c | 230 +++++++++++++++--- drivers/net/ldpaa_eth/ldpaa_eth.h | 6 + include/configs/ls1088ardb.h | 2 + 29 files changed, 967 insertions(+), 56 deletions(-) create mode 100644 drivers/net/fsl_ls_mdio.c