On 10/29/26 17:05, Dario Binacchi wrote:
> ddr_init() is called from board_init_f(), before .bss is cleared, so
> ddrmix_initialized may already be non-zero on the first call. The DDRMIX
> cold reset is then run on a DDRMIX that has never been initialized and
> the SPL hangs (with DEBUG enabled in ddr_init.c):
> 
>   DDRINFO: start DRAM init
>   DDRINFO: cold reset the DDRMIX
> 
> Move ddrmix_initialized to .data, so that it is zero on the first call.
> 
> Fixes: ae03528affd3 ("ddr: imx: Recreate the power-on state before repeating 
> ddr_init()")
> Signed-off-by: Dario Binacchi <[email protected]>
> 

[...]

3 out of 6 Verdin iMX8M Plus and the SMARC iMX8M Plus SoMs in our CI farm were
hanging in SPL, this patch fixes it.

Thanks!

Emanuele

Reviewed-by: Emanuele Ghidoli <[email protected]>
Tested-by: Emanuele Ghidoli <[email protected]>

Reply via email to