diff options
author | Rob Herring <robh@kernel.org> | 2014-04-02 18:50:19 -0400 |
---|---|---|
committer | Rob Herring <robh@kernel.org> | 2014-04-30 01:55:57 -0400 |
commit | 10fbdaab3f51359c5377495b1ab0698bb8e64df9 (patch) | |
tree | 1afdc9e6d7af88495ead88f902ee7b034a5dff92 | |
parent | 8c97cec99033005cf1ede48a7b351e48a723749a (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.c | 13 |
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 | ||
77 | void __init device_tree_init(void) | 77 | void __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 | ||
93 | void __init prom_init(void) | 82 | void __init prom_init(void) |