From: Marek Vasut Date: Thu, 2 Mar 2023 03:08:22 +0000 (+0100) Subject: cmd: fdt: Map address returned from fdt get addr to sysmem X-Git-Tag: baikal/mips/sdk5.8.2~5^2~25^2~16 X-Git-Url: https://git.baikalelectronics.ru/?a=commitdiff_plain;h=25d964361bc7bd6aa530264e57719bb4ff6140e1;p=uboot.git cmd: fdt: Map address returned from fdt get addr to sysmem The address returned from 'fdt get addr' command must be mapped into sysmem, as this is a working FDT. Access to this address without mapping it would lead to crash e.g. in sandbox. The following command triggers the crash: " ./u-boot -Dc 'fdt addr $fdtcontroladdr ; fdt get addr var / compatible ; md $var' " Signed-off-by: Marek Vasut Reviewed-by: Simon Glass --- diff --git a/cmd/fdt.c b/cmd/fdt.c index bc19303159..f2576ab4b3 100644 --- a/cmd/fdt.c +++ b/cmd/fdt.c @@ -468,7 +468,8 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) /* Get address */ char buf[19]; - snprintf(buf, sizeof(buf), "0x%p", nodep); + snprintf(buf, sizeof(buf), "0x%lx", + (ulong)map_to_sysmem(nodep)); env_set(var, buf); } else if (subcmd[0] == 's') { /* Get size */