android_kernel_motorola_sm6225/drivers/net/wireless/ath/ath9k
Sujith Manoharan 176f0e841e ath9k: Fix RX DMA mapping
After the commit "ath9k: improve dma map failure handling", the
wrong buffer was DMA-unmapped, introducing warnings like the one below.
This patch fixes the issue.

WARNING: at /home/sujith/dev/wireless-testing/lib/dma-debug.c:986 check_sync+0x4bc/0x580()
Hardware name: LIFEBOOK AH531
ath9k 0000:02:00.0: DMA-API: device driver tries to sync DMA memory it has not allocated [device address=0x00000000d9012800] [size=48 bytes]
Pid: 86, comm: kworker/u:5 Tainted: G        W  O 3.9.0-rc8-wl-debug #106
Call Trace:
 [<ffffffff810410c0>] warn_slowpath_common+0x70/0xa0
 [<ffffffff8104113c>] warn_slowpath_fmt+0x4c/0x50
 [<ffffffff8125432c>] check_sync+0x4bc/0x580
 [<ffffffff8109e5f7>] ? trace_hardirqs_on_caller+0xa7/0x190
 [<ffffffff8109e6ed>] ? trace_hardirqs_on+0xd/0x10
 [<ffffffff81254488>] debug_dma_sync_single_for_device+0x48/0x50
 [<ffffffffa0a53825>] ? ath9k_iowrite32+0x35/0x90 [ath9k]
 [<ffffffff812512f0>] ? swiotlb_tbl_sync_single+0x50/0x90
 [<ffffffff81251350>] ? swiotlb_sync_single+0x20/0x30
 [<ffffffff8125137f>] ? swiotlb_sync_single_for_device+0xf/0x20
 [<ffffffffa0a58baf>] ath_rx_edma_buf_link+0xef/0x140 [ath9k]
 [<ffffffffa0a58c4e>] ath_rx_addbuffer_edma+0x4e/0x90 [ath9k]
 [<ffffffffa0a59c51>] ath_startrecv+0xf1/0x120 [ath9k]
 [<ffffffffa0a550e0>] ath_complete_reset+0x20/0x130 [ath9k]
 [<ffffffffa0a5790d>] ath_reset_internal+0x10d/0x210 [ath9k]
 [<ffffffffa0a5878c>] ath9k_config+0x47c/0x7b0 [ath9k]
 [<ffffffffa06d4978>] ieee80211_hw_config+0x88/0x3f0 [mac80211]
 [<ffffffffa06d4a3f>] ? ieee80211_hw_config+0x14f/0x3f0 [mac80211]
 [<ffffffffa06dbed1>] __ieee80211_scan_completed+0xc1/0x440 [mac80211]
 [<ffffffffa06dd002>] ieee80211_scan_work+0x82/0x440 [mac80211]
 [<ffffffff810606a3>] process_one_work+0x1e3/0x530
 [<ffffffff81060641>] ? process_one_work+0x181/0x530
 [<ffffffff8106163f>] worker_thread+0x10f/0x3c0
 [<ffffffff81061530>] ? manage_workers+0x330/0x330
 [<ffffffff810665da>] kthread+0xea/0xf0
 [<ffffffff810664f0>] ? kthread_create_on_node+0x140/0x140
 [<ffffffff8146085c>] ret_from_fork+0x7c/0xb0
 [<ffffffff810664f0>] ? kthread_create_on_node+0x140/0x140

Cc: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Acked-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2013-04-23 14:14:54 -04:00
..
ahb.c ath9k: use the devres API for allocations/mappings 2013-01-07 15:16:51 -05:00
ani.c ath9k_hw: remove a useless WARN_ON 2013-01-22 16:05:32 -05:00
ani.h ath9k_hw: reduce struct ar5416AniState size 2013-01-22 16:05:31 -05:00
antenna.c ath9k: Add a module parameter to enable diversity 2012-09-24 14:59:11 -04:00
ar955x_1p0_initvals.h ath9k_hw: Update initvals for QCA955x 2013-01-09 14:37:11 -05:00
ar5008_initvals.h ath9k: fix column header comments for some initval arrays 2013-01-07 15:16:53 -05:00
ar5008_phy.c ath9k_hw: make various ar5416/ar91xx rf banks const 2013-04-10 14:10:32 -04:00
ar9001_initvals.h ath9k: fix column header comments for some initval arrays 2013-01-07 15:16:53 -05:00
ar9002_calib.c Show actual timeout value in failed calibration messages. 2013-03-27 13:39:08 -04:00
ar9002_hw.c ath9k_hw: make various ar5416/ar91xx rf banks const 2013-04-10 14:10:32 -04:00
ar9002_initvals.h ath9k_hw: INI changes for WoW for AR9002 chipsets 2012-07-12 15:27:16 -04:00
ar9002_mac.c ath9k: Gather and report IRQ sync_cause errors. 2012-04-16 14:16:58 -04:00
ar9002_phy.c ath9k_hw: ar9002_hw_spectral_scan_config() can be static 2013-01-14 15:10:40 -05:00
ar9002_phy.h
ar9003_2p2_initvals.h ath9k_hw: add tx gain tables for newer devices 2013-01-11 14:50:00 -05:00
ar9003_calib.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2013-03-29 16:41:36 -04:00
ar9003_eeprom.c ath9k_hw: Fix fixed antenna for AR9462 2013-03-06 16:28:57 -05:00
ar9003_eeprom.h ath9k: ar9003: fix OTP register offsets for AR9340 2012-12-10 15:49:44 -05:00
ar9003_hw.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2013-01-28 13:54:03 -05:00
ar9003_mac.c ath9k_hw: Handle AR_INTR_SYNC_HOST1_(FATAL|PERR) on AR9003 2012-09-28 13:54:10 -04:00
ar9003_mac.h
ar9003_mci.c ath9k: Fix MCI reset in BT cal_req 2012-11-21 14:16:01 -05:00
ar9003_mci.h ath9k: Add new BT profile info A2DP_Voice 2012-10-29 15:19:30 -04:00
ar9003_paprd.c ath9k_hw: Calculate the correct training power for PAPRD 2012-12-10 15:49:51 -05:00
ar9003_phy.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2013-01-28 13:54:03 -05:00
ar9003_phy.h ath9k_hw: Add TempCompensation feature for AR9550 2013-01-09 14:37:11 -05:00
ar9003_rtt.c ath9k_hw: Fix RTT calibration 2012-05-15 17:27:55 -04:00
ar9003_rtt.h ath9k_hw: Fix RTT calibration 2012-05-15 17:27:55 -04:00
ar9330_1p1_initvals.h ath9k: de-duplicate initvals 2012-06-28 14:37:47 -04:00
ar9330_1p2_initvals.h ath9k: de-duplicate initvals 2012-06-28 14:37:47 -04:00
ar9340_initvals.h ath9k_hw: add tx gain tables for newer devices 2013-01-11 14:50:00 -05:00
ar9462_2p0_initvals.h ath9k_hw: Update initvals for AR9462 2013-03-06 16:28:56 -05:00
ar9485_initvals.h ath9k_hw: add tx gain tables for newer devices 2013-01-11 14:50:00 -05:00
ar9565_1p0_initvals.h ath9k_hw: Enable hw PLL power save for AR9565 2012-10-29 15:30:31 -04:00
ar9580_1p0_initvals.h ath9k_hw: change AR9580 initvals to fix a stability issue 2013-04-12 13:22:09 -04:00
ath9k.h ath9k: add support for the new rate control API 2013-04-23 14:14:53 -04:00
beacon.c mac80211: Use a cfg80211_chan_def in ieee80211_hw_conf_chan 2013-03-25 19:19:35 +01:00
btcoex.c ath9k: stomp audio profiles on weak signal strength 2012-11-21 14:16:01 -05:00
btcoex.h ath9k: stomp audio profiles on weak signal strength 2012-11-21 14:16:01 -05:00
calib.c Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next 2013-04-10 14:09:54 -04:00
calib.h ath9k_hw: make various ar5416/ar91xx rf banks const 2013-04-10 14:10:32 -04:00
common.c ath9k_common: remove ath9k_cmn_padpos 2013-04-10 14:10:33 -04:00
common.h ath9k_common: remove ath9k_cmn_padpos 2013-04-10 14:10:33 -04:00
debug.c ath9k: trivial: change spectral relayfs buffering 2013-03-27 13:37:32 -04:00
debug.h ath9k: Report txerr-filtered errors in debugfs. 2013-03-06 16:29:01 -05:00
dfs.c ath9k: change DFS logging to use ath_dbg() 2013-04-22 15:17:40 -04:00
dfs.h ath9k: update to DFS pattern detector interface 2012-04-11 16:23:54 -04:00
dfs_debug.c ath9k: add debugfs based DFS radar simulation 2013-04-08 15:28:38 -04:00
dfs_debug.h ath9k: extend DFS detector stats in dfs_debugfs 2012-04-23 15:37:41 -04:00
dfs_pattern_detector.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2013-04-23 14:09:39 -04:00
dfs_pattern_detector.h ath9k: change DFS logging to use ath_dbg() 2013-04-22 15:17:40 -04:00
dfs_pri_detector.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2013-04-23 14:09:39 -04:00
dfs_pri_detector.h ath9k: change DFS logging to use ath_dbg() 2013-04-22 15:17:40 -04:00
eeprom.c ath9k: allow to load EEPROM content via firmware API 2012-12-10 15:49:57 -05:00
eeprom.h ath9k: use 'struct ath_hw *' as the first argument for 'ath9k_hw_nvram_read' 2012-12-10 15:49:56 -05:00
eeprom_4k.c ath9k: use 'struct ath_hw *' as the first argument for 'ath9k_hw_nvram_read' 2012-12-10 15:49:56 -05:00
eeprom_9287.c ath9k: use 'struct ath_hw *' as the first argument for 'ath9k_hw_nvram_read' 2012-12-10 15:49:56 -05:00
eeprom_def.c ath9k: use 'struct ath_hw *' as the first argument for 'ath9k_hw_nvram_read' 2012-12-10 15:49:56 -05:00
gpio.c ath9k/ath9k_htc: Remove WME macros 2012-11-21 14:16:02 -05:00
hif_usb.c ath9k_htc: Add PID/VID for a Ubiquiti WiFiStation 2012-10-24 13:18:08 -04:00
hif_usb.h wireless: ath9k-htc: only load firmware in need 2012-09-07 15:03:36 -04:00
htc.h ath9k_htc: fix signal strength handling issues 2013-02-27 14:12:51 -05:00
htc_drv_beacon.c ath9k_common: remove ath9k_cmn_padpos 2013-04-10 14:10:33 -04:00
htc_drv_debug.c ath9k/ath9k_htc: Remove WME macros 2012-11-21 14:16:02 -05:00
htc_drv_gpio.c ath9k/ath9k_htc: Remove WME macros 2012-11-21 14:16:02 -05:00
htc_drv_init.c ath9k_htc: accept 1.x firmware newer than 1.3 2013-04-08 14:35:03 -04:00
htc_drv_main.c ath9k_common: remove ath9k_cmn_padpos 2013-04-10 14:10:33 -04:00
htc_drv_txrx.c ath9k_common: remove ath9k_cmn_padpos 2013-04-10 14:10:33 -04:00
htc_hst.c ath9k_htc: Fix memory leak 2013-01-11 14:12:01 -05:00
htc_hst.h
hw-ops.h ath9k_hw: use the devres API for allocations 2013-01-07 15:16:51 -05:00
hw.c ath9k: apply coverage class on slottime too 2013-04-23 14:14:52 -04:00
hw.h ath9k_hw: make various ar5416/ar91xx rf banks const 2013-04-10 14:10:32 -04:00
init.c ath9k: add support for the new rate control API 2013-04-23 14:14:53 -04:00
Kconfig ath9k: Select RELAY for ATH9K_DEBUGFS 2013-02-01 14:27:23 -05:00
link.c Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next 2013-04-10 14:09:54 -04:00
mac.c ath9k: detect more kinds of invalid descriptors 2013-04-10 14:10:33 -04:00
mac.h ath9k: detect more kinds of invalid descriptors 2013-04-10 14:10:33 -04:00
main.c ath9k: always set common->macaddr to the MAC adress of a virtual interface 2013-04-22 15:20:15 -04:00
Makefile ath9k_hw: Add hardware code for WoW 2012-07-12 15:27:16 -04:00
mci.c ath9k: Remove unused variables in ath_mci_cleanup 2013-02-01 14:27:24 -05:00
mci.h ath9k: Add new BT profile info A2DP_Voice 2012-10-29 15:19:30 -04:00
pci.c ath9k: use the devres API for allocations/mappings 2013-01-07 15:16:51 -05:00
phy.h
rc.c mac80211: Use a cfg80211_chan_def in ieee80211_hw_conf_chan 2013-03-25 19:19:35 +01:00
rc.h ath9k: Fix rate control debugging 2012-11-21 14:16:04 -05:00
recv.c ath9k: Fix RX DMA mapping 2013-04-23 14:14:54 -04:00
reg.h ath: update hardware mac address with bssid mask 2013-04-22 15:20:15 -04:00
wmi.c
wmi.h
wow.c ath9k_hw: Configure new switch table for AR9565 BTCOEX 2012-10-29 15:19:30 -04:00
xmit.c ath9k: add support for the new rate control API 2013-04-23 14:14:53 -04:00