linux_dsm_epyc7002/drivers/net/wireless
Ido Yariv a620865edf wl12xx: Switch to a threaded interrupt handler
To achieve maximal throughput, it is very important to react to
interrupts as soon as possible. Currently the interrupt handler wakes up
a worker for handling interrupts in process context. A cleaner and more
efficient design would be to request a threaded interrupt handler.  This
handler's priority is very high, and can do blocking operations such as
SDIO/SPI transactions.

Some work can be deferred, mostly calls to mac80211 APIs
(ieee80211_rx_ni and ieee80211_tx_status). By deferring such work to a
different worker, we can keep the irq handler thread more I/O
responsive. In addition, on multi-core systems the two threads can be
scheduled on different cores, which will improve overall performance.

The use of WL1271_FLAG_IRQ_PENDING & WL1271_FLAG_IRQ_RUNNING was
changed. For simplicity, always query the FW for more pending
interrupts. Since there are relatively long bursts of interrupts, the
extra FW status read overhead is negligible. In addition, this enables
registering the IRQ handler with the ONESHOT option.

Signed-off-by: Ido Yariv <ido@wizery.com>
Reviewed-by: Luciano Coelho <coelho@ti.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2011-03-03 16:10:46 +02:00
..
ath ath9k_htc: Handle BSSID/AID for multiple interfaces 2011-03-01 13:48:21 -05:00
b43 b43: N-PHY: rev3+: add static tables 2011-03-01 13:48:22 -05:00
b43legacy mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
hostap hostap_cs: fix sleeping function called from invalid context 2011-01-10 15:40:53 -05:00
ipw2x00 drivers:net:ipw2100.c change a typo comamnd to command 2011-02-03 16:45:29 -05:00
iwlegacy iwlegacy: fix dma mappings and skbs leak 2011-02-28 14:06:56 -05:00
iwlwifi iwlwifi: move remaining iwl-agn-rx.c code into iwl-rx.c 2011-02-28 14:11:36 -05:00
iwmc3200wifi Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 2011-01-28 16:23:14 -05:00
libertas libertas: Prepare stuff for if_spi.c pm support 2011-02-03 16:38:26 -05:00
libertas_tf mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
orinoco orinoco: Drop scan results with unknown channels 2011-02-25 15:33:38 -05:00
p54 p54: fix a NULL pointer dereference bug 2011-02-28 14:06:54 -05:00
prism54
rt2x00 mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
rtl818x mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
rtlwifi rtlwifi: Fix error registering rate-control 2011-03-01 13:48:22 -05:00
wl12xx wl12xx: Switch to a threaded interrupt handler 2011-03-03 16:10:46 +02:00
wl1251 mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
zd1211rw mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
adm8211.c mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
adm8211.h
airo_cs.c
airo.c airo: use simple_write_to_buffer 2011-01-04 14:35:12 -05:00
airo.h
at76c50x-usb.c at76c50x-usb: fix warning caused by at76_mac80211_tx now returning void 2011-02-28 13:57:30 -05:00
at76c50x-usb.h
atmel_cs.c
atmel_pci.c
atmel.c
atmel.h
Kconfig iwlwifi: split the drivers for agn and legacy devices 3945/4965 2011-02-21 11:27:26 -08:00
mac80211_hwsim.c mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
Makefile rtlwifi: Fix build when RTL8192CU is selected, but RTL8192CE is not 2011-02-23 16:25:30 -05:00
mwl8k.c mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
ray_cs.c
ray_cs.h
rayctl.h
rndis_wlan.c rndis_wlan: add support for set_power_mgmt 2010-12-22 15:43:31 -05:00
wl3501_cs.c
wl3501.h
zd1201.c
zd1201.h