aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRob Herring <robh@kernel.org>2014-04-02 18:50:19 -0400
committerRob Herring <robh@kernel.org>2014-04-30 01:55:57 -0400
commit10fbdaab3f51359c5377495b1ab0698bb8e64df9 (patch)
tree1afdc9e6d7af88495ead88f902ee7b034a5dff92
parent8c97cec99033005cf1ede48a7b351e48a723749a (diff)
mips: lantiq: copy built-in DTB out of init section
The existing code is buggy because built-in DTBs are in init memory. Fix this by using the unflatten_and_copy_device_tree function. This removes all accesses to FDT header data by the arch code. Signed-off-by: Rob Herring <robh@kernel.org> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: linux-mips@linux-mips.org Tested-by: Grant Likely <grant.likely@linaro.org>
-rw-r--r--arch/mips/lantiq/prom.c13
1 files changed, 1 insertions, 12 deletions
diff --git a/arch/mips/lantiq/prom.c b/arch/mips/lantiq/prom.c
index 19686c5bc5ed..cdea687ad490 100644
--- a/arch/mips/lantiq/prom.c
+++ b/arch/mips/lantiq/prom.c
@@ -76,18 +76,7 @@ void __init plat_mem_setup(void)
76 76
77void __init device_tree_init(void) 77void __init device_tree_init(void)
78{ 78{
79 unsigned long base, size; 79 unflatten_and_copy_device_tree();
80
81 if (!initial_boot_params)
82 return;
83
84 base = virt_to_phys((void *)initial_boot_params);
85 size = be32_to_cpu(initial_boot_params->totalsize);
86
87 /* Before we do anything, lets reserve the dt blob */
88 reserve_bootmem(base, size, BOOTMEM_DEFAULT);
89
90 unflatten_device_tree();
91} 80}
92 81
93void __init prom_init(void) 82void __init prom_init(void)