On Thursday, November 27, 2025 15:02 CET, Fabio Estevam <[email protected]> wrote: > On Thu, Nov 27, 2025 at 9:33 AM [email protected] > <[email protected]> wrote: > > > I also have a mx7dsabresd but I cannot bring it to boot with a master build > > unfortunately. > > Just tested booting the top-of-tree U-Boot on a mx7dsabresd and it boots: >
Thanks! When using 0ae3dc6809ff like you I can boot and reproduce the hangup issue on mx7dsabresd: <debug_uart> FDT 8787da38 gd 0091de20 top 87887538 sp 87800000 sys_init_sp_addr 0091ff10 gbl_data_size 000000f0 FDT overlap resetting ... System reset not supported on this platform ### ERROR ### Please RESET the board ### This is the patch that enables debug uart and demonstrates the issue: >From 9ee6e3244f15c8a1d9cb86130186cc9f221721c6 Mon Sep 17 00:00:00 2001 From: Alexander Feilke <[email protected]> Date: Thu, 27 Nov 2025 16:47:23 +0100 Signed-off-by: Alexander Feilke <[email protected]> --- board/freescale/mx7dsabresd/mx7dsabresd.c | 6 ++++++ configs/mx7dsabresd_defconfig | 5 +++++ lib/fdtdec.c | 5 +++++ 3 files changed, 16 insertions(+) diff --git a/board/freescale/mx7dsabresd/mx7dsabresd.c b/board/freescale/mx7dsabresd/mx7dsabresd.c index bef4f901ff7..1fdd39d437c 100644 --- a/board/freescale/mx7dsabresd/mx7dsabresd.c +++ b/board/freescale/mx7dsabresd/mx7dsabresd.c @@ -25,6 +25,7 @@ #include <i2c.h> #include <asm/mach-imx/mxc_i2c.h> #include <asm/arch/crm_regs.h> +#include <linux/delay.h> DECLARE_GLOBAL_DATA_PTR; @@ -233,6 +234,11 @@ int board_early_init_f(void) return 0; } +void board_debug_uart_init(void) +{ + setup_iomux_uart(); +} + int board_init(void) { /* address of boot parameters */ diff --git a/configs/mx7dsabresd_defconfig b/configs/mx7dsabresd_defconfig index a5a562af0c0..9f0631fe868 100644 --- a/configs/mx7dsabresd_defconfig +++ b/configs/mx7dsabresd_defconfig @@ -10,6 +10,11 @@ CONFIG_TARGET_MX7DSABRESD=y # CONFIG_ARMV7_VIRT is not set CONFIG_IMX_RDC=y CONFIG_IMX_BOOTAUX=y +CONFIG_DEBUG_UART_BASE=0x30860000 +CONFIG_DEBUG_UART_CLOCK=24000000 +CONFIG_DEBUG_UART=y +CONFIG_DEBUG_UART_ANNOUNCE=y +CONFIG_DEBUG_UART_BOARD_INIT=y CONFIG_IMX_HAB=y CONFIG_SYS_MEMTEST_START=0x80000000 CONFIG_SYS_MEMTEST_END=0xa0000000 diff --git a/lib/fdtdec.c b/lib/fdtdec.c index c38738b48c7..dff471228d6 100644 --- a/lib/fdtdec.c +++ b/lib/fdtdec.c @@ -9,6 +9,7 @@ #ifndef USE_HOSTCC #define LOG_CATEGORY LOGC_DT +#define DEBUG #include <bloblist.h> #include <boot_fit.h> @@ -35,6 +36,7 @@ #include <linux/ctype.h> #include <linux/lzo.h> #include <linux/ioport.h> +#include <system-constants.h> DECLARE_GLOBAL_DATA_PTR; @@ -1276,6 +1278,9 @@ static void *fdt_find_separate(void) */ if (top > (void *)gd || top > (void *)&stack_ptr) { printf("FDT %p gd %p\n", fdt_blob, gd); + printf("top %p sp %p\n", top, stack_ptr); + printf("sys_init_sp_addr %p\n", SYS_INIT_SP_ADDR); + printf("gbl_data_size %p\n", GENERATED_GBL_DATA_SIZE); panic("FDT overlap"); } } -- 2.34.1

