ssb-mips: Fix IRQ routing on the MIPS core.
SVN-Revision: 10770
This commit is contained in:
parent
99e6b2d7dc
commit
2e8af76a60
1 changed files with 7 additions and 6 deletions
|
@ -109,12 +109,13 @@ static void set_irq(struct ssb_device *dev, unsigned int irq)
|
|||
clear_irq(bus, oldirq);
|
||||
|
||||
/* assign the new one */
|
||||
if (irq == 0)
|
||||
ssb_write32(mdev, SSB_INTVEC, ((1 << irqflag) & ssb_read32(mdev, SSB_INTVEC)));
|
||||
|
||||
irqflag <<= ipsflag_irq_shift[irq];
|
||||
irqflag |= (ssb_read32(mdev, SSB_IPSFLAG) & ~ipsflag_irq_mask[irq]);
|
||||
ssb_write32(mdev, SSB_IPSFLAG, irqflag);
|
||||
if (irq == 0) {
|
||||
ssb_write32(mdev, SSB_INTVEC, ((1 << irqflag) | ssb_read32(mdev, SSB_INTVEC)));
|
||||
} else {
|
||||
irqflag <<= ipsflag_irq_shift[irq];
|
||||
irqflag |= (ssb_read32(mdev, SSB_IPSFLAG) & ~ipsflag_irq_mask[irq]);
|
||||
ssb_write32(mdev, SSB_IPSFLAG, irqflag);
|
||||
}
|
||||
}
|
||||
|
||||
static void ssb_mips_serial_init(struct ssb_mipscore *mcore)
|
||||
|
|
Loading…
Reference in a new issue