aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/embedded6xx/linkstation.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/platforms/embedded6xx/linkstation.c')
-rw-r--r--arch/powerpc/platforms/embedded6xx/linkstation.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/arch/powerpc/platforms/embedded6xx/linkstation.c b/arch/powerpc/platforms/embedded6xx/linkstation.c
index 244f997de79..72b36850c5e 100644
--- a/arch/powerpc/platforms/embedded6xx/linkstation.c
+++ b/arch/powerpc/platforms/embedded6xx/linkstation.c
@@ -82,28 +82,22 @@ static void __init linkstation_init_IRQ(void)
82{ 82{
83 struct mpic *mpic; 83 struct mpic *mpic;
84 struct device_node *dnp; 84 struct device_node *dnp;
85 const u32 *prop;
86 int size;
87 phys_addr_t paddr;
88 85
89 dnp = of_find_node_by_type(NULL, "open-pic"); 86 dnp = of_find_node_by_type(NULL, "open-pic");
90 if (dnp == NULL) 87 if (dnp == NULL)
91 return; 88 return;
92 89
93 prop = of_get_property(dnp, "reg", &size); 90 mpic = mpic_alloc(dnp, 0, MPIC_PRIMARY | MPIC_WANTS_RESET, 4, 32, " EPIC ");
94 paddr = (phys_addr_t)of_translate_address(dnp, prop);
95
96 mpic = mpic_alloc(dnp, paddr, MPIC_PRIMARY | MPIC_WANTS_RESET, 4, 32, " EPIC ");
97 BUG_ON(mpic == NULL); 91 BUG_ON(mpic == NULL);
98 92
99 /* PCI IRQs */ 93 /* PCI IRQs */
100 mpic_assign_isu(mpic, 0, paddr + 0x10200); 94 mpic_assign_isu(mpic, 0, mpic->paddr + 0x10200);
101 95
102 /* I2C */ 96 /* I2C */
103 mpic_assign_isu(mpic, 1, paddr + 0x11000); 97 mpic_assign_isu(mpic, 1, mpic->paddr + 0x11000);
104 98
105 /* ttyS0, ttyS1 */ 99 /* ttyS0, ttyS1 */
106 mpic_assign_isu(mpic, 2, paddr + 0x11100); 100 mpic_assign_isu(mpic, 2, mpic->paddr + 0x11100);
107 101
108 mpic_init(mpic); 102 mpic_init(mpic);
109} 103}