diff options
Diffstat (limited to 'arch/powerpc/platforms/85xx/p1010rdb.c')
-rw-r--r-- | arch/powerpc/platforms/85xx/p1010rdb.c | 38 |
1 files changed, 6 insertions, 32 deletions
diff --git a/arch/powerpc/platforms/85xx/p1010rdb.c b/arch/powerpc/platforms/85xx/p1010rdb.c index d7387fa7f534..538bc3f57e9d 100644 --- a/arch/powerpc/platforms/85xx/p1010rdb.c +++ b/arch/powerpc/platforms/85xx/p1010rdb.c | |||
@@ -28,33 +28,18 @@ | |||
28 | #include <sysdev/fsl_soc.h> | 28 | #include <sysdev/fsl_soc.h> |
29 | #include <sysdev/fsl_pci.h> | 29 | #include <sysdev/fsl_pci.h> |
30 | 30 | ||
31 | #include "mpc85xx.h" | ||
32 | |||
31 | void __init p1010_rdb_pic_init(void) | 33 | void __init p1010_rdb_pic_init(void) |
32 | { | 34 | { |
33 | struct mpic *mpic; | 35 | struct mpic *mpic = mpic_alloc(NULL, 0, |
34 | struct resource r; | 36 | MPIC_WANTS_RESET | MPIC_BIG_ENDIAN | |
35 | struct device_node *np; | 37 | MPIC_BROKEN_FRR_NIRQS | MPIC_SINGLE_DEST_CPU, |
36 | |||
37 | np = of_find_node_by_type(NULL, "open-pic"); | ||
38 | if (np == NULL) { | ||
39 | printk(KERN_ERR "Could not find open-pic node\n"); | ||
40 | return; | ||
41 | } | ||
42 | |||
43 | if (of_address_to_resource(np, 0, &r)) { | ||
44 | printk(KERN_ERR "Failed to map mpic register space\n"); | ||
45 | of_node_put(np); | ||
46 | return; | ||
47 | } | ||
48 | |||
49 | mpic = mpic_alloc(np, r.start, MPIC_PRIMARY | MPIC_WANTS_RESET | | ||
50 | MPIC_BIG_ENDIAN | MPIC_BROKEN_FRR_NIRQS | MPIC_SINGLE_DEST_CPU, | ||
51 | 0, 256, " OpenPIC "); | 38 | 0, 256, " OpenPIC "); |
52 | 39 | ||
53 | BUG_ON(mpic == NULL); | 40 | BUG_ON(mpic == NULL); |
54 | of_node_put(np); | ||
55 | 41 | ||
56 | mpic_init(mpic); | 42 | mpic_init(mpic); |
57 | |||
58 | } | 43 | } |
59 | 44 | ||
60 | 45 | ||
@@ -81,18 +66,7 @@ static void __init p1010_rdb_setup_arch(void) | |||
81 | printk(KERN_INFO "P1010 RDB board from Freescale Semiconductor\n"); | 66 | printk(KERN_INFO "P1010 RDB board from Freescale Semiconductor\n"); |
82 | } | 67 | } |
83 | 68 | ||
84 | static struct of_device_id __initdata p1010rdb_ids[] = { | 69 | machine_device_initcall(p1010_rdb, mpc85xx_common_publish_devices); |
85 | { .type = "soc", }, | ||
86 | { .compatible = "soc", }, | ||
87 | { .compatible = "simple-bus", }, | ||
88 | {}, | ||
89 | }; | ||
90 | |||
91 | static int __init p1010rdb_publish_devices(void) | ||
92 | { | ||
93 | return of_platform_bus_probe(NULL, p1010rdb_ids, NULL); | ||
94 | } | ||
95 | machine_device_initcall(p1010_rdb, p1010rdb_publish_devices); | ||
96 | machine_arch_initcall(p1010_rdb, swiotlb_setup_bus_notifier); | 70 | machine_arch_initcall(p1010_rdb, swiotlb_setup_bus_notifier); |
97 | 71 | ||
98 | /* | 72 | /* |