aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRob Herring <rob.herring@calxeda.com>2013-08-26 11:20:26 -0400
committerRob Herring <rob.herring@calxeda.com>2013-10-09 12:38:14 -0400
commitf75813c0127bbef41ac3152f64a72ba212a5514c (patch)
treefa39c6ecc3a6c5aa59f7fbb57538bbad13d059a2
parentdc0b433526773c70a030478212f57c3f402681ae (diff)
mips: use early_init_dt_scan
Convert mips to use new early_init_dt_scan function. Remove early_init_dt_scan_memory_arch Signed-off-by: Rob Herring <rob.herring@calxeda.com> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: linux-mips@linux-mips.org Acked-by: John Crispin <blogic@openwrt.org>
-rw-r--r--arch/mips/include/asm/prom.h3
-rw-r--r--arch/mips/kernel/prom.c39
2 files changed, 3 insertions, 39 deletions
diff --git a/arch/mips/include/asm/prom.h b/arch/mips/include/asm/prom.h
index 1e7e0961064b..e3dbd0e0608e 100644
--- a/arch/mips/include/asm/prom.h
+++ b/arch/mips/include/asm/prom.h
@@ -17,9 +17,6 @@
17#include <linux/types.h> 17#include <linux/types.h>
18#include <asm/bootinfo.h> 18#include <asm/bootinfo.h>
19 19
20extern int early_init_dt_scan_memory_arch(unsigned long node,
21 const char *uname, int depth, void *data);
22
23extern void device_tree_init(void); 20extern void device_tree_init(void);
24 21
25static inline unsigned long pci_address_to_pio(phys_addr_t address) 22static inline unsigned long pci_address_to_pio(phys_addr_t address)
diff --git a/arch/mips/kernel/prom.c b/arch/mips/kernel/prom.c
index 0fa0b69cdd53..67a4c53b2b54 100644
--- a/arch/mips/kernel/prom.c
+++ b/arch/mips/kernel/prom.c
@@ -17,8 +17,6 @@
17#include <linux/debugfs.h> 17#include <linux/debugfs.h>
18#include <linux/of.h> 18#include <linux/of.h>
19#include <linux/of_fdt.h> 19#include <linux/of_fdt.h>
20#include <linux/of_irq.h>
21#include <linux/of_platform.h>
22 20
23#include <asm/page.h> 21#include <asm/page.h>
24#include <asm/prom.h> 22#include <asm/prom.h>
@@ -40,13 +38,6 @@ char *mips_get_machine_name(void)
40} 38}
41 39
42#ifdef CONFIG_OF 40#ifdef CONFIG_OF
43int __init early_init_dt_scan_memory_arch(unsigned long node,
44 const char *uname, int depth,
45 void *data)
46{
47 return early_init_dt_scan_memory(node, uname, depth, data);
48}
49
50void __init early_init_dt_add_memory_arch(u64 base, u64 size) 41void __init early_init_dt_add_memory_arch(u64 base, u64 size)
51{ 42{
52 return add_memory_region(base, size, BOOT_MEM_RAM); 43 return add_memory_region(base, size, BOOT_MEM_RAM);
@@ -78,36 +69,12 @@ int __init early_init_dt_scan_model(unsigned long node, const char *uname,
78 return 0; 69 return 0;
79} 70}
80 71
81void __init early_init_devtree(void *params)
82{
83 /* Setup flat device-tree pointer */
84 initial_boot_params = params;
85
86 /* Retrieve various informations from the /chosen node of the
87 * device-tree, including the platform type, initrd location and
88 * size, and more ...
89 */
90 of_scan_flat_dt(early_init_dt_scan_chosen, arcs_cmdline);
91
92
93 /* Scan memory nodes */
94 of_scan_flat_dt(early_init_dt_scan_root, NULL);
95 of_scan_flat_dt(early_init_dt_scan_memory_arch, NULL);
96
97 /* try to load the mips machine name */
98 of_scan_flat_dt(early_init_dt_scan_model, NULL);
99}
100
101void __init __dt_setup_arch(struct boot_param_header *bph) 72void __init __dt_setup_arch(struct boot_param_header *bph)
102{ 73{
103 if (be32_to_cpu(bph->magic) != OF_DT_HEADER) { 74 if (!early_init_dt_scan(bph))
104 pr_err("DTB has bad magic, ignoring builtin OF DTB\n");
105
106 return; 75 return;
107 }
108
109 initial_boot_params = bph;
110 76
111 early_init_devtree(initial_boot_params); 77 /* try to load the mips machine name */
78 of_scan_flat_dt(early_init_dt_scan_model, NULL);
112} 79}
113#endif 80#endif