diff options
author | Rob Herring <robh@kernel.org> | 2014-04-02 20:07:24 -0400 |
---|---|---|
committer | Rob Herring <robh@kernel.org> | 2014-04-30 01:56:00 -0400 |
commit | afb46f7996e91aeb36e07bc92cf96e8045bec00e (patch) | |
tree | 068e04d2344ac0e3c9750fb8ed7c922fc2ff392e | |
parent | e1b77baed6b170b190a72821b39a2e91a66f1e54 (diff) |
mips: ralink: convert to use unflatten_and_copy_device_tree
The ralink FDT code can be simplified by using
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/ralink/of.c | 25 |
1 files changed, 1 insertions, 24 deletions
diff --git a/arch/mips/ralink/of.c b/arch/mips/ralink/of.c index eccc5526155e..0170d829d073 100644 --- a/arch/mips/ralink/of.c +++ b/arch/mips/ralink/of.c | |||
@@ -52,30 +52,7 @@ __iomem void *plat_of_remap_node(const char *node) | |||
52 | 52 | ||
53 | void __init device_tree_init(void) | 53 | void __init device_tree_init(void) |
54 | { | 54 | { |
55 | unsigned long base, size; | 55 | unflatten_and_copy_device_tree(); |
56 | void *fdt_copy; | ||
57 | |||
58 | if (!initial_boot_params) | ||
59 | return; | ||
60 | |||
61 | base = virt_to_phys((void *)initial_boot_params); | ||
62 | size = be32_to_cpu(initial_boot_params->totalsize); | ||
63 | |||
64 | /* Before we do anything, lets reserve the dt blob */ | ||
65 | reserve_bootmem(base, size, BOOTMEM_DEFAULT); | ||
66 | |||
67 | /* The strings in the flattened tree are referenced directly by the | ||
68 | * device tree, so copy the flattened device tree from init memory | ||
69 | * to regular memory. | ||
70 | */ | ||
71 | fdt_copy = alloc_bootmem(size); | ||
72 | memcpy(fdt_copy, initial_boot_params, size); | ||
73 | initial_boot_params = fdt_copy; | ||
74 | |||
75 | unflatten_device_tree(); | ||
76 | |||
77 | /* free the space reserved for the dt blob */ | ||
78 | free_bootmem(base, size); | ||
79 | } | 56 | } |
80 | 57 | ||
81 | void __init plat_mem_setup(void) | 58 | void __init plat_mem_setup(void) |