[PATCH 4.17 167/324] nds32: Fix the dts pointer is not passed correctly issue.

From: Greg Kroah-Hartman
Date: Thu Aug 23 2018 - 04:52:38 EST


4.17-stable review patch. If anyone has any objections, please let me know.

------------------

From: Greentime Hu <greentime@xxxxxxxxxxxxx>

[ 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 <greentime@xxxxxxxxxxxxx>
Signed-off-by: Sasha Levin <alexander.levin@xxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
arch/nds32/kernel/setup.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

--- 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();