From: Thierry Reding Date: Thu, 15 Feb 2018 18:05:59 +0000 (+0100) Subject: fdt: Fixup only valid memory banks X-Git-Tag: v2018.03-rc4~54 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=ed5af03f9bb8905f1e94d68ab49f22d7f061d75f;p=u-boot fdt: Fixup only valid memory banks Memory banks with address 0 and size 0 are empty and should not be passed to the OS via device tree. Acked-by: Stephen Warren Signed-off-by: Thierry Reding --- diff --git a/common/fdt_support.c b/common/fdt_support.c index bd0478de40..b14853625f 100644 --- a/common/fdt_support.c +++ b/common/fdt_support.c @@ -447,6 +447,13 @@ int fdt_fixup_memory_banks(void *blob, u64 start[], u64 size[], int banks) return err; } + for (i = 0; i < banks; i++) { + if (start[i] == 0 && size[i] == 0) + break; + } + + banks = i; + if (!banks) return 0;