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