diff options
author | Nick Kossifidis <mickflemm@gmail.com> | 2010-11-23 18:41:15 (GMT) |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-11-30 18:52:30 (GMT) |
commit | d41174fabdae348c6583cf05aeb329da232c342c (patch) | |
tree | 6f1979e64f748c8f6c060c28804424a79f49b0d6 /drivers/net/wireless/ath/ath5k/reset.c | |
parent | 9320b5c4a7260d9593102f378201d17e3f030739 (diff) | |
download | linux-fsl-qoriq-d41174fabdae348c6583cf05aeb329da232c342c.tar.xz |
ath5k: Add new function to stop rx/tx DMA
* Add a new function to stop rx/tx dma and use in when reset starts
Signed-off-by: Nick Kossifidis <mickflemm@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath5k/reset.c')
-rw-r--r-- | drivers/net/wireless/ath/ath5k/reset.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/net/wireless/ath/ath5k/reset.c b/drivers/net/wireless/ath/ath5k/reset.c index 9dd5792..0833677 100644 --- a/drivers/net/wireless/ath/ath5k/reset.c +++ b/drivers/net/wireless/ath/ath5k/reset.c @@ -823,6 +823,14 @@ int ath5k_hw_reset(struct ath5k_hw *ah, enum nl80211_iftype op_mode, mode = 0; /* + * Stop DMA + * + * Note: If DMA didn't stop continue + * since only a reset will fix it. + */ + ath5k_hw_dma_stop(ah); + + /* * Save some registers before a reset */ /*DCU/Antenna selection not available on 5210*/ @@ -1015,11 +1023,6 @@ int ath5k_hw_reset(struct ath5k_hw *ah, enum nl80211_iftype op_mode, */ ath5k_hw_pcu_init(ah, op_mode, mode); - /* Clear any pending interrupts - * PISR/SISR Not available on 5210 */ - if (ah->ah_version != AR5K_AR5210) - ath5k_hw_reg_write(ah, 0xffffffff, AR5K_PISR); - /* * Initialize PHY */ |