ssb-mipscore: Fix interrupt vectors

This fixes assignment of the interrupt vectors on the SSB MIPS core.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>

authored by Michael Buesch and committed by John W. Linville 2633da23 b63009b4

+7 -6
+7 -6
drivers/ssb/driver_mipscore.c
··· 109 109 clear_irq(bus, oldirq); 110 110 111 111 /* assign the new one */ 112 - if (irq == 0) 113 - ssb_write32(mdev, SSB_INTVEC, ((1 << irqflag) & ssb_read32(mdev, SSB_INTVEC))); 114 - 115 - irqflag <<= ipsflag_irq_shift[irq]; 116 - irqflag |= (ssb_read32(mdev, SSB_IPSFLAG) & ~ipsflag_irq_mask[irq]); 117 - ssb_write32(mdev, SSB_IPSFLAG, irqflag); 112 + if (irq == 0) { 113 + ssb_write32(mdev, SSB_INTVEC, ((1 << irqflag) | ssb_read32(mdev, SSB_INTVEC))); 114 + } else { 115 + irqflag <<= ipsflag_irq_shift[irq]; 116 + irqflag |= (ssb_read32(mdev, SSB_IPSFLAG) & ~ipsflag_irq_mask[irq]); 117 + ssb_write32(mdev, SSB_IPSFLAG, irqflag); 118 + } 118 119 } 119 120 120 121 static void ssb_mips_serial_init(struct ssb_mipscore *mcore)