From 37c6f531dafb370e7fe378f547fb8bd7a79e3869 Mon Sep 17 00:00:00 2001 From: Emanuele Ghidoli Date: Wed, 20 May 2026 15:51:34 +0200 Subject: [PATCH] board: toradex: verdin-imx95: fix ram size check calculated addresses The ram_alias_checks addresses are 32 bit values. When summed as 64 bit values the calculation is done correctly, otherwise, if they are summed as 32 bit values, the sum wraps around. Fix by adding uintptr_t recast to the base address. Fixes: 60d8255d8dc0 ("board: toradex: add Toradex Verdin iMX95") Signed-off-by: Emanuele Ghidoli Acked-by: Francesco Dolcini --- board/toradex/verdin-imx95/verdin-imx95.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/board/toradex/verdin-imx95/verdin-imx95.c b/board/toradex/verdin-imx95/verdin-imx95.c index 60c1dbb5e29..7c0804c1d1c 100644 --- a/board/toradex/verdin-imx95/verdin-imx95.c +++ b/board/toradex/verdin-imx95/verdin-imx95.c @@ -50,10 +50,10 @@ int board_late_init(void) } static const struct ram_alias_check ram_alias_checks[] = { - { (void *)(PHYS_SDRAM + SZ_8G), (void *)(PHYS_SDRAM), SZ_16G }, - { (void *)(PHYS_SDRAM + SZ_4G), (void *)(PHYS_SDRAM), SZ_8G }, - { (void *)(PHYS_SDRAM + SZ_2G), (void *)(PHYS_SDRAM), SZ_4G }, - { (void *)(PHYS_SDRAM + SZ_1G), (void *)(PHYS_SDRAM), SZ_2G }, + { (void *)((uintptr_t)PHYS_SDRAM + SZ_8G), (void *)(PHYS_SDRAM), SZ_16G }, + { (void *)((uintptr_t)PHYS_SDRAM + SZ_4G), (void *)(PHYS_SDRAM), SZ_8G }, + { (void *)((uintptr_t)PHYS_SDRAM + SZ_2G), (void *)(PHYS_SDRAM), SZ_4G }, + { (void *)((uintptr_t)PHYS_SDRAM + SZ_1G), (void *)(PHYS_SDRAM), SZ_2G }, { NULL } };