
When MC is loaded, but DPL is not deployed, it results in FDT fix-up code execution hang. To resolve this, returns success instead of return -ENODEV and print message on console. This update allows to continue fdt fixup execution.
Signed-off-by: Yogesh Gaur yogeshnarayan.gaur@nxp.com Signed-off-by: Priyanka Jain Priyanka.jain@nxp.com --- Changes for v2: Incorporated Prabhakar's review comments.
drivers/net/fsl-mc/mc.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/net/fsl-mc/mc.c b/drivers/net/fsl-mc/mc.c index 079082a..d47fa1f 100644 --- a/drivers/net/fsl-mc/mc.c +++ b/drivers/net/fsl-mc/mc.c @@ -1268,10 +1268,12 @@ int fsl_mc_ldpaa_exit(bd_t *bd) if (bd && get_mc_boot_status() != 0) return 0;
+ /* For case MC is loaded but DPL is not deployed, return success and + * print message on console. Else FDT fix-up code execution hanged. */ if (bd && !get_mc_boot_status() && get_dpl_apply_status() == -1) { - printf("ERROR: fsl-mc: DPL is not applied\n"); - err = -ENODEV; - return err; + printf("fsl-mc: MC is loaded but DPL is not deployed \n\ + So, DPAA2 ethernet will not work in Linux\n"); + return 0; }
if (bd && !get_mc_boot_status() && !get_dpl_apply_status())