Message ID | 20200427122117.5054-5-ioana.ciornei@nxp.com |
---|---|
State | Accepted |
Commit | 4057bddaa230de0d77ec6357fd556ea192ab1412 |
Headers | show |
Series | boards: lx2160aqds: transition to CONFIG_DM_ETH | expand |
> -----Original Message----- > From: Ioana Ciornei <ioana.ciornei at nxp.com> > Sent: Monday, April 27, 2020 3:21 PM > To: Priyanka Jain <priyanka.jain at nxp.com>; u-boot at lists.denx.de > Cc: Alexandru Marginean <alexandru.marginean at nxp.com>; Madalin Bucur > <madalin.bucur at nxp.com>; Florin Laurentiu Chiculita > <florinlaurentiu.chiculita at nxp.com>; Razvan Ionut Cirjan > <razvanionut.cirjan at nxp.com>; Ioana Ciornei <ioana.ciornei at nxp.com> > Subject: [PATCH v2 4/6] board: lx2160aqds: transition to DM_ETH > > In case CONFIG_DM_ETH is enabled, no hardcoding is necessary for DPAA2 > Ethernet devices. Compile out any unnecessary setup when > CONFIG_DM_ETH is activated. Also, force the PCI devices to be enumerated > at probe time. > > Signed-off-by: Ioana Ciornei <ioana.ciornei at nxp.com> Reviewed-by: Razvan Ionut Cirjan <razvanionut.cirjan at nxp.com> Thanks, Razvan > --- > Changes in v2: > - none > > board/freescale/lx2160a/eth_lx2160aqds.c | 12 +++++++++++- > board/freescale/lx2160a/lx2160a.c | 5 +++++ > 2 files changed, 16 insertions(+), 1 deletion(-) > > diff --git a/board/freescale/lx2160a/eth_lx2160aqds.c > b/board/freescale/lx2160a/eth_lx2160aqds.c > index 0e928ebd8689..3b7830343d1e 100644 > --- a/board/freescale/lx2160a/eth_lx2160aqds.c > +++ b/board/freescale/lx2160a/eth_lx2160aqds.c > @@ -25,6 +25,7 @@ > > DECLARE_GLOBAL_DATA_PTR; > > +#ifndef CONFIG_DM_ETH > #define EMI_NONE 0 > #define EMI1 1 /* Mdio Bus 1 */ > #define EMI2 2 /* Mdio Bus 2 */ > @@ -439,9 +440,11 @@ static inline void do_dpmac_config(int dpmac, const > char *arg_dpmacid, } > > #endif > +#endif /* !CONFIG_DM_ETH */ > > int board_eth_init(bd_t *bis) > { > +#ifndef CONFIG_DM_ETH > #if defined(CONFIG_FSL_MC_ENET) > struct memac_mdio_info mdio_info; > struct memac_mdio_controller *regs; > @@ -564,6 +567,7 @@ int board_eth_init(bd_t *bis) > > cpu_eth_init(bis); > #endif /* CONFIG_FMAN_ENET */ > +#endif /* !CONFIG_DM_ETH */ > > #ifdef CONFIG_PHY_AQUANTIA > /* > @@ -577,7 +581,12 @@ int board_eth_init(bd_t *bis) > gd->jt->mdio_phydev_for_ethname = mdio_phydev_for_ethname; > gd->jt->miiphy_set_current_dev = miiphy_set_current_dev; #endif > + > +#ifdef CONFIG_DM_ETH > + return 0; > +#else > return pci_eth_init(bis); > +#endif > } > > #if defined(CONFIG_RESET_PHY_R) > @@ -589,6 +598,7 @@ void reset_phy(void) } #endif /* > CONFIG_RESET_PHY_R */ > > +#ifndef CONFIG_DM_ETH > #if defined(CONFIG_FSL_MC_ENET) > int fdt_fixup_dpmac_phy_handle(void *fdt, int dpmac_id, int node_phandle) > { @@ -837,4 +847,4 @@ int fdt_fixup_board_phy(void *fdt) > return ret; > } > #endif // CONFIG_FSL_MC_ENET > - > +#endif > diff --git a/board/freescale/lx2160a/lx2160a.c > b/board/freescale/lx2160a/lx2160a.c > index 23ea1b6f16aa..abfbc9188392 100644 > --- a/board/freescale/lx2160a/lx2160a.c > +++ b/board/freescale/lx2160a/lx2160a.c > @@ -587,6 +587,9 @@ int board_init(void) > sec_init(); > #endif > > +#if !defined(CONFIG_SYS_EARLY_PCI_INIT) && defined(CONFIG_DM_ETH) > + pci_init(); > +#endif > return 0; > } > > @@ -632,7 +635,9 @@ void fdt_fixup_board_enet(void *fdt) > if (get_mc_boot_status() == 0 && > (is_lazy_dpl_addr_valid() || get_dpl_apply_status() == 0)) { > fdt_status_okay(fdt, offset); > +#ifndef CONFIG_DM_ETH > fdt_fixup_board_phy(fdt); > +#endif > } else { > fdt_status_fail(fdt, offset); > } > -- > 2.17.1
diff --git a/board/freescale/lx2160a/eth_lx2160aqds.c b/board/freescale/lx2160a/eth_lx2160aqds.c index 0e928ebd8689..3b7830343d1e 100644 --- a/board/freescale/lx2160a/eth_lx2160aqds.c +++ b/board/freescale/lx2160a/eth_lx2160aqds.c @@ -25,6 +25,7 @@ DECLARE_GLOBAL_DATA_PTR; +#ifndef CONFIG_DM_ETH #define EMI_NONE 0 #define EMI1 1 /* Mdio Bus 1 */ #define EMI2 2 /* Mdio Bus 2 */ @@ -439,9 +440,11 @@ static inline void do_dpmac_config(int dpmac, const char *arg_dpmacid, } #endif +#endif /* !CONFIG_DM_ETH */ int board_eth_init(bd_t *bis) { +#ifndef CONFIG_DM_ETH #if defined(CONFIG_FSL_MC_ENET) struct memac_mdio_info mdio_info; struct memac_mdio_controller *regs; @@ -564,6 +567,7 @@ int board_eth_init(bd_t *bis) cpu_eth_init(bis); #endif /* CONFIG_FMAN_ENET */ +#endif /* !CONFIG_DM_ETH */ #ifdef CONFIG_PHY_AQUANTIA /* @@ -577,7 +581,12 @@ int board_eth_init(bd_t *bis) gd->jt->mdio_phydev_for_ethname = mdio_phydev_for_ethname; gd->jt->miiphy_set_current_dev = miiphy_set_current_dev; #endif + +#ifdef CONFIG_DM_ETH + return 0; +#else return pci_eth_init(bis); +#endif } #if defined(CONFIG_RESET_PHY_R) @@ -589,6 +598,7 @@ void reset_phy(void) } #endif /* CONFIG_RESET_PHY_R */ +#ifndef CONFIG_DM_ETH #if defined(CONFIG_FSL_MC_ENET) int fdt_fixup_dpmac_phy_handle(void *fdt, int dpmac_id, int node_phandle) { @@ -837,4 +847,4 @@ int fdt_fixup_board_phy(void *fdt) return ret; } #endif // CONFIG_FSL_MC_ENET - +#endif diff --git a/board/freescale/lx2160a/lx2160a.c b/board/freescale/lx2160a/lx2160a.c index 23ea1b6f16aa..abfbc9188392 100644 --- a/board/freescale/lx2160a/lx2160a.c +++ b/board/freescale/lx2160a/lx2160a.c @@ -587,6 +587,9 @@ int board_init(void) sec_init(); #endif +#if !defined(CONFIG_SYS_EARLY_PCI_INIT) && defined(CONFIG_DM_ETH) + pci_init(); +#endif return 0; } @@ -632,7 +635,9 @@ void fdt_fixup_board_enet(void *fdt) if (get_mc_boot_status() == 0 && (is_lazy_dpl_addr_valid() || get_dpl_apply_status() == 0)) { fdt_status_okay(fdt, offset); +#ifndef CONFIG_DM_ETH fdt_fixup_board_phy(fdt); +#endif } else { fdt_status_fail(fdt, offset); }
In case CONFIG_DM_ETH is enabled, no hardcoding is necessary for DPAA2 Ethernet devices. Compile out any unnecessary setup when CONFIG_DM_ETH is activated. Also, force the PCI devices to be enumerated at probe time. Signed-off-by: Ioana Ciornei <ioana.ciornei at nxp.com> --- Changes in v2: - none board/freescale/lx2160a/eth_lx2160aqds.c | 12 +++++++++++- board/freescale/lx2160a/lx2160a.c | 5 +++++ 2 files changed, 16 insertions(+), 1 deletion(-)