mirror of
https://github.com/lwfinger/rtl8188eu.git
synced 2024-11-25 14:03:40 +00:00
rtl8188eu: Remove configuration parameter CONFIG_80211N_HT
This one will always be selected. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
This commit is contained in:
parent
de0b9f2155
commit
1ada4e9170
23 changed files with 3 additions and 250 deletions
|
@ -456,12 +456,10 @@ void add_RATid(struct adapter *padapter, struct sta_info *psta, u8 rssi_level)
|
||||||
struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
|
struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
|
||||||
struct wlan_bssid_ex *pcur_network = (struct wlan_bssid_ex *)&pmlmepriv->cur_network.network;
|
struct wlan_bssid_ex *pcur_network = (struct wlan_bssid_ex *)&pmlmepriv->cur_network.network;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
if (psta)
|
if (psta)
|
||||||
psta_ht = &psta->htpriv;
|
psta_ht = &psta->htpriv;
|
||||||
else
|
else
|
||||||
return;
|
return;
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
if (!(psta->state & _FW_LINKED))
|
if (!(psta->state & _FW_LINKED))
|
||||||
return;
|
return;
|
||||||
|
@ -471,7 +469,6 @@ void add_RATid(struct adapter *padapter, struct sta_info *psta, u8 rssi_level)
|
||||||
if (psta->bssrateset[i])
|
if (psta->bssrateset[i])
|
||||||
tx_ra_bitmap |= rtw_get_bit_value_from_ieee_value(psta->bssrateset[i]&0x7f);
|
tx_ra_bitmap |= rtw_get_bit_value_from_ieee_value(psta->bssrateset[i]&0x7f);
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* n mode ra_bitmap */
|
/* n mode ra_bitmap */
|
||||||
if (psta_ht->ht_option) {
|
if (psta_ht->ht_option) {
|
||||||
rtw_hal_get_hwreg(padapter, HW_VAR_RF_TYPE, (u8 *)(&rf_type));
|
rtw_hal_get_hwreg(padapter, HW_VAR_RF_TYPE, (u8 *)(&rf_type));
|
||||||
|
@ -488,7 +485,6 @@ void add_RATid(struct adapter *padapter, struct sta_info *psta, u8 rssi_level)
|
||||||
/* max short GI rate */
|
/* max short GI rate */
|
||||||
shortGIrate = psta_ht->sgi;
|
shortGIrate = psta_ht->sgi;
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
if ( pcur_network->Configuration.DSConfig > 14 ) {
|
if ( pcur_network->Configuration.DSConfig > 14 ) {
|
||||||
/* 5G band */
|
/* 5G band */
|
||||||
|
@ -559,9 +555,7 @@ static void update_bmc_sta(struct adapter *padapter)
|
||||||
psta->mac_id = psta->aid + 1;
|
psta->mac_id = psta->aid + 1;
|
||||||
|
|
||||||
psta->qos_option = 0;
|
psta->qos_option = 0;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
psta->htpriv.ht_option = false;
|
psta->htpriv.ht_option = false;
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
psta->ieee8021x_blocked = 0;
|
psta->ieee8021x_blocked = 0;
|
||||||
|
|
||||||
|
@ -638,10 +632,9 @@ void update_sta_info_apmode(struct adapter *padapter, struct sta_info *psta)
|
||||||
struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
|
struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
|
||||||
struct security_priv *psecuritypriv = &padapter->securitypriv;
|
struct security_priv *psecuritypriv = &padapter->securitypriv;
|
||||||
struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv);
|
struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
struct ht_priv *phtpriv_ap = &pmlmepriv->htpriv;
|
struct ht_priv *phtpriv_ap = &pmlmepriv->htpriv;
|
||||||
struct ht_priv *phtpriv_sta = &psta->htpriv;
|
struct ht_priv *phtpriv_sta = &psta->htpriv;
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
psta->mac_id = psta->aid+1;
|
psta->mac_id = psta->aid+1;
|
||||||
DBG_88E("%s\n",__func__);
|
DBG_88E("%s\n",__func__);
|
||||||
|
|
||||||
|
@ -658,7 +651,6 @@ void update_sta_info_apmode(struct adapter *padapter, struct sta_info *psta)
|
||||||
|
|
||||||
/* ERP */
|
/* ERP */
|
||||||
VCS_update(padapter, psta);
|
VCS_update(padapter, psta);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* HT related cap */
|
/* HT related cap */
|
||||||
if (phtpriv_sta->ht_option) {
|
if (phtpriv_sta->ht_option) {
|
||||||
/* check if sta supports rx ampdu */
|
/* check if sta supports rx ampdu */
|
||||||
|
@ -688,7 +680,6 @@ void update_sta_info_apmode(struct adapter *padapter, struct sta_info *psta)
|
||||||
send_delba(padapter, 1, psta->hwaddr);/* originator */
|
send_delba(padapter, 1, psta->hwaddr);/* originator */
|
||||||
phtpriv_sta->agg_enable_bitmap = 0x0;/* reset */
|
phtpriv_sta->agg_enable_bitmap = 0x0;/* reset */
|
||||||
phtpriv_sta->candidate_tid_bitmap = 0x0;/* reset */
|
phtpriv_sta->candidate_tid_bitmap = 0x0;/* reset */
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
/* todo: init other variables */
|
/* todo: init other variables */
|
||||||
|
|
||||||
|
@ -766,14 +757,12 @@ static void start_bss_network(struct adapter *padapter, u8 *pbuf)
|
||||||
/* todo: update wmm, ht cap */
|
/* todo: update wmm, ht cap */
|
||||||
if (pmlmepriv->qospriv.qos_option)
|
if (pmlmepriv->qospriv.qos_option)
|
||||||
pmlmeinfo->WMM_enable = true;
|
pmlmeinfo->WMM_enable = true;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
if (pmlmepriv->htpriv.ht_option) {
|
if (pmlmepriv->htpriv.ht_option) {
|
||||||
pmlmeinfo->WMM_enable = true;
|
pmlmeinfo->WMM_enable = true;
|
||||||
pmlmeinfo->HT_enable = true;
|
pmlmeinfo->HT_enable = true;
|
||||||
|
|
||||||
update_hw_ht_param(padapter);
|
update_hw_ht_param(padapter);
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
if (pmlmepriv->cur_network.join_res != true) { /* setting only at first time */
|
if (pmlmepriv->cur_network.join_res != true) { /* setting only at first time */
|
||||||
/* WEP Key will be set before this function, do not clear CAM. */
|
/* WEP Key will be set before this function, do not clear CAM. */
|
||||||
|
@ -812,7 +801,6 @@ static void start_bss_network(struct adapter *padapter, u8 *pbuf)
|
||||||
/* turn on all dynamic functions */
|
/* turn on all dynamic functions */
|
||||||
Switch_DM_Func(padapter, DYNAMIC_ALL_FUNC_ENABLE, true);
|
Switch_DM_Func(padapter, DYNAMIC_ALL_FUNC_ENABLE, true);
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* set channel, bwmode */
|
/* set channel, bwmode */
|
||||||
p = rtw_get_ie((pnetwork->IEs + sizeof(struct ndis_802_11_fixed_ie)), _HT_ADD_INFO_IE_, &ie_len, (pnetwork->IELength - sizeof(struct ndis_802_11_fixed_ie)));
|
p = rtw_get_ie((pnetwork->IEs + sizeof(struct ndis_802_11_fixed_ie)), _HT_ADD_INFO_IE_, &ie_len, (pnetwork->IELength - sizeof(struct ndis_802_11_fixed_ie)));
|
||||||
if ( p && ie_len) {
|
if ( p && ie_len) {
|
||||||
|
@ -834,7 +822,6 @@ static void start_bss_network(struct adapter *padapter, u8 *pbuf)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
/* TODO: need to judge the phy parameters on concurrent mode for single phy */
|
/* TODO: need to judge the phy parameters on concurrent mode for single phy */
|
||||||
set_channel_bwmode(padapter, cur_channel, cur_ch_offset, cur_bwmode);
|
set_channel_bwmode(padapter, cur_channel, cur_ch_offset, cur_bwmode);
|
||||||
|
|
||||||
|
@ -1069,7 +1056,6 @@ int rtw_check_beacon_data(struct adapter *padapter, u8 *pbuf, int len)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* parsing HT_CAP_IE */
|
/* parsing HT_CAP_IE */
|
||||||
p = rtw_get_ie(ie + _BEACON_IE_OFFSET_, _HT_CAPABILITY_IE_, &ie_len, (pbss_network->IELength - _BEACON_IE_OFFSET_));
|
p = rtw_get_ie(ie + _BEACON_IE_OFFSET_, _HT_CAPABILITY_IE_, &ie_len, (pbss_network->IELength - _BEACON_IE_OFFSET_));
|
||||||
if (p && ie_len>0)
|
if (p && ie_len>0)
|
||||||
|
@ -1112,10 +1098,7 @@ int rtw_check_beacon_data(struct adapter *padapter, u8 *pbuf, int len)
|
||||||
/* parsing HT_INFO_IE */
|
/* parsing HT_INFO_IE */
|
||||||
p = rtw_get_ie(ie + _BEACON_IE_OFFSET_, _HT_ADD_INFO_IE_, &ie_len, (pbss_network->IELength - _BEACON_IE_OFFSET_));
|
p = rtw_get_ie(ie + _BEACON_IE_OFFSET_, _HT_ADD_INFO_IE_, &ie_len, (pbss_network->IELength - _BEACON_IE_OFFSET_));
|
||||||
if (p && ie_len>0)
|
if (p && ie_len>0)
|
||||||
{
|
|
||||||
pHT_info_ie=p;
|
pHT_info_ie=p;
|
||||||
}
|
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
switch (network_type)
|
switch (network_type)
|
||||||
{
|
{
|
||||||
case WIRELESS_11B:
|
case WIRELESS_11B:
|
||||||
|
@ -1137,7 +1120,6 @@ int rtw_check_beacon_data(struct adapter *padapter, u8 *pbuf, int len)
|
||||||
|
|
||||||
pmlmepriv->cur_network.network_type = network_type;
|
pmlmepriv->cur_network.network_type = network_type;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
pmlmepriv->htpriv.ht_option = false;
|
pmlmepriv->htpriv.ht_option = false;
|
||||||
|
|
||||||
if ( (psecuritypriv->wpa2_pairwise_cipher&WPA_CIPHER_TKIP) ||
|
if ( (psecuritypriv->wpa2_pairwise_cipher&WPA_CIPHER_TKIP) ||
|
||||||
|
@ -1162,7 +1144,6 @@ int rtw_check_beacon_data(struct adapter *padapter, u8 *pbuf, int len)
|
||||||
|
|
||||||
HT_info_handler(padapter, (struct ndis_802_11_var_ie *)pHT_info_ie);
|
HT_info_handler(padapter, (struct ndis_802_11_var_ie *)pHT_info_ie);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
pbss_network->Length = get_wlan_bssid_ex_sz((struct wlan_bssid_ex *)pbss_network);
|
pbss_network->Length = get_wlan_bssid_ex_sz((struct wlan_bssid_ex *)pbss_network);
|
||||||
|
@ -1553,8 +1534,6 @@ void update_beacon(struct adapter *padapter, u8 ie_id, u8 *oui, u8 tx)
|
||||||
set_tx_beacon_cmd(padapter);
|
set_tx_beacon_cmd(padapter);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
op_mode
|
op_mode
|
||||||
Set to 0 (HT pure) under the followign conditions
|
Set to 0 (HT pure) under the followign conditions
|
||||||
|
@ -1636,8 +1615,6 @@ static int rtw_ht_operation_update(struct adapter *padapter)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
void associated_clients_update(struct adapter *padapter, u8 updated)
|
void associated_clients_update(struct adapter *padapter, u8 updated)
|
||||||
{
|
{
|
||||||
/* update associcated stations cap. */
|
/* update associcated stations cap. */
|
||||||
|
@ -1778,8 +1755,6 @@ void bss_cap_update_on_sta_join(struct adapter *padapter, struct sta_info *psta)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
|
|
||||||
if (psta->flags & WLAN_STA_HT)
|
if (psta->flags & WLAN_STA_HT)
|
||||||
{
|
{
|
||||||
u16 ht_capab = psta->htpriv.ht_cap.cap_info;
|
u16 ht_capab = psta->htpriv.ht_cap.cap_info;
|
||||||
|
@ -1834,8 +1809,6 @@ void bss_cap_update_on_sta_join(struct adapter *padapter, struct sta_info *psta)
|
||||||
update_beacon(padapter, _HT_ADD_INFO_IE_, NULL, true);
|
update_beacon(padapter, _HT_ADD_INFO_IE_, NULL, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
/* update associcated stations cap. */
|
/* update associcated stations cap. */
|
||||||
associated_clients_update(padapter, beacon_updated);
|
associated_clients_update(padapter, beacon_updated);
|
||||||
|
|
||||||
|
@ -1884,8 +1857,6 @@ u8 bss_cap_update_on_sta_leave(struct adapter *padapter, struct sta_info *psta)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
|
|
||||||
if (psta->no_ht_gf_set) {
|
if (psta->no_ht_gf_set) {
|
||||||
psta->no_ht_gf_set = 0;
|
psta->no_ht_gf_set = 0;
|
||||||
pmlmepriv->num_sta_ht_no_gf--;
|
pmlmepriv->num_sta_ht_no_gf--;
|
||||||
|
@ -1907,8 +1878,6 @@ u8 bss_cap_update_on_sta_leave(struct adapter *padapter, struct sta_info *psta)
|
||||||
update_beacon(padapter, _HT_ADD_INFO_IE_, NULL, true);
|
update_beacon(padapter, _HT_ADD_INFO_IE_, NULL, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
/* update associcated stations cap. */
|
/* update associcated stations cap. */
|
||||||
|
|
||||||
DBG_88E("%s, updated=%d\n", __func__, beacon_updated);
|
DBG_88E("%s, updated=%d\n", __func__, beacon_updated);
|
||||||
|
@ -1928,7 +1897,6 @@ u8 ap_free_sta(struct adapter *padapter, struct sta_info *psta, bool active, u16
|
||||||
if (!psta)
|
if (!psta)
|
||||||
return beacon_updated;
|
return beacon_updated;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* tear down Rx AMPDU */
|
/* tear down Rx AMPDU */
|
||||||
send_delba(padapter, 0, psta->hwaddr);/* recipient */
|
send_delba(padapter, 0, psta->hwaddr);/* recipient */
|
||||||
|
|
||||||
|
@ -1936,7 +1904,6 @@ u8 ap_free_sta(struct adapter *padapter, struct sta_info *psta, bool active, u16
|
||||||
send_delba(padapter, 1, psta->hwaddr);/* originator */
|
send_delba(padapter, 1, psta->hwaddr);/* originator */
|
||||||
psta->htpriv.agg_enable_bitmap = 0x0;/* reset */
|
psta->htpriv.agg_enable_bitmap = 0x0;/* reset */
|
||||||
psta->htpriv.candidate_tid_bitmap = 0x0;/* reset */
|
psta->htpriv.candidate_tid_bitmap = 0x0;/* reset */
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
if (active == true)
|
if (active == true)
|
||||||
issue_deauth(padapter, psta->hwaddr, reason);
|
issue_deauth(padapter, psta->hwaddr, reason);
|
||||||
|
@ -2059,8 +2026,6 @@ void sta_info_update(struct adapter *padapter, struct sta_info *psta)
|
||||||
if (pmlmepriv->qospriv.qos_option == 0)
|
if (pmlmepriv->qospriv.qos_option == 0)
|
||||||
psta->qos_option = 0;
|
psta->qos_option = 0;
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* update 802.11n ht cap. */
|
/* update 802.11n ht cap. */
|
||||||
if (WLAN_STA_HT&flags)
|
if (WLAN_STA_HT&flags)
|
||||||
{
|
{
|
||||||
|
@ -2074,12 +2039,8 @@ void sta_info_update(struct adapter *padapter, struct sta_info *psta)
|
||||||
|
|
||||||
if (pmlmepriv->htpriv.ht_option == false)
|
if (pmlmepriv->htpriv.ht_option == false)
|
||||||
psta->htpriv.ht_option = false;
|
psta->htpriv.ht_option = false;
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
update_sta_info_apmode(padapter, psta);
|
update_sta_info_apmode(padapter, psta);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* called >= TSR LEVEL for USB or SDIO Interface*/
|
/* called >= TSR LEVEL for USB or SDIO Interface*/
|
||||||
|
@ -2111,18 +2072,14 @@ void start_ap_mode(struct adapter *padapter)
|
||||||
pmlmepriv->num_sta_no_short_preamble = 0;
|
pmlmepriv->num_sta_no_short_preamble = 0;
|
||||||
|
|
||||||
pmlmepriv->num_sta_ht_no_gf = 0;
|
pmlmepriv->num_sta_ht_no_gf = 0;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
pmlmepriv->num_sta_no_ht = 0;
|
pmlmepriv->num_sta_no_ht = 0;
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
pmlmepriv->num_sta_ht_20mhz = 0;
|
pmlmepriv->num_sta_ht_20mhz = 0;
|
||||||
|
|
||||||
pmlmepriv->olbc = false;
|
pmlmepriv->olbc = false;
|
||||||
|
|
||||||
pmlmepriv->olbc_ht = false;
|
pmlmepriv->olbc_ht = false;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
pmlmepriv->ht_op_mode = 0;
|
pmlmepriv->ht_op_mode = 0;
|
||||||
#endif
|
|
||||||
|
|
||||||
for (i=0; i<NUM_STA; i++)
|
for (i=0; i<NUM_STA; i++)
|
||||||
pstapriv->sta_aid[i] = NULL;
|
pstapriv->sta_aid[i] = NULL;
|
||||||
|
|
|
@ -295,10 +295,6 @@ static void convert_ipv6_mac_to_mc(struct sk_buff *skb)
|
||||||
dst_mac[0] = 0x33;
|
dst_mac[0] = 0x33;
|
||||||
dst_mac[1] = 0x33;
|
dst_mac[1] = 0x33;
|
||||||
memcpy(&dst_mac[2], &iph->daddr.s6_addr32[3], 4);
|
memcpy(&dst_mac[2], &iph->daddr.s6_addr32[3], 4);
|
||||||
#if defined(__LINUX_2_6__)
|
|
||||||
/*modified by qinjunjie,warning:should not remove next line*/
|
|
||||||
skb->pkt_type = PACKET_MULTICAST;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static __inline__ int __nat25_network_hash(unsigned char *networkAddr)
|
static __inline__ int __nat25_network_hash(unsigned char *networkAddr)
|
||||||
|
|
|
@ -945,9 +945,7 @@ u8 rtw_joinbss_cmd(struct adapter *padapter, struct wlan_network* pnetwork)
|
||||||
struct qos_priv *pqospriv= &pmlmepriv->qospriv;
|
struct qos_priv *pqospriv= &pmlmepriv->qospriv;
|
||||||
struct security_priv *psecuritypriv=&padapter->securitypriv;
|
struct security_priv *psecuritypriv=&padapter->securitypriv;
|
||||||
struct registry_priv *pregistrypriv = &padapter->registrypriv;
|
struct registry_priv *pregistrypriv = &padapter->registrypriv;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
struct ht_priv *phtpriv = &pmlmepriv->htpriv;
|
struct ht_priv *phtpriv = &pmlmepriv->htpriv;
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
enum ndis_802_11_network_infra ndis_network_mode = pnetwork->network.InfrastructureMode;
|
enum ndis_802_11_network_infra ndis_network_mode = pnetwork->network.InfrastructureMode;
|
||||||
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
|
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
|
||||||
struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info);
|
struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info);
|
||||||
|
@ -1051,7 +1049,6 @@ _func_enter_;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
phtpriv->ht_option = false;
|
phtpriv->ht_option = false;
|
||||||
if (pregistrypriv->ht_enable)
|
if (pregistrypriv->ht_enable)
|
||||||
{
|
{
|
||||||
|
@ -1068,8 +1065,6 @@ _func_enter_;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
pmlmeinfo->assoc_AP_vendor = check_assoc_AP(pnetwork->network.IEs, pnetwork->network.IELength);
|
pmlmeinfo->assoc_AP_vendor = check_assoc_AP(pnetwork->network.IEs, pnetwork->network.IELength);
|
||||||
|
|
||||||
if (pmlmeinfo->assoc_AP_vendor == HT_IOT_PEER_TENDA)
|
if (pmlmeinfo->assoc_AP_vendor == HT_IOT_PEER_TENDA)
|
||||||
|
|
|
@ -235,9 +235,7 @@ int proc_get_ht_option(char *page, char **start,
|
||||||
struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
|
struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
|
||||||
|
|
||||||
int len = 0;
|
int len = 0;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
len += snprintf(page + len, count - len, "ht_option=%d\n", pmlmepriv->htpriv.ht_option);
|
len += snprintf(page + len, count - len, "ht_option=%d\n", pmlmepriv->htpriv.ht_option);
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
*eof = 1;
|
*eof = 1;
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
@ -284,12 +282,10 @@ int proc_get_ap_info(char *page, char **start,
|
||||||
len += snprintf(page + len, count - len, "cur_channel=%d, cur_bwmode=%d, cur_ch_offset=%d\n", pmlmeext->cur_channel, pmlmeext->cur_bwmode, pmlmeext->cur_ch_offset);
|
len += snprintf(page + len, count - len, "cur_channel=%d, cur_bwmode=%d, cur_ch_offset=%d\n", pmlmeext->cur_channel, pmlmeext->cur_bwmode, pmlmeext->cur_ch_offset);
|
||||||
len += snprintf(page + len, count - len, "rtsen=%d, cts2slef=%d\n", psta->rtsen, psta->cts2self);
|
len += snprintf(page + len, count - len, "rtsen=%d, cts2slef=%d\n", psta->rtsen, psta->cts2self);
|
||||||
len += snprintf(page + len, count - len, "state=0x%x, aid=%d, macid=%d, raid=%d\n", psta->state, psta->aid, psta->mac_id, psta->raid);
|
len += snprintf(page + len, count - len, "state=0x%x, aid=%d, macid=%d, raid=%d\n", psta->state, psta->aid, psta->mac_id, psta->raid);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
len += snprintf(page + len, count - len, "qos_en=%d, ht_en=%d, init_rate=%d\n", psta->qos_option, psta->htpriv.ht_option, psta->init_rate);
|
len += snprintf(page + len, count - len, "qos_en=%d, ht_en=%d, init_rate=%d\n", psta->qos_option, psta->htpriv.ht_option, psta->init_rate);
|
||||||
len += snprintf(page + len, count - len, "bwmode=%d, ch_offset=%d, sgi=%d\n", psta->htpriv.bwmode, psta->htpriv.ch_offset, psta->htpriv.sgi);
|
len += snprintf(page + len, count - len, "bwmode=%d, ch_offset=%d, sgi=%d\n", psta->htpriv.bwmode, psta->htpriv.ch_offset, psta->htpriv.sgi);
|
||||||
len += snprintf(page + len, count - len, "ampdu_enable = %d\n", psta->htpriv.ampdu_enable);
|
len += snprintf(page + len, count - len, "ampdu_enable = %d\n", psta->htpriv.ampdu_enable);
|
||||||
len += snprintf(page + len, count - len, "agg_enable_bitmap=%x, candidate_tid_bitmap=%x\n", psta->htpriv.agg_enable_bitmap, psta->htpriv.candidate_tid_bitmap);
|
len += snprintf(page + len, count - len, "agg_enable_bitmap=%x, candidate_tid_bitmap=%x\n", psta->htpriv.agg_enable_bitmap, psta->htpriv.candidate_tid_bitmap);
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
for (i=0;i<16;i++)
|
for (i=0;i<16;i++)
|
||||||
{
|
{
|
||||||
|
@ -636,7 +632,6 @@ int proc_set_rx_signal(struct file *file, const char __user *buffer,
|
||||||
}
|
}
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
|
|
||||||
int proc_get_ht_enable(char *page, char **start,
|
int proc_get_ht_enable(char *page, char **start,
|
||||||
off_t offset, int count,
|
off_t offset, int count,
|
||||||
|
@ -779,7 +774,6 @@ int proc_set_ampdu_enable(struct file *file, const char __user *buffer,
|
||||||
return count;
|
return count;
|
||||||
|
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
int proc_get_two_path_rssi(char *page, char **start,
|
int proc_get_two_path_rssi(char *page, char **start,
|
||||||
off_t offset, int count,
|
off_t offset, int count,
|
||||||
|
@ -800,7 +794,7 @@ int proc_get_two_path_rssi(char *page, char **start,
|
||||||
*eof = 1;
|
*eof = 1;
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
int proc_get_rx_stbc(char *page, char **start,
|
int proc_get_rx_stbc(char *page, char **start,
|
||||||
off_t offset, int count,
|
off_t offset, int count,
|
||||||
int *eof, void *data)
|
int *eof, void *data)
|
||||||
|
@ -847,8 +841,6 @@ int proc_set_rx_stbc(struct file *file, const char __user *buffer,
|
||||||
return count;
|
return count;
|
||||||
|
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
|
|
||||||
int proc_get_rssi_disp(char *page, char **start,
|
int proc_get_rssi_disp(char *page, char **start,
|
||||||
off_t offset, int count,
|
off_t offset, int count,
|
||||||
|
@ -934,12 +926,10 @@ int proc_get_all_sta_info(char *page, char **start,
|
||||||
len += snprintf(page + len, count - len, "sta's macaddr: %pM\n", psta->hwaddr);
|
len += snprintf(page + len, count - len, "sta's macaddr: %pM\n", psta->hwaddr);
|
||||||
len += snprintf(page + len, count - len, "rtsen=%d, cts2slef=%d\n", psta->rtsen, psta->cts2self);
|
len += snprintf(page + len, count - len, "rtsen=%d, cts2slef=%d\n", psta->rtsen, psta->cts2self);
|
||||||
len += snprintf(page + len, count - len, "state=0x%x, aid=%d, macid=%d, raid=%d\n", psta->state, psta->aid, psta->mac_id, psta->raid);
|
len += snprintf(page + len, count - len, "state=0x%x, aid=%d, macid=%d, raid=%d\n", psta->state, psta->aid, psta->mac_id, psta->raid);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
len += snprintf(page + len, count - len, "qos_en=%d, ht_en=%d, init_rate=%d\n", psta->qos_option, psta->htpriv.ht_option, psta->init_rate);
|
len += snprintf(page + len, count - len, "qos_en=%d, ht_en=%d, init_rate=%d\n", psta->qos_option, psta->htpriv.ht_option, psta->init_rate);
|
||||||
len += snprintf(page + len, count - len, "bwmode=%d, ch_offset=%d, sgi=%d\n", psta->htpriv.bwmode, psta->htpriv.ch_offset, psta->htpriv.sgi);
|
len += snprintf(page + len, count - len, "bwmode=%d, ch_offset=%d, sgi=%d\n", psta->htpriv.bwmode, psta->htpriv.ch_offset, psta->htpriv.sgi);
|
||||||
len += snprintf(page + len, count - len, "ampdu_enable = %d\n", psta->htpriv.ampdu_enable);
|
len += snprintf(page + len, count - len, "ampdu_enable = %d\n", psta->htpriv.ampdu_enable);
|
||||||
len += snprintf(page + len, count - len, "agg_enable_bitmap=%x, candidate_tid_bitmap=%x\n", psta->htpriv.agg_enable_bitmap, psta->htpriv.candidate_tid_bitmap);
|
len += snprintf(page + len, count - len, "agg_enable_bitmap=%x, candidate_tid_bitmap=%x\n", psta->htpriv.agg_enable_bitmap, psta->htpriv.candidate_tid_bitmap);
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
len += snprintf(page + len, count - len, "sleepq_len=%d\n", psta->sleepq_len);
|
len += snprintf(page + len, count - len, "sleepq_len=%d\n", psta->sleepq_len);
|
||||||
len += snprintf(page + len, count - len, "capability=0x%x\n", psta->capability);
|
len += snprintf(page + len, count - len, "capability=0x%x\n", psta->capability);
|
||||||
len += snprintf(page + len, count - len, "flags=0x%x\n", psta->flags);
|
len += snprintf(page + len, count - len, "flags=0x%x\n", psta->flags);
|
||||||
|
|
|
@ -479,14 +479,12 @@ _func_enter_;
|
||||||
ie = rtw_set_ie(ie, _EXT_SUPPORTEDRATES_IE_, (rateLen - 8), (pdev_network->SupportedRates + 8), &sz);
|
ie = rtw_set_ie(ie, _EXT_SUPPORTEDRATES_IE_, (rateLen - 8), (pdev_network->SupportedRates + 8), &sz);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* HT Cap. */
|
/* HT Cap. */
|
||||||
if (((pregistrypriv->wireless_mode&WIRELESS_11_5N)||(pregistrypriv->wireless_mode&WIRELESS_11_24N))
|
if (((pregistrypriv->wireless_mode&WIRELESS_11_5N)||(pregistrypriv->wireless_mode&WIRELESS_11_24N))
|
||||||
&& (pregistrypriv->ht_enable==true))
|
&& (pregistrypriv->ht_enable==true))
|
||||||
{
|
{
|
||||||
/* todo: */
|
/* todo: */
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
_func_exit_;
|
_func_exit_;
|
||||||
|
|
||||||
|
|
|
@ -1109,13 +1109,11 @@ u16 rtw_get_cur_max_rate(struct adapter *adapter)
|
||||||
struct registry_priv *pregistrypriv = &adapter->registrypriv;
|
struct registry_priv *pregistrypriv = &adapter->registrypriv;
|
||||||
struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
|
struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
|
||||||
struct wlan_bssid_ex *pcur_bss = &pmlmepriv->cur_network.network;
|
struct wlan_bssid_ex *pcur_bss = &pmlmepriv->cur_network.network;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
struct rtw_ieee80211_ht_cap *pht_capie;
|
struct rtw_ieee80211_ht_cap *pht_capie;
|
||||||
u8 rf_type = 0;
|
u8 rf_type = 0;
|
||||||
u8 bw_40MHz=0, short_GI_20=0, short_GI_40=0;
|
u8 bw_40MHz=0, short_GI_20=0, short_GI_40=0;
|
||||||
u16 mcs_rate=0;
|
u16 mcs_rate=0;
|
||||||
u32 ht_ielen = 0;
|
u32 ht_ielen = 0;
|
||||||
#endif
|
|
||||||
|
|
||||||
if (adapter->registrypriv.mp_mode == 1)
|
if (adapter->registrypriv.mp_mode == 1)
|
||||||
{
|
{
|
||||||
|
@ -1127,7 +1125,6 @@ u16 rtw_get_cur_max_rate(struct adapter *adapter)
|
||||||
&& (check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE) != true))
|
&& (check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE) != true))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
if (pmlmeext->cur_wireless_mode & (WIRELESS_11_24N|WIRELESS_11_5N)) {
|
if (pmlmeext->cur_wireless_mode & (WIRELESS_11_24N|WIRELESS_11_5N)) {
|
||||||
p = rtw_get_ie(&pcur_bss->IEs[12], _HT_CAPABILITY_IE_, &ht_ielen, pcur_bss->IELength-12);
|
p = rtw_get_ie(&pcur_bss->IEs[12], _HT_CAPABILITY_IE_, &ht_ielen, pcur_bss->IELength-12);
|
||||||
if (p && ht_ielen>0)
|
if (p && ht_ielen>0)
|
||||||
|
@ -1153,7 +1150,6 @@ u16 rtw_get_cur_max_rate(struct adapter *adapter)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
{
|
{
|
||||||
while ( (pcur_bss->SupportedRates[i]!=0) && (pcur_bss->SupportedRates[i]!=0xFF))
|
while ( (pcur_bss->SupportedRates[i]!=0) && (pcur_bss->SupportedRates[i]!=0xFF))
|
||||||
{
|
{
|
||||||
|
|
|
@ -1415,12 +1415,7 @@ static void rtw_joinbss_update_network(struct adapter *padapter, struct wlan_net
|
||||||
|
|
||||||
rtw_update_protection(padapter, (cur_network->network.IEs) + sizeof (struct ndis_802_11_fixed_ie),
|
rtw_update_protection(padapter, (cur_network->network.IEs) + sizeof (struct ndis_802_11_fixed_ie),
|
||||||
(cur_network->network.IELength));
|
(cur_network->network.IELength));
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
rtw_update_ht_cap(padapter, cur_network->network.IEs, cur_network->network.IELength);
|
rtw_update_ht_cap(padapter, cur_network->network.IEs, cur_network->network.IELength);
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Notes: the fucntion could be > passive_level (the same context as Rx tasklet) */
|
/* Notes: the fucntion could be > passive_level (the same context as Rx tasklet) */
|
||||||
|
@ -2540,18 +2535,9 @@ void rtw_joinbss_reset(struct adapter *padapter)
|
||||||
{
|
{
|
||||||
u8 threshold;
|
u8 threshold;
|
||||||
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
|
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
struct ht_priv *phtpriv = &pmlmepriv->htpriv;
|
struct ht_priv *phtpriv = &pmlmepriv->htpriv;
|
||||||
#endif
|
|
||||||
|
|
||||||
/* todo: if you want to do something io/reg/hw setting before join_bss, please add code here */
|
/* todo: if you want to do something io/reg/hw setting before join_bss, please add code here */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
|
|
||||||
pmlmepriv->num_FortyMHzIntolerant = 0;
|
pmlmepriv->num_FortyMHzIntolerant = 0;
|
||||||
|
|
||||||
pmlmepriv->num_sta_no_ht = 0;
|
pmlmepriv->num_sta_no_ht = 0;
|
||||||
|
@ -2573,11 +2559,8 @@ void rtw_joinbss_reset(struct adapter *padapter)
|
||||||
threshold = 1;
|
threshold = 1;
|
||||||
rtw_hal_set_hwreg(padapter, HW_VAR_RXDMA_AGG_PG_TH, (u8 *)(&threshold));
|
rtw_hal_set_hwreg(padapter, HW_VAR_RXDMA_AGG_PG_TH, (u8 *)(&threshold));
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
|
|
||||||
/* the fucntion is >= passive_level */
|
/* the fucntion is >= passive_level */
|
||||||
unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_ie, uint in_len, uint *pout_len)
|
unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_ie, uint in_len, uint *pout_len)
|
||||||
{
|
{
|
||||||
|
@ -2804,8 +2787,6 @@ void rtw_issue_addbareq_cmd(struct adapter *padapter, struct xmit_frame *pxmitfr
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void rtw_roaming(struct adapter *padapter, struct wlan_network *tgt_network)
|
void rtw_roaming(struct adapter *padapter, struct wlan_network *tgt_network)
|
||||||
{
|
{
|
||||||
unsigned long irqL;
|
unsigned long irqL;
|
||||||
|
|
|
@ -1509,7 +1509,6 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* save HT capabilities in the sta object */
|
/* save HT capabilities in the sta object */
|
||||||
_rtw_memset(&pstat->htpriv.ht_cap, 0, sizeof(struct rtw_ieee80211_ht_cap));
|
_rtw_memset(&pstat->htpriv.ht_cap, 0, sizeof(struct rtw_ieee80211_ht_cap));
|
||||||
if (elems.ht_capabilities && elems.ht_capabilities_len >= sizeof(struct rtw_ieee80211_ht_cap))
|
if (elems.ht_capabilities && elems.ht_capabilities_len >= sizeof(struct rtw_ieee80211_ht_cap))
|
||||||
|
@ -1541,7 +1540,6 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame)
|
||||||
/* status = WLAN_STATUS_CIPHER_REJECTED_PER_POLICY; */
|
/* status = WLAN_STATUS_CIPHER_REJECTED_PER_POLICY; */
|
||||||
/* goto OnAssocReqFail; */
|
/* goto OnAssocReqFail; */
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
pstat->flags |= WLAN_STA_NONERP;
|
pstat->flags |= WLAN_STA_NONERP;
|
||||||
for (i = 0; i < pstat->bssratelen; i++) {
|
for (i = 0; i < pstat->bssratelen; i++) {
|
||||||
|
@ -2049,7 +2047,6 @@ unsigned int OnAction_back(struct adapter *padapter, union recv_frame *precv_fra
|
||||||
struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info);
|
struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info);
|
||||||
u8 *pframe = precv_frame->u.hdr.rx_data;
|
u8 *pframe = precv_frame->u.hdr.rx_data;
|
||||||
struct sta_priv *pstapriv = &padapter->stapriv;
|
struct sta_priv *pstapriv = &padapter->stapriv;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* check RA matches or not */
|
/* check RA matches or not */
|
||||||
if (!_rtw_memcmp(myid(&(padapter->eeprompriv)), GetAddr1Ptr(pframe), ETH_ALEN))/* for if1, sta/ap mode */
|
if (!_rtw_memcmp(myid(&(padapter->eeprompriv)), GetAddr1Ptr(pframe), ETH_ALEN))/* for if1, sta/ap mode */
|
||||||
return _SUCCESS;
|
return _SUCCESS;
|
||||||
|
@ -2140,7 +2137,6 @@ unsigned int OnAction_back(struct adapter *padapter, union recv_frame *precv_fra
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
return _SUCCESS;
|
return _SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5892,7 +5888,6 @@ void issue_asocrsp(struct adapter *padapter, unsigned short status, struct sta_i
|
||||||
pframe = rtw_set_ie(pframe, _EXT_SUPPORTEDRATES_IE_, (pstat->bssratelen-8), pstat->bssrateset+8, &(pattrib->pktlen));
|
pframe = rtw_set_ie(pframe, _EXT_SUPPORTEDRATES_IE_, (pstat->bssratelen-8), pstat->bssrateset+8, &(pattrib->pktlen));
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
if ((pstat->flags & WLAN_STA_HT) && (pmlmepriv->htpriv.ht_option)) {
|
if ((pstat->flags & WLAN_STA_HT) && (pmlmepriv->htpriv.ht_option)) {
|
||||||
uint ie_len=0;
|
uint ie_len=0;
|
||||||
|
|
||||||
|
@ -5914,7 +5909,6 @@ void issue_asocrsp(struct adapter *padapter, unsigned short status, struct sta_i
|
||||||
pattrib->pktlen +=(ie_len+2);
|
pattrib->pktlen +=(ie_len+2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/* FILL WMM IE */
|
/* FILL WMM IE */
|
||||||
if ((pstat->flags & WLAN_STA_WME) && (pmlmepriv->qospriv.qos_option)) {
|
if ((pstat->flags & WLAN_STA_WME) && (pmlmepriv->qospriv.qos_option)) {
|
||||||
|
@ -6084,7 +6078,6 @@ void issue_assocreq(struct adapter *padapter)
|
||||||
if (p != NULL)
|
if (p != NULL)
|
||||||
pframe = rtw_set_ie(pframe, _RSN_IE_2_, ie_len, (p + 2), &(pattrib->pktlen));
|
pframe = rtw_set_ie(pframe, _RSN_IE_2_, ie_len, (p + 2), &(pattrib->pktlen));
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* HT caps */
|
/* HT caps */
|
||||||
if (padapter->mlmepriv.htpriv.ht_option==true) {
|
if (padapter->mlmepriv.htpriv.ht_option==true) {
|
||||||
p = rtw_get_ie((pmlmeinfo->network.IEs + sizeof(struct ndis_802_11_fixed_ie)), _HT_CAPABILITY_IE_, &ie_len, (pmlmeinfo->network.IELength - sizeof(struct ndis_802_11_fixed_ie)));
|
p = rtw_get_ie((pmlmeinfo->network.IEs + sizeof(struct ndis_802_11_fixed_ie)), _HT_CAPABILITY_IE_, &ie_len, (pmlmeinfo->network.IELength - sizeof(struct ndis_802_11_fixed_ie)));
|
||||||
|
@ -6130,7 +6123,6 @@ void issue_assocreq(struct adapter *padapter)
|
||||||
pframe = rtw_set_ie(pframe, _HT_CAPABILITY_IE_, ie_len , (u8 *)(&(pmlmeinfo->HT_caps)), &(pattrib->pktlen));
|
pframe = rtw_set_ie(pframe, _HT_CAPABILITY_IE_, ie_len , (u8 *)(&(pmlmeinfo->HT_caps)), &(pattrib->pktlen));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/* vendor specific IE, such as WPA, WMM, WPS */
|
/* vendor specific IE, such as WPA, WMM, WPS */
|
||||||
for (i = sizeof(struct ndis_802_11_fixed_ie); i < pmlmeinfo->network.IELength;) {
|
for (i = sizeof(struct ndis_802_11_fixed_ie); i < pmlmeinfo->network.IELength;) {
|
||||||
|
@ -6773,13 +6765,10 @@ void issue_action_BA(struct adapter *padapter, unsigned char *raddr, unsigned ch
|
||||||
u8 tendaAPMac[] = {0xC8, 0x3A, 0x35};
|
u8 tendaAPMac[] = {0xC8, 0x3A, 0x35};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
DBG_88E("%s, category=%d, action=%d, status=%d\n", __func__, category, action, status);
|
DBG_88E("%s, category=%d, action=%d, status=%d\n", __func__, category, action, status);
|
||||||
|
|
||||||
if ((pmgntframe = alloc_mgtxmitframe(pxmitpriv)) == NULL)
|
if ((pmgntframe = alloc_mgtxmitframe(pxmitpriv)) == NULL)
|
||||||
{
|
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
/* update attribute */
|
/* update attribute */
|
||||||
pattrib = &pmgntframe->attrib;
|
pattrib = &pmgntframe->attrib;
|
||||||
|
@ -6905,7 +6894,6 @@ void issue_action_BA(struct adapter *padapter, unsigned char *raddr, unsigned ch
|
||||||
pattrib->last_txcmdsz = pattrib->pktlen;
|
pattrib->last_txcmdsz = pattrib->pktlen;
|
||||||
|
|
||||||
dump_mgntframe(padapter, pmgntframe);
|
dump_mgntframe(padapter, pmgntframe);
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void issue_action_BSSCoexistPacket(struct adapter *padapter)
|
static void issue_action_BSSCoexistPacket(struct adapter *padapter)
|
||||||
|
@ -6926,7 +6914,6 @@ static void issue_action_BSSCoexistPacket(struct adapter *padapter)
|
||||||
struct __queue *queue = &(pmlmepriv->scanned_queue);
|
struct __queue *queue = &(pmlmepriv->scanned_queue);
|
||||||
u8 InfoContent[16] = {0};
|
u8 InfoContent[16] = {0};
|
||||||
u8 ICS[8][15];
|
u8 ICS[8][15];
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
if ((pmlmepriv->num_FortyMHzIntolerant==0) || (pmlmepriv->num_sta_no_ht==0))
|
if ((pmlmepriv->num_FortyMHzIntolerant==0) || (pmlmepriv->num_sta_no_ht==0))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -7063,7 +7050,6 @@ static void issue_action_BSSCoexistPacket(struct adapter *padapter)
|
||||||
pattrib->last_txcmdsz = pattrib->pktlen;
|
pattrib->last_txcmdsz = pattrib->pktlen;
|
||||||
|
|
||||||
dump_mgntframe(padapter, pmgntframe);
|
dump_mgntframe(padapter, pmgntframe);
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int send_delba(struct adapter *padapter, u8 initiator, u8 *addr)
|
unsigned int send_delba(struct adapter *padapter, u8 initiator, u8 *addr)
|
||||||
|
@ -7100,8 +7086,6 @@ unsigned int send_delba(struct adapter *padapter, u8 initiator, u8 *addr)
|
||||||
}
|
}
|
||||||
else if (initiator == 1)/* originator */
|
else if (initiator == 1)/* originator */
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* DBG_88E("tx agg_enable_bitmap(0x%08x)\n", psta->htpriv.agg_enable_bitmap); */
|
|
||||||
for (tid = 0;tid<MAXTID;tid++)
|
for (tid = 0;tid<MAXTID;tid++)
|
||||||
{
|
{
|
||||||
if (psta->htpriv.agg_enable_bitmap & BIT(tid))
|
if (psta->htpriv.agg_enable_bitmap & BIT(tid))
|
||||||
|
@ -7113,11 +7097,9 @@ unsigned int send_delba(struct adapter *padapter, u8 initiator, u8 *addr)
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return _SUCCESS;
|
return _SUCCESS;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int send_beacon(struct adapter *padapter)
|
unsigned int send_beacon(struct adapter *padapter)
|
||||||
|
@ -7536,7 +7518,6 @@ u8 collect_bss_info(struct adapter *padapter, union recv_frame *precv_frame, str
|
||||||
if ((pregistrypriv->wifi_spec==1) && (false == pmlmeinfo->bwmode_updated))
|
if ((pregistrypriv->wifi_spec==1) && (false == pmlmeinfo->bwmode_updated))
|
||||||
{
|
{
|
||||||
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
|
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
p = rtw_get_ie(bssid->IEs + ie_offset, _HT_CAPABILITY_IE_, &len, bssid->IELength - ie_offset);
|
p = rtw_get_ie(bssid->IEs + ie_offset, _HT_CAPABILITY_IE_, &len, bssid->IELength - ie_offset);
|
||||||
if (p && len>0) {
|
if (p && len>0) {
|
||||||
struct HT_caps_element *pHT_caps;
|
struct HT_caps_element *pHT_caps;
|
||||||
|
@ -7547,7 +7528,6 @@ u8 collect_bss_info(struct adapter *padapter, union recv_frame *precv_frame, str
|
||||||
} else {
|
} else {
|
||||||
pmlmepriv->num_sta_no_ht++;
|
pmlmepriv->num_sta_no_ht++;
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8276,7 +8256,6 @@ void update_sta_info(struct adapter *padapter, struct sta_info *psta)
|
||||||
/* ERP */
|
/* ERP */
|
||||||
VCS_update(padapter, psta);
|
VCS_update(padapter, psta);
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* HT */
|
/* HT */
|
||||||
if (pmlmepriv->htpriv.ht_option)
|
if (pmlmepriv->htpriv.ht_option)
|
||||||
{
|
{
|
||||||
|
@ -8291,25 +8270,20 @@ void update_sta_info(struct adapter *padapter, struct sta_info *psta)
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
psta->htpriv.ht_option = false;
|
psta->htpriv.ht_option = false;
|
||||||
|
|
||||||
psta->htpriv.ampdu_enable = false;
|
psta->htpriv.ampdu_enable = false;
|
||||||
|
|
||||||
psta->htpriv.sgi = false;
|
psta->htpriv.sgi = false;
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
psta->qos_option = false;
|
psta->qos_option = false;
|
||||||
|
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
psta->htpriv.bwmode = pmlmeext->cur_bwmode;
|
psta->htpriv.bwmode = pmlmeext->cur_bwmode;
|
||||||
psta->htpriv.ch_offset = pmlmeext->cur_ch_offset;
|
psta->htpriv.ch_offset = pmlmeext->cur_ch_offset;
|
||||||
|
|
||||||
psta->htpriv.agg_enable_bitmap = 0x0;/* reset */
|
psta->htpriv.agg_enable_bitmap = 0x0;/* reset */
|
||||||
psta->htpriv.candidate_tid_bitmap = 0x0;/* reset */
|
psta->htpriv.candidate_tid_bitmap = 0x0;/* reset */
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
/* QoS */
|
/* QoS */
|
||||||
if (pmlmepriv->qospriv.qos_option)
|
if (pmlmepriv->qospriv.qos_option)
|
||||||
|
@ -8793,7 +8767,6 @@ void link_timer_hdl(struct adapter *padapter)
|
||||||
|
|
||||||
void addba_timer_hdl(struct sta_info *psta)
|
void addba_timer_hdl(struct sta_info *psta)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
struct ht_priv *phtpriv;
|
struct ht_priv *phtpriv;
|
||||||
|
|
||||||
if (!psta)
|
if (!psta)
|
||||||
|
@ -8807,7 +8780,6 @@ void addba_timer_hdl(struct sta_info *psta)
|
||||||
phtpriv->candidate_tid_bitmap=0x0;
|
phtpriv->candidate_tid_bitmap=0x0;
|
||||||
|
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 NULL_hdl(struct adapter *padapter, u8 *pbuf)
|
u8 NULL_hdl(struct adapter *padapter, u8 *pbuf)
|
||||||
|
@ -8990,7 +8962,6 @@ u8 join_cmd_hdl(struct adapter *padapter, u8 *pbuf)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case _HT_EXTRA_INFO_IE_: /* Get HT Info IE. */
|
case _HT_EXTRA_INFO_IE_: /* Get HT Info IE. */
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
pmlmeinfo->HT_info_enable = 1;
|
pmlmeinfo->HT_info_enable = 1;
|
||||||
|
|
||||||
/* spec case only for cisco's ap because cisco's ap issue assoc rsp using mcs rate @40MHz or @20MHz */
|
/* spec case only for cisco's ap because cisco's ap issue assoc rsp using mcs rate @40MHz or @20MHz */
|
||||||
|
@ -9019,9 +8990,7 @@ u8 join_cmd_hdl(struct adapter *padapter, u8 *pbuf)
|
||||||
DBG_88E("set ch/bw before connected\n");
|
DBG_88E("set ch/bw before connected\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -9358,7 +9327,6 @@ u8 add_ba_hdl(struct adapter *padapter, unsigned char *pbuf)
|
||||||
if (!psta)
|
if (!psta)
|
||||||
return H2C_SUCCESS;
|
return H2C_SUCCESS;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
if (((pmlmeinfo->state & WIFI_FW_ASSOC_SUCCESS) && (pmlmeinfo->HT_enable)) ||
|
if (((pmlmeinfo->state & WIFI_FW_ASSOC_SUCCESS) && (pmlmeinfo->HT_enable)) ||
|
||||||
((pmlmeinfo->state&0x03) == WIFI_FW_AP_STATE))
|
((pmlmeinfo->state&0x03) == WIFI_FW_AP_STATE))
|
||||||
{
|
{
|
||||||
|
@ -9371,7 +9339,6 @@ u8 add_ba_hdl(struct adapter *padapter, unsigned char *pbuf)
|
||||||
} else {
|
} else {
|
||||||
psta->htpriv.candidate_tid_bitmap &= ~BIT(pparm->tid);
|
psta->htpriv.candidate_tid_bitmap &= ~BIT(pparm->tid);
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
return H2C_SUCCESS;
|
return H2C_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2326,9 +2326,6 @@ int process_recv_indicatepkts(struct adapter *padapter, union recv_frame *prfram
|
||||||
/* struct recv_priv *precvpriv = &padapter->recvpriv; */
|
/* struct recv_priv *precvpriv = &padapter->recvpriv; */
|
||||||
/* struct rx_pkt_attrib *pattrib = &prframe->u.hdr.attrib; */
|
/* struct rx_pkt_attrib *pattrib = &prframe->u.hdr.attrib; */
|
||||||
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
|
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
|
|
||||||
struct ht_priv *phtpriv = &pmlmepriv->htpriv;
|
struct ht_priv *phtpriv = &pmlmepriv->htpriv;
|
||||||
|
|
||||||
if (phtpriv->ht_option==true) /* B/G/N Mode */
|
if (phtpriv->ht_option==true) /* B/G/N Mode */
|
||||||
|
@ -2346,7 +2343,6 @@ int process_recv_indicatepkts(struct adapter *padapter, union recv_frame *prfram
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else /* B/G mode */
|
else /* B/G mode */
|
||||||
#endif
|
|
||||||
{
|
{
|
||||||
retval=wlanhdr_to_ethhdr (prframe);
|
retval=wlanhdr_to_ethhdr (prframe);
|
||||||
if (retval != _SUCCESS)
|
if (retval != _SUCCESS)
|
||||||
|
@ -2450,7 +2446,6 @@ static int recv_func_posthandle(struct adapter *padapter, union recv_frame *prfr
|
||||||
|
|
||||||
count_rx_stats(padapter, prframe, NULL);
|
count_rx_stats(padapter, prframe, NULL);
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
ret = process_recv_indicatepkts(padapter, prframe);
|
ret = process_recv_indicatepkts(padapter, prframe);
|
||||||
if (ret != _SUCCESS)
|
if (ret != _SUCCESS)
|
||||||
{
|
{
|
||||||
|
@ -2458,51 +2453,6 @@ static int recv_func_posthandle(struct adapter *padapter, union recv_frame *prfr
|
||||||
rtw_free_recvframe(orig_prframe, pfree_recv_queue);/* free this recv_frame */
|
rtw_free_recvframe(orig_prframe, pfree_recv_queue);/* free this recv_frame */
|
||||||
goto _recv_data_drop;
|
goto _recv_data_drop;
|
||||||
}
|
}
|
||||||
#else /* CONFIG_80211N_HT */
|
|
||||||
if (!pattrib->amsdu)
|
|
||||||
{
|
|
||||||
ret = wlanhdr_to_ethhdr (prframe);
|
|
||||||
if (ret != _SUCCESS)
|
|
||||||
{
|
|
||||||
RT_TRACE(_module_rtl871x_recv_c_,_drv_err_,("wlanhdr_to_ethhdr: drop pkt\n"));
|
|
||||||
rtw_free_recvframe(orig_prframe, pfree_recv_queue);/* free this recv_frame */
|
|
||||||
goto _recv_data_drop;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((padapter->bDriverStopped == false) && (padapter->bSurpriseRemoved == false))
|
|
||||||
{
|
|
||||||
RT_TRACE(_module_rtl871x_recv_c_, _drv_alert_, ("@@@@ recv_func: recv_func rtw_recv_indicatepkt\n" ));
|
|
||||||
/* indicate this recv_frame */
|
|
||||||
ret = rtw_recv_indicatepkt(padapter, prframe);
|
|
||||||
if (ret != _SUCCESS)
|
|
||||||
{
|
|
||||||
goto _recv_data_drop;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
RT_TRACE(_module_rtl871x_recv_c_, _drv_alert_, ("@@@@ recv_func: rtw_free_recvframe\n" ));
|
|
||||||
RT_TRACE(_module_rtl871x_recv_c_, _drv_debug_, ("recv_func:bDriverStopped(%d) OR bSurpriseRemoved(%d)", padapter->bDriverStopped, padapter->bSurpriseRemoved));
|
|
||||||
ret = _FAIL;
|
|
||||||
rtw_free_recvframe(orig_prframe, pfree_recv_queue); /* free this recv_frame */
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
else if (pattrib->amsdu==1)
|
|
||||||
{
|
|
||||||
|
|
||||||
ret = amsdu_to_msdu(padapter, prframe);
|
|
||||||
if (ret != _SUCCESS)
|
|
||||||
{
|
|
||||||
rtw_free_recvframe(orig_prframe, pfree_recv_queue);
|
|
||||||
goto _recv_data_drop;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
goto _recv_data_drop;
|
|
||||||
}
|
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
_exit_recv_func:
|
_exit_recv_func:
|
||||||
return ret;
|
return ret;
|
||||||
|
|
|
@ -807,7 +807,6 @@ void WMMOnAssocRsp(struct adapter *padapter)
|
||||||
|
|
||||||
static void bwmode_update_check(struct adapter *padapter, struct ndis_802_11_var_ie * pIE)
|
static void bwmode_update_check(struct adapter *padapter, struct ndis_802_11_var_ie * pIE)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
unsigned char new_bwmode;
|
unsigned char new_bwmode;
|
||||||
unsigned char new_ch_offset;
|
unsigned char new_ch_offset;
|
||||||
struct HT_info_element *pHT_info;
|
struct HT_info_element *pHT_info;
|
||||||
|
@ -897,12 +896,10 @@ static void bwmode_update_check(struct adapter *padapter, struct ndis_802_11_var
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void HT_caps_handler(struct adapter *padapter, struct ndis_802_11_var_ie * pIE)
|
void HT_caps_handler(struct adapter *padapter, struct ndis_802_11_var_ie * pIE)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
u8 rf_type;
|
u8 rf_type;
|
||||||
u8 max_AMPDU_len, min_MPDU_spacing;
|
u8 max_AMPDU_len, min_MPDU_spacing;
|
||||||
|
@ -960,13 +957,11 @@ void HT_caps_handler(struct adapter *padapter, struct ndis_802_11_var_ie * pIE)
|
||||||
else
|
else
|
||||||
pmlmeinfo->HT_caps.u.HT_cap_element.MCS_rate[i] &= MCS_rate_2R[i];
|
pmlmeinfo->HT_caps.u.HT_cap_element.MCS_rate[i] &= MCS_rate_2R[i];
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
void HT_info_handler(struct adapter *padapter, struct ndis_802_11_var_ie * pIE)
|
void HT_info_handler(struct adapter *padapter, struct ndis_802_11_var_ie * pIE)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
|
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
|
||||||
struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info);
|
struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info);
|
||||||
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
|
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
|
||||||
|
@ -982,7 +977,6 @@ void HT_info_handler(struct adapter *padapter, struct ndis_802_11_var_ie * pIE)
|
||||||
|
|
||||||
pmlmeinfo->HT_info_enable = 1;
|
pmlmeinfo->HT_info_enable = 1;
|
||||||
_rtw_memcpy(&(pmlmeinfo->HT_info), pIE->data, pIE->Length);
|
_rtw_memcpy(&(pmlmeinfo->HT_info), pIE->data, pIE->Length);
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -458,22 +458,12 @@ static void update_attrib_phy_info(struct pkt_attrib *pattrib, struct sta_info *
|
||||||
pattrib->qos_en = psta->qos_option;
|
pattrib->qos_en = psta->qos_option;
|
||||||
|
|
||||||
pattrib->raid = psta->raid;
|
pattrib->raid = psta->raid;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
pattrib->ht_en = psta->htpriv.ht_option;
|
pattrib->ht_en = psta->htpriv.ht_option;
|
||||||
pattrib->bwmode = psta->htpriv.bwmode;
|
pattrib->bwmode = psta->htpriv.bwmode;
|
||||||
pattrib->ch_offset = psta->htpriv.ch_offset;
|
pattrib->ch_offset = psta->htpriv.ch_offset;
|
||||||
pattrib->sgi= psta->htpriv.sgi;
|
pattrib->sgi= psta->htpriv.sgi;
|
||||||
pattrib->ampdu_en = false;
|
pattrib->ampdu_en = false;
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
/* if (pattrib->ht_en && psta->htpriv.ampdu_enable) */
|
|
||||||
/* */
|
|
||||||
/* if (psta->htpriv.agg_enable_bitmap & BIT(pattrib->priority)) */
|
|
||||||
/* pattrib->ampdu_en = true; */
|
|
||||||
/* */
|
|
||||||
|
|
||||||
|
|
||||||
pattrib->retry_ctrl = false;
|
pattrib->retry_ctrl = false;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 qos_acm(u8 acm_mask, u8 priority)
|
u8 qos_acm(u8 acm_mask, u8 priority)
|
||||||
|
@ -1027,7 +1017,6 @@ _func_enter_;
|
||||||
|
|
||||||
SetSeqNum(hdr, pattrib->seqnum);
|
SetSeqNum(hdr, pattrib->seqnum);
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* check if enable ampdu */
|
/* check if enable ampdu */
|
||||||
if (pattrib->ht_en && psta->htpriv.ampdu_enable)
|
if (pattrib->ht_en && psta->htpriv.ampdu_enable)
|
||||||
{
|
{
|
||||||
|
@ -1062,7 +1051,6 @@ _func_enter_;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -95,10 +95,8 @@ static void _restore_network_status(struct adapter *padapter)
|
||||||
rtw_write32(padapter, REG_EDCA_VI_PARAM, 0x005E541C);
|
rtw_write32(padapter, REG_EDCA_VI_PARAM, 0x005E541C);
|
||||||
rtw_write32(padapter, REG_EDCA_BE_PARAM, 0x0000A525);
|
rtw_write32(padapter, REG_EDCA_BE_PARAM, 0x0000A525);
|
||||||
rtw_write32(padapter, REG_EDCA_BK_PARAM, 0x0000A549);
|
rtw_write32(padapter, REG_EDCA_BK_PARAM, 0x0000A549);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
/* for WiFi test, mixed mode with intel STA under bg mode throughput issue */
|
/* for WiFi test, mixed mode with intel STA under bg mode throughput issue */
|
||||||
if (padapter->mlmepriv.htpriv.ht_option == 0)
|
if (padapter->mlmepriv.htpriv.ht_option == 0)
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
rtw_write32(padapter, REG_EDCA_BE_PARAM, 0x00004320);
|
rtw_write32(padapter, REG_EDCA_BE_PARAM, 0x00004320);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -404,7 +404,6 @@ static s32 rtw_dump_xframe(struct adapter *padapter, struct xmit_frame *pxmitfra
|
||||||
struct pkt_attrib *pattrib = &pxmitframe->attrib;
|
struct pkt_attrib *pattrib = &pxmitframe->attrib;
|
||||||
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
|
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
|
||||||
struct security_priv *psecuritypriv = &padapter->securitypriv;
|
struct security_priv *psecuritypriv = &padapter->securitypriv;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
if ((pxmitframe->frame_tag == DATA_FRAMETAG) &&
|
if ((pxmitframe->frame_tag == DATA_FRAMETAG) &&
|
||||||
(pxmitframe->attrib.ether_type != 0x0806) &&
|
(pxmitframe->attrib.ether_type != 0x0806) &&
|
||||||
(pxmitframe->attrib.ether_type != 0x888e) &&
|
(pxmitframe->attrib.ether_type != 0x888e) &&
|
||||||
|
@ -413,7 +412,6 @@ static s32 rtw_dump_xframe(struct adapter *padapter, struct xmit_frame *pxmitfra
|
||||||
{
|
{
|
||||||
rtw_issue_addbareq_cmd(padapter, pxmitframe);
|
rtw_issue_addbareq_cmd(padapter, pxmitframe);
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
mem_addr = pxmitframe->buf_addr;
|
mem_addr = pxmitframe->buf_addr;
|
||||||
|
|
||||||
RT_TRACE(_module_rtl871x_xmit_c_,_drv_info_,("rtw_dump_xframe()\n"));
|
RT_TRACE(_module_rtl871x_xmit_c_,_drv_info_,("rtw_dump_xframe()\n"));
|
||||||
|
@ -656,7 +654,6 @@ s32 rtl8188eu_xmitframe_complete(struct adapter *padapter, struct xmit_priv *pxm
|
||||||
rtw_list_delete(&ptxservq->tx_pending);
|
rtw_list_delete(&ptxservq->tx_pending);
|
||||||
|
|
||||||
_exit_critical_bh(&pxmitpriv->lock, &irqL);
|
_exit_critical_bh(&pxmitpriv->lock, &irqL);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
if ((pfirstframe->attrib.ether_type != 0x0806) &&
|
if ((pfirstframe->attrib.ether_type != 0x0806) &&
|
||||||
(pfirstframe->attrib.ether_type != 0x888e) &&
|
(pfirstframe->attrib.ether_type != 0x888e) &&
|
||||||
(pfirstframe->attrib.ether_type != 0x88b4) &&
|
(pfirstframe->attrib.ether_type != 0x88b4) &&
|
||||||
|
@ -664,7 +661,6 @@ s32 rtl8188eu_xmitframe_complete(struct adapter *padapter, struct xmit_priv *pxm
|
||||||
{
|
{
|
||||||
rtw_issue_addbareq_cmd(padapter, pfirstframe);
|
rtw_issue_addbareq_cmd(padapter, pfirstframe);
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
/* 3 3. update first frame txdesc */
|
/* 3 3. update first frame txdesc */
|
||||||
if ((pbuf_tail % bulkSize) == 0) {
|
if ((pbuf_tail % bulkSize) == 0) {
|
||||||
/* remove pkt_offset */
|
/* remove pkt_offset */
|
||||||
|
|
|
@ -29,8 +29,6 @@
|
||||||
* Internal General Config
|
* Internal General Config
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define CONFIG_80211N_HT
|
|
||||||
|
|
||||||
#define CONFIG_AP_MODE
|
#define CONFIG_AP_MODE
|
||||||
|
|
||||||
#define CONFIG_P2P
|
#define CONFIG_P2P
|
||||||
|
|
|
@ -40,10 +40,7 @@ enum _NIC_VERSION {
|
||||||
RTL8716_NIC
|
RTL8716_NIC
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
#include <rtw_ht.h>
|
#include <rtw_ht.h>
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <rtw_cmd.h>
|
#include <rtw_cmd.h>
|
||||||
#include <wlan_bssdef.h>
|
#include <wlan_bssdef.h>
|
||||||
#include <rtw_xmit.h>
|
#include <rtw_xmit.h>
|
||||||
|
@ -124,13 +121,11 @@ struct registry_priv
|
||||||
|
|
||||||
struct wlan_bssid_ex dev_network;
|
struct wlan_bssid_ex dev_network;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
u8 ht_enable;
|
u8 ht_enable;
|
||||||
u8 cbw40_enable;
|
u8 cbw40_enable;
|
||||||
u8 ampdu_enable;//for tx
|
u8 ampdu_enable;//for tx
|
||||||
u8 rx_stbc;
|
u8 rx_stbc;
|
||||||
u8 ampdu_amsdu;//A-MPDU Supports A-MSDU is permitted
|
u8 ampdu_amsdu;//A-MPDU Supports A-MSDU is permitted
|
||||||
#endif
|
|
||||||
u8 lowrate_two_xmit;
|
u8 lowrate_two_xmit;
|
||||||
|
|
||||||
u8 rf_config ;
|
u8 rf_config ;
|
||||||
|
|
|
@ -250,7 +250,6 @@ extern u32 GlobalDebugLevel;
|
||||||
|
|
||||||
int proc_set_rx_signal(struct file *file, const char __user *buffer,
|
int proc_set_rx_signal(struct file *file, const char __user *buffer,
|
||||||
unsigned long count, void *data);
|
unsigned long count, void *data);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
|
|
||||||
int proc_get_ht_enable(char *page, char **start,
|
int proc_get_ht_enable(char *page, char **start,
|
||||||
off_t offset, int count,
|
off_t offset, int count,
|
||||||
|
@ -279,7 +278,6 @@ extern u32 GlobalDebugLevel;
|
||||||
|
|
||||||
int proc_set_rx_stbc(struct file *file, const char __user *buffer,
|
int proc_set_rx_stbc(struct file *file, const char __user *buffer,
|
||||||
unsigned long count, void *data);
|
unsigned long count, void *data);
|
||||||
#endif //CONFIG_80211N_HT
|
|
||||||
|
|
||||||
int proc_get_two_path_rssi(char *page, char **start,
|
int proc_get_two_path_rssi(char *page, char **start,
|
||||||
off_t offset, int count,
|
off_t offset, int count,
|
||||||
|
|
|
@ -323,8 +323,6 @@ struct mlme_priv {
|
||||||
|
|
||||||
struct qos_priv qospriv;
|
struct qos_priv qospriv;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
|
|
||||||
/* Number of non-HT AP/stations */
|
/* Number of non-HT AP/stations */
|
||||||
int num_sta_no_ht;
|
int num_sta_no_ht;
|
||||||
|
|
||||||
|
@ -336,8 +334,6 @@ struct mlme_priv {
|
||||||
|
|
||||||
struct ht_priv htpriv;
|
struct ht_priv htpriv;
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
struct rt_link_detect LinkDetectInfo;
|
struct rt_link_detect LinkDetectInfo;
|
||||||
struct timer_list dynamic_chk_timer; //dynamic/periodic check timer
|
struct timer_list dynamic_chk_timer; //dynamic/periodic check timer
|
||||||
|
|
||||||
|
@ -376,9 +372,7 @@ struct mlme_priv {
|
||||||
/* Overlapping BSS information */
|
/* Overlapping BSS information */
|
||||||
int olbc_ht;
|
int olbc_ht;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
u16 ht_op_mode;
|
u16 ht_op_mode;
|
||||||
#endif /* CONFIG_80211N_HT */
|
|
||||||
|
|
||||||
u8 *assoc_req;
|
u8 *assoc_req;
|
||||||
u32 assoc_req_len;
|
u32 assoc_req_len;
|
||||||
|
@ -607,11 +601,9 @@ u8 *rtw_get_beacon_interval_from_ie(u8 *ie);
|
||||||
|
|
||||||
void rtw_joinbss_reset(struct adapter *padapter);
|
void rtw_joinbss_reset(struct adapter *padapter);
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_ie, uint in_len, uint *pout_len);
|
unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_ie, uint in_len, uint *pout_len);
|
||||||
void rtw_update_ht_cap(struct adapter *padapter, u8 *pie, uint ie_len);
|
void rtw_update_ht_cap(struct adapter *padapter, u8 *pie, uint ie_len);
|
||||||
void rtw_issue_addbareq_cmd(struct adapter *padapter, struct xmit_frame *pxmitframe);
|
void rtw_issue_addbareq_cmd(struct adapter *padapter, struct xmit_frame *pxmitframe);
|
||||||
#endif
|
|
||||||
|
|
||||||
int rtw_is_same_ibss(struct adapter *adapter, struct wlan_network *pnetwork);
|
int rtw_is_same_ibss(struct adapter *adapter, struct wlan_network *pnetwork);
|
||||||
int is_same_network(struct wlan_bssid_ex *src, struct wlan_bssid_ex *dst);
|
int is_same_network(struct wlan_bssid_ex *src, struct wlan_bssid_ex *dst);
|
||||||
|
|
|
@ -136,9 +136,7 @@ struct sta_info {
|
||||||
u16 BA_starting_seqctrl[16];
|
u16 BA_starting_seqctrl[16];
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
struct ht_priv htpriv;
|
struct ht_priv htpriv;
|
||||||
#endif
|
|
||||||
|
|
||||||
//Notes:
|
//Notes:
|
||||||
//STA_Mode:
|
//STA_Mode:
|
||||||
|
|
|
@ -636,8 +636,6 @@ __inline static int IsFrameTypeCtrl(unsigned char *pframe)
|
||||||
Below is the definition for 802.11n
|
Below is the definition for 802.11n
|
||||||
------------------------------------------------------------------------------*/
|
------------------------------------------------------------------------------*/
|
||||||
|
|
||||||
//#ifdef CONFIG_80211N_HT
|
|
||||||
|
|
||||||
#define SetOrderBit(pbuf) \
|
#define SetOrderBit(pbuf) \
|
||||||
do { \
|
do { \
|
||||||
*(unsigned short *)(pbuf) |= cpu_to_le16(_ORDER_); \
|
*(unsigned short *)(pbuf) |= cpu_to_le16(_ORDER_); \
|
||||||
|
@ -824,10 +822,6 @@ enum ht_cap_ampdu_factor {
|
||||||
#define HT_INFO_STBC_PARAM_PCO_ACTIVE ((u16) BIT(10))
|
#define HT_INFO_STBC_PARAM_PCO_ACTIVE ((u16) BIT(10))
|
||||||
#define HT_INFO_STBC_PARAM_PCO_PHASE ((u16) BIT(11))
|
#define HT_INFO_STBC_PARAM_PCO_PHASE ((u16) BIT(11))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//#endif
|
|
||||||
|
|
||||||
// ===============WPS Section===============
|
// ===============WPS Section===============
|
||||||
// For WPSv1.0
|
// For WPSv1.0
|
||||||
#define WPSOUI 0x0050f204
|
#define WPSOUI 0x0050f204
|
||||||
|
|
|
@ -32,11 +32,9 @@ struct pkt_file {
|
||||||
size_t buf_len;
|
size_t buf_len;
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
extern int rtw_ht_enable;
|
extern int rtw_ht_enable;
|
||||||
extern int rtw_cbw40_enable;
|
extern int rtw_cbw40_enable;
|
||||||
extern int rtw_ampdu_enable;//for enable tx_ampdu
|
extern int rtw_ampdu_enable;//for enable tx_ampdu
|
||||||
#endif
|
|
||||||
|
|
||||||
#define NR_XMITFRAME 256
|
#define NR_XMITFRAME 256
|
||||||
|
|
||||||
|
|
|
@ -5321,9 +5321,7 @@ static int rtw_dbg_port(struct net_device *dev,
|
||||||
break;
|
break;
|
||||||
case 0x03:
|
case 0x03:
|
||||||
DBG_88E("qos_option=%d\n", pmlmepriv->qospriv.qos_option);
|
DBG_88E("qos_option=%d\n", pmlmepriv->qospriv.qos_option);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
DBG_88E("ht_option=%d\n", pmlmepriv->htpriv.ht_option);
|
DBG_88E("ht_option=%d\n", pmlmepriv->htpriv.ht_option);
|
||||||
#endif //CONFIG_80211N_HT
|
|
||||||
break;
|
break;
|
||||||
case 0x04:
|
case 0x04:
|
||||||
DBG_88E("cur_ch=%d\n", pmlmeext->cur_channel);
|
DBG_88E("cur_ch=%d\n", pmlmeext->cur_channel);
|
||||||
|
@ -5342,13 +5340,10 @@ static int rtw_dbg_port(struct net_device *dev,
|
||||||
DBG_88E("cur_channel=%d, cur_bwmode=%d, cur_ch_offset=%d\n", pmlmeext->cur_channel, pmlmeext->cur_bwmode, pmlmeext->cur_ch_offset);
|
DBG_88E("cur_channel=%d, cur_bwmode=%d, cur_ch_offset=%d\n", pmlmeext->cur_channel, pmlmeext->cur_bwmode, pmlmeext->cur_ch_offset);
|
||||||
DBG_88E("rtsen=%d, cts2slef=%d\n", psta->rtsen, psta->cts2self);
|
DBG_88E("rtsen=%d, cts2slef=%d\n", psta->rtsen, psta->cts2self);
|
||||||
DBG_88E("state=0x%x, aid=%d, macid=%d, raid=%d\n", psta->state, psta->aid, psta->mac_id, psta->raid);
|
DBG_88E("state=0x%x, aid=%d, macid=%d, raid=%d\n", psta->state, psta->aid, psta->mac_id, psta->raid);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
DBG_88E("qos_en=%d, ht_en=%d, init_rate=%d\n", psta->qos_option, psta->htpriv.ht_option, psta->init_rate);
|
DBG_88E("qos_en=%d, ht_en=%d, init_rate=%d\n", psta->qos_option, psta->htpriv.ht_option, psta->init_rate);
|
||||||
DBG_88E("bwmode=%d, ch_offset=%d, sgi=%d\n", psta->htpriv.bwmode, psta->htpriv.ch_offset, psta->htpriv.sgi);
|
DBG_88E("bwmode=%d, ch_offset=%d, sgi=%d\n", psta->htpriv.bwmode, psta->htpriv.ch_offset, psta->htpriv.sgi);
|
||||||
DBG_88E("ampdu_enable = %d\n", psta->htpriv.ampdu_enable);
|
DBG_88E("ampdu_enable = %d\n", psta->htpriv.ampdu_enable);
|
||||||
DBG_88E("agg_enable_bitmap=%x, candidate_tid_bitmap=%x\n", psta->htpriv.agg_enable_bitmap, psta->htpriv.candidate_tid_bitmap);
|
DBG_88E("agg_enable_bitmap=%x, candidate_tid_bitmap=%x\n", psta->htpriv.agg_enable_bitmap, psta->htpriv.candidate_tid_bitmap);
|
||||||
#endif //CONFIG_80211N_HT
|
|
||||||
|
|
||||||
for (i=0;i<16;i++)
|
for (i=0;i<16;i++)
|
||||||
{
|
{
|
||||||
preorder_ctrl = &psta->recvreorder_ctrl[i];
|
preorder_ctrl = &psta->recvreorder_ctrl[i];
|
||||||
|
@ -5415,12 +5410,10 @@ static int rtw_dbg_port(struct net_device *dev,
|
||||||
DBG_88E("sta's macaddr:%pM\n", (psta->hwaddr));
|
DBG_88E("sta's macaddr:%pM\n", (psta->hwaddr));
|
||||||
DBG_88E("rtsen=%d, cts2slef=%d\n", psta->rtsen, psta->cts2self);
|
DBG_88E("rtsen=%d, cts2slef=%d\n", psta->rtsen, psta->cts2self);
|
||||||
DBG_88E("state=0x%x, aid=%d, macid=%d, raid=%d\n", psta->state, psta->aid, psta->mac_id, psta->raid);
|
DBG_88E("state=0x%x, aid=%d, macid=%d, raid=%d\n", psta->state, psta->aid, psta->mac_id, psta->raid);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
DBG_88E("qos_en=%d, ht_en=%d, init_rate=%d\n", psta->qos_option, psta->htpriv.ht_option, psta->init_rate);
|
DBG_88E("qos_en=%d, ht_en=%d, init_rate=%d\n", psta->qos_option, psta->htpriv.ht_option, psta->init_rate);
|
||||||
DBG_88E("bwmode=%d, ch_offset=%d, sgi=%d\n", psta->htpriv.bwmode, psta->htpriv.ch_offset, psta->htpriv.sgi);
|
DBG_88E("bwmode=%d, ch_offset=%d, sgi=%d\n", psta->htpriv.bwmode, psta->htpriv.ch_offset, psta->htpriv.sgi);
|
||||||
DBG_88E("ampdu_enable = %d\n", psta->htpriv.ampdu_enable);
|
DBG_88E("ampdu_enable = %d\n", psta->htpriv.ampdu_enable);
|
||||||
DBG_88E("agg_enable_bitmap=%x, candidate_tid_bitmap=%x\n", psta->htpriv.agg_enable_bitmap, psta->htpriv.candidate_tid_bitmap);
|
DBG_88E("agg_enable_bitmap=%x, candidate_tid_bitmap=%x\n", psta->htpriv.agg_enable_bitmap, psta->htpriv.candidate_tid_bitmap);
|
||||||
#endif //CONFIG_80211N_HT
|
|
||||||
|
|
||||||
#ifdef CONFIG_AP_MODE
|
#ifdef CONFIG_AP_MODE
|
||||||
DBG_88E("capability=0x%x\n", psta->capability);
|
DBG_88E("capability=0x%x\n", psta->capability);
|
||||||
|
@ -6413,7 +6406,6 @@ static int rtw_add_sta(struct net_device *dev, struct ieee_param *param)
|
||||||
psta->qos_option = 0;
|
psta->qos_option = 0;
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
//chec 802.11n ht cap.
|
//chec 802.11n ht cap.
|
||||||
if (WLAN_STA_HT&flags)
|
if (WLAN_STA_HT&flags)
|
||||||
{
|
{
|
||||||
|
@ -6428,7 +6420,6 @@ static int rtw_add_sta(struct net_device *dev, struct ieee_param *param)
|
||||||
|
|
||||||
if (pmlmepriv->htpriv.ht_option == false)
|
if (pmlmepriv->htpriv.ht_option == false)
|
||||||
psta->htpriv.ht_option = false;
|
psta->htpriv.ht_option = false;
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
update_sta_info_apmode(padapter, psta);
|
update_sta_info_apmode(padapter, psta);
|
||||||
|
@ -6550,9 +6541,7 @@ static int rtw_ioctl_get_sta_data(struct net_device *dev, struct ieee_param *par
|
||||||
|
|
||||||
psta_data->tx_supp_rates_len = psta->bssratelen;
|
psta_data->tx_supp_rates_len = psta->bssratelen;
|
||||||
_rtw_memcpy(psta_data->tx_supp_rates, psta->bssrateset, psta->bssratelen);
|
_rtw_memcpy(psta_data->tx_supp_rates, psta->bssrateset, psta->bssratelen);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
_rtw_memcpy(&psta_data->ht_cap, &psta->htpriv.ht_cap, sizeof(struct rtw_ieee80211_ht_cap));
|
_rtw_memcpy(&psta_data->ht_cap, &psta->htpriv.ht_cap, sizeof(struct rtw_ieee80211_ht_cap));
|
||||||
#endif //CONFIG_80211N_HT
|
|
||||||
psta_data->rx_pkts = psta->sta_stats.rx_data_pkts;
|
psta_data->rx_pkts = psta->sta_stats.rx_data_pkts;
|
||||||
psta_data->rx_bytes = psta->sta_stats.rx_bytes;
|
psta_data->rx_bytes = psta->sta_stats.rx_bytes;
|
||||||
psta_data->rx_drops = psta->sta_stats.rx_drops;
|
psta_data->rx_drops = psta->sta_stats.rx_drops;
|
||||||
|
|
|
@ -83,13 +83,11 @@ static int rtw_uapsd_acbe_en = 0;
|
||||||
static int rtw_uapsd_acvi_en = 0;
|
static int rtw_uapsd_acvi_en = 0;
|
||||||
static int rtw_uapsd_acvo_en = 0;
|
static int rtw_uapsd_acvo_en = 0;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
int rtw_ht_enable = 1;
|
int rtw_ht_enable = 1;
|
||||||
int rtw_cbw40_enable = 3; // 0 :diable, bit(0): enable 2.4g, bit(1): enable 5g
|
int rtw_cbw40_enable = 3; // 0 :diable, bit(0): enable 2.4g, bit(1): enable 5g
|
||||||
int rtw_ampdu_enable = 1;//for enable tx_ampdu
|
int rtw_ampdu_enable = 1;//for enable tx_ampdu
|
||||||
static int rtw_rx_stbc = 1;// 0: disable, bit(0):enable 2.4g, bit(1):enable 5g, default is set to enable 2.4GHZ for IOT issue with bufflao's AP at 5GHZ
|
static int rtw_rx_stbc = 1;// 0: disable, bit(0):enable 2.4g, bit(1):enable 5g, default is set to enable 2.4GHZ for IOT issue with bufflao's AP at 5GHZ
|
||||||
static int rtw_ampdu_amsdu = 0;// 0: disabled, 1:enabled, 2:auto
|
static int rtw_ampdu_amsdu = 0;// 0: disabled, 1:enabled, 2:auto
|
||||||
#endif
|
|
||||||
|
|
||||||
static int rtw_lowrate_two_xmit = 1;//Use 2 path Tx to transmit MCS0~7 and legacy mode
|
static int rtw_lowrate_two_xmit = 1;//Use 2 path Tx to transmit MCS0~7 and legacy mode
|
||||||
|
|
||||||
|
@ -144,13 +142,11 @@ module_param(rtw_wmm_enable, int, 0644);
|
||||||
module_param(rtw_vrtl_carrier_sense, int, 0644);
|
module_param(rtw_vrtl_carrier_sense, int, 0644);
|
||||||
module_param(rtw_vcs_type, int, 0644);
|
module_param(rtw_vcs_type, int, 0644);
|
||||||
module_param(rtw_busy_thresh, int, 0644);
|
module_param(rtw_busy_thresh, int, 0644);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
module_param(rtw_ht_enable, int, 0644);
|
module_param(rtw_ht_enable, int, 0644);
|
||||||
module_param(rtw_cbw40_enable, int, 0644);
|
module_param(rtw_cbw40_enable, int, 0644);
|
||||||
module_param(rtw_ampdu_enable, int, 0644);
|
module_param(rtw_ampdu_enable, int, 0644);
|
||||||
module_param(rtw_rx_stbc, int, 0644);
|
module_param(rtw_rx_stbc, int, 0644);
|
||||||
module_param(rtw_ampdu_amsdu, int, 0644);
|
module_param(rtw_ampdu_amsdu, int, 0644);
|
||||||
#endif
|
|
||||||
module_param(rtw_lowrate_two_xmit, int, 0644);
|
module_param(rtw_lowrate_two_xmit, int, 0644);
|
||||||
module_param(rtw_rf_config, int, 0644);
|
module_param(rtw_rf_config, int, 0644);
|
||||||
module_param(rtw_power_mgnt, int, 0644);
|
module_param(rtw_power_mgnt, int, 0644);
|
||||||
|
@ -445,7 +441,6 @@ void rtw_proc_init_one(struct net_device *dev)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
entry->write_proc = proc_set_rx_signal;
|
entry->write_proc = proc_set_rx_signal;
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
entry = create_proc_read_entry("ht_enable", S_IFREG | S_IRUGO,
|
entry = create_proc_read_entry("ht_enable", S_IFREG | S_IRUGO,
|
||||||
dir_dev, proc_get_ht_enable, dev);
|
dir_dev, proc_get_ht_enable, dev);
|
||||||
if (!entry) {
|
if (!entry) {
|
||||||
|
@ -477,7 +472,6 @@ void rtw_proc_init_one(struct net_device *dev)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
entry->write_proc = proc_set_rx_stbc;
|
entry->write_proc = proc_set_rx_stbc;
|
||||||
#endif //CONFIG_80211N_HT
|
|
||||||
|
|
||||||
entry = create_proc_read_entry("path_rssi", S_IFREG | S_IRUGO,
|
entry = create_proc_read_entry("path_rssi", S_IFREG | S_IRUGO,
|
||||||
dir_dev, proc_get_two_path_rssi, dev);
|
dir_dev, proc_get_two_path_rssi, dev);
|
||||||
|
@ -543,12 +537,10 @@ void rtw_proc_remove_one(struct net_device *dev)
|
||||||
|
|
||||||
remove_proc_entry("best_channel", dir_dev);
|
remove_proc_entry("best_channel", dir_dev);
|
||||||
remove_proc_entry("rx_signal", dir_dev);
|
remove_proc_entry("rx_signal", dir_dev);
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
remove_proc_entry("cbw40_enable", dir_dev);
|
remove_proc_entry("cbw40_enable", dir_dev);
|
||||||
remove_proc_entry("ht_enable", dir_dev);
|
remove_proc_entry("ht_enable", dir_dev);
|
||||||
remove_proc_entry("ampdu_enable", dir_dev);
|
remove_proc_entry("ampdu_enable", dir_dev);
|
||||||
remove_proc_entry("rx_stbc", dir_dev);
|
remove_proc_entry("rx_stbc", dir_dev);
|
||||||
#endif //CONFIG_80211N_HT
|
|
||||||
remove_proc_entry("path_rssi", dir_dev);
|
remove_proc_entry("path_rssi", dir_dev);
|
||||||
remove_proc_entry("rssi_disp", dir_dev);
|
remove_proc_entry("rssi_disp", dir_dev);
|
||||||
#ifdef CONFIG_BT_COEXIST
|
#ifdef CONFIG_BT_COEXIST
|
||||||
|
@ -625,13 +617,11 @@ _func_enter_;
|
||||||
registry_par->uapsd_acvi_en = (u8)rtw_uapsd_acvi_en;
|
registry_par->uapsd_acvi_en = (u8)rtw_uapsd_acvi_en;
|
||||||
registry_par->uapsd_acvo_en = (u8)rtw_uapsd_acvo_en;
|
registry_par->uapsd_acvo_en = (u8)rtw_uapsd_acvo_en;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
registry_par->ht_enable = (u8)rtw_ht_enable;
|
registry_par->ht_enable = (u8)rtw_ht_enable;
|
||||||
registry_par->cbw40_enable = (u8)rtw_cbw40_enable;
|
registry_par->cbw40_enable = (u8)rtw_cbw40_enable;
|
||||||
registry_par->ampdu_enable = (u8)rtw_ampdu_enable;
|
registry_par->ampdu_enable = (u8)rtw_ampdu_enable;
|
||||||
registry_par->rx_stbc = (u8)rtw_rx_stbc;
|
registry_par->rx_stbc = (u8)rtw_rx_stbc;
|
||||||
registry_par->ampdu_amsdu = (u8)rtw_ampdu_amsdu;
|
registry_par->ampdu_amsdu = (u8)rtw_ampdu_amsdu;
|
||||||
#endif
|
|
||||||
registry_par->lowrate_two_xmit = (u8)rtw_lowrate_two_xmit;
|
registry_par->lowrate_two_xmit = (u8)rtw_lowrate_two_xmit;
|
||||||
registry_par->rf_config = (u8)rtw_rf_config;
|
registry_par->rf_config = (u8)rtw_rf_config;
|
||||||
registry_par->low_power = (u8)rtw_low_power;
|
registry_par->low_power = (u8)rtw_low_power;
|
||||||
|
@ -877,9 +867,7 @@ static u8 rtw_init_default_value(struct adapter *padapter)
|
||||||
pmlmepriv->scan_mode = SCAN_ACTIVE;
|
pmlmepriv->scan_mode = SCAN_ACTIVE;
|
||||||
|
|
||||||
//ht_priv
|
//ht_priv
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
pmlmepriv->htpriv.ampdu_enable = false;//set to disabled
|
pmlmepriv->htpriv.ampdu_enable = false;//set to disabled
|
||||||
#endif
|
|
||||||
|
|
||||||
//security_priv
|
//security_priv
|
||||||
psecuritypriv->binstallGrpkey = _FAIL;
|
psecuritypriv->binstallGrpkey = _FAIL;
|
||||||
|
|
|
@ -468,15 +468,12 @@ static void process_spec_devid(const struct usb_device_id *pdid)
|
||||||
pid = specific_device_id_tbl[i].idProduct;
|
pid = specific_device_id_tbl[i].idProduct;
|
||||||
flags = specific_device_id_tbl[i].flags;
|
flags = specific_device_id_tbl[i].flags;
|
||||||
|
|
||||||
#ifdef CONFIG_80211N_HT
|
|
||||||
if ((pdid->idVendor==vid) && (pdid->idProduct==pid) && (flags&SPEC_DEV_ID_DISABLE_HT))
|
if ((pdid->idVendor==vid) && (pdid->idProduct==pid) && (flags&SPEC_DEV_ID_DISABLE_HT))
|
||||||
{
|
{
|
||||||
rtw_ht_enable = 0;
|
rtw_ht_enable = 0;
|
||||||
rtw_cbw40_enable = 0;
|
rtw_cbw40_enable = 0;
|
||||||
rtw_ampdu_enable = 0;
|
rtw_ampdu_enable = 0;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue