Skip to contentSkip to conversation

ssb-pcicore: Fix IRQ TPS flag handling

PATCH New Michael Buesch 1 participant 1 message Apr 8, 2008 Sonics silicon backplane driver (ssb)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ssb-pcicore: Fix IRQ TPS flag handling

From: Larry Finger <[email protected]>

This fixes the TPS flag handling for the SSB pcicore driver. This fixes interrupts on some devices.

---

John, this is an important bugfix for 2.6.25.

drivers/ssb/driver_pcicore.c +1 -1
Index: wireless-testing/drivers/ssb/driver_pcicore.c
===================================================================
@@ -566,13 +566,13 @@ int ssb_pcicore_dev_irqvecs_enable(struc
 			/* Workaround: On the BCM44XX the BPFLAG routing
 			 * bit is wrong. Use a hardcoded constant. */
 			intvec |= 0x00000002;
 		} else {
 			tmp = ssb_read32(dev, SSB_TPSFLAG);
 			tmp &= SSB_TPSFLAG_BPFLAG;
-			intvec |= tmp;
+			intvec |= (1 << tmp);
 		}
 		ssb_write32(pdev, SSB_INTVEC, intvec);
 	}
 
 	/* Setup PCIcore operation. */
 	if (pc->setup_done)