driver: fsl-mc: Perform fsl-mc fdt fixup for lazyapply dpl

For for case of lazyapply method, API fdt_fixup_board_enet() gets
invoked before DPL being deployed. This leads to an issue that
fsl-mc fdt fixup status marked as fail and dprc driver didn't get
registered in linux boot.

Fixes this issue by calling fdt_fixup_board_enet() for case when
DPL is deployed successfully in lazyapply method.

Signed-off-by: Yogesh Gaur <yogeshnarayan.gaur@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
master
Yogesh Gaur 6 years ago committed by York Sun
parent ae5326a6b3
commit f9747a5a5d
  1. 4
      drivers/net/fsl-mc/mc.c
  2. 3
      include/fdt_support.h

@ -1415,7 +1415,9 @@ int fsl_mc_ldpaa_exit(bd_t *bd)
bool mc_boot_status = false;
if (bd && mc_lazy_dpl_addr && !fsl_mc_ldpaa_exit(NULL)) {
mc_apply_dpl(mc_lazy_dpl_addr);
err = mc_apply_dpl(mc_lazy_dpl_addr);
if (!err)
fdt_fixup_board_enet(working_fdt);
mc_lazy_dpl_addr = 0;
}

@ -293,4 +293,7 @@ int fdtdec_get_int(const void *blob, int node, const char *prop_name,
#ifdef CONFIG_FMAN_ENET
int fdt_update_ethernet_dt(void *blob);
#endif
#ifdef CONFIG_FSL_MC_ENET
void fdt_fixup_board_enet(void *blob);
#endif
#endif /* ifndef __FDT_SUPPORT_H */

Loading…
Cancel
Save