
gd->dm_root is not cleared in SPL after warm reset. This might cause DM initilazation failure.
Signed-off-by: Jian Luo jian.luo4@boschrexroth.de --- arch/arm/mach-socfpga/spl.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/arch/arm/mach-socfpga/spl.c b/arch/arm/mach-socfpga/spl.c index 13ec24b..59fe1f2 100644 --- a/arch/arm/mach-socfpga/spl.c +++ b/arch/arm/mach-socfpga/spl.c @@ -181,5 +181,11 @@ void board_init_f(ulong dummy) /* Configure simple malloc base pointer into RAM. */ gd->malloc_base = CONFIG_SYS_TEXT_BASE + (1024 * 1024);
+ /* + * gd->dm_root might contain non-zero value after warm reset. + * Clear it to avoid dm_init error + */ + gd->dm_root = NULL; + board_init_r(NULL, 0); }