summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/wl12xx/wl12xx.h
diff options
context:
space:
mode:
authorIdo Yariv <ido@wizery.com>2011-03-01 15:14:39 +0200
committerLuciano Coelho <coelho@ti.com>2011-03-03 16:10:46 +0200
commit606ea9fa0b2c01ffafb6beae92ea8e2b1473520b (patch)
tree8a7c4b0978e896fa26d0e2211823afa8f17507c9 /drivers/net/wireless/wl12xx/wl12xx.h
parent8aad24642a7c06832a75f1d20e8e3112b4fbd815 (diff)
downloadlwn-606ea9fa0b2c01ffafb6beae92ea8e2b1473520b.tar.gz
lwn-606ea9fa0b2c01ffafb6beae92ea8e2b1473520b.zip
wl12xx: Do end-of-transactions transfers only if needed
On newer hardware revisions, there is no need to write the host's counter at the end of a RX transaction. The same applies to writing the number of packets at the end of a TX transaction. It is generally a good idea to avoid unnecessary SDIO/SPI transfers. Throughput and CPU usage are improved when avoiding these. Send the host's RX counter and the TX packet count only if needed, based on the hardware revision. [Changed WL12XX_QUIRK_END_OF_TRANSACTION to use BIT(0) -- Luca] Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com> Reviewed-by: Luciano Coelho <coelho@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl12xx.h')
-rw-r--r--drivers/net/wireless/wl12xx/wl12xx.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/wireless/wl12xx/wl12xx.h b/drivers/net/wireless/wl12xx/wl12xx.h
index 7132bc7dd2cf..ea1eee7895cf 100644
--- a/drivers/net/wireless/wl12xx/wl12xx.h
+++ b/drivers/net/wireless/wl12xx/wl12xx.h
@@ -535,6 +535,9 @@ struct wl1271 {
/* AP-mode - a bitmap of links currently in PS mode in mac80211 */
unsigned long ap_ps_map;
+
+ /* Quirks of specific hardware revisions */
+ unsigned int quirks;
};
struct wl1271_station {
@@ -562,4 +565,9 @@ int wl1271_plt_stop(struct wl1271 *wl);
#define HW_BG_RATES_MASK 0xffff
#define HW_HT_RATES_OFFSET 16
+/* Quirks */
+
+/* Each RX/TX transaction requires an end-of-transaction transfer */
+#define WL12XX_QUIRK_END_OF_TRANSACTION BIT(0)
+
#endif