[PATCH] powerpc: fix skipping call to early_init_fdt_scan_reserved_mem

Rob Herring robherring2 at gmail.com
Wed Apr 30 16:03:52 EST 2014

From: Rob Herring <robh at kernel.org>

The call to early_init_fdt_scan_reserved_mem will be skipped if
reserved-ranges is not found. Move the call earlier so that it is called

Signed-off-by: Rob Herring <robh at kernel.org>
Cc: Marek Szyprowski <m.szyprowski at samsung.com>
Cc: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Cc: Paul Mackerras <paulus at samba.org>
Cc: linuxppc-dev at lists.ozlabs.org
Tested-by: Stephen Chivers <schivers at csc.com>
I found this issue in testing of my fdt clean-up series (thanks to 
Stephen). Since the reserved memory support is new, I don't think it is 
critical to fix this for 3.15. I plan to include this with my fdt series 
for 3.16 unless I hear otherwise.


 arch/powerpc/kernel/prom.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c
index 668aa47..d657549 100644
--- a/arch/powerpc/kernel/prom.c
+++ b/arch/powerpc/kernel/prom.c
@@ -567,6 +567,8 @@ static void __init early_reserve_mem_dt(void)
 	unsigned long i, len, dt_root;
 	const __be32 *prop;
+	early_init_fdt_scan_reserved_mem();
 	dt_root = of_get_flat_dt_root();
 	prop = of_get_flat_dt_prop(dt_root, "reserved-ranges", &len);
@@ -589,8 +591,6 @@ static void __init early_reserve_mem_dt(void)
 			memblock_reserve(base, size);
-	early_init_fdt_scan_reserved_mem();
 static void __init early_reserve_mem(void)

More information about the Linuxppc-dev mailing list