linux/drivers/net/wireless/iwlwifi
Ben Cahill 74ba67edfc iwlagn: Use iwl_write8() for CSR_INT_COALESCING register
CSR_INT_COALESCING previously had only one, but now has two single-byte fields.
With only one single-byte field (lowest order byte) it was okay to write via
iwl_write32(), but now with two, an iwl_write32() to the lower order field
clobbers the other field (odd-address CSR_INT_PERIODIC_REG, offset 0x5), and an
iwl_write32() to CSR_INT_PERIODIC_REG could clobber the lowest byte of the
next-higher register (CSR_INT, offset 0x8).

Fortunately, no bad side effects have been produced by the iwl_write32()
usage, due to order of execution (low order byte was always written before
higher order byte), and the fact that writing "0" to the low byte of the
next higher register has no effect (only action is when writing "1"s).

Nonetheless, this cleans up the accesses so no bad side effects might occur
in the future, if execution order changes, or more bit fields get added to
CSR_INT_COALESCING.

Add some comments regarding periodic interrupt usage.

Signed-off-by: Ben Cahill <ben.m.cahill@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2009-11-23 17:05:30 -05:00
..
iwl3945-base.c cfg80211: convert bools into flags 2009-11-19 11:08:50 -05:00
iwl-1000.c iwlwifi: fix iwl1000 "RTS/CTS for HT" merge damage 2009-11-11 13:04:42 -08:00
iwl-3945-fh.h
iwl-3945-hw.h iwlwifi: remove duplicate defines 2009-10-27 16:50:02 -04:00
iwl-3945-led.c iwlwifi: LED cleanup 2009-10-07 16:39:45 -04:00
iwl-3945-led.h iwlwifi: LED cleanup 2009-10-07 16:39:45 -04:00
iwl-3945-rs.c drivers/net/wireless/iwlwifi: remove exceptional & on function name 2009-11-18 10:48:54 -08:00
iwl-3945.c iwlwifi: allocate 128 bytes linear buffer for rx skb 2009-11-11 15:23:41 -05:00
iwl-3945.h iwl3945: store station rate scale information in mac80211 station structure 2009-11-02 15:39:47 -05:00
iwl-4965-hw.h iwlwifi: remove duplicated/unused definition 2009-10-27 16:47:58 -04:00
iwl-4965.c iwlwifi: add sleep_tx_count ucode station API 2009-11-18 17:09:07 -05:00
iwl-5000-hw.h
iwl-5000.c iwlwifi: report PS filtered status 2009-11-18 17:09:07 -05:00
iwl-6000-hw.h
iwl-6000.c iwlwifi: drop non-production PCI-IDs for 6x50 series 2009-11-18 17:09:03 -05:00
iwl-agn-led.c iwlwifi: LED cleanup 2009-10-07 16:39:45 -04:00
iwl-agn-led.h iwlwifi: LED cleanup 2009-10-07 16:39:45 -04:00
iwl-agn-rs.c mac80211: convert aggregation to operate on vifs/stas 2009-11-18 17:09:15 -05:00
iwl-agn-rs.h iwlwifi: move rate scaling structures to header file 2009-10-27 16:48:32 -04:00
iwl-agn.c iwlagn: Use iwl_write8() for CSR_INT_COALESCING register 2009-11-23 17:05:30 -05:00
iwl-calib.c iwlwifi: update reply_statistics_cmd with 'clear' parameter 2009-11-18 17:09:04 -05:00
iwl-calib.h
iwl-commands.h iwlwifi: handle unicast PS buffering 2009-11-18 17:09:08 -05:00
iwl-core.c iwlagn: Use iwl_write8() for CSR_INT_COALESCING register 2009-11-23 17:05:30 -05:00
iwl-core.h iwlwifi: update reply_statistics_cmd with 'clear' parameter 2009-11-18 17:09:04 -05:00
iwl-csr.h iwlagn: Use iwl_write8() for CSR_INT_COALESCING register 2009-11-23 17:05:30 -05:00
iwl-debug.h iwlwifi: update reply_statistics_cmd with 'clear' parameter 2009-11-18 17:09:04 -05:00
iwl-debugfs.c iwlwifi: handle unicast PS buffering 2009-11-18 17:09:08 -05:00
iwl-dev.h iwlwifi: handle unicast PS buffering 2009-11-18 17:09:08 -05:00
iwl-devtrace.c iwlwifi: Add iwl_write8() 2009-11-23 17:05:30 -05:00
iwl-devtrace.h iwlwifi: Add iwl_write8() 2009-11-23 17:05:30 -05:00
iwl-eeprom.c iwlagn: power up device before initializing EEPROM 2009-11-18 17:09:06 -05:00
iwl-eeprom.h iwlwifi: validate enhanced tx power entry 2009-11-18 17:09:02 -05:00
iwl-fh.h
iwl-hcmd.c iwlwifi: change debug message to error in failure case 2009-11-11 15:23:40 -05:00
iwl-helpers.h
iwl-io.h iwlwifi: Add iwl_write8() 2009-11-23 17:05:30 -05:00
iwl-led.c iwlwifi: LED cleanup 2009-10-07 16:39:45 -04:00
iwl-led.h iwlwifi: LED cleanup 2009-10-07 16:39:45 -04:00
iwl-power.c iwlwifi: update reply_statistics_cmd with 'clear' parameter 2009-11-18 17:09:04 -05:00
iwl-power.h iwlwifi: remove duplicated define 2009-10-27 16:50:03 -04:00
iwl-prph.h iwlwifi: add FIFO usage for 5000 2009-11-11 15:23:43 -05:00
iwl-rx.c iwlagn: Use iwl_write8() for CSR_INT_COALESCING register 2009-11-23 17:05:30 -05:00
iwl-scan.c iwlwifi: use configured valid rx chain for scan 2009-11-11 15:23:42 -05:00
iwl-spectrum.c iwlwifi: use paged Rx 2009-10-27 16:48:06 -04:00
iwl-spectrum.h
iwl-sta.c iwlwifi: handle unicast PS buffering 2009-11-18 17:09:08 -05:00
iwl-sta.h iwlwifi: handle unicast PS buffering 2009-11-18 17:09:08 -05:00
iwl-tx.c mac80211: convert aggregation to operate on vifs/stas 2009-11-18 17:09:15 -05:00
Kconfig wireless: remove WLAN_80211 and WLAN_PRE80211 from Kconfig 2009-10-30 16:50:35 -04:00
Makefile iwlwifi: LED cleanup 2009-10-07 16:39:45 -04:00