aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/wl12xx/wl1271.h
diff options
context:
space:
mode:
authorIdo Yariv <ido@wizery.com>2010-09-30 07:28:27 -0400
committerLuciano Coelho <luciano.coelho@nokia.com>2010-10-05 09:27:29 -0400
commit1f37cbc9363462c99794699442da39f36be0aaf7 (patch)
tree3f7bf42c5fa78b08010071da8f1977234e255c64 /drivers/net/wireless/wl12xx/wl1271.h
parent5c57a901dc96fc81d0041282269b43542f170d2a (diff)
wl1271: Support firmware RX packet aggregation
Instead of retrieving one packet at a time from the firmware, try to retrieve all available packets at once. This optimization decreases the number of transactions, which saves CPU cycles and increases network throughput. Signed-off-by: Ido Yariv <ido@wizery.com> Tested-by: Juuso Oikarinen <juuso.oikarinen@nokia.com> Signed-off-by: Luciano Coelho <luciano.coelho@nokia.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl1271.h')
-rw-r--r--drivers/net/wireless/wl12xx/wl1271.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/wireless/wl12xx/wl1271.h b/drivers/net/wireless/wl12xx/wl1271.h
index 779b130fdb3e..8a4cd763e5a2 100644
--- a/drivers/net/wireless/wl12xx/wl1271.h
+++ b/drivers/net/wireless/wl12xx/wl1271.h
@@ -130,6 +130,8 @@ enum {
130 130
131#define ACX_TX_DESCRIPTORS 32 131#define ACX_TX_DESCRIPTORS 32
132 132
133#define WL1271_AGGR_BUFFER_SIZE (4 * PAGE_SIZE)
134
133enum wl1271_state { 135enum wl1271_state {
134 WL1271_STATE_OFF, 136 WL1271_STATE_OFF,
135 WL1271_STATE_ON, 137 WL1271_STATE_ON,
@@ -408,6 +410,9 @@ struct wl1271 {
408 /* Rx memory pool address */ 410 /* Rx memory pool address */
409 struct wl1271_rx_mem_pool_addr rx_mem_pool_addr; 411 struct wl1271_rx_mem_pool_addr rx_mem_pool_addr;
410 412
413 /* Intermediate buffer, used for packet aggregation */
414 u8 *aggr_buf;
415
411 /* The target interrupt mask */ 416 /* The target interrupt mask */
412 struct work_struct irq_work; 417 struct work_struct irq_work;
413 418