On Tue, Nov 25, 2025 at 05:14:12PM +0100, Alexander Feilke wrote:

> From: Alexander Feilke <[email protected]>
> 
> Description: U-Boot hangs silently during boot when enabling DEBUG in
> lib/fdtdec.c
> 
> Not sure if its really a bug or rather a configuration issue on my side.
> 
> Minimal steps to reproduce: <see patch>
> 
> The hang is caused by `panic("FDT overlap");` later inside the if block.
> (see `lib/fdtdec.c:1279` in `fdt_find_separate(void)`)
> 
> Additionally, no boot log can be seen because serial is initialized after
> loading the devicetree in this boot stage (see `common/board_r.c:665` in
> `initcall_run_r(void)`)
> 
> Tested on i.MX6 with configs for tqma6d_mba6 and other tq boards that aren't,
> mainlined yet (tqma6ulx_mba6ul and tqma7d_mba7).
> 
> Any idea what to look for to fix this on our side?
> 
> Thanks in advance,
> Alexander
> ---
>  lib/fdtdec.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/lib/fdtdec.c b/lib/fdtdec.c
> index c38738b48c7..0f2f7c948cd 100644
> --- a/lib/fdtdec.c
> +++ b/lib/fdtdec.c
> @@ -1257,7 +1257,7 @@ static void *fdt_find_separate(void)
>       /* FDT is at end of image */
>       fdt_blob = (ulong *)_end;
>  
> -     if (_DEBUG && !fdtdec_prepare_fdt(fdt_blob)) {
> +     if (1 && !fdtdec_prepare_fdt(fdt_blob)) {
>               int stack_ptr;
>               const void *top = fdt_blob + fdt_totalsize(fdt_blob);
>  

For very early failures you might need to look at enabling DEBUG_UART
which wires in a more direct "just write this to serial port".

-- 
Tom

Attachment: signature.asc
Description: PGP signature

Reply via email to