aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/b43legacy/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/b43legacy/main.c')
-rw-r--r--drivers/net/wireless/b43legacy/main.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/wireless/b43legacy/main.c b/drivers/net/wireless/b43legacy/main.c
index b166a6f9f055..1d9223b3d4c4 100644
--- a/drivers/net/wireless/b43legacy/main.c
+++ b/drivers/net/wireless/b43legacy/main.c
@@ -3106,16 +3106,20 @@ static void b43legacy_imcfglo_timeouts_workaround(struct b43legacy_wldev *dev)
3106 bus->pcicore.dev->id.revision <= 5) { 3106 bus->pcicore.dev->id.revision <= 5) {
3107 /* IMCFGLO timeouts workaround. */ 3107 /* IMCFGLO timeouts workaround. */
3108 tmp = ssb_read32(dev->dev, SSB_IMCFGLO); 3108 tmp = ssb_read32(dev->dev, SSB_IMCFGLO);
3109 tmp &= ~SSB_IMCFGLO_REQTO;
3110 tmp &= ~SSB_IMCFGLO_SERTO;
3111 switch (bus->bustype) { 3109 switch (bus->bustype) {
3112 case SSB_BUSTYPE_PCI: 3110 case SSB_BUSTYPE_PCI:
3113 case SSB_BUSTYPE_PCMCIA: 3111 case SSB_BUSTYPE_PCMCIA:
3112 tmp &= ~SSB_IMCFGLO_REQTO;
3113 tmp &= ~SSB_IMCFGLO_SERTO;
3114 tmp |= 0x32; 3114 tmp |= 0x32;
3115 break; 3115 break;
3116 case SSB_BUSTYPE_SSB: 3116 case SSB_BUSTYPE_SSB:
3117 tmp &= ~SSB_IMCFGLO_REQTO;
3118 tmp &= ~SSB_IMCFGLO_SERTO;
3117 tmp |= 0x53; 3119 tmp |= 0x53;
3118 break; 3120 break;
3121 default:
3122 break;
3119 } 3123 }
3120 ssb_write32(dev->dev, SSB_IMCFGLO, tmp); 3124 ssb_write32(dev->dev, SSB_IMCFGLO, tmp);
3121 } 3125 }