|
@@ -412,18 +412,6 @@ static void bcm1480_kgdb_interrupt(void)
|
|
|
|
|
|
extern void bcm1480_mailbox_interrupt(void);
|
|
extern void bcm1480_mailbox_interrupt(void);
|
|
|
|
|
|
-static inline void dispatch_ip4(void)
|
|
|
|
-{
|
|
|
|
- int cpu = smp_processor_id();
|
|
|
|
- int irq = K_BCM1480_INT_TIMER_0 + cpu;
|
|
|
|
-
|
|
|
|
- /* Reset the timer */
|
|
|
|
- __raw_writeq(M_SCD_TIMER_ENABLE|M_SCD_TIMER_MODE_CONTINUOUS,
|
|
|
|
- IOADDR(A_SCD_TIMER_REGISTER(cpu, R_SCD_TIMER_CFG)));
|
|
|
|
-
|
|
|
|
- do_IRQ(irq);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
static inline void dispatch_ip2(void)
|
|
static inline void dispatch_ip2(void)
|
|
{
|
|
{
|
|
unsigned long long mask_h, mask_l;
|
|
unsigned long long mask_h, mask_l;
|
|
@@ -451,6 +439,7 @@ static inline void dispatch_ip2(void)
|
|
|
|
|
|
asmlinkage void plat_irq_dispatch(void)
|
|
asmlinkage void plat_irq_dispatch(void)
|
|
{
|
|
{
|
|
|
|
+ unsigned int cpu = smp_processor_id();
|
|
unsigned int pending;
|
|
unsigned int pending;
|
|
|
|
|
|
#ifdef CONFIG_SIBYTE_BCM1480_PROF
|
|
#ifdef CONFIG_SIBYTE_BCM1480_PROF
|
|
@@ -467,7 +456,7 @@ asmlinkage void plat_irq_dispatch(void)
|
|
#endif
|
|
#endif
|
|
|
|
|
|
if (pending & CAUSEF_IP4)
|
|
if (pending & CAUSEF_IP4)
|
|
- dispatch_ip4();
|
|
|
|
|
|
+ do_IRQ(K_BCM1480_INT_TIMER_0 + cpu);
|
|
#ifdef CONFIG_SMP
|
|
#ifdef CONFIG_SMP
|
|
else if (pending & CAUSEF_IP3)
|
|
else if (pending & CAUSEF_IP3)
|
|
bcm1480_mailbox_interrupt();
|
|
bcm1480_mailbox_interrupt();
|