diff options
author | Ron Rindjunsky <ron.rindjunsky@intel.com> | 2007-11-26 09:14:37 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-28 18:05:42 -0500 |
commit | 326eeee807ca7ed4489cb21d4ebe8e52079c11c3 (patch) | |
tree | 1b43673a5b61cfe371ca35179d455e79f2282369 /drivers/net/wireless/iwlwifi/iwl-4965.c | |
parent | 9e0cc6de99792151b16dbd622b11ba6607a85b72 (diff) |
iwlwifi: 802.11n configuring hw_mode parameters to support HT in A/G
This patch fills the mac80211's ieee80211_hw_mode structures with the
needed 802.11n data needed for the new framework
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-4965.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-4965.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-4965.c b/drivers/net/wireless/iwlwifi/iwl-4965.c index c8e7adfe414a..fbabcb0394df 100644 --- a/drivers/net/wireless/iwlwifi/iwl-4965.c +++ b/drivers/net/wireless/iwlwifi/iwl-4965.c | |||
@@ -3768,6 +3768,30 @@ static int parse_elems(u8 *start, size_t len, struct ieee802_11_elems *elems) | |||
3768 | 3768 | ||
3769 | return 0; | 3769 | return 0; |
3770 | } | 3770 | } |
3771 | |||
3772 | void iwl4965_init_ht_hw_capab(struct ieee80211_ht_info *ht_info, int mode) | ||
3773 | { | ||
3774 | ht_info->cap = 0; | ||
3775 | memset(ht_info->supp_mcs_set, 0, 16); | ||
3776 | |||
3777 | ht_info->ht_supported = 1; | ||
3778 | |||
3779 | if (mode == MODE_IEEE80211A) { | ||
3780 | ht_info->cap |= (u16)IEEE80211_HT_CAP_SUP_WIDTH; | ||
3781 | ht_info->cap |= (u16)IEEE80211_HT_CAP_SGI_40; | ||
3782 | ht_info->supp_mcs_set[4] = 0x01; | ||
3783 | } | ||
3784 | ht_info->cap |= (u16)IEEE80211_HT_CAP_GRN_FLD; | ||
3785 | ht_info->cap |= (u16)IEEE80211_HT_CAP_SGI_20; | ||
3786 | ht_info->cap |= (u16)(IEEE80211_HT_CAP_MIMO_PS & | ||
3787 | (IWL_MIMO_PS_NONE << 2)); | ||
3788 | |||
3789 | ht_info->ampdu_factor = CFG_HT_RX_AMPDU_FACTOR_DEF; | ||
3790 | ht_info->ampdu_density = CFG_HT_MPDU_DENSITY_DEF; | ||
3791 | |||
3792 | ht_info->supp_mcs_set[0] = 0xFF; | ||
3793 | ht_info->supp_mcs_set[1] = 0xFF; | ||
3794 | } | ||
3771 | #endif /* CONFIG_IWL4965_HT */ | 3795 | #endif /* CONFIG_IWL4965_HT */ |
3772 | 3796 | ||
3773 | static void iwl4965_sta_modify_ps_wake(struct iwl4965_priv *priv, int sta_id) | 3797 | static void iwl4965_sta_modify_ps_wake(struct iwl4965_priv *priv, int sta_id) |