aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-3945.h
diff options
context:
space:
mode:
authorRon Rindjunsky <ron.rindjunsky@intel.com>2007-11-26 09:14:42 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-28 18:05:46 -0500
commit9ee1ba474fc37bcaf6a958bf7e995006fc69893b (patch)
tree42224488712bfd808909ce48e0a4c2a8bc69c606 /drivers/net/wireless/iwlwifi/iwl-3945.h
parent270243a50574455f593378377c0fa74284730f7d (diff)
iwlwifi: 802.11n add support to 8K A-MSDU Rx frames
This patch give the iwlwifi the ability to support A-MSDU up to 8K Please notice - in order to work in 8K A-MSDU ucode support is needed, version 4.44.1.19 (soon to be published). 4K A-MSDU works in current ucode version as well. Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-3945.h')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-3945.h31
1 files changed, 29 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-3945.h b/drivers/net/wireless/iwlwifi/iwl-3945.h
index 263b0b71c0c..709203a4198 100644
--- a/drivers/net/wireless/iwlwifi/iwl-3945.h
+++ b/drivers/net/wireless/iwlwifi/iwl-3945.h
@@ -75,6 +75,7 @@ enum iwl3945_antenna {
75 * else RTS for data/management frames where MPDU is larger 75 * else RTS for data/management frames where MPDU is larger
76 * than RTS value. 76 * than RTS value.
77 */ 77 */
78#define IWL_RX_BUF_SIZE 3000U
78#define DEFAULT_RTS_THRESHOLD 2347U 79#define DEFAULT_RTS_THRESHOLD 2347U
79#define MIN_RTS_THRESHOLD 0U 80#define MIN_RTS_THRESHOLD 0U
80#define MAX_RTS_THRESHOLD 2347U 81#define MAX_RTS_THRESHOLD 2347U
@@ -452,6 +453,30 @@ union iwl3945_ht_rate_supp {
452 }; 453 };
453}; 454};
454 455
456#ifdef CONFIG_IWL3945_HT
457#define CFG_HT_RX_AMPDU_FACTOR_DEF (0x3)
458#define CFG_HT_MPDU_DENSITY_2USEC (0x5)
459#define CFG_HT_MPDU_DENSITY_DEF CFG_HT_MPDU_DENSITY_2USEC
460
461struct sta_ht_info {
462 u8 is_ht;
463 u16 rx_mimo_ps_mode;
464 u16 tx_mimo_ps_mode;
465 u16 control_channel;
466 u8 max_amsdu_size;
467 u8 ampdu_factor;
468 u8 mpdu_density;
469 u8 operating_mode;
470 u8 supported_chan_width;
471 u8 extension_chan_offset;
472 u8 is_green_field;
473 u8 sgf;
474 u8 supp_rates[16];
475 u8 tx_chan_width;
476 u8 chan_width_cap;
477};
478#endif /*CONFIG_IWL3945_HT */
479
455#ifdef CONFIG_IWL3945_QOS 480#ifdef CONFIG_IWL3945_QOS
456 481
457union iwl3945_qos_capabity { 482union iwl3945_qos_capabity {
@@ -535,7 +560,8 @@ struct iwl3945_ibss_seq {
535 * @ac_queue_count: # Tx queues for EDCA Access Categories (AC) 560 * @ac_queue_count: # Tx queues for EDCA Access Categories (AC)
536 * @tx_cmd_len: Size of Tx command (but not including frame itself) 561 * @tx_cmd_len: Size of Tx command (but not including frame itself)
537 * @max_rxq_size: Max # Rx frames in Rx queue (must be power-of-2) 562 * @max_rxq_size: Max # Rx frames in Rx queue (must be power-of-2)
538 * @rx_buffer_size: 563 * @rx_buf_size:
564 * @max_pkt_size:
539 * @max_rxq_log: Log-base-2 of max_rxq_size 565 * @max_rxq_log: Log-base-2 of max_rxq_size
540 * @max_stations: 566 * @max_stations:
541 * @bcast_sta_id: 567 * @bcast_sta_id:
@@ -547,7 +573,8 @@ struct iwl3945_driver_hw_info {
547 u16 ac_queue_count; 573 u16 ac_queue_count;
548 u16 tx_cmd_len; 574 u16 tx_cmd_len;
549 u16 max_rxq_size; 575 u16 max_rxq_size;
550 u32 rx_buffer_size; 576 u32 rx_buf_size;
577 u32 max_pkt_size;
551 u16 max_rxq_log; 578 u16 max_rxq_log;
552 u8 max_stations; 579 u8 max_stations;
553 u8 bcast_sta_id; 580 u8 bcast_sta_id;