aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/sgi-ip27
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/sgi-ip27')
-rw-r--r--arch/mips/sgi-ip27/ip27-irq.c26
-rw-r--r--arch/mips/sgi-ip27/ip27-timer.c4
2 files changed, 15 insertions, 15 deletions
diff --git a/arch/mips/sgi-ip27/ip27-irq.c b/arch/mips/sgi-ip27/ip27-irq.c
index 24a85372284f..f41587a206e2 100644
--- a/arch/mips/sgi-ip27/ip27-irq.c
+++ b/arch/mips/sgi-ip27/ip27-irq.c
@@ -129,7 +129,7 @@ static int ms1bit(unsigned long x)
129 * Kanoj 05.13.00 129 * Kanoj 05.13.00
130 */ 130 */
131 131
132static void ip27_do_irq_mask0(struct pt_regs *regs) 132static void ip27_do_irq_mask0(void)
133{ 133{
134 int irq, swlevel; 134 int irq, swlevel;
135 hubreg_t pend0, mask0; 135 hubreg_t pend0, mask0;
@@ -164,13 +164,13 @@ static void ip27_do_irq_mask0(struct pt_regs *regs)
164 struct slice_data *si = cpu_data[cpu].data; 164 struct slice_data *si = cpu_data[cpu].data;
165 165
166 irq = si->level_to_irq[swlevel]; 166 irq = si->level_to_irq[swlevel];
167 do_IRQ(irq, regs); 167 do_IRQ(irq);
168 } 168 }
169 169
170 LOCAL_HUB_L(PI_INT_PEND0); 170 LOCAL_HUB_L(PI_INT_PEND0);
171} 171}
172 172
173static void ip27_do_irq_mask1(struct pt_regs *regs) 173static void ip27_do_irq_mask1(void)
174{ 174{
175 int irq, swlevel; 175 int irq, swlevel;
176 hubreg_t pend1, mask1; 176 hubreg_t pend1, mask1;
@@ -190,17 +190,17 @@ static void ip27_do_irq_mask1(struct pt_regs *regs)
190 /* "map" swlevel to irq */ 190 /* "map" swlevel to irq */
191 irq = si->level_to_irq[swlevel]; 191 irq = si->level_to_irq[swlevel];
192 LOCAL_HUB_CLR_INTR(swlevel); 192 LOCAL_HUB_CLR_INTR(swlevel);
193 do_IRQ(irq, regs); 193 do_IRQ(irq);
194 194
195 LOCAL_HUB_L(PI_INT_PEND1); 195 LOCAL_HUB_L(PI_INT_PEND1);
196} 196}
197 197
198static void ip27_prof_timer(struct pt_regs *regs) 198static void ip27_prof_timer(void)
199{ 199{
200 panic("CPU %d got a profiling interrupt", smp_processor_id()); 200 panic("CPU %d got a profiling interrupt", smp_processor_id());
201} 201}
202 202
203static void ip27_hub_error(struct pt_regs *regs) 203static void ip27_hub_error(void)
204{ 204{
205 panic("CPU %d got a hub error interrupt", smp_processor_id()); 205 panic("CPU %d got a hub error interrupt", smp_processor_id());
206} 206}
@@ -418,22 +418,22 @@ int __devinit request_bridge_irq(struct bridge_controller *bc)
418 return irq; 418 return irq;
419} 419}
420 420
421extern void ip27_rt_timer_interrupt(struct pt_regs *regs); 421extern void ip27_rt_timer_interrupt(void);
422 422
423asmlinkage void plat_irq_dispatch(struct pt_regs *regs) 423asmlinkage void plat_irq_dispatch(void)
424{ 424{
425 unsigned long pending = read_c0_cause() & read_c0_status(); 425 unsigned long pending = read_c0_cause() & read_c0_status();
426 426
427 if (pending & CAUSEF_IP4) 427 if (pending & CAUSEF_IP4)
428 ip27_rt_timer_interrupt(regs); 428 ip27_rt_timer_interrupt();
429 else if (pending & CAUSEF_IP2) /* PI_INT_PEND_0 or CC_PEND_{A|B} */ 429 else if (pending & CAUSEF_IP2) /* PI_INT_PEND_0 or CC_PEND_{A|B} */
430 ip27_do_irq_mask0(regs); 430 ip27_do_irq_mask0();
431 else if (pending & CAUSEF_IP3) /* PI_INT_PEND_1 */ 431 else if (pending & CAUSEF_IP3) /* PI_INT_PEND_1 */
432 ip27_do_irq_mask1(regs); 432 ip27_do_irq_mask1();
433 else if (pending & CAUSEF_IP5) 433 else if (pending & CAUSEF_IP5)
434 ip27_prof_timer(regs); 434 ip27_prof_timer();
435 else if (pending & CAUSEF_IP6) 435 else if (pending & CAUSEF_IP6)
436 ip27_hub_error(regs); 436 ip27_hub_error();
437} 437}
438 438
439void __init arch_init_irq(void) 439void __init arch_init_irq(void)
diff --git a/arch/mips/sgi-ip27/ip27-timer.c b/arch/mips/sgi-ip27/ip27-timer.c
index 257ce118e380..4e870fc4469b 100644
--- a/arch/mips/sgi-ip27/ip27-timer.c
+++ b/arch/mips/sgi-ip27/ip27-timer.c
@@ -89,7 +89,7 @@ static int set_rtc_mmss(unsigned long nowtime)
89 89
90static unsigned int rt_timer_irq; 90static unsigned int rt_timer_irq;
91 91
92void ip27_rt_timer_interrupt(struct pt_regs *regs) 92void ip27_rt_timer_interrupt(void)
93{ 93{
94 int cpu = smp_processor_id(); 94 int cpu = smp_processor_id();
95 int cpuA = cputoslice(cpu) == 0; 95 int cpuA = cputoslice(cpu) == 0;
@@ -111,7 +111,7 @@ again:
111 if (cpu == 0) 111 if (cpu == 0)
112 do_timer(1); 112 do_timer(1);
113 113
114 update_process_times(user_mode(regs)); 114 update_process_times(user_mode(get_irq_regs()));
115 115
116 /* 116 /*
117 * If we have an externally synchronized Linux clock, then update 117 * If we have an externally synchronized Linux clock, then update