aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2012-12-07 17:04:13 +0100
committerJohn W. Linville <linville@tuxdriver.com>2012-12-10 15:47:30 -0500
commit512ae05611179e6e98a48b5ddc4d263b7eb8a587 (patch)
tree28d9b88f9ed9857dc70eced7cd0a34e79e0f20fd /drivers/net/wireless
parentath9k: Fix regression in 'xmit' debugfs file (diff)
downloadlinux-dev-512ae05611179e6e98a48b5ddc4d263b7eb8a587.tar.xz
linux-dev-512ae05611179e6e98a48b5ddc4d263b7eb8a587.zip
brcmsmac: do a read after the write of the objmem on broken PCIe controllers
As described in the documentation of bcma_wflush16 in drivers/net /wireless/brcm80211/brcmsmac/types.h some PCIe controllers of Broadcom SoCs are broken. The PCIe controller on these SoCs are mostly used to connect some additional wifi device to the SoC and some of these wifi devices are supported by brcmsmac. For my BCM43224 connected to the broken PCIe controller of the BCM4718 I need an extra read after write in brcms_b_write_objmem() to prevent a Data bus error. This fixes the problem reading tsf_random later. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/brcm80211/brcmsmac/main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmsmac/main.c b/drivers/net/wireless/brcm80211/brcmsmac/main.c
index cb48fc479443..2599cd0cd667 100644
--- a/drivers/net/wireless/brcm80211/brcmsmac/main.c
+++ b/drivers/net/wireless/brcm80211/brcmsmac/main.c
@@ -2920,7 +2920,7 @@ brcms_b_write_objmem(struct brcms_hardware *wlc_hw, uint offset, u16 v,
if (offset & 2)
objoff += 2;
- bcma_write16(core, objoff, v);
+ bcma_wflush16(core, objoff, v);
}
/*