ath9k: never read from the AR_IMR_S2 register
authorPavel Roskin <proski@gnu.org>
Tue, 23 Feb 2010 23:15:27 +0000 (18:15 -0500)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 9 Mar 2010 20:03:06 +0000 (15:03 -0500)
commit74bad5cb497080514c4a945f38589bdb574fdfb7
tree769baaf1d6c61e2a1d69eb2af19cd813415321c6
parentb4d59a9317e41faec3d0b6a03f0454d1e8abb710
ath9k: never read from the AR_IMR_S2 register

The AR_IMR_S2 register sometimes cannot be read correctly.  Instead of a
valid value, 0xdeadbeef is returned.  The driver has been observed
writing that value back to AR_IMR_S2 after changing a few bits.

Cache the register value in ah->imrs2_reg and always write chached value
to the register.

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/hw.c
drivers/net/wireless/ath/ath9k/hw.h
drivers/net/wireless/ath/ath9k/mac.c