diff options
author | Barry Song <Baohua.Song@csr.com> | 2013-05-15 23:26:10 -0400 |
---|---|---|
committer | Barry Song <Baohua.Song@csr.com> | 2013-06-03 01:51:58 -0400 |
commit | 3cc3b617dc39dad1e566ccfc4500154cb7c51aa3 (patch) | |
tree | c1ec900bfdbccca778fb6ceba2103ac3c767d911 /arch | |
parent | 5a0ec569e8c725874ef2a894d795fc9a462865d8 (diff) |
arm: prima2: use of_platform_populate instead of of_platform_bus_probe
use of_platform_populate to populate platform devices, it is suitable
for creating devices which are children of the root node, then makes
things like pcm work.
this patch removes sirfsoc_mach_init() function and lets arm core do
of_platform_populate:
static int __init customize_machine(void)
{
/*
* customizes platform devices, or adds new ones
* On DT based machines, we fall back to populating the
* machine from the device tree, if no callback is provided,
* otherwise we would always need an init_machine callback.
*/
if (machine_desc->init_machine)
machine_desc->init_machine();
else
of_platform_populate(NULL, of_default_bus_match_table,
NULL, NULL);
return 0;
}
Signed-off-by: Barry Song <Baohua.Song@csr.com>
Signed-off-by: Rongjun Ying <Rongjun.Ying@csr.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-prima2/common.c | 13 |
1 files changed, 0 insertions, 13 deletions
diff --git a/arch/arm/mach-prima2/common.c b/arch/arm/mach-prima2/common.c index e95ebef603a7..e588c2152133 100644 --- a/arch/arm/mach-prima2/common.c +++ b/arch/arm/mach-prima2/common.c | |||
@@ -17,16 +17,6 @@ | |||
17 | #include <linux/of_platform.h> | 17 | #include <linux/of_platform.h> |
18 | #include "common.h" | 18 | #include "common.h" |
19 | 19 | ||
20 | static struct of_device_id sirfsoc_of_bus_ids[] __initdata = { | ||
21 | { .compatible = "simple-bus", }, | ||
22 | {}, | ||
23 | }; | ||
24 | |||
25 | void __init sirfsoc_mach_init(void) | ||
26 | { | ||
27 | of_platform_bus_probe(NULL, sirfsoc_of_bus_ids, NULL); | ||
28 | } | ||
29 | |||
30 | void __init sirfsoc_init_late(void) | 20 | void __init sirfsoc_init_late(void) |
31 | { | 21 | { |
32 | sirfsoc_pm_init(); | 22 | sirfsoc_pm_init(); |
@@ -57,7 +47,6 @@ DT_MACHINE_START(ATLAS6_DT, "Generic ATLAS6 (Flattened Device Tree)") | |||
57 | .map_io = sirfsoc_map_io, | 47 | .map_io = sirfsoc_map_io, |
58 | .init_irq = irqchip_init, | 48 | .init_irq = irqchip_init, |
59 | .init_time = sirfsoc_init_time, | 49 | .init_time = sirfsoc_init_time, |
60 | .init_machine = sirfsoc_mach_init, | ||
61 | .init_late = sirfsoc_init_late, | 50 | .init_late = sirfsoc_init_late, |
62 | .dt_compat = atlas6_dt_match, | 51 | .dt_compat = atlas6_dt_match, |
63 | .restart = sirfsoc_restart, | 52 | .restart = sirfsoc_restart, |
@@ -77,7 +66,6 @@ DT_MACHINE_START(PRIMA2_DT, "Generic PRIMA2 (Flattened Device Tree)") | |||
77 | .init_irq = irqchip_init, | 66 | .init_irq = irqchip_init, |
78 | .init_time = sirfsoc_init_time, | 67 | .init_time = sirfsoc_init_time, |
79 | .dma_zone_size = SZ_256M, | 68 | .dma_zone_size = SZ_256M, |
80 | .init_machine = sirfsoc_mach_init, | ||
81 | .init_late = sirfsoc_init_late, | 69 | .init_late = sirfsoc_init_late, |
82 | .dt_compat = prima2_dt_match, | 70 | .dt_compat = prima2_dt_match, |
83 | .restart = sirfsoc_restart, | 71 | .restart = sirfsoc_restart, |
@@ -96,7 +84,6 @@ DT_MACHINE_START(MARCO_DT, "Generic MARCO (Flattened Device Tree)") | |||
96 | .map_io = sirfsoc_map_io, | 84 | .map_io = sirfsoc_map_io, |
97 | .init_irq = irqchip_init, | 85 | .init_irq = irqchip_init, |
98 | .init_time = sirfsoc_init_time, | 86 | .init_time = sirfsoc_init_time, |
99 | .init_machine = sirfsoc_mach_init, | ||
100 | .init_late = sirfsoc_init_late, | 87 | .init_late = sirfsoc_init_late, |
101 | .dt_compat = marco_dt_match, | 88 | .dt_compat = marco_dt_match, |
102 | .restart = sirfsoc_restart, | 89 | .restart = sirfsoc_restart, |