From: Greentime Hu Date: Thu, 28 Jun 2018 10:29:21 +0000 (+0800) Subject: nds32: Fix the dts pointer is not passed correctly issue. X-Git-Tag: v4.17.19~158 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d50a5781992f7c55e38ff0df19a1094d61b00bb7;p=thirdparty%2Fkernel%2Fstable.git nds32: Fix the dts pointer is not passed correctly issue. [ Upstream commit 6897e6ecb3167598cb45e1a1424dd4d5e3778837 ] We found that the original implementation will only use the built-in dtb pointer instead of the pointer pass from bootloader. This bug is fixed by this patch. Signed-off-by: Greentime Hu Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- diff --git a/arch/nds32/kernel/setup.c b/arch/nds32/kernel/setup.c index 2f5b2ccebe471..63a1a5ef5219f 100644 --- a/arch/nds32/kernel/setup.c +++ b/arch/nds32/kernel/setup.c @@ -278,7 +278,8 @@ static void __init setup_memory(void) void __init setup_arch(char **cmdline_p) { - early_init_devtree( __dtb_start); + early_init_devtree(__atags_pointer ? \ + phys_to_virt(__atags_pointer) : __dtb_start); setup_cpuinfo();