diff options
Diffstat (limited to 'drivers/staging/rtl8723bs')
88 files changed, 1290 insertions, 7679 deletions
diff --git a/drivers/staging/rtl8723bs/Makefile b/drivers/staging/rtl8723bs/Makefile index dfe410283ca0..fe45200ff53c 100644 --- a/drivers/staging/rtl8723bs/Makefile +++ b/drivers/staging/rtl8723bs/Makefile @@ -28,14 +28,12 @@ r8723bs-y = \ hal/HalPwrSeqCmd.o \ hal/odm.o \ hal/odm_CfoTracking.o \ - hal/odm_debug.o \ hal/odm_DIG.o \ hal/odm_DynamicBBPowerSaving.o \ hal/odm_DynamicTxPower.o \ hal/odm_EdcaTurboCheck.o \ hal/odm_HWConfig.o \ hal/odm_NoiseMonitor.o \ - hal/odm_PathDiv.o \ hal/odm_RegConfig8723B.o \ hal/odm_RTL8723B.o \ hal/rtl8723b_cmd.o \ diff --git a/drivers/staging/rtl8723bs/TODO b/drivers/staging/rtl8723bs/TODO index afa620ceb2d8..3d8f5a634a10 100644 --- a/drivers/staging/rtl8723bs/TODO +++ b/drivers/staging/rtl8723bs/TODO @@ -1,6 +1,4 @@ TODO: -- find and remove remaining code valid only for 5 GHz. Most of the obvious - ones have been removed, but things like channel > 14 still exist. - find and remove any code for other chips that is left over - convert any remaining unusual variable types - find codes that can use %pM and %Nph formatting diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8723bs/core/rtw_ap.c index 4a9bd4825fab..a6fcb5e9d637 100644 --- a/drivers/staging/rtl8723bs/core/rtw_ap.c +++ b/drivers/staging/rtl8723bs/core/rtw_ap.c @@ -59,116 +59,112 @@ static void update_BCNTIM(struct adapter *padapter) unsigned char *pie = pnetwork_mlmeext->IEs; /* update TIM IE */ - /* if (pstapriv->tim_bitmap) */ - if (true) { - u8 *p, *dst_ie, *premainder_ie = NULL, *pbackup_remainder_ie = NULL; - __le16 tim_bitmap_le; - uint offset, tmp_len, tim_ielen, tim_ie_offset, remainder_ielen; - - tim_bitmap_le = cpu_to_le16(pstapriv->tim_bitmap); - - p = rtw_get_ie(pie + _FIXED_IE_LENGTH_, - WLAN_EID_TIM, - &tim_ielen, - pnetwork_mlmeext->IELength - _FIXED_IE_LENGTH_ - ); - if (p && tim_ielen > 0) { - tim_ielen += 2; + u8 *p, *dst_ie, *premainder_ie = NULL, *pbackup_remainder_ie = NULL; + __le16 tim_bitmap_le; + uint offset, tmp_len, tim_ielen, tim_ie_offset, remainder_ielen; - premainder_ie = p + tim_ielen; + tim_bitmap_le = cpu_to_le16(pstapriv->tim_bitmap); - tim_ie_offset = (signed int)(p - pie); + p = rtw_get_ie(pie + _FIXED_IE_LENGTH_, + WLAN_EID_TIM, + &tim_ielen, + pnetwork_mlmeext->IELength - _FIXED_IE_LENGTH_ + ); + if (p && tim_ielen > 0) { + tim_ielen += 2; - remainder_ielen = pnetwork_mlmeext->IELength - tim_ie_offset - tim_ielen; + premainder_ie = p + tim_ielen; - /* append TIM IE from dst_ie offset */ - dst_ie = p; - } else { - tim_ielen = 0; + tim_ie_offset = (signed int)(p - pie); - /* calculate head_len */ - offset = _FIXED_IE_LENGTH_; + remainder_ielen = pnetwork_mlmeext->IELength - tim_ie_offset - tim_ielen; - /* get ssid_ie len */ - p = rtw_get_ie(pie + _BEACON_IE_OFFSET_, - WLAN_EID_SSID, - &tmp_len, - (pnetwork_mlmeext->IELength - _BEACON_IE_OFFSET_) - ); - if (p) - offset += tmp_len + 2; + /* append TIM IE from dst_ie offset */ + dst_ie = p; + } else { + tim_ielen = 0; - /* get supported rates len */ - p = rtw_get_ie(pie + _BEACON_IE_OFFSET_, - WLAN_EID_SUPP_RATES, &tmp_len, - (pnetwork_mlmeext->IELength - _BEACON_IE_OFFSET_) - ); - if (p) - offset += tmp_len + 2; + /* calculate head_len */ + offset = _FIXED_IE_LENGTH_; - /* DS Parameter Set IE, len =3 */ - offset += 3; + /* get ssid_ie len */ + p = rtw_get_ie(pie + _BEACON_IE_OFFSET_, + WLAN_EID_SSID, + &tmp_len, + (pnetwork_mlmeext->IELength - _BEACON_IE_OFFSET_) + ); + if (p) + offset += tmp_len + 2; - premainder_ie = pie + offset; + /* get supported rates len */ + p = rtw_get_ie(pie + _BEACON_IE_OFFSET_, + WLAN_EID_SUPP_RATES, &tmp_len, + (pnetwork_mlmeext->IELength - _BEACON_IE_OFFSET_) + ); + if (p) + offset += tmp_len + 2; - remainder_ielen = pnetwork_mlmeext->IELength - offset - tim_ielen; + /* DS Parameter Set IE, len =3 */ + offset += 3; - /* append TIM IE from offset */ - dst_ie = pie + offset; - } + premainder_ie = pie + offset; - if (remainder_ielen > 0) { - pbackup_remainder_ie = rtw_malloc(remainder_ielen); - if (pbackup_remainder_ie && premainder_ie) - memcpy(pbackup_remainder_ie, premainder_ie, remainder_ielen); - } + remainder_ielen = pnetwork_mlmeext->IELength - offset - tim_ielen; - *dst_ie++ = WLAN_EID_TIM; + /* append TIM IE from offset */ + dst_ie = pie + offset; + } - if ((pstapriv->tim_bitmap & 0xff00) && (pstapriv->tim_bitmap & 0x00fe)) - tim_ielen = 5; - else - tim_ielen = 4; + if (remainder_ielen > 0) { + pbackup_remainder_ie = rtw_malloc(remainder_ielen); + if (pbackup_remainder_ie && premainder_ie) + memcpy(pbackup_remainder_ie, premainder_ie, remainder_ielen); + } - *dst_ie++ = tim_ielen; + *dst_ie++ = WLAN_EID_TIM; - *dst_ie++ = 0;/* DTIM count */ - *dst_ie++ = 1;/* DTIM period */ + if ((pstapriv->tim_bitmap & 0xff00) && (pstapriv->tim_bitmap & 0x00fe)) + tim_ielen = 5; + else + tim_ielen = 4; - if (pstapriv->tim_bitmap & BIT(0))/* for bc/mc frames */ - *dst_ie++ = BIT(0);/* bitmap ctrl */ - else - *dst_ie++ = 0; + *dst_ie++ = tim_ielen; - if (tim_ielen == 4) { - __le16 pvb; + *dst_ie++ = 0;/* DTIM count */ + *dst_ie++ = 1;/* DTIM period */ - if (pstapriv->tim_bitmap & 0xff00) - pvb = cpu_to_le16(pstapriv->tim_bitmap >> 8); - else - pvb = tim_bitmap_le; + if (pstapriv->tim_bitmap & BIT(0))/* for bc/mc frames */ + *dst_ie++ = BIT(0);/* bitmap ctrl */ + else + *dst_ie++ = 0; - *dst_ie++ = le16_to_cpu(pvb); + if (tim_ielen == 4) { + __le16 pvb; - } else if (tim_ielen == 5) { - memcpy(dst_ie, &tim_bitmap_le, 2); - dst_ie += 2; - } + if (pstapriv->tim_bitmap & 0xff00) + pvb = cpu_to_le16(pstapriv->tim_bitmap >> 8); + else + pvb = tim_bitmap_le; - /* copy remainder IE */ - if (pbackup_remainder_ie) { - memcpy(dst_ie, pbackup_remainder_ie, remainder_ielen); + *dst_ie++ = le16_to_cpu(pvb); - kfree(pbackup_remainder_ie); - } + } else if (tim_ielen == 5) { + memcpy(dst_ie, &tim_bitmap_le, 2); + dst_ie += 2; + } + + /* copy remainder IE */ + if (pbackup_remainder_ie) { + memcpy(dst_ie, pbackup_remainder_ie, remainder_ielen); - offset = (uint)(dst_ie - pie); - pnetwork_mlmeext->IELength = offset + remainder_ielen; + kfree(pbackup_remainder_ie); } + + offset = (uint)(dst_ie - pie); + pnetwork_mlmeext->IELength = offset + remainder_ielen; } -u8 chk_sta_is_alive(struct sta_info *psta); -u8 chk_sta_is_alive(struct sta_info *psta) +static u8 chk_sta_is_alive(struct sta_info *psta) { sta_update_last_rx_pkts(psta); @@ -177,7 +173,7 @@ u8 chk_sta_is_alive(struct sta_info *psta) void expire_timeout_chk(struct adapter *padapter) { - struct list_head *phead, *plist; + struct list_head *phead, *plist, *tmp; u8 updated = false; struct sta_info *psta = NULL; struct sta_priv *pstapriv = &padapter->stapriv; @@ -188,13 +184,9 @@ void expire_timeout_chk(struct adapter *padapter) spin_lock_bh(&pstapriv->auth_list_lock); phead = &pstapriv->auth_list; - plist = get_next(phead); - /* check auth_queue */ - while (phead != plist) { - psta = container_of(plist, struct sta_info, auth_list); - - plist = get_next(plist); + list_for_each_safe(plist, tmp, phead) { + psta = list_entry(plist, struct sta_info, auth_list); if (psta->expire_to > 0) { psta->expire_to--; @@ -217,12 +209,9 @@ void expire_timeout_chk(struct adapter *padapter) spin_lock_bh(&pstapriv->asoc_list_lock); phead = &pstapriv->asoc_list; - plist = get_next(phead); - /* check asoc_queue */ - while (phead != plist) { - psta = container_of(plist, struct sta_info, asoc_list); - plist = get_next(plist); + list_for_each_safe(plist, tmp, phead) { + psta = list_entry(plist, struct sta_info, asoc_list); if (chk_sta_is_alive(psta) || !psta->expire_to) { psta->expire_to = pstapriv->expire_to; psta->keep_alive_trycnt = 0; @@ -352,11 +341,7 @@ void add_RATid(struct adapter *padapter, struct sta_info *psta, u8 rssi_level) shortGIrate = query_ra_short_GI(psta); if (pcur_network->Configuration.DSConfig > 14) { - if (tx_ra_bitmap & 0xffff000) - sta_band |= WIRELESS_11_5N; - - if (tx_ra_bitmap & 0xff0) - sta_band |= WIRELESS_11A; + sta_band |= WIRELESS_INVALID; } else { if (tx_ra_bitmap & 0xffff000) sta_band |= WIRELESS_11_24N; @@ -422,7 +407,7 @@ void update_bmc_sta(struct adapter *padapter) } else if (network_type == WIRELESS_INVALID) { /* error handling */ if (pcur_network->Configuration.DSConfig > 14) - network_type = WIRELESS_11A; + network_type = WIRELESS_INVALID; else network_type = WIRELESS_11B; } @@ -653,7 +638,7 @@ static void update_hw_ht_param(struct adapter *padapter) /* pmlmeinfo->HT_protection = pmlmeinfo->HT_info.infos[1] & 0x3; */ } -void start_bss_network(struct adapter *padapter, u8 *pbuf) +void start_bss_network(struct adapter *padapter) { u8 *p; u8 val8, cur_channel, cur_bwmode, cur_ch_offset; @@ -1125,9 +1110,6 @@ int rtw_check_beacon_data(struct adapter *padapter, u8 *pbuf, int len) case WIRELESS_11BG_24N: pbss_network->NetworkTypeInUse = Ndis802_11OFDM24; break; - case WIRELESS_11A: - pbss_network->NetworkTypeInUse = Ndis802_11OFDM5; - break; default: pbss_network->NetworkTypeInUse = Ndis802_11OFDM24; break; @@ -1210,11 +1192,8 @@ int rtw_acl_add_sta(struct adapter *padapter, u8 *addr) spin_lock_bh(&(pacl_node_q->lock)); phead = get_list_head(pacl_node_q); - plist = get_next(phead); - - while (phead != plist) { - paclnode = container_of(plist, struct rtw_wlan_acl_node, list); - plist = get_next(plist); + list_for_each(plist, phead) { + paclnode = list_entry(plist, struct rtw_wlan_acl_node, list); if (!memcmp(paclnode->addr, addr, ETH_ALEN)) { if (paclnode->valid == true) { @@ -1256,7 +1235,7 @@ int rtw_acl_add_sta(struct adapter *padapter, u8 *addr) void rtw_acl_remove_sta(struct adapter *padapter, u8 *addr) { - struct list_head *plist, *phead; + struct list_head *plist, *phead, *tmp; struct rtw_wlan_acl_node *paclnode; struct sta_priv *pstapriv = &padapter->stapriv; struct wlan_acl_pool *pacl_list = &pstapriv->acl_list; @@ -1266,11 +1245,8 @@ void rtw_acl_remove_sta(struct adapter *padapter, u8 *addr) spin_lock_bh(&(pacl_node_q->lock)); phead = get_list_head(pacl_node_q); - plist = get_next(phead); - - while (phead != plist) { - paclnode = container_of(plist, struct rtw_wlan_acl_node, list); - plist = get_next(plist); + list_for_each_safe(plist, tmp, phead) { + paclnode = list_entry(plist, struct rtw_wlan_acl_node, list); if ( !memcmp(paclnode->addr, addr, ETH_ALEN) || @@ -1716,13 +1692,9 @@ void associated_clients_update(struct adapter *padapter, u8 updated) spin_lock_bh(&pstapriv->asoc_list_lock); phead = &pstapriv->asoc_list; - plist = get_next(phead); - /* check asoc_queue */ - while (phead != plist) { - psta = container_of(plist, struct sta_info, asoc_list); - - plist = get_next(plist); + list_for_each(plist, phead) { + psta = list_entry(plist, struct sta_info, asoc_list); VCS_update(padapter, psta); } @@ -1960,7 +1932,7 @@ u8 ap_free_sta( void rtw_sta_flush(struct adapter *padapter) { - struct list_head *phead, *plist; + struct list_head *phead, *plist, *tmp; struct sta_info *psta = NULL; struct sta_priv *pstapriv = &padapter->stapriv; struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv; @@ -1972,13 +1944,9 @@ void rtw_sta_flush(struct adapter *padapter) spin_lock_bh(&pstapriv->asoc_list_lock); phead = &pstapriv->asoc_list; - plist = get_next(phead); - /* free sta asoc_queue */ - while (phead != plist) { - psta = container_of(plist, struct sta_info, asoc_list); - - plist = get_next(plist); + list_for_each_safe(plist, tmp, phead) { + psta = list_entry(plist, struct sta_info, asoc_list); list_del_init(&psta->asoc_list); pstapriv->asoc_list_cnt--; @@ -2039,7 +2007,6 @@ void ap_sta_info_defer_update(struct adapter *padapter, struct sta_info *psta) /* restore hw setting from sw data structures */ void rtw_ap_restore_network(struct adapter *padapter) { - struct mlme_priv *mlmepriv = &padapter->mlmepriv; struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv; struct sta_priv *pstapriv = &padapter->stapriv; struct sta_info *psta; @@ -2058,7 +2025,7 @@ void rtw_ap_restore_network(struct adapter *padapter) pmlmeext->cur_bwmode ); - start_bss_network(padapter, (u8 *)&mlmepriv->cur_network.network); + start_bss_network(padapter); if ((padapter->securitypriv.dot11PrivacyAlgrthm == _TKIP_) || (padapter->securitypriv.dot11PrivacyAlgrthm == _AES_)) { @@ -2075,13 +2042,10 @@ void rtw_ap_restore_network(struct adapter *padapter) spin_lock_bh(&pstapriv->asoc_list_lock); phead = &pstapriv->asoc_list; - plist = get_next(phead); - - while (phead != plist) { + list_for_each(plist, phead) { int stainfo_offset; - psta = container_of(plist, struct sta_info, asoc_list); - plist = get_next(plist); + psta = list_entry(plist, struct sta_info, asoc_list); stainfo_offset = rtw_stainfo_offset(pstapriv, psta); if (stainfo_offset_valid(stainfo_offset)) @@ -2160,7 +2124,7 @@ void start_ap_mode(struct adapter *padapter) void stop_ap_mode(struct adapter *padapter) { - struct list_head *phead, *plist; + struct list_head *phead, *plist, *tmp; struct rtw_wlan_acl_node *paclnode; struct sta_info *psta = NULL; struct sta_priv *pstapriv = &padapter->stapriv; @@ -2184,10 +2148,8 @@ void stop_ap_mode(struct adapter *padapter) /* for ACL */ spin_lock_bh(&(pacl_node_q->lock)); phead = get_list_head(pacl_node_q); - plist = get_next(phead); - while (phead != plist) { - paclnode = container_of(plist, struct rtw_wlan_acl_node, list); - plist = get_next(plist); + list_for_each_safe(plist, tmp, phead) { + paclnode = list_entry(plist, struct rtw_wlan_acl_node, list); if (paclnode->valid) { paclnode->valid = false; diff --git a/drivers/staging/rtl8723bs/core/rtw_cmd.c b/drivers/staging/rtl8723bs/core/rtw_cmd.c index e1a8f8b47edd..04956ccf485c 100644 --- a/drivers/staging/rtl8723bs/core/rtw_cmd.c +++ b/drivers/staging/rtl8723bs/core/rtw_cmd.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _RTW_CMD_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <hal_btcoex.h> @@ -157,9 +155,9 @@ static struct cmd_hdl wlancmds[] = { }; /* -Caller and the rtw_cmd_thread can protect cmd_q by spin_lock. -No irqsave is necessary. -*/ + * Caller and the rtw_cmd_thread can protect cmd_q by spin_lock. + * No irqsave is necessary. + */ int rtw_init_cmd_priv(struct cmd_priv *pcmdpriv) { @@ -225,6 +223,7 @@ void _rtw_free_evt_priv(struct evt_priv *pevtpriv) while (!rtw_cbuf_empty(pevtpriv->c2h_queue)) { void *c2h = rtw_cbuf_pop(pevtpriv->c2h_queue); + if (c2h && c2h != (void *)pevtpriv) kfree(c2h); } @@ -243,14 +242,14 @@ void _rtw_free_cmd_priv(struct cmd_priv *pcmdpriv) } /* -Calling Context: - -rtw_enqueue_cmd can only be called between kernel thread, -since only spin_lock is used. - -ISR/Call-Back functions can't call this sub-function. - -*/ + * Calling Context: + * + * rtw_enqueue_cmd can only be called between kernel thread, + * since only spin_lock is used. + * + * ISR/Call-Back functions can't call this sub-function. + * + */ int _rtw_enqueue_cmd(struct __queue *queue, struct cmd_obj *obj) { @@ -529,10 +528,11 @@ post_process: } /* -rtw_sitesurvey_cmd(~) - ### NOTE:#### (!!!!) - MUST TAKE CARE THAT BEFORE CALLING THIS FUNC, YOU SHOULD HAVE LOCKED pmlmepriv->lock -*/ + * rtw_sitesurvey_cmd(~) + * ### NOTE:#### (!!!!) + * MUST TAKE CARE THAT BEFORE CALLING THIS FUNC, YOU SHOULD HAVE LOCKED pmlmepriv->lock + */ + u8 rtw_sitesurvey_cmd(struct adapter *padapter, struct ndis_802_11_ssid *ssid, int ssid_num, struct rtw_ieee80211_channel *ch, int ch_num) { @@ -565,6 +565,7 @@ u8 rtw_sitesurvey_cmd(struct adapter *padapter, struct ndis_802_11_ssid *ssid, /* prepare ssid list */ if (ssid) { int i; + for (i = 0; i < ssid_num && i < RTW_SSID_SCAN_AMOUNT; i++) { if (ssid[i].SsidLength) { memcpy(&psurveyPara->ssid[i], &ssid[i], sizeof(struct ndis_802_11_ssid)); @@ -576,6 +577,7 @@ u8 rtw_sitesurvey_cmd(struct adapter *padapter, struct ndis_802_11_ssid *ssid, /* prepare channel list */ if (ch) { int i; + for (i = 0; i < ch_num && i < RTW_CHANNEL_SCAN_AMOUNT; i++) { if (ch[i].hw_value && !(ch[i].flags & RTW_IEEE80211_CHAN_DISABLED)) { memcpy(&psurveyPara->ch[i], &ch[i], sizeof(struct rtw_ieee80211_channel)); @@ -671,7 +673,7 @@ int rtw_startbss_cmd(struct adapter *padapter, int flags) if (flags & RTW_CMDF_DIRECTLY) { /* no need to enqueue, do the cmd hdl directly and free cmd parameter */ - start_bss_network(padapter, (u8 *)&(padapter->mlmepriv.cur_network.network)); + start_bss_network(padapter); } else { /* need enqueue, prepare cmd_obj and enqueue */ pcmd = rtw_zmalloc(sizeof(struct cmd_obj)); @@ -695,7 +697,7 @@ int rtw_startbss_cmd(struct adapter *padapter, int flags) res = rtw_enqueue_cmd(pcmdpriv, pcmd); if (res == _SUCCESS && (flags & RTW_CMDF_WAIT_ACK)) { - rtw_sctx_wait(&sctx, __func__); + rtw_sctx_wait(&sctx); if (mutex_lock_interruptible(&pcmdpriv->sctx_mutex) == 0) { if (sctx.status == RTW_SCTX_SUBMITTED) pcmd->sctx = NULL; @@ -1337,6 +1339,7 @@ u8 traffic_status_watchdog(struct adapter *padapter, u8 from_timer) static void dynamic_chk_wk_hdl(struct adapter *padapter) { struct mlme_priv *pmlmepriv; + pmlmepriv = &(padapter->mlmepriv); if (check_fwstate(pmlmepriv, WIFI_AP_STATE) == true) diff --git a/drivers/staging/rtl8723bs/core/rtw_debug.c b/drivers/staging/rtl8723bs/core/rtw_debug.c index 79fd968bb147..576b039f741c 100644 --- a/drivers/staging/rtl8723bs/core/rtw_debug.c +++ b/drivers/staging/rtl8723bs/core/rtw_debug.c @@ -10,60 +10,56 @@ #include <rtw_debug.h> #include <hal_btcoex.h> -u32 GlobalDebugLevel = _drv_err_; - #include <rtw_version.h> -void sd_f0_reg_dump(void *sel, struct adapter *adapter) +static void dump_4_regs(struct adapter *adapter, int offset) { + u32 reg[4]; int i; - for (i = 0x0; i <= 0xff; i++) { - if (i%16 == 0) - netdev_dbg(adapter->pnetdev, "0x%02x ", i); - - DBG_871X_SEL(sel, "%02x ", rtw_sd_f0_read8(adapter, i)); + for (i = 0; i < 4; i++) + reg[i] = rtw_read32(adapter, offset + i); - if (i%16 == 15) - DBG_871X_SEL(sel, "\n"); - else if (i%8 == 7) - DBG_871X_SEL(sel, "\t"); - } + netdev_dbg(adapter->pnetdev, "0x%03x 0x%08x 0x%08x 0x%08x 0x%08x\n", + i, reg[0], reg[1], reg[2], reg[3]); } -void mac_reg_dump(void *sel, struct adapter *adapter) +void mac_reg_dump(struct adapter *adapter) { - int i, j = 1; + int i; netdev_dbg(adapter->pnetdev, "======= MAC REG =======\n"); - for (i = 0x0; i < 0x800; i += 4) { - if (j%4 == 1) - netdev_dbg(adapter->pnetdev, "0x%03x", i); - DBG_871X_SEL(sel, " 0x%08x ", rtw_read32(adapter, i)); - if ((j++)%4 == 0) - DBG_871X_SEL(sel, "\n"); - } + for (i = 0x0; i < 0x800; i += 4) + dump_4_regs(adapter, i); } -void bb_reg_dump(void *sel, struct adapter *adapter) +void bb_reg_dump(struct adapter *adapter) { - int i, j = 1; + int i; netdev_dbg(adapter->pnetdev, "======= BB REG =======\n"); - for (i = 0x800; i < 0x1000 ; i += 4) { - if (j%4 == 1) - netdev_dbg(adapter->pnetdev, "0x%03x", i); - DBG_871X_SEL(sel, " 0x%08x ", rtw_read32(adapter, i)); - if ((j++)%4 == 0) - DBG_871X_SEL(sel, "\n"); - } + + for (i = 0x800; i < 0x1000 ; i += 4) + dump_4_regs(adapter, i); +} + +static void dump_4_rf_regs(struct adapter *adapter, int path, int offset) +{ + u8 reg[4]; + int i; + + for (i = 0; i < 4; i++) + reg[i] = rtw_hal_read_rfreg(adapter, path, offset + i, + 0xffffffff); + + netdev_dbg(adapter->pnetdev, "0x%02x 0x%08x 0x%08x 0x%08x 0x%08x\n", + i, reg[0], reg[1], reg[2], reg[3]); } -void rf_reg_dump(void *sel, struct adapter *adapter) +void rf_reg_dump(struct adapter *adapter) { - int i, j = 1, path; - u32 value; + int i, path; u8 rf_type = 0; u8 path_nums = 0; @@ -77,13 +73,7 @@ void rf_reg_dump(void *sel, struct adapter *adapter) for (path = 0; path < path_nums; path++) { netdev_dbg(adapter->pnetdev, "RF_Path(%x)\n", path); - for (i = 0; i < 0x100; i++) { - value = rtw_hal_read_rfreg(adapter, path, i, 0xffffffff); - if (j%4 == 1) - netdev_dbg(adapter->pnetdev, "0x%02x ", i); - DBG_871X_SEL(sel, " 0x%08x ", value); - if ((j++)%4 == 0) - DBG_871X_SEL(sel, "\n"); - } + for (i = 0; i < 0x100; i++) + dump_4_rf_regs(adapter, path, i); } } diff --git a/drivers/staging/rtl8723bs/core/rtw_eeprom.c b/drivers/staging/rtl8723bs/core/rtw_eeprom.c deleted file mode 100644 index be0eda1604d0..000000000000 --- a/drivers/staging/rtl8723bs/core/rtw_eeprom.c +++ /dev/null @@ -1,210 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0 -/****************************************************************************** - * - * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. - * - ******************************************************************************/ -#define _RTW_EEPROM_C_ - -#include <drv_conf.h> -#include <osdep_service.h> -#include <drv_types.h> - -void up_clk(_adapter *padapter, u16 *x) -{ -_func_enter_; - *x = *x | _EESK; - rtw_write8(padapter, EE_9346CR, (u8)*x); - udelay(CLOCK_RATE); - -_func_exit_; - -} - -void down_clk(_adapter *padapter, u16 *x) -{ -_func_enter_; - *x = *x & ~_EESK; - rtw_write8(padapter, EE_9346CR, (u8)*x); - udelay(CLOCK_RATE); -_func_exit_; -} - -void shift_out_bits(_adapter *padapter, u16 data, u16 count) -{ - u16 x, mask; -_func_enter_; - - if (padapter->bSurpriseRemoved) - goto out; - - mask = 0x01 << (count - 1); - x = rtw_read8(padapter, EE_9346CR); - - x &= ~(_EEDO | _EEDI); - - do { - x &= ~_EEDI; - if (data & mask) - x |= _EEDI; - if (padapter->bSurpriseRemoved) - goto out; - - rtw_write8(padapter, EE_9346CR, (u8)x); - udelay(CLOCK_RATE); - up_clk(padapter, &x); - down_clk(padapter, &x); - mask = mask >> 1; - } while (mask); - if (padapter->bSurpriseRemoved) - goto out; - - x &= ~_EEDI; - rtw_write8(padapter, EE_9346CR, (u8)x); -out: -_func_exit_; -} - -u16 shift_in_bits(_adapter *padapter) -{ - u16 x, d = 0, i; -_func_enter_; - if (padapter->bSurpriseRemoved) - goto out; - - x = rtw_read8(padapter, EE_9346CR); - - x &= ~(_EEDO | _EEDI); - d = 0; - - for (i = 0; i < 16; i++) { - d = d << 1; - up_clk(padapter, &x); - if (padapter->bSurpriseRemoved) - goto out; - - x = rtw_read8(padapter, EE_9346CR); - - x &= ~(_EEDI); - if (x & _EEDO) - d |= 1; - - down_clk(padapter, &x); - } -out: -_func_exit_; - - return d; -} - -void standby(_adapter *padapter) -{ - u8 x; -_func_enter_; - x = rtw_read8(padapter, EE_9346CR); - - x &= ~(_EECS | _EESK); - rtw_write8(padapter, EE_9346CR, x); - - udelay(CLOCK_RATE); - x |= _EECS; - rtw_write8(padapter, EE_9346CR, x); - udelay(CLOCK_RATE); -_func_exit_; -} - -void eeprom_clean(_adapter *padapter) -{ - u16 x; -_func_enter_; - if (padapter->bSurpriseRemoved) - goto out; - - x = rtw_read8(padapter, EE_9346CR); - if (padapter->bSurpriseRemoved) - goto out; - - x &= ~(_EECS | _EEDI); - rtw_write8(padapter, EE_9346CR, (u8)x); - if (padapter->bSurpriseRemoved) - goto out; - - up_clk(padapter, &x); - if (padapter->bSurpriseRemoved) - goto out; - - down_clk(padapter, &x); -out: -_func_exit_; -} - -u16 eeprom_read16(_adapter *padapter, u16 reg) /*ReadEEprom*/ -{ - - u16 x; - u16 data = 0; - -_func_enter_; - - if (padapter->bSurpriseRemoved) - goto out; - - /* select EEPROM, reset bits, set _EECS*/ - x = rtw_read8(padapter, EE_9346CR); - - if (padapter->bSurpriseRemoved) - goto out; - - x &= ~(_EEDI | _EEDO | _EESK | _EEM0); - x |= _EEM1 | _EECS; - rtw_write8(padapter, EE_9346CR, (unsigned char)x); - - /* write the read opcode and register number in that order*/ - /* The opcode is 3bits in length, reg is 6 bits long*/ - shift_out_bits(padapter, EEPROM_READ_OPCODE, 3); - shift_out_bits(padapter, reg, padapter->EepromAddressSize); - - /* Now read the data (16 bits) in from the selected EEPROM word*/ - data = shift_in_bits(padapter); - - eeprom_clean(padapter); -out: -_func_exit_; - return data; - - -} - -/*addr_off : address offset of the entry in eeprom (not the tuple number of eeprom (reg); that is addr_off !=reg)*/ -u8 eeprom_read(_adapter *padapter, u32 addr_off, u8 sz, u8 *rbuf) -{ - u8 quotient, remainder, addr_2align_odd; - u16 reg, stmp, i = 0, idx = 0; -_func_enter_; - reg = (u16)(addr_off >> 1); - addr_2align_odd = (u8)(addr_off & 0x1); - - /*read that start at high part: e.g 1,3,5,7,9,...*/ - if (addr_2align_odd) { - stmp = eeprom_read16(padapter, reg); - rbuf[idx++] = (u8) ((stmp>>8)&0xff); /*return hogh-part of the short*/ - reg++; sz--; - } - - quotient = sz >> 1; - remainder = sz & 0x1; - - for (i = 0; i < quotient; i++) { - stmp = eeprom_read16(padapter, reg+i); - rbuf[idx++] = (u8) (stmp&0xff); - rbuf[idx++] = (u8) ((stmp>>8)&0xff); - } - - reg = reg+i; - if (remainder) { /*end of read at lower part of short : 0,2,4,6,...*/ - stmp = eeprom_read16(padapter, reg); - rbuf[idx] = (u8)(stmp & 0xff); - } -_func_exit_; - return true; -} diff --git a/drivers/staging/rtl8723bs/core/rtw_efuse.c b/drivers/staging/rtl8723bs/core/rtw_efuse.c index a28a06d5a576..430e2d81924c 100644 --- a/drivers/staging/rtl8723bs/core/rtw_efuse.c +++ b/drivers/staging/rtl8723bs/core/rtw_efuse.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _RTW_EFUSE_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <hal_data.h> @@ -40,7 +38,6 @@ Efuse_Read1ByteFromFakeContent( { if (Offset >= EFUSE_MAX_HW_SIZE) return false; - /* DbgPrint("Read fake content, offset = %d\n", Offset); */ if (fakeEfuseBank == 0) *Value = fakeEfuseContent[Offset]; else @@ -252,9 +249,8 @@ bool bPseudoTest) u8 bResult; u8 readbyte; - if (bPseudoTest) { + if (bPseudoTest) return Efuse_Read1ByteFromFakeContent(padapter, addr, data); - } /* <20130121, Kordan> For SMIC EFUSE specificatoin. */ /* 0x34[11]: SW force PGMEN input of efuse to high. (for the bank selected by 0x34[9:8]) */ @@ -294,9 +290,8 @@ u8 efuse_OneByteWrite(struct adapter *padapter, u16 addr, u8 data, bool bPseudoT u8 bResult = false; u32 efuseValue = 0; - if (bPseudoTest) { + if (bPseudoTest) return Efuse_Write1ByteToFakeContent(padapter, addr, data); - } /* -----------------e-fuse reg ctrl --------------------------------- */ @@ -322,11 +317,10 @@ u8 efuse_OneByteWrite(struct adapter *padapter, u16 addr, u8 data, bool bPseudoT tmpidx++; } - if (tmpidx < 100) { + if (tmpidx < 100) bResult = true; - } else { + else bResult = false; - } /* disable Efuse program enable */ PHY_SetMacReg(padapter, EFUSE_TEST, BIT(11), 0); diff --git a/drivers/staging/rtl8723bs/core/rtw_ieee80211.c b/drivers/staging/rtl8723bs/core/rtw_ieee80211.c index ae057eefeeb3..0f0fcd9dc652 100644 --- a/drivers/staging/rtl8723bs/core/rtw_ieee80211.c +++ b/drivers/staging/rtl8723bs/core/rtw_ieee80211.c @@ -96,10 +96,7 @@ bool rtw_is_cckratesonly_included(u8 *rate) int rtw_check_network_type(unsigned char *rate, int ratelen, int channel) { if (channel > 14) { - if (rtw_is_cckrates_included(rate)) - return WIRELESS_INVALID; - else - return WIRELESS_11A; + return WIRELESS_INVALID; } else { /* could be pure B, pure G, or B/G */ if (rtw_is_cckratesonly_included(rate)) return WIRELESS_11B; @@ -239,12 +236,10 @@ int rtw_ies_remove_ie(u8 *ies, uint *ies_len, uint offset, u8 eid, u8 *oui, u8 o while (1) { target_ie = rtw_get_ie_ex(start, search_len, eid, oui, oui_len, NULL, &target_ielen); if (target_ie && target_ielen) { - u8 buf[MAX_IE_SZ] = {0}; u8 *remain_ies = target_ie + target_ielen; uint remain_len = search_len - (remain_ies - start); - memcpy(buf, remain_ies, remain_len); - memcpy(target_ie, buf, remain_len); + memcpy(target_ie, remain_ies, remain_len); *ies_len = *ies_len - target_ielen; ret = _SUCCESS; @@ -268,10 +263,6 @@ void rtw_set_supported_rate(u8 *SupportedRates, uint mode) break; case WIRELESS_11G: - case WIRELESS_11A: - case WIRELESS_11_5N: - case WIRELESS_11A_5N:/* Todo: no basic rate for ofdm ? */ - case WIRELESS_11_5AC: memcpy(SupportedRates, WIFI_OFDMRATES, IEEE80211_NUM_OFDM_RATESLEN); break; @@ -329,14 +320,7 @@ int rtw_generate_ie(struct registry_priv *pregistrypriv) ie = rtw_set_ie(ie, WLAN_EID_SSID, pdev_network->Ssid.SsidLength, pdev_network->Ssid.Ssid, &sz); /* supported rates */ - if (pregistrypriv->wireless_mode == WIRELESS_11ABGN) { - if (pdev_network->Configuration.DSConfig > 14) - wireless_mode = WIRELESS_11A_5N; - else - wireless_mode = WIRELESS_11BG_24N; - } else { - wireless_mode = pregistrypriv->wireless_mode; - } + wireless_mode = pregistrypriv->wireless_mode; rtw_set_supported_rate(pdev_network->SupportedRates, wireless_mode); @@ -361,8 +345,8 @@ int rtw_generate_ie(struct registry_priv *pregistrypriv) } /* HT Cap. */ - if (((pregistrypriv->wireless_mode&WIRELESS_11_5N) || (pregistrypriv->wireless_mode&WIRELESS_11_24N)) - && (pregistrypriv->ht_enable == true)) { + if ((pregistrypriv->wireless_mode & WIRELESS_11_24N) && + (pregistrypriv->ht_enable == true)) { /* todo: */ } @@ -877,7 +861,7 @@ static int rtw_ieee802_11_parse_vendor_specific(u8 *pos, uint elen, } /** - * ieee802_11_parse_elems - Parse information elements in management frames + * rtw_ieee802_11_parse_elems - Parse information elements in management frames * @start: Pointer to the start of IEs * @len: Length of IE buffer in octets * @elems: Data structure for parsed elements diff --git a/drivers/staging/rtl8723bs/core/rtw_io.c b/drivers/staging/rtl8723bs/core/rtw_io.c index c860ab7d618c..856e23398c03 100644 --- a/drivers/staging/rtl8723bs/core/rtw_io.c +++ b/drivers/staging/rtl8723bs/core/rtw_io.c @@ -25,8 +25,6 @@ jackson@realtek.com.tw */ -#define _RTW_IO_C_ - #include <drv_types.h> #include <rtw_debug.h> @@ -35,7 +33,7 @@ jackson@realtek.com.tw #define rtw_cpu_to_le16(val) val #define rtw_cpu_to_le32(val) val -u8 _rtw_read8(struct adapter *adapter, u32 addr) +u8 rtw_read8(struct adapter *adapter, u32 addr) { /* struct io_queue *pio_queue = (struct io_queue *)adapter->pio_queue; */ struct io_priv *pio_priv = &adapter->iopriv; @@ -47,7 +45,7 @@ u8 _rtw_read8(struct adapter *adapter, u32 addr) return _read8(pintfhdl, addr); } -u16 _rtw_read16(struct adapter *adapter, u32 addr) +u16 rtw_read16(struct adapter *adapter, u32 addr) { u16 r_val; /* struct io_queue *pio_queue = (struct io_queue *)adapter->pio_queue; */ @@ -61,7 +59,7 @@ u16 _rtw_read16(struct adapter *adapter, u32 addr) return rtw_le16_to_cpu(r_val); } -u32 _rtw_read32(struct adapter *adapter, u32 addr) +u32 rtw_read32(struct adapter *adapter, u32 addr) { u32 r_val; /* struct io_queue *pio_queue = (struct io_queue *)adapter->pio_queue; */ @@ -76,7 +74,7 @@ u32 _rtw_read32(struct adapter *adapter, u32 addr) } -int _rtw_write8(struct adapter *adapter, u32 addr, u8 val) +int rtw_write8(struct adapter *adapter, u32 addr, u8 val) { /* struct io_queue *pio_queue = (struct io_queue *)adapter->pio_queue; */ struct io_priv *pio_priv = &adapter->iopriv; @@ -90,7 +88,7 @@ int _rtw_write8(struct adapter *adapter, u32 addr, u8 val) return RTW_STATUS_CODE(ret); } -int _rtw_write16(struct adapter *adapter, u32 addr, u16 val) +int rtw_write16(struct adapter *adapter, u32 addr, u16 val) { /* struct io_queue *pio_queue = (struct io_queue *)adapter->pio_queue; */ struct io_priv *pio_priv = &adapter->iopriv; @@ -103,7 +101,7 @@ int _rtw_write16(struct adapter *adapter, u32 addr, u16 val) ret = _write16(pintfhdl, addr, val); return RTW_STATUS_CODE(ret); } -int _rtw_write32(struct adapter *adapter, u32 addr, u32 val) +int rtw_write32(struct adapter *adapter, u32 addr, u32 val) { /* struct io_queue *pio_queue = (struct io_queue *)adapter->pio_queue; */ struct io_priv *pio_priv = &adapter->iopriv; @@ -118,26 +116,7 @@ int _rtw_write32(struct adapter *adapter, u32 addr, u32 val) return RTW_STATUS_CODE(ret); } -u8 _rtw_sd_f0_read8(struct adapter *adapter, u32 addr) -{ - u8 r_val = 0x00; - struct io_priv *pio_priv = &adapter->iopriv; - struct intf_hdl *pintfhdl = &(pio_priv->intf); - u8 (*_sd_f0_read8)(struct intf_hdl *pintfhdl, u32 addr); - - _sd_f0_read8 = pintfhdl->io_ops._sd_f0_read8; - - if (_sd_f0_read8) - r_val = _sd_f0_read8(pintfhdl, addr); - else - netdev_warn(adapter->pnetdev, - FUNC_ADPT_FMT " _sd_f0_read8 callback is NULL\n", - FUNC_ADPT_ARG(adapter)); - - return r_val; -} - -u32 _rtw_write_port(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem) +u32 rtw_write_port(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem) { u32 (*_write_port)(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *pmem); struct io_priv *pio_priv = &adapter->iopriv; diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme.c b/drivers/staging/rtl8723bs/core/rtw_mlme.c index 4707dba90397..2dd75e007239 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _RTW_MLME_C_ - #include <linux/etherdevice.h> #include <drv_types.h> #include <rtw_debug.h> @@ -244,15 +242,11 @@ struct wlan_network *_rtw_find_network(struct __queue *scanned_queue, u8 *addr) /* spin_lock_bh(&scanned_queue->lock); */ phead = get_list_head(scanned_queue); - plist = get_next(phead); - - while (plist != phead) { - pnetwork = container_of(plist, struct wlan_network, list); + list_for_each(plist, phead) { + pnetwork = list_entry(plist, struct wlan_network, list); if (!memcmp(addr, pnetwork->network.MacAddress, ETH_ALEN)) break; - - plist = get_next(plist); } if (plist == phead) @@ -266,7 +260,7 @@ exit: void rtw_free_network_queue(struct adapter *padapter, u8 isfreeall) { - struct list_head *phead, *plist; + struct list_head *phead, *plist, *tmp; struct wlan_network *pnetwork; struct mlme_priv *pmlmepriv = &padapter->mlmepriv; struct __queue *scanned_queue = &pmlmepriv->scanned_queue; @@ -274,13 +268,9 @@ void rtw_free_network_queue(struct adapter *padapter, u8 isfreeall) spin_lock_bh(&scanned_queue->lock); phead = get_list_head(scanned_queue); - plist = get_next(phead); - - while (phead != plist) { - - pnetwork = container_of(plist, struct wlan_network, list); + list_for_each_safe(plist, tmp, phead) { - plist = get_next(plist); + pnetwork = list_entry(plist, struct wlan_network, list); _rtw_free_network(pmlmepriv, pnetwork, isfreeall); @@ -422,15 +412,11 @@ struct wlan_network *_rtw_find_same_network(struct __queue *scanned_queue, struc struct wlan_network *found = NULL; phead = get_list_head(scanned_queue); - plist = get_next(phead); - - while (plist != phead) { - found = container_of(plist, struct wlan_network, list); + list_for_each(plist, phead) { + found = list_entry(plist, struct wlan_network, list); if (is_same_network(&network->network, &found->network, 0)) break; - - plist = get_next(plist); } if (plist == phead) @@ -448,21 +434,14 @@ struct wlan_network *rtw_get_oldest_wlan_network(struct __queue *scanned_queue) phead = get_list_head(scanned_queue); - plist = get_next(phead); - - while (1) { - - if (phead == plist) - break; + list_for_each(plist, phead) { - pwlan = container_of(plist, struct wlan_network, list); + pwlan = list_entry(plist, struct wlan_network, list); if (!pwlan->fixed) { if (oldest == NULL || time_after(oldest->last_scanned, pwlan->last_scanned)) oldest = pwlan; } - - plist = get_next(plist); } return oldest; @@ -549,13 +528,8 @@ void rtw_update_scanned_network(struct adapter *adapter, struct wlan_bssid_ex *t spin_lock_bh(&queue->lock); phead = get_list_head(queue); - plist = get_next(phead); - - while (1) { - if (phead == plist) - break; - - pnetwork = container_of(plist, struct wlan_network, list); + list_for_each(plist, phead) { + pnetwork = list_entry(plist, struct wlan_network, list); rtw_bug_check(pnetwork, pnetwork, pnetwork, pnetwork); @@ -571,8 +545,6 @@ void rtw_update_scanned_network(struct adapter *adapter, struct wlan_bssid_ex *t if (oldest == NULL || time_after(oldest->last_scanned, pnetwork->last_scanned)) oldest = pnetwork; - plist = get_next(plist); - } /* If we didn't find a match, then get a new network slot to initialize @@ -1189,7 +1161,7 @@ static void rtw_joinbss_update_network(struct adapter *padapter, struct wlan_net /* define REJOIN */ void rtw_joinbss_event_prehandle(struct adapter *adapter, u8 *pbuf) { - static u8 retry; + static u8 __maybe_unused retry; struct sta_info *ptarget_sta = NULL, *pcur_sta = NULL; struct sta_priv *pstapriv = &adapter->stapriv; struct mlme_priv *pmlmepriv = &(adapter->mlmepriv); @@ -1788,17 +1760,10 @@ int rtw_select_roaming_candidate(struct mlme_priv *mlme) spin_lock_bh(&(mlme->scanned_queue.lock)); phead = get_list_head(queue); - mlme->pscanned = get_next(phead); - - while (phead != mlme->pscanned) { + list_for_each(mlme->pscanned, phead) { - pnetwork = container_of(mlme->pscanned, struct wlan_network, list); - if (!pnetwork) { - ret = _FAIL; - goto exit; - } - - mlme->pscanned = get_next(mlme->pscanned); + pnetwork = list_entry(mlme->pscanned, struct wlan_network, + list); rtw_check_roaming_candidate(mlme, &candidate, pnetwork); @@ -1892,17 +1857,10 @@ int rtw_select_and_join_from_scanned_queue(struct mlme_priv *pmlmepriv) } phead = get_list_head(queue); - pmlmepriv->pscanned = get_next(phead); - - while (phead != pmlmepriv->pscanned) { - - pnetwork = container_of(pmlmepriv->pscanned, struct wlan_network, list); - if (!pnetwork) { - ret = _FAIL; - goto exit; - } + list_for_each(pmlmepriv->pscanned, phead) { - pmlmepriv->pscanned = get_next(pmlmepriv->pscanned); + pnetwork = list_entry(pmlmepriv->pscanned, + struct wlan_network, list); rtw_check_join_candidate(pmlmepriv, &candidate, pnetwork); @@ -2226,16 +2184,6 @@ void rtw_update_registrypriv_dev_network(struct adapter *adapter) case WIRELESS_11BG_24N: pdev_network->NetworkTypeInUse = (Ndis802_11OFDM24); break; - case WIRELESS_11A: - case WIRELESS_11A_5N: - pdev_network->NetworkTypeInUse = (Ndis802_11OFDM5); - break; - case WIRELESS_11ABGN: - if (pregistrypriv->channel > 14) - pdev_network->NetworkTypeInUse = (Ndis802_11OFDM5); - else - pdev_network->NetworkTypeInUse = (Ndis802_11OFDM24); - break; default: /* TODO */ break; @@ -2353,12 +2301,11 @@ void rtw_build_wmm_ie_ht(struct adapter *padapter, u8 *out_ie, uint *pout_len) { unsigned char WMM_IE[] = {0x00, 0x50, 0xf2, 0x02, 0x00, 0x01, 0x00}; int out_len; - u8 *pframe; if (padapter->mlmepriv.qospriv.qos_option == 0) { out_len = *pout_len; - pframe = rtw_set_ie(out_ie+out_len, WLAN_EID_VENDOR_SPECIFIC, - _WMM_IE_Length_, WMM_IE, pout_len); + rtw_set_ie(out_ie+out_len, WLAN_EID_VENDOR_SPECIFIC, + _WMM_IE_Length_, WMM_IE, pout_len); padapter->mlmepriv.qospriv.qos_option = 1; } @@ -2369,7 +2316,7 @@ unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_ { u32 ielen, out_len; enum ieee80211_max_ampdu_length_exp max_rx_ampdu_factor; - unsigned char *p, *pframe; + unsigned char *p; struct ieee80211_ht_cap ht_capie; u8 cbw40_enable = 0, stbc_rx_enable = 0, rf_type = 0, operation_bw = 0; struct registry_priv *pregistrypriv = &padapter->registrypriv; @@ -2492,8 +2439,8 @@ unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_ else ht_capie.ampdu_params_info |= (IEEE80211_HT_CAP_AMPDU_DENSITY&0x00); - pframe = rtw_set_ie(out_ie+out_len, WLAN_EID_HT_CAPABILITY, - sizeof(struct ieee80211_ht_cap), (unsigned char *)&ht_capie, pout_len); + rtw_set_ie(out_ie+out_len, WLAN_EID_HT_CAPABILITY, + sizeof(struct ieee80211_ht_cap), (unsigned char *)&ht_capie, pout_len); phtpriv->ht_option = true; @@ -2501,7 +2448,7 @@ unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_ p = rtw_get_ie(in_ie, WLAN_EID_HT_OPERATION, &ielen, in_len); if (p && (ielen == sizeof(struct ieee80211_ht_addt_info))) { out_len = *pout_len; - pframe = rtw_set_ie(out_ie+out_len, WLAN_EID_HT_OPERATION, ielen, p+2, pout_len); + rtw_set_ie(out_ie+out_len, WLAN_EID_HT_OPERATION, ielen, p+2, pout_len); } } @@ -2516,7 +2463,6 @@ void rtw_update_ht_cap(struct adapter *padapter, u8 *pie, uint ie_len, u8 channe int len; /* struct sta_info *bmc_sta, *psta; */ struct ieee80211_ht_cap *pht_capie; - struct ieee80211_ht_addt_info *pht_addtinfo; /* struct recv_reorder_ctrl *preorder_ctrl; */ struct mlme_priv *pmlmepriv = &padapter->mlmepriv; struct ht_priv *phtpriv = &pmlmepriv->htpriv; @@ -2553,7 +2499,6 @@ void rtw_update_ht_cap(struct adapter *padapter, u8 *pie, uint ie_len, u8 channe len = 0; p = rtw_get_ie(pie+sizeof(struct ndis_802_11_fix_ie), WLAN_EID_HT_OPERATION, &len, ie_len-sizeof(struct ndis_802_11_fix_ie)); if (p && len > 0) { - pht_addtinfo = (struct ieee80211_ht_addt_info *)(p+2); /* todo: */ } diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c index 9031cf7657ae..c128d462c6c7 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _RTW_MLME_EXT_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <rtw_wifi_regd.h> @@ -48,7 +46,6 @@ static struct action_handler OnAction_tbl[] = { {RTW_WLAN_CATEGORY_UNPROTECTED_WNM, "ACTION_UNPROTECTED_WNM", &DoReserved}, {RTW_WLAN_CATEGORY_SELF_PROTECTED, "ACTION_SELF_PROTECTED", &DoReserved}, {RTW_WLAN_CATEGORY_WMM, "ACTION_WMM", &DoReserved}, - {RTW_WLAN_CATEGORY_VHT, "ACTION_VHT", &DoReserved}, {RTW_WLAN_CATEGORY_P2P, "ACTION_P2P", &DoReserved}, }; @@ -81,135 +78,95 @@ static struct rt_channel_plan_2g RTW_ChannelPlan2G[RT_CHANNEL_DOMAIN_2G_MAX] = { {{}, 0}, /* 0x06, RT_CHANNEL_DOMAIN_2G_NULL */ }; -static struct rt_channel_plan_5g RTW_ChannelPlan5G[RT_CHANNEL_DOMAIN_5G_MAX] = { - {{}, 0}, /* 0x00, RT_CHANNEL_DOMAIN_5G_NULL */ - {{36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140}, 19}, /* 0x01, RT_CHANNEL_DOMAIN_5G_ETSI1 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 149, 153, 157, 161, 165}, 24}, /* 0x02, RT_CHANNEL_DOMAIN_5G_ETSI2 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 149, 153, 157, 161, 165}, 22}, /* 0x03, RT_CHANNEL_DOMAIN_5G_ETSI3 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 149, 153, 157, 161, 165}, 24}, /* 0x04, RT_CHANNEL_DOMAIN_5G_FCC1 */ - {{36, 40, 44, 48, 149, 153, 157, 161, 165}, 9}, /* 0x05, RT_CHANNEL_DOMAIN_5G_FCC2 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 149, 153, 157, 161, 165}, 13}, /* 0x06, RT_CHANNEL_DOMAIN_5G_FCC3 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 149, 153, 157, 161}, 12}, /* 0x07, RT_CHANNEL_DOMAIN_5G_FCC4 */ - {{149, 153, 157, 161, 165}, 5}, /* 0x08, RT_CHANNEL_DOMAIN_5G_FCC5 */ - {{36, 40, 44, 48, 52, 56, 60, 64}, 8}, /* 0x09, RT_CHANNEL_DOMAIN_5G_FCC6 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 136, 140, 149, 153, 157, 161, 165}, 20}, /* 0x0A, RT_CHANNEL_DOMAIN_5G_FCC7_IC1 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 149, 153, 157, 161, 165}, 20}, /* 0x0B, RT_CHANNEL_DOMAIN_5G_KCC1 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140}, 19}, /* 0x0C, RT_CHANNEL_DOMAIN_5G_MKK1 */ - {{36, 40, 44, 48, 52, 56, 60, 64}, 8}, /* 0x0D, RT_CHANNEL_DOMAIN_5G_MKK2 */ - {{100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140}, 11}, /* 0x0E, RT_CHANNEL_DOMAIN_5G_MKK3 */ - {{56, 60, 64, 100, 104, 108, 112, 116, 136, 140, 149, 153, 157, 161, 165}, 15}, /* 0x0F, RT_CHANNEL_DOMAIN_5G_NCC1 */ - {{56, 60, 64, 149, 153, 157, 161, 165}, 8}, /* 0x10, RT_CHANNEL_DOMAIN_5G_NCC2 */ - {{149, 153, 157, 161, 165}, 5}, /* 0x11, RT_CHANNEL_DOMAIN_5G_NCC3 */ - {{36, 40, 44, 48}, 4}, /* 0x12, RT_CHANNEL_DOMAIN_5G_ETSI4 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 136, 140, 149, 153, 157, 161, 165}, 20}, /* 0x13, RT_CHANNEL_DOMAIN_5G_ETSI5 */ - {{149, 153, 157, 161}, 4}, /* 0x14, RT_CHANNEL_DOMAIN_5G_FCC8 */ - {{36, 40, 44, 48, 52, 56, 60, 64}, 8}, /* 0x15, RT_CHANNEL_DOMAIN_5G_ETSI6 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 149, 153, 157, 161, 165}, 13}, /* 0x16, RT_CHANNEL_DOMAIN_5G_ETSI7 */ - {{36, 40, 44, 48, 149, 153, 157, 161, 165}, 9}, /* 0x17, RT_CHANNEL_DOMAIN_5G_ETSI8 */ - {{100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140}, 11}, /* 0x18, RT_CHANNEL_DOMAIN_5G_ETSI9 */ - {{149, 153, 157, 161, 165}, 5}, /* 0x19, RT_CHANNEL_DOMAIN_5G_ETSI10 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 132, 136, 140, 149, 153, 157, 161, 165}, 16}, /* 0x1A, RT_CHANNEL_DOMAIN_5G_ETSI11 */ - {{52, 56, 60, 64, 100, 104, 108, 112, 116, 132, 136, 140, 149, 153, 157, 161, 165}, 17}, /* 0x1B, RT_CHANNEL_DOMAIN_5G_NCC4 */ - {{149, 153, 157, 161}, 4}, /* 0x1C, RT_CHANNEL_DOMAIN_5G_ETSI12 */ - {{36, 40, 44, 48, 100, 104, 108, 112, 116, 132, 136, 140, 149, 153, 157, 161, 165}, 17}, /* 0x1D, RT_CHANNEL_DOMAIN_5G_FCC9 */ - {{36, 40, 44, 48, 100, 104, 108, 112, 116, 132, 136, 140}, 12}, /* 0x1E, RT_CHANNEL_DOMAIN_5G_ETSI13 */ - {{36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 132, 136, 140, 149, 153, 157, 161}, 20}, /* 0x1F, RT_CHANNEL_DOMAIN_5G_FCC10 */ - - /* Driver self defined for old channel plan Compatible , Remember to modify if have new channel plan definition ===== */ - {{36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 132, 136, 140, 149, 153, 157, 161, 165}, 21}, /* 0x20, RT_CHANNEL_DOMAIN_5G_FCC */ - {{36, 40, 44, 48}, 4}, /* 0x21, RT_CHANNEL_DOMAIN_5G_JAPAN_NO_DFS */ - {{36, 40, 44, 48, 149, 153, 157, 161}, 8}, /* 0x22, RT_CHANNEL_DOMAIN_5G_FCC4_NO_DFS */ -}; - static struct rt_channel_plan_map RTW_ChannelPlanMap[RT_CHANNEL_DOMAIN_MAX] = { /* 0x00 ~ 0x1F , Old Define ===== */ - {0x02, 0x20}, /* 0x00, RT_CHANNEL_DOMAIN_FCC */ - {0x02, 0x0A}, /* 0x01, RT_CHANNEL_DOMAIN_IC */ - {0x01, 0x01}, /* 0x02, RT_CHANNEL_DOMAIN_ETSI */ - {0x01, 0x00}, /* 0x03, RT_CHANNEL_DOMAIN_SPAIN */ - {0x01, 0x00}, /* 0x04, RT_CHANNEL_DOMAIN_FRANCE */ - {0x03, 0x00}, /* 0x05, RT_CHANNEL_DOMAIN_MKK */ - {0x03, 0x00}, /* 0x06, RT_CHANNEL_DOMAIN_MKK1 */ - {0x01, 0x09}, /* 0x07, RT_CHANNEL_DOMAIN_ISRAEL */ - {0x03, 0x09}, /* 0x08, RT_CHANNEL_DOMAIN_TELEC */ - {0x03, 0x00}, /* 0x09, RT_CHANNEL_DOMAIN_GLOBAL_DOAMIN */ - {0x00, 0x00}, /* 0x0A, RT_CHANNEL_DOMAIN_WORLD_WIDE_13 */ - {0x02, 0x0F}, /* 0x0B, RT_CHANNEL_DOMAIN_TAIWAN */ - {0x01, 0x08}, /* 0x0C, RT_CHANNEL_DOMAIN_CHINA */ - {0x02, 0x06}, /* 0x0D, RT_CHANNEL_DOMAIN_SINGAPORE_INDIA_MEXICO */ - {0x02, 0x0B}, /* 0x0E, RT_CHANNEL_DOMAIN_KOREA */ - {0x02, 0x09}, /* 0x0F, RT_CHANNEL_DOMAIN_TURKEY */ - {0x01, 0x01}, /* 0x10, RT_CHANNEL_DOMAIN_JAPAN */ - {0x02, 0x05}, /* 0x11, RT_CHANNEL_DOMAIN_FCC_NO_DFS */ - {0x01, 0x21}, /* 0x12, RT_CHANNEL_DOMAIN_JAPAN_NO_DFS */ - {0x00, 0x04}, /* 0x13, RT_CHANNEL_DOMAIN_WORLD_WIDE_5G */ - {0x02, 0x10}, /* 0x14, RT_CHANNEL_DOMAIN_TAIWAN_NO_DFS */ - {0x00, 0x21}, /* 0x15, RT_CHANNEL_DOMAIN_ETSI_NO_DFS */ - {0x00, 0x22}, /* 0x16, RT_CHANNEL_DOMAIN_KOREA_NO_DFS */ - {0x03, 0x21}, /* 0x17, RT_CHANNEL_DOMAIN_JAPAN_NO_DFS */ - {0x06, 0x08}, /* 0x18, RT_CHANNEL_DOMAIN_PAKISTAN_NO_DFS */ - {0x02, 0x08}, /* 0x19, RT_CHANNEL_DOMAIN_TAIWAN2_NO_DFS */ - {0x00, 0x00}, /* 0x1A, */ - {0x00, 0x00}, /* 0x1B, */ - {0x00, 0x00}, /* 0x1C, */ - {0x00, 0x00}, /* 0x1D, */ - {0x00, 0x00}, /* 0x1E, */ - {0x06, 0x04}, /* 0x1F, RT_CHANNEL_DOMAIN_WORLD_WIDE_ONLY_5G */ + {0x02}, /* 0x00, RT_CHANNEL_DOMAIN_FCC */ + {0x02}, /* 0x01, RT_CHANNEL_DOMAIN_IC */ + {0x01}, /* 0x02, RT_CHANNEL_DOMAIN_ETSI */ + {0x01}, /* 0x03, RT_CHANNEL_DOMAIN_SPAIN */ + {0x01}, /* 0x04, RT_CHANNEL_DOMAIN_FRANCE */ + {0x03}, /* 0x05, RT_CHANNEL_DOMAIN_MKK */ + {0x03}, /* 0x06, RT_CHANNEL_DOMAIN_MKK1 */ + {0x01}, /* 0x07, RT_CHANNEL_DOMAIN_ISRAEL */ + {0x03}, /* 0x08, RT_CHANNEL_DOMAIN_TELEC */ + {0x03}, /* 0x09, RT_CHANNEL_DOMAIN_GLOBAL_DOAMIN */ + {0x00}, /* 0x0A, RT_CHANNEL_DOMAIN_WORLD_WIDE_13 */ + {0x02}, /* 0x0B, RT_CHANNEL_DOMAIN_TAIWAN */ + {0x01}, /* 0x0C, RT_CHANNEL_DOMAIN_CHINA */ + {0x02}, /* 0x0D, RT_CHANNEL_DOMAIN_SINGAPORE_INDIA_MEXICO */ + {0x02}, /* 0x0E, RT_CHANNEL_DOMAIN_KOREA */ + {0x02}, /* 0x0F, RT_CHANNEL_DOMAIN_TURKEY */ + {0x01}, /* 0x10, RT_CHANNEL_DOMAIN_JAPAN */ + {0x02}, /* 0x11, RT_CHANNEL_DOMAIN_FCC_NO_DFS */ + {0x01}, /* 0x12, RT_CHANNEL_DOMAIN_JAPAN_NO_DFS */ + {0x00}, /* 0x13, RT_CHANNEL_DOMAIN_WORLD_WIDE_5G */ + {0x02}, /* 0x14, RT_CHANNEL_DOMAIN_TAIWAN_NO_DFS */ + {0x00}, /* 0x15, RT_CHANNEL_DOMAIN_ETSI_NO_DFS */ + {0x00}, /* 0x16, RT_CHANNEL_DOMAIN_KOREA_NO_DFS */ + {0x03}, /* 0x17, RT_CHANNEL_DOMAIN_JAPAN_NO_DFS */ + {0x06}, /* 0x18, RT_CHANNEL_DOMAIN_PAKISTAN_NO_DFS */ + {0x02}, /* 0x19, RT_CHANNEL_DOMAIN_TAIWAN2_NO_DFS */ + {0x00}, /* 0x1A, */ + {0x00}, /* 0x1B, */ + {0x00}, /* 0x1C, */ + {0x00}, /* 0x1D, */ + {0x00}, /* 0x1E, */ + {0x06}, /* 0x1F, RT_CHANNEL_DOMAIN_WORLD_WIDE_ONLY_5G */ /* 0x20 ~ 0x7F , New Define ===== */ - {0x00, 0x00}, /* 0x20, RT_CHANNEL_DOMAIN_WORLD_NULL */ - {0x01, 0x00}, /* 0x21, RT_CHANNEL_DOMAIN_ETSI1_NULL */ - {0x02, 0x00}, /* 0x22, RT_CHANNEL_DOMAIN_FCC1_NULL */ - {0x03, 0x00}, /* 0x23, RT_CHANNEL_DOMAIN_MKK1_NULL */ - {0x04, 0x00}, /* 0x24, RT_CHANNEL_DOMAIN_ETSI2_NULL */ - {0x02, 0x04}, /* 0x25, RT_CHANNEL_DOMAIN_FCC1_FCC1 */ - {0x00, 0x01}, /* 0x26, RT_CHANNEL_DOMAIN_WORLD_ETSI1 */ - {0x03, 0x0C}, /* 0x27, RT_CHANNEL_DOMAIN_MKK1_MKK1 */ - {0x00, 0x0B}, /* 0x28, RT_CHANNEL_DOMAIN_WORLD_KCC1 */ - {0x00, 0x05}, /* 0x29, RT_CHANNEL_DOMAIN_WORLD_FCC2 */ - {0x00, 0x00}, /* 0x2A, */ - {0x00, 0x00}, /* 0x2B, */ - {0x00, 0x00}, /* 0x2C, */ - {0x00, 0x00}, /* 0x2D, */ - {0x00, 0x00}, /* 0x2E, */ - {0x00, 0x00}, /* 0x2F, */ - {0x00, 0x06}, /* 0x30, RT_CHANNEL_DOMAIN_WORLD_FCC3 */ - {0x00, 0x07}, /* 0x31, RT_CHANNEL_DOMAIN_WORLD_FCC4 */ - {0x00, 0x08}, /* 0x32, RT_CHANNEL_DOMAIN_WORLD_FCC5 */ - {0x00, 0x09}, /* 0x33, RT_CHANNEL_DOMAIN_WORLD_FCC6 */ - {0x02, 0x0A}, /* 0x34, RT_CHANNEL_DOMAIN_FCC1_FCC7 */ - {0x00, 0x02}, /* 0x35, RT_CHANNEL_DOMAIN_WORLD_ETSI2 */ - {0x00, 0x03}, /* 0x36, RT_CHANNEL_DOMAIN_WORLD_ETSI3 */ - {0x03, 0x0D}, /* 0x37, RT_CHANNEL_DOMAIN_MKK1_MKK2 */ - {0x03, 0x0E}, /* 0x38, RT_CHANNEL_DOMAIN_MKK1_MKK3 */ - {0x02, 0x0F}, /* 0x39, RT_CHANNEL_DOMAIN_FCC1_NCC1 */ - {0x00, 0x00}, /* 0x3A, */ - {0x00, 0x00}, /* 0x3B, */ - {0x00, 0x00}, /* 0x3C, */ - {0x00, 0x00}, /* 0x3D, */ - {0x00, 0x00}, /* 0x3E, */ - {0x00, 0x00}, /* 0x3F, */ - {0x02, 0x10}, /* 0x40, RT_CHANNEL_DOMAIN_FCC1_NCC2 */ - {0x05, 0x00}, /* 0x41, RT_CHANNEL_DOMAIN_GLOBAL_NULL */ - {0x01, 0x12}, /* 0x42, RT_CHANNEL_DOMAIN_ETSI1_ETSI4 */ - {0x02, 0x05}, /* 0x43, RT_CHANNEL_DOMAIN_FCC1_FCC2 */ - {0x02, 0x11}, /* 0x44, RT_CHANNEL_DOMAIN_FCC1_NCC3 */ - {0x00, 0x13}, /* 0x45, RT_CHANNEL_DOMAIN_WORLD_ETSI5 */ - {0x02, 0x14}, /* 0x46, RT_CHANNEL_DOMAIN_FCC1_FCC8 */ - {0x00, 0x15}, /* 0x47, RT_CHANNEL_DOMAIN_WORLD_ETSI6 */ - {0x00, 0x16}, /* 0x48, RT_CHANNEL_DOMAIN_WORLD_ETSI7 */ - {0x00, 0x17}, /* 0x49, RT_CHANNEL_DOMAIN_WORLD_ETSI8 */ - {0x00, 0x18}, /* 0x50, RT_CHANNEL_DOMAIN_WORLD_ETSI9 */ - {0x00, 0x19}, /* 0x51, RT_CHANNEL_DOMAIN_WORLD_ETSI10 */ - {0x00, 0x1A}, /* 0x52, RT_CHANNEL_DOMAIN_WORLD_ETSI11 */ - {0x02, 0x1B}, /* 0x53, RT_CHANNEL_DOMAIN_FCC1_NCC4 */ - {0x00, 0x1C}, /* 0x54, RT_CHANNEL_DOMAIN_WORLD_ETSI12 */ - {0x02, 0x1D}, /* 0x55, RT_CHANNEL_DOMAIN_FCC1_FCC9 */ - {0x00, 0x1E}, /* 0x56, RT_CHANNEL_DOMAIN_WORLD_ETSI13 */ - {0x02, 0x1F}, /* 0x57, RT_CHANNEL_DOMAIN_FCC1_FCC10 */ + {0x00}, /* 0x20, RT_CHANNEL_DOMAIN_WORLD_NULL */ + {0x01}, /* 0x21, RT_CHANNEL_DOMAIN_ETSI1_NULL */ + {0x02}, /* 0x22, RT_CHANNEL_DOMAIN_FCC1_NULL */ + {0x03}, /* 0x23, RT_CHANNEL_DOMAIN_MKK1_NULL */ + {0x04}, /* 0x24, RT_CHANNEL_DOMAIN_ETSI2_NULL */ + {0x02}, /* 0x25, RT_CHANNEL_DOMAIN_FCC1_FCC1 */ + {0x00}, /* 0x26, RT_CHANNEL_DOMAIN_WORLD_ETSI1 */ + {0x03}, /* 0x27, RT_CHANNEL_DOMAIN_MKK1_MKK1 */ + {0x00}, /* 0x28, RT_CHANNEL_DOMAIN_WORLD_KCC1 */ + {0x00}, /* 0x29, RT_CHANNEL_DOMAIN_WORLD_FCC2 */ + {0x00}, /* 0x2A, */ + {0x00}, /* 0x2B, */ + {0x00}, /* 0x2C, */ + {0x00}, /* 0x2D, */ + {0x00}, /* 0x2E, */ + {0x00}, /* 0x2F, */ + {0x00}, /* 0x30, RT_CHANNEL_DOMAIN_WORLD_FCC3 */ + {0x00}, /* 0x31, RT_CHANNEL_DOMAIN_WORLD_FCC4 */ + {0x00}, /* 0x32, RT_CHANNEL_DOMAIN_WORLD_FCC5 */ + {0x00}, /* 0x33, RT_CHANNEL_DOMAIN_WORLD_FCC6 */ + {0x02}, /* 0x34, RT_CHANNEL_DOMAIN_FCC1_FCC7 */ + {0x00}, /* 0x35, RT_CHANNEL_DOMAIN_WORLD_ETSI2 */ + {0x00}, /* 0x36, RT_CHANNEL_DOMAIN_WORLD_ETSI3 */ + {0x03}, /* 0x37, RT_CHANNEL_DOMAIN_MKK1_MKK2 */ + {0x03}, /* 0x38, RT_CHANNEL_DOMAIN_MKK1_MKK3 */ + {0x02}, /* 0x39, RT_CHANNEL_DOMAIN_FCC1_NCC1 */ + {0x00}, /* 0x3A, */ + {0x00}, /* 0x3B, */ + {0x00}, /* 0x3C, */ + {0x00}, /* 0x3D, */ + {0x00}, /* 0x3E, */ + {0x00}, /* 0x3F, */ + {0x02}, /* 0x40, RT_CHANNEL_DOMAIN_FCC1_NCC2 */ + {0x05}, /* 0x41, RT_CHANNEL_DOMAIN_GLOBAL_NULL */ + {0x01}, /* 0x42, RT_CHANNEL_DOMAIN_ETSI1_ETSI4 */ + {0x02}, /* 0x43, RT_CHANNEL_DOMAIN_FCC1_FCC2 */ + {0x02}, /* 0x44, RT_CHANNEL_DOMAIN_FCC1_NCC3 */ + {0x00}, /* 0x45, RT_CHANNEL_DOMAIN_WORLD_ETSI5 */ + {0x02}, /* 0x46, RT_CHANNEL_DOMAIN_FCC1_FCC8 */ + {0x00}, /* 0x47, RT_CHANNEL_DOMAIN_WORLD_ETSI6 */ + {0x00}, /* 0x48, RT_CHANNEL_DOMAIN_WORLD_ETSI7 */ + {0x00}, /* 0x49, RT_CHANNEL_DOMAIN_WORLD_ETSI8 */ + {0x00}, /* 0x50, RT_CHANNEL_DOMAIN_WORLD_ETSI9 */ + {0x00}, /* 0x51, RT_CHANNEL_DOMAIN_WORLD_ETSI10 */ + {0x00}, /* 0x52, RT_CHANNEL_DOMAIN_WORLD_ETSI11 */ + {0x02}, /* 0x53, RT_CHANNEL_DOMAIN_FCC1_NCC4 */ + {0x00}, /* 0x54, RT_CHANNEL_DOMAIN_WORLD_ETSI12 */ + {0x02}, /* 0x55, RT_CHANNEL_DOMAIN_FCC1_FCC9 */ + {0x00}, /* 0x56, RT_CHANNEL_DOMAIN_WORLD_ETSI13 */ + {0x02}, /* 0x57, RT_CHANNEL_DOMAIN_FCC1_FCC10 */ }; /* use the combination for max channel numbers */ -static struct rt_channel_plan_map RTW_CHANNEL_PLAN_MAP_REALTEK_DEFINE = {0x03, 0x02}; +static struct rt_channel_plan_map RTW_CHANNEL_PLAN_MAP_REALTEK_DEFINE = {0x03}; /* Search the @param ch in given @param ch_set * @ch_set: the given channel set @@ -231,23 +188,6 @@ int rtw_ch_set_search_ch(struct rt_channel_info *ch_set, const u32 ch) return i; } -/* Check the @param ch is fit with setband setting of @param adapter - * @adapter: the given adapter - * @ch: the given channel number - * - * return true when check valid, false not valid - */ -bool rtw_mlme_band_check(struct adapter *adapter, const u32 ch) -{ - if (adapter->setband == GHZ24_50 /* 2.4G and 5G */ - || (adapter->setband == GHZ_24 && ch < 35) /* 2.4G only */ - || (adapter->setband == GHZ_50 && ch > 35) /* 5G only */ - ) { - return true; - } - return false; -} - /**************************************************************************** Following are the initialization functions for WiFi MLME @@ -395,8 +335,8 @@ static void init_channel_list(struct adapter *padapter, struct rt_channel_info * static u8 init_channel_set(struct adapter *padapter, u8 ChannelPlan, struct rt_channel_info *channel_set) { u8 index, chanset_size = 0; - u8 b5GBand = false, b2_4GBand = false; - u8 Index2G = 0, Index5G = 0; + u8 b2_4GBand = false; + u8 Index2G = 0; memset(channel_set, 0, sizeof(struct rt_channel_info)*MAX_CHANNEL_NUM); @@ -422,7 +362,6 @@ static u8 init_channel_set(struct adapter *padapter, u8 ChannelPlan, struct rt_c else if ((channel_set[chanset_size].ChannelNum >= 12 && channel_set[chanset_size].ChannelNum <= 14)) channel_set[chanset_size].ScanType = SCAN_PASSIVE; } else if (RT_CHANNEL_DOMAIN_WORLD_WIDE_13 == ChannelPlan || - RT_CHANNEL_DOMAIN_WORLD_WIDE_5G == ChannelPlan || RT_CHANNEL_DOMAIN_2G_WORLD == Index2G) { /* channel 12~13, passive scan */ if (channel_set[chanset_size].ChannelNum <= 11) channel_set[chanset_size].ScanType = SCAN_ACTIVE; @@ -435,20 +374,6 @@ static u8 init_channel_set(struct adapter *padapter, u8 ChannelPlan, struct rt_c } } - if (b5GBand) { - for (index = 0; index < RTW_ChannelPlan5G[Index5G].Len; index++) { - if (RTW_ChannelPlan5G[Index5G].Channel[index] <= 48 - || RTW_ChannelPlan5G[Index5G].Channel[index] >= 149) { - channel_set[chanset_size].ChannelNum = RTW_ChannelPlan5G[Index5G].Channel[index]; - if (RT_CHANNEL_DOMAIN_WORLD_WIDE_5G == ChannelPlan)/* passive scan for all 5G channels */ - channel_set[chanset_size].ScanType = SCAN_PASSIVE; - else - channel_set[chanset_size].ScanType = SCAN_ACTIVE; - chanset_size++; - } - } - } - return chanset_size; } @@ -1021,7 +946,7 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame) u16 capab_info; struct rtw_ieee802_11_elems elems; struct sta_info *pstat; - unsigned char reassoc, *p, *pos, *wpa_ie; + unsigned char *p, *pos, *wpa_ie; unsigned char WMM_IE[] = {0x00, 0x50, 0xf2, 0x02, 0x00, 0x01}; int i, ie_len, wpa_ie_len, left; unsigned char supportRate[16]; @@ -1041,13 +966,10 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame) return _FAIL; frame_type = GetFrameSubType(pframe); - if (frame_type == WIFI_ASSOCREQ) { - reassoc = 0; + if (frame_type == WIFI_ASSOCREQ) ie_offset = _ASOCREQ_IE_OFFSET_; - } else { /* WIFI_REASSOCREQ */ - reassoc = 1; + else /* WIFI_REASSOCREQ */ ie_offset = _REASOCREQ_IE_OFFSET_; - } if (pkt_len < sizeof(struct ieee80211_hdr_3addr) + ie_offset) @@ -1726,7 +1648,7 @@ unsigned int OnAction_back(struct adapter *padapter, union recv_frame *precv_fra struct recv_reorder_ctrl *preorder_ctrl; unsigned char *frame_body; unsigned char category, action; - unsigned short tid, status, reason_code = 0; + unsigned short tid, status; struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv; struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info); u8 *pframe = precv_frame->u.hdr.rx_data; @@ -1795,9 +1717,6 @@ unsigned int OnAction_back(struct adapter *padapter, union recv_frame *precv_fra ~BIT((frame_body[3] >> 4) & 0xf); psta->htpriv.candidate_tid_bitmap &= ~BIT((frame_body[3] >> 4) & 0xf); - - /* reason_code = frame_body[4] | (frame_body[5] << 8); */ - reason_code = get_unaligned_le16(&frame_body[4]); } else if ((frame_body[3] & BIT(3)) == BIT(3)) { tid = (frame_body[3] >> 4) & 0x0F; @@ -2142,7 +2061,7 @@ s32 dump_mgntframe_and_wait(struct adapter *padapter, struct xmit_frame *pmgntfr ret = rtw_hal_mgnt_xmit(padapter, pmgntframe); if (ret == _SUCCESS) - ret = rtw_sctx_wait(&sctx, __func__); + ret = rtw_sctx_wait(&sctx); spin_lock_irqsave(&pxmitpriv->lock_sctx, irqL); pxmitbuf->sctx = NULL; @@ -2226,7 +2145,6 @@ void issue_beacon(struct adapter *padapter, int timeout_ms) struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv); struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info); struct wlan_bssid_ex *cur_network = &(pmlmeinfo->network); - u8 bc_addr[] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; pmgntframe = alloc_mgtxmitframe(pxmitpriv); if (!pmgntframe) @@ -2248,7 +2166,7 @@ void issue_beacon(struct adapter *padapter, int timeout_ms) fctrl = &(pwlanhdr->frame_control); *(fctrl) = 0; - memcpy(pwlanhdr->addr1, bc_addr, ETH_ALEN); + eth_broadcast_addr(pwlanhdr->addr1); memcpy(pwlanhdr->addr2, myid(&(padapter->eeprompriv)), ETH_ALEN); memcpy(pwlanhdr->addr3, get_my_bssid(cur_network), ETH_ALEN); @@ -2457,9 +2375,13 @@ void issue_probersp(struct adapter *padapter, unsigned char *da, u8 is_valid_p2p u8 *ssid_ie; signed int ssid_ielen; signed int ssid_ielen_diff; - u8 buf[MAX_IE_SZ]; + u8 *buf; u8 *ies = pmgntframe->buf_addr+TXDESC_OFFSET+sizeof(struct ieee80211_hdr_3addr); + buf = rtw_zmalloc(MAX_IE_SZ); + if (!buf) + return; + ssid_ie = rtw_get_ie(ies+_FIXED_IE_LENGTH_, WLAN_EID_SSID, &ssid_ielen, (pframe-ies)-_FIXED_IE_LENGTH_); @@ -2487,6 +2409,7 @@ void issue_probersp(struct adapter *padapter, unsigned char *da, u8 is_valid_p2p pframe += ssid_ielen_diff; pattrib->pktlen += ssid_ielen_diff; } + kfree (buf); } } else { /* timestamp will be inserted by hardware */ @@ -2567,7 +2490,6 @@ static int _issue_probereq(struct adapter *padapter, struct mlme_priv *pmlmepriv = &(padapter->mlmepriv); struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv); int bssrate_len = 0; - u8 bc_addr[] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; pmgntframe = alloc_mgtxmitframe(pxmitpriv); if (!pmgntframe) @@ -2594,8 +2516,8 @@ static int _issue_probereq(struct adapter *padapter, memcpy(pwlanhdr->addr3, da, ETH_ALEN); } else { /* broadcast probe request frame */ - memcpy(pwlanhdr->addr1, bc_addr, ETH_ALEN); - memcpy(pwlanhdr->addr3, bc_addr, ETH_ALEN); + eth_broadcast_addr(pwlanhdr->addr1); + eth_broadcast_addr(pwlanhdr->addr3); } memcpy(pwlanhdr->addr2, mac, ETH_ALEN); @@ -4483,61 +4405,6 @@ static void process_80211d(struct adapter *padapter, struct wlan_bssid_ex *bssid } } - if (pregistrypriv->wireless_mode & WIRELESS_11A) { - do { - if ((i == MAX_CHANNEL_NUM) || - (chplan_sta[i].ChannelNum == 0)) - break; - - if ((j == chplan_ap.Len) || (chplan_ap.Channel[j] == 0)) - break; - - if (chplan_sta[i].ChannelNum == chplan_ap.Channel[j]) { - chplan_new[k].ChannelNum = chplan_ap.Channel[j]; - chplan_new[k].ScanType = SCAN_ACTIVE; - i++; - j++; - k++; - } else if (chplan_sta[i].ChannelNum < chplan_ap.Channel[j]) { - chplan_new[k].ChannelNum = chplan_sta[i].ChannelNum; -/* chplan_new[k].ScanType = chplan_sta[i].ScanType; */ - chplan_new[k].ScanType = SCAN_PASSIVE; - i++; - k++; - } else if (chplan_sta[i].ChannelNum > chplan_ap.Channel[j]) { - chplan_new[k].ChannelNum = chplan_ap.Channel[j]; - chplan_new[k].ScanType = SCAN_ACTIVE; - j++; - k++; - } - } while (1); - - /* change AP not support channel to Passive scan */ - while ((i < MAX_CHANNEL_NUM) && (chplan_sta[i].ChannelNum != 0)) { - chplan_new[k].ChannelNum = chplan_sta[i].ChannelNum; -/* chplan_new[k].ScanType = chplan_sta[i].ScanType; */ - chplan_new[k].ScanType = SCAN_PASSIVE; - i++; - k++; - } - - /* add channel AP supported */ - while ((j < chplan_ap.Len) && (chplan_ap.Channel[j] != 0)) { - chplan_new[k].ChannelNum = chplan_ap.Channel[j]; - chplan_new[k].ScanType = SCAN_ACTIVE; - j++; - k++; - } - } else { - /* keep original STA 5G channel plan */ - while ((i < MAX_CHANNEL_NUM) && (chplan_sta[i].ChannelNum != 0)) { - chplan_new[k].ChannelNum = chplan_sta[i].ChannelNum; - chplan_new[k].ScanType = chplan_sta[i].ScanType; - i++; - k++; - } - } - pmlmeext->update_channel_plan_by_ap_done = 1; } @@ -4548,10 +4415,6 @@ static void process_80211d(struct adapter *padapter, struct wlan_bssid_ex *bssid while ((i < MAX_CHANNEL_NUM) && (chplan_new[i].ChannelNum != 0)) { if (chplan_new[i].ChannelNum == channel) { if (chplan_new[i].ScanType == SCAN_PASSIVE) { - /* 5G Bnad 2, 3 (DFS) doesn't change to active scan */ - if (channel >= 52 && channel <= 144) - break; - chplan_new[i].ScanType = SCAN_ACTIVE; } break; @@ -5125,24 +4988,9 @@ void _linked_info_dump(struct adapter *padapter) if (padapter->bLinkInfoDump) { - if ((pmlmeinfo->state&0x03) == WIFI_FW_STATION_STATE) { + if ((pmlmeinfo->state&0x03) == WIFI_FW_STATION_STATE) rtw_hal_get_def_var(padapter, HAL_DEF_UNDERCORATEDSMOOTHEDPWDB, &UndecoratedSmoothedPWDB); - } else if ((pmlmeinfo->state&0x03) == _HW_STATE_AP_) { - struct list_head *phead, *plist; - - struct sta_info *psta = NULL; - struct sta_priv *pstapriv = &padapter->stapriv; - spin_lock_bh(&pstapriv->asoc_list_lock); - phead = &pstapriv->asoc_list; - plist = get_next(phead); - while (phead != plist) { - psta = container_of(plist, struct sta_info, asoc_list); - plist = get_next(plist); - } - spin_unlock_bh(&pstapriv->asoc_list_lock); - - } for (i = 0; i < NUM_STA; i++) { if (pdvobj->macid[i]) { if (i != 1) /* skip bc/mc sta */ @@ -5151,11 +4999,7 @@ void _linked_info_dump(struct adapter *padapter) } } rtw_hal_set_def_var(padapter, HAL_DEF_DBG_RX_INFO_DUMP, NULL); - - } - - } static u8 chk_ap_is_alive(struct adapter *padapter, struct sta_info *psta) @@ -5452,9 +5296,7 @@ u8 createbss_hdl(struct adapter *padapter, u8 *pbuf) /* u32 initialgain; */ if (pmlmeinfo->state == WIFI_FW_AP_STATE) { - struct wlan_bssid_ex *network = &padapter->mlmepriv.cur_network.network; - - start_bss_network(padapter, (u8 *)network); + start_bss_network(padapter); return H2C_SUCCESS; } @@ -5692,7 +5534,6 @@ static int rtw_scan_ch_decision(struct adapter *padapter, struct rtw_ieee80211_c set_idx = rtw_ch_set_search_ch(pmlmeext->channel_set, in[i].hw_value); if (in[i].hw_value && !(in[i].flags & RTW_IEEE80211_CHAN_DISABLED) && set_idx >= 0 - && rtw_mlme_band_check(padapter, in[i].hw_value) ) { if (j >= out_num) { netdev_dbg(padapter->pnetdev, @@ -5716,23 +5557,20 @@ static int rtw_scan_ch_decision(struct adapter *padapter, struct rtw_ieee80211_c if (j == 0) { for (i = 0; i < pmlmeext->max_chan_nums; i++) { - if (rtw_mlme_band_check(padapter, pmlmeext->channel_set[i].ChannelNum)) { - - if (j >= out_num) { - netdev_dbg(padapter->pnetdev, - FUNC_ADPT_FMT " out_num:%u not enough\n", - FUNC_ADPT_ARG(padapter), - out_num); - break; - } + if (j >= out_num) { + netdev_dbg(padapter->pnetdev, + FUNC_ADPT_FMT " out_num:%u not enough\n", + FUNC_ADPT_ARG(padapter), + out_num); + break; + } - out[j].hw_value = pmlmeext->channel_set[i].ChannelNum; + out[j].hw_value = pmlmeext->channel_set[i].ChannelNum; - if (pmlmeext->channel_set[i].ScanType == SCAN_PASSIVE) - out[j].flags |= RTW_IEEE80211_CHAN_PASSIVE_SCAN; + if (pmlmeext->channel_set[i].ScanType == SCAN_PASSIVE) + out[j].flags |= RTW_IEEE80211_CHAN_PASSIVE_SCAN; - j++; - } + j++; } } @@ -5997,10 +5835,40 @@ exit: return res; } +static struct fwevent wlanevents[] = { + {0, rtw_dummy_event_callback}, /*0*/ + {0, NULL}, + {0, NULL}, + {0, NULL}, + {0, NULL}, + {0, NULL}, + {0, NULL}, + {0, NULL}, + {0, &rtw_survey_event_callback}, /*8*/ + {sizeof(struct surveydone_event), &rtw_surveydone_event_callback}, /*9*/ + + {0, &rtw_joinbss_event_callback}, /*10*/ + {sizeof(struct stassoc_event), &rtw_stassoc_event_callback}, + {sizeof(struct stadel_event), &rtw_stadel_event_callback}, + {0, &rtw_atimdone_event_callback}, + {0, rtw_dummy_event_callback}, + {0, NULL}, /*15*/ + {0, NULL}, + {0, NULL}, + {0, NULL}, + {0, rtw_fwdbg_event_callback}, + {0, NULL}, /*20*/ + {0, NULL}, + {0, NULL}, + {0, &rtw_cpwm_event_callback}, + {0, NULL}, + {0, &rtw_wmm_event_callback}, + +}; u8 mlme_evt_hdl(struct adapter *padapter, unsigned char *pbuf) { - u8 evt_code, evt_seq; + u8 evt_code; u16 evt_sz; uint *peventbuf; void (*event_callback)(struct adapter *dev, u8 *pbuf); @@ -6011,19 +5879,8 @@ u8 mlme_evt_hdl(struct adapter *padapter, unsigned char *pbuf) peventbuf = (uint *)pbuf; evt_sz = (u16)(*peventbuf&0xffff); - evt_seq = (u8)((*peventbuf>>24)&0x7f); evt_code = (u8)((*peventbuf>>16)&0xff); - - #ifdef CHECK_EVENT_SEQ - /* checking event sequence... */ - if (evt_seq != (atomic_read(&pevt_priv->event_seq) & 0x7f)) { - pevt_priv->event_seq = (evt_seq+1)&0x7f; - - goto _abort_event_; - } - #endif - /* checking if event code is valid */ if (evt_code >= MAX_C2HEVT) goto _abort_event_; @@ -6063,7 +5920,7 @@ u8 h2c_msg_hdl(struct adapter *padapter, unsigned char *pbuf) u8 chk_bmc_sleepq_hdl(struct adapter *padapter, unsigned char *pbuf) { struct sta_info *psta_bmc; - struct list_head *xmitframe_plist, *xmitframe_phead; + struct list_head *xmitframe_plist, *xmitframe_phead, *tmp; struct xmit_frame *pxmitframe = NULL; struct xmit_priv *pxmitpriv = &padapter->xmitpriv; struct sta_priv *pstapriv = &padapter->stapriv; @@ -6080,12 +5937,9 @@ u8 chk_bmc_sleepq_hdl(struct adapter *padapter, unsigned char *pbuf) spin_lock_bh(&pxmitpriv->lock); xmitframe_phead = get_list_head(&psta_bmc->sleep_q); - xmitframe_plist = get_next(xmitframe_phead); - - while (xmitframe_phead != xmitframe_plist) { - pxmitframe = container_of(xmitframe_plist, struct xmit_frame, list); - - xmitframe_plist = get_next(xmitframe_plist); + list_for_each_safe(xmitframe_plist, tmp, xmitframe_phead) { + pxmitframe = list_entry(xmitframe_plist, + struct xmit_frame, list); list_del_init(&pxmitframe->list); diff --git a/drivers/staging/rtl8723bs/core/rtw_pwrctrl.c b/drivers/staging/rtl8723bs/core/rtw_pwrctrl.c index 251b9abdf591..a392d5b4caf2 100644 --- a/drivers/staging/rtl8723bs/core/rtw_pwrctrl.c +++ b/drivers/staging/rtl8723bs/core/rtw_pwrctrl.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _RTW_PWRCTRL_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <hal_data.h> diff --git a/drivers/staging/rtl8723bs/core/rtw_recv.c b/drivers/staging/rtl8723bs/core/rtw_recv.c index 668a703dee7f..d4c1725718d9 100644 --- a/drivers/staging/rtl8723bs/core/rtw_recv.c +++ b/drivers/staging/rtl8723bs/core/rtw_recv.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _RTW_RECV_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <linux/jiffies.h> @@ -1646,16 +1644,10 @@ static int check_indicate_seq(struct recv_reorder_ctrl *preorder_ctrl, u16 seq_n /* Rx Reorder initialize condition. */ if (preorder_ctrl->indicate_seq == 0xFFFF) { preorder_ctrl->indicate_seq = seq_num; - - /* DbgPrint("check_indicate_seq, 1st->indicate_seq =%d\n", precvpriv->indicate_seq); */ } - /* DbgPrint("enter->check_indicate_seq(): IndicateSeq: %d, NewSeq: %d\n", precvpriv->indicate_seq, seq_num); */ - /* Drop out the packet which SeqNum is smaller than WinStart */ if (SN_LESS(seq_num, preorder_ctrl->indicate_seq)) { - /* DbgPrint("CheckRxTsIndicateSeq(): Packet Drop! IndicateSeq: %d, NewSeq: %d\n", precvpriv->indicate_seq, seq_num); */ - return false; } @@ -1668,8 +1660,6 @@ static int check_indicate_seq(struct recv_reorder_ctrl *preorder_ctrl, u16 seq_n preorder_ctrl->indicate_seq = (preorder_ctrl->indicate_seq + 1) & 0xFFF; } else if (SN_LESS(wend, seq_num)) { - /* DbgPrint("CheckRxTsIndicateSeq(): Window Shift! IndicateSeq: %d, NewSeq: %d\n", precvpriv->indicate_seq, seq_num); */ - /* boundary situation, when seq_num cross 0xFFF */ if (seq_num >= (wsize - 1)) preorder_ctrl->indicate_seq = seq_num + 1 - wsize; @@ -1678,8 +1668,6 @@ static int check_indicate_seq(struct recv_reorder_ctrl *preorder_ctrl, u16 seq_n pdbgpriv->dbg_rx_ampdu_window_shift_cnt++; } - /* DbgPrint("exit->check_indicate_seq(): IndicateSeq: %d, NewSeq: %d\n", precvpriv->indicate_seq, seq_num); */ - return true; } @@ -1691,8 +1679,6 @@ static int enqueue_reorder_recvframe(struct recv_reorder_ctrl *preorder_ctrl, un union recv_frame *pnextrframe; struct rx_pkt_attrib *pnextattrib; - /* DbgPrint("+enqueue_reorder_recvframe()\n"); */ - /* spin_lock_irqsave(&ppending_recvframe_queue->lock, irql); */ /* spin_lock(&ppending_recvframe_queue->lock); */ @@ -1713,8 +1699,6 @@ static int enqueue_reorder_recvframe(struct recv_reorder_ctrl *preorder_ctrl, un else break; - /* DbgPrint("enqueue_reorder_recvframe():while\n"); */ - } @@ -1753,8 +1737,6 @@ static int recv_indicatepkts_in_order(struct adapter *padapter, struct recv_reor struct dvobj_priv *psdpriv = padapter->dvobj; struct debug_priv *pdbgpriv = &psdpriv->drv_dbg; - /* DbgPrint("+recv_indicatepkts_in_order\n"); */ - /* spin_lock_irqsave(&ppending_recvframe_queue->lock, irql); */ /* spin_lock(&ppending_recvframe_queue->lock); */ @@ -1796,11 +1778,8 @@ static int recv_indicatepkts_in_order(struct adapter *padapter, struct recv_reor /* pTS->RxIndicateState = RXTS_INDICATE_PROCESSING; */ /* Indicate packets */ - /* RT_ASSERT((index<=REORDER_WIN_SIZE), ("RxReorderIndicatePacket(): Rx Reorder buffer full!!\n")); */ - /* indicate this recv_frame */ - /* DbgPrint("recv_indicatepkts_in_order, indicate_seq =%d, seq_num =%d\n", precvpriv->indicate_seq, pattrib->seq_num); */ if (!pattrib->amsdu) { if ((padapter->bDriverStopped == false) && (padapter->bSurpriseRemoved == false)) @@ -1823,8 +1802,6 @@ static int recv_indicatepkts_in_order(struct adapter *padapter, struct recv_reor break; } - /* DbgPrint("recv_indicatepkts_in_order():while\n"); */ - } /* spin_unlock(&ppending_recvframe_queue->lock); */ @@ -1894,7 +1871,6 @@ static int recv_indicatepkt_reorder(struct adapter *padapter, union recv_frame * /* s3. Insert all packet into Reorder Queue to maintain its ordering. */ if (!enqueue_reorder_recvframe(preorder_ctrl, prframe)) { - /* DbgPrint("recv_indicatepkt_reorder, enqueue_reorder_recvframe fail!\n"); */ /* spin_unlock_irqrestore(&ppending_recvframe_queue->lock, irql); */ /* return _FAIL; */ goto _err_exit; @@ -2123,7 +2099,7 @@ static void rtw_signal_stat_timer_hdl(struct timer_list *t) u8 avg_signal_strength = 0; u8 avg_signal_qual = 0; u32 num_signal_strength = 0; - u32 num_signal_qual = 0; + u32 __maybe_unused num_signal_qual = 0; u8 _alpha = 5; /* this value is based on converging_constant = 5000 and sampling_interval = 1000 */ if (adapter->recvpriv.is_signal_dbg) { diff --git a/drivers/staging/rtl8723bs/core/rtw_security.c b/drivers/staging/rtl8723bs/core/rtw_security.c index 7823055ed32d..a99f439328f1 100644 --- a/drivers/staging/rtl8723bs/core/rtw_security.c +++ b/drivers/staging/rtl8723bs/core/rtw_security.c @@ -4,11 +4,10 @@ * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _RTW_SECURITY_C_ - -#include <linux/crc32poly.h> +#include <linux/crc32.h> #include <drv_types.h> #include <rtw_debug.h> +#include <crypto/aes.h> static const char * const _security_type_str[] = { "N/A", @@ -31,118 +30,6 @@ const char *security_type_str(u8 value) /* WEP related ===== */ -struct arc4context { - u32 x; - u32 y; - u8 state[256]; -}; - - -static void arcfour_init(struct arc4context *parc4ctx, u8 *key, u32 key_len) -{ - u32 t, u; - u32 keyindex; - u32 stateindex; - u8 *state; - u32 counter; - - state = parc4ctx->state; - parc4ctx->x = 0; - parc4ctx->y = 0; - for (counter = 0; counter < 256; counter++) - state[counter] = (u8)counter; - keyindex = 0; - stateindex = 0; - for (counter = 0; counter < 256; counter++) { - t = state[counter]; - stateindex = (stateindex + key[keyindex] + t) & 0xff; - u = state[stateindex]; - state[stateindex] = (u8)t; - state[counter] = (u8)u; - if (++keyindex >= key_len) - keyindex = 0; - } -} - -static u32 arcfour_byte(struct arc4context *parc4ctx) -{ - u32 x; - u32 y; - u32 sx, sy; - u8 *state; - - state = parc4ctx->state; - x = (parc4ctx->x + 1) & 0xff; - sx = state[x]; - y = (sx + parc4ctx->y) & 0xff; - sy = state[y]; - parc4ctx->x = x; - parc4ctx->y = y; - state[y] = (u8)sx; - state[x] = (u8)sy; - return state[(sx + sy) & 0xff]; -} - -static void arcfour_encrypt(struct arc4context *parc4ctx, u8 *dest, u8 *src, u32 len) -{ - u32 i; - - for (i = 0; i < len; i++) - dest[i] = src[i] ^ (unsigned char)arcfour_byte(parc4ctx); -} - -static signed int bcrc32initialized; -static u32 crc32_table[256]; - - -static u8 crc32_reverseBit(u8 data) -{ - return((u8)((data<<7)&0x80) | ((data<<5)&0x40) | ((data<<3)&0x20) | ((data<<1)&0x10) | ((data>>1)&0x08) | ((data>>3)&0x04) | ((data>>5)&0x02) | ((data>>7)&0x01)); -} - -static void crc32_init(void) -{ - if (bcrc32initialized == 1) - return; - else { - signed int i, j; - u32 c; - u8 *p = (u8 *)&c, *p1; - u8 k; - - c = 0x12340000; - - for (i = 0; i < 256; ++i) { - k = crc32_reverseBit((u8)i); - for (c = ((u32)k) << 24, j = 8; j > 0; --j) - c = c & 0x80000000 ? (c << 1) ^ CRC32_POLY_BE : (c << 1); - p1 = (u8 *)&crc32_table[i]; - - p1[0] = crc32_reverseBit(p[3]); - p1[1] = crc32_reverseBit(p[2]); - p1[2] = crc32_reverseBit(p[1]); - p1[3] = crc32_reverseBit(p[0]); - } - bcrc32initialized = 1; - } -} - -static __le32 getcrc32(u8 *buf, signed int len) -{ - u8 *p; - u32 crc; - - if (bcrc32initialized == 0) - crc32_init(); - - crc = 0xffffffff; /* preload shift register, per CRC-32 spec */ - - for (p = buf; len > 0; ++p, --len) - crc = crc32_table[(crc ^ *p) & 0xff] ^ (crc >> 8); - return cpu_to_le32(~crc); /* transmit complement, per CRC-32 spec */ -} - - /* Need to consider the fragment situation */ @@ -150,7 +37,6 @@ void rtw_wep_encrypt(struct adapter *padapter, u8 *pxmitframe) { /* exclude ICV */ unsigned char crc[4]; - struct arc4context mycontext; signed int curfragnum, length; u32 keylength; @@ -161,6 +47,7 @@ void rtw_wep_encrypt(struct adapter *padapter, u8 *pxmitframe) struct pkt_attrib *pattrib = &((struct xmit_frame *)pxmitframe)->attrib; struct security_priv *psecuritypriv = &padapter->securitypriv; struct xmit_priv *pxmitpriv = &padapter->xmitpriv; + struct arc4_ctx *ctx = &psecuritypriv->xmit_arc4_ctx; if (((struct xmit_frame *)pxmitframe)->buf_addr == NULL) return; @@ -182,18 +69,18 @@ void rtw_wep_encrypt(struct adapter *padapter, u8 *pxmitframe) length = pattrib->last_txcmdsz-pattrib->hdrlen-pattrib->iv_len-pattrib->icv_len; - *((__le32 *)crc) = getcrc32(payload, length); + *((__le32 *)crc) = ~crc32_le(~0, payload, length); - arcfour_init(&mycontext, wepkey, 3+keylength); - arcfour_encrypt(&mycontext, payload, payload, length); - arcfour_encrypt(&mycontext, payload+length, crc, 4); + arc4_setkey(ctx, wepkey, 3 + keylength); + arc4_crypt(ctx, payload, payload, length); + arc4_crypt(ctx, payload + length, crc, 4); } else { length = pxmitpriv->frag_len-pattrib->hdrlen-pattrib->iv_len-pattrib->icv_len; - *((__le32 *)crc) = getcrc32(payload, length); - arcfour_init(&mycontext, wepkey, 3+keylength); - arcfour_encrypt(&mycontext, payload, payload, length); - arcfour_encrypt(&mycontext, payload+length, crc, 4); + *((__le32 *)crc) = ~crc32_le(~0, payload, length); + arc4_setkey(ctx, wepkey, 3 + keylength); + arc4_crypt(ctx, payload, payload, length); + arc4_crypt(ctx, payload + length, crc, 4); pframe += pxmitpriv->frag_len; pframe = (u8 *)round_up((SIZE_PTR)(pframe), 4); @@ -206,13 +93,13 @@ void rtw_wep_decrypt(struct adapter *padapter, u8 *precvframe) { /* exclude ICV */ u8 crc[4]; - struct arc4context mycontext; signed int length; u32 keylength; u8 *pframe, *payload, *iv, wepkey[16]; u8 keyindex; struct rx_pkt_attrib *prxattrib = &(((union recv_frame *)precvframe)->u.hdr.attrib); struct security_priv *psecuritypriv = &padapter->securitypriv; + struct arc4_ctx *ctx = &psecuritypriv->recv_arc4_ctx; pframe = (unsigned char *)((union recv_frame *)precvframe)->u.hdr.rx_data; @@ -230,11 +117,11 @@ void rtw_wep_decrypt(struct adapter *padapter, u8 *precvframe) payload = pframe+prxattrib->iv_len+prxattrib->hdrlen; /* decrypt payload include icv */ - arcfour_init(&mycontext, wepkey, 3+keylength); - arcfour_encrypt(&mycontext, payload, payload, length); + arc4_setkey(ctx, wepkey, 3 + keylength); + arc4_crypt(ctx, payload, payload, length); /* calculate icv and compare the icv */ - *((u32 *)crc) = le32_to_cpu(getcrc32(payload, length-4)); + *((u32 *)crc) = le32_to_cpu(~crc32_le(~0, payload, length - 4)); } } @@ -579,7 +466,6 @@ u32 rtw_tkip_encrypt(struct adapter *padapter, u8 *pxmitframe) u8 ttkey[16]; u8 crc[4]; u8 hw_hdr_offset = 0; - struct arc4context mycontext; signed int curfragnum, length; u8 *pframe, *payload, *iv, *prwskey; @@ -587,6 +473,7 @@ u32 rtw_tkip_encrypt(struct adapter *padapter, u8 *pxmitframe) struct pkt_attrib *pattrib = &((struct xmit_frame *)pxmitframe)->attrib; struct security_priv *psecuritypriv = &padapter->securitypriv; struct xmit_priv *pxmitpriv = &padapter->xmitpriv; + struct arc4_ctx *ctx = &psecuritypriv->xmit_arc4_ctx; u32 res = _SUCCESS; if (((struct xmit_frame *)pxmitframe)->buf_addr == NULL) @@ -619,18 +506,19 @@ u32 rtw_tkip_encrypt(struct adapter *padapter, u8 *pxmitframe) if ((curfragnum+1) == pattrib->nr_frags) { /* 4 the last fragment */ length = pattrib->last_txcmdsz-pattrib->hdrlen-pattrib->iv_len-pattrib->icv_len; - *((__le32 *)crc) = getcrc32(payload, length);/* modified by Amy*/ + *((__le32 *)crc) = ~crc32_le(~0, payload, length); - arcfour_init(&mycontext, rc4key, 16); - arcfour_encrypt(&mycontext, payload, payload, length); - arcfour_encrypt(&mycontext, payload+length, crc, 4); + arc4_setkey(ctx, rc4key, 16); + arc4_crypt(ctx, payload, payload, length); + arc4_crypt(ctx, payload + length, crc, 4); } else { length = pxmitpriv->frag_len-pattrib->hdrlen-pattrib->iv_len-pattrib->icv_len; - *((__le32 *)crc) = getcrc32(payload, length);/* modified by Amy*/ - arcfour_init(&mycontext, rc4key, 16); - arcfour_encrypt(&mycontext, payload, payload, length); - arcfour_encrypt(&mycontext, payload+length, crc, 4); + *((__le32 *)crc) = ~crc32_le(~0, payload, length); + + arc4_setkey(ctx, rc4key, 16); + arc4_crypt(ctx, payload, payload, length); + arc4_crypt(ctx, payload + length, crc, 4); pframe += pxmitpriv->frag_len; pframe = (u8 *)round_up((SIZE_PTR)(pframe), 4); @@ -650,7 +538,6 @@ u32 rtw_tkip_decrypt(struct adapter *padapter, u8 *precvframe) u8 rc4key[16]; u8 ttkey[16]; u8 crc[4]; - struct arc4context mycontext; signed int length; u8 *pframe, *payload, *iv, *prwskey; @@ -658,6 +545,7 @@ u32 rtw_tkip_decrypt(struct adapter *padapter, u8 *precvframe) struct sta_info *stainfo; struct rx_pkt_attrib *prxattrib = &((union recv_frame *)precvframe)->u.hdr.attrib; struct security_priv *psecuritypriv = &padapter->securitypriv; + struct arc4_ctx *ctx = &psecuritypriv->recv_arc4_ctx; u32 res = _SUCCESS; pframe = (unsigned char *)((union recv_frame *)precvframe)->u.hdr.rx_data; @@ -727,10 +615,10 @@ u32 rtw_tkip_decrypt(struct adapter *padapter, u8 *precvframe) /* 4 decrypt payload include icv */ - arcfour_init(&mycontext, rc4key, 16); - arcfour_encrypt(&mycontext, payload, payload, length); + arc4_setkey(ctx, rc4key, 16); + arc4_crypt(ctx, payload, payload, length); - *((u32 *)crc) = le32_to_cpu(getcrc32(payload, length-4)); + *((u32 *)crc) = le32_to_cpu(~crc32_le(~0, payload, length - 4)); if (crc[3] != payload[length - 1] || crc[2] != payload[length - 2] || crc[1] != payload[length - 3] || crc[0] != payload[length - 4]) @@ -749,44 +637,6 @@ exit: #define MAX_MSG_SIZE 2048 -/*****************************/ -/******** SBOX Table *********/ -/*****************************/ - - static const u8 sbox_table[256] = { - 0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5, - 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76, - 0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0, - 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0, - 0xb7, 0xfd, 0x93, 0x26, 0x36, 0x3f, 0xf7, 0xcc, - 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15, - 0x04, 0xc7, 0x23, 0xc3, 0x18, 0x96, 0x05, 0x9a, - 0x07, 0x12, 0x80, 0xe2, 0xeb, 0x27, 0xb2, 0x75, - 0x09, 0x83, 0x2c, 0x1a, 0x1b, 0x6e, 0x5a, 0xa0, - 0x52, 0x3b, 0xd6, 0xb3, 0x29, 0xe3, 0x2f, 0x84, - 0x53, 0xd1, 0x00, 0xed, 0x20, 0xfc, 0xb1, 0x5b, - 0x6a, 0xcb, 0xbe, 0x39, 0x4a, 0x4c, 0x58, 0xcf, - 0xd0, 0xef, 0xaa, 0xfb, 0x43, 0x4d, 0x33, 0x85, - 0x45, 0xf9, 0x02, 0x7f, 0x50, 0x3c, 0x9f, 0xa8, - 0x51, 0xa3, 0x40, 0x8f, 0x92, 0x9d, 0x38, 0xf5, - 0xbc, 0xb6, 0xda, 0x21, 0x10, 0xff, 0xf3, 0xd2, - 0xcd, 0x0c, 0x13, 0xec, 0x5f, 0x97, 0x44, 0x17, - 0xc4, 0xa7, 0x7e, 0x3d, 0x64, 0x5d, 0x19, 0x73, - 0x60, 0x81, 0x4f, 0xdc, 0x22, 0x2a, 0x90, 0x88, - 0x46, 0xee, 0xb8, 0x14, 0xde, 0x5e, 0x0b, 0xdb, - 0xe0, 0x32, 0x3a, 0x0a, 0x49, 0x06, 0x24, 0x5c, - 0xc2, 0xd3, 0xac, 0x62, 0x91, 0x95, 0xe4, 0x79, - 0xe7, 0xc8, 0x37, 0x6d, 0x8d, 0xd5, 0x4e, 0xa9, - 0x6c, 0x56, 0xf4, 0xea, 0x65, 0x7a, 0xae, 0x08, - 0xba, 0x78, 0x25, 0x2e, 0x1c, 0xa6, 0xb4, 0xc6, - 0xe8, 0xdd, 0x74, 0x1f, 0x4b, 0xbd, 0x8b, 0x8a, - 0x70, 0x3e, 0xb5, 0x66, 0x48, 0x03, 0xf6, 0x0e, - 0x61, 0x35, 0x57, 0xb9, 0x86, 0xc1, 0x1d, 0x9e, - 0xe1, 0xf8, 0x98, 0x11, 0x69, 0xd9, 0x8e, 0x94, - 0x9b, 0x1e, 0x87, 0xe9, 0xce, 0x55, 0x28, 0xdf, - 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68, - 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16 - }; /*****************************/ /**** Function Prototypes ****/ @@ -815,13 +665,7 @@ static void construct_ctr_preload(u8 *ctr_preload, u8 *pn_vector, signed int c, uint frtype); /* for CONFIG_IEEE80211W, none 11w also can use */ -static void xor_128(u8 *a, u8 *b, u8 *out); -static void xor_32(u8 *a, u8 *b, u8 *out); -static u8 sbox(u8 a); -static void next_key(u8 *key, signed int round); -static void byte_sub(u8 *in, u8 *out); -static void shift_row(u8 *in, u8 *out); -static void mix_column(u8 *in, u8 *out); + static void aes128k128d(u8 *key, u8 *data, u8 *ciphertext); @@ -830,171 +674,13 @@ static void aes128k128d(u8 *key, u8 *data, u8 *ciphertext); /* Performs a 128 bit AES encrypt with */ /* 128 bit data. */ /****************************************/ -static void xor_128(u8 *a, u8 *b, u8 *out) -{ - signed int i; - - for (i = 0; i < 16; i++) - out[i] = a[i] ^ b[i]; -} - - -static void xor_32(u8 *a, u8 *b, u8 *out) -{ - signed int i; - - for (i = 0; i < 4; i++) - out[i] = a[i] ^ b[i]; -} - - -static u8 sbox(u8 a) -{ - return sbox_table[(signed int)a]; -} - - -static void next_key(u8 *key, signed int round) -{ - u8 rcon; - u8 sbox_key[4]; - static const u8 rcon_table[12] = { - 0x01, 0x02, 0x04, 0x08, - 0x10, 0x20, 0x40, 0x80, - 0x1b, 0x36, 0x36, 0x36 - }; - sbox_key[0] = sbox(key[13]); - sbox_key[1] = sbox(key[14]); - sbox_key[2] = sbox(key[15]); - sbox_key[3] = sbox(key[12]); - - rcon = rcon_table[round]; - - xor_32(&key[0], sbox_key, &key[0]); - key[0] = key[0] ^ rcon; - - xor_32(&key[4], &key[0], &key[4]); - xor_32(&key[8], &key[4], &key[8]); - xor_32(&key[12], &key[8], &key[12]); -} - - -static void byte_sub(u8 *in, u8 *out) -{ - signed int i; - - for (i = 0; i < 16; i++) - out[i] = sbox(in[i]); -} - - -static void shift_row(u8 *in, u8 *out) -{ - out[0] = in[0]; - out[1] = in[5]; - out[2] = in[10]; - out[3] = in[15]; - out[4] = in[4]; - out[5] = in[9]; - out[6] = in[14]; - out[7] = in[3]; - out[8] = in[8]; - out[9] = in[13]; - out[10] = in[2]; - out[11] = in[7]; - out[12] = in[12]; - out[13] = in[1]; - out[14] = in[6]; - out[15] = in[11]; -} - -static void mix_column(u8 *in, u8 *out) -{ - signed int i; - u8 add1b[4]; - u8 add1bf7[4]; - u8 rotl[4]; - u8 swap_halfs[4]; - u8 andf7[4]; - u8 rotr[4]; - u8 temp[4]; - u8 tempb[4]; - - for (i = 0; i < 4; i++) { - if ((in[i] & 0x80) == 0x80) - add1b[i] = 0x1b; - else - add1b[i] = 0x00; - } - - swap_halfs[0] = in[2]; /* Swap halfs */ - swap_halfs[1] = in[3]; - swap_halfs[2] = in[0]; - swap_halfs[3] = in[1]; - - rotl[0] = in[3]; /* Rotate left 8 bits */ - rotl[1] = in[0]; - rotl[2] = in[1]; - rotl[3] = in[2]; - - andf7[0] = in[0] & 0x7f; - andf7[1] = in[1] & 0x7f; - andf7[2] = in[2] & 0x7f; - andf7[3] = in[3] & 0x7f; - - for (i = 3; i > 0; i--) { /* logical shift left 1 bit */ - andf7[i] = andf7[i] << 1; - if ((andf7[i-1] & 0x80) == 0x80) - andf7[i] = (andf7[i] | 0x01); - } - andf7[0] = andf7[0] << 1; - andf7[0] = andf7[0] & 0xfe; - - xor_32(add1b, andf7, add1bf7); - - xor_32(in, add1bf7, rotr); - - temp[0] = rotr[0]; /* Rotate right 8 bits */ - rotr[0] = rotr[1]; - rotr[1] = rotr[2]; - rotr[2] = rotr[3]; - rotr[3] = temp[0]; - - xor_32(add1bf7, rotr, temp); - xor_32(swap_halfs, rotl, tempb); - xor_32(temp, tempb, out); -} - static void aes128k128d(u8 *key, u8 *data, u8 *ciphertext) { - signed int round; - signed int i; - u8 intermediatea[16]; - u8 intermediateb[16]; - u8 round_key[16]; + struct crypto_aes_ctx ctx; - for (i = 0; i < 16; i++) - round_key[i] = key[i]; - - for (round = 0; round < 11; round++) { - if (round == 0) { - xor_128(round_key, data, ciphertext); - next_key(round_key, round); - } else if (round == 10) { - byte_sub(ciphertext, intermediatea); - shift_row(intermediatea, intermediateb); - xor_128(intermediateb, round_key, ciphertext); - } else { /* 1 - 9 */ - byte_sub(ciphertext, intermediatea); - shift_row(intermediatea, intermediateb); - mix_column(&intermediateb[0], &intermediatea[0]); - mix_column(&intermediateb[4], &intermediatea[4]); - mix_column(&intermediateb[8], &intermediatea[8]); - mix_column(&intermediateb[12], &intermediatea[12]); - xor_128(intermediatea, round_key, ciphertext); - next_key(round_key, round); - } - } + aes_expandkey(&ctx, key, 16); + aes_encrypt(&ctx, ciphertext, data); + memzero_explicit(&ctx, sizeof(ctx)); } /************************************************/ @@ -1758,274 +1444,6 @@ BIP_exit: return res; } -/* AES tables*/ -const u32 Te0[256] = { - 0xc66363a5U, 0xf87c7c84U, 0xee777799U, 0xf67b7b8dU, - 0xfff2f20dU, 0xd66b6bbdU, 0xde6f6fb1U, 0x91c5c554U, - 0x60303050U, 0x02010103U, 0xce6767a9U, 0x562b2b7dU, - 0xe7fefe19U, 0xb5d7d762U, 0x4dababe6U, 0xec76769aU, - 0x8fcaca45U, 0x1f82829dU, 0x89c9c940U, 0xfa7d7d87U, - 0xeffafa15U, 0xb25959ebU, 0x8e4747c9U, 0xfbf0f00bU, - 0x41adadecU, 0xb3d4d467U, 0x5fa2a2fdU, 0x45afafeaU, - 0x239c9cbfU, 0x53a4a4f7U, 0xe4727296U, 0x9bc0c05bU, - 0x75b7b7c2U, 0xe1fdfd1cU, 0x3d9393aeU, 0x4c26266aU, - 0x6c36365aU, 0x7e3f3f41U, 0xf5f7f702U, 0x83cccc4fU, - 0x6834345cU, 0x51a5a5f4U, 0xd1e5e534U, 0xf9f1f108U, - 0xe2717193U, 0xabd8d873U, 0x62313153U, 0x2a15153fU, - 0x0804040cU, 0x95c7c752U, 0x46232365U, 0x9dc3c35eU, - 0x30181828U, 0x379696a1U, 0x0a05050fU, 0x2f9a9ab5U, - 0x0e070709U, 0x24121236U, 0x1b80809bU, 0xdfe2e23dU, - 0xcdebeb26U, 0x4e272769U, 0x7fb2b2cdU, 0xea75759fU, - 0x1209091bU, 0x1d83839eU, 0x582c2c74U, 0x341a1a2eU, - 0x361b1b2dU, 0xdc6e6eb2U, 0xb45a5aeeU, 0x5ba0a0fbU, - 0xa45252f6U, 0x763b3b4dU, 0xb7d6d661U, 0x7db3b3ceU, - 0x5229297bU, 0xdde3e33eU, 0x5e2f2f71U, 0x13848497U, - 0xa65353f5U, 0xb9d1d168U, 0x00000000U, 0xc1eded2cU, - 0x40202060U, 0xe3fcfc1fU, 0x79b1b1c8U, 0xb65b5bedU, - 0xd46a6abeU, 0x8dcbcb46U, 0x67bebed9U, 0x7239394bU, - 0x944a4adeU, 0x984c4cd4U, 0xb05858e8U, 0x85cfcf4aU, - 0xbbd0d06bU, 0xc5efef2aU, 0x4faaaae5U, 0xedfbfb16U, - 0x864343c5U, 0x9a4d4dd7U, 0x66333355U, 0x11858594U, - 0x8a4545cfU, 0xe9f9f910U, 0x04020206U, 0xfe7f7f81U, - 0xa05050f0U, 0x783c3c44U, 0x259f9fbaU, 0x4ba8a8e3U, - 0xa25151f3U, 0x5da3a3feU, 0x804040c0U, 0x058f8f8aU, - 0x3f9292adU, 0x219d9dbcU, 0x70383848U, 0xf1f5f504U, - 0x63bcbcdfU, 0x77b6b6c1U, 0xafdada75U, 0x42212163U, - 0x20101030U, 0xe5ffff1aU, 0xfdf3f30eU, 0xbfd2d26dU, - 0x81cdcd4cU, 0x180c0c14U, 0x26131335U, 0xc3ecec2fU, - 0xbe5f5fe1U, 0x359797a2U, 0x884444ccU, 0x2e171739U, - 0x93c4c457U, 0x55a7a7f2U, 0xfc7e7e82U, 0x7a3d3d47U, - 0xc86464acU, 0xba5d5de7U, 0x3219192bU, 0xe6737395U, - 0xc06060a0U, 0x19818198U, 0x9e4f4fd1U, 0xa3dcdc7fU, - 0x44222266U, 0x542a2a7eU, 0x3b9090abU, 0x0b888883U, - 0x8c4646caU, 0xc7eeee29U, 0x6bb8b8d3U, 0x2814143cU, - 0xa7dede79U, 0xbc5e5ee2U, 0x160b0b1dU, 0xaddbdb76U, - 0xdbe0e03bU, 0x64323256U, 0x743a3a4eU, 0x140a0a1eU, - 0x924949dbU, 0x0c06060aU, 0x4824246cU, 0xb85c5ce4U, - 0x9fc2c25dU, 0xbdd3d36eU, 0x43acacefU, 0xc46262a6U, - 0x399191a8U, 0x319595a4U, 0xd3e4e437U, 0xf279798bU, - 0xd5e7e732U, 0x8bc8c843U, 0x6e373759U, 0xda6d6db7U, - 0x018d8d8cU, 0xb1d5d564U, 0x9c4e4ed2U, 0x49a9a9e0U, - 0xd86c6cb4U, 0xac5656faU, 0xf3f4f407U, 0xcfeaea25U, - 0xca6565afU, 0xf47a7a8eU, 0x47aeaee9U, 0x10080818U, - 0x6fbabad5U, 0xf0787888U, 0x4a25256fU, 0x5c2e2e72U, - 0x381c1c24U, 0x57a6a6f1U, 0x73b4b4c7U, 0x97c6c651U, - 0xcbe8e823U, 0xa1dddd7cU, 0xe874749cU, 0x3e1f1f21U, - 0x964b4bddU, 0x61bdbddcU, 0x0d8b8b86U, 0x0f8a8a85U, - 0xe0707090U, 0x7c3e3e42U, 0x71b5b5c4U, 0xcc6666aaU, - 0x904848d8U, 0x06030305U, 0xf7f6f601U, 0x1c0e0e12U, - 0xc26161a3U, 0x6a35355fU, 0xae5757f9U, 0x69b9b9d0U, - 0x17868691U, 0x99c1c158U, 0x3a1d1d27U, 0x279e9eb9U, - 0xd9e1e138U, 0xebf8f813U, 0x2b9898b3U, 0x22111133U, - 0xd26969bbU, 0xa9d9d970U, 0x078e8e89U, 0x339494a7U, - 0x2d9b9bb6U, 0x3c1e1e22U, 0x15878792U, 0xc9e9e920U, - 0x87cece49U, 0xaa5555ffU, 0x50282878U, 0xa5dfdf7aU, - 0x038c8c8fU, 0x59a1a1f8U, 0x09898980U, 0x1a0d0d17U, - 0x65bfbfdaU, 0xd7e6e631U, 0x844242c6U, 0xd06868b8U, - 0x824141c3U, 0x299999b0U, 0x5a2d2d77U, 0x1e0f0f11U, - 0x7bb0b0cbU, 0xa85454fcU, 0x6dbbbbd6U, 0x2c16163aU, -}; - -const u32 Td0[256] = { - 0x51f4a750U, 0x7e416553U, 0x1a17a4c3U, 0x3a275e96U, - 0x3bab6bcbU, 0x1f9d45f1U, 0xacfa58abU, 0x4be30393U, - 0x2030fa55U, 0xad766df6U, 0x88cc7691U, 0xf5024c25U, - 0x4fe5d7fcU, 0xc52acbd7U, 0x26354480U, 0xb562a38fU, - 0xdeb15a49U, 0x25ba1b67U, 0x45ea0e98U, 0x5dfec0e1U, - 0xc32f7502U, 0x814cf012U, 0x8d4697a3U, 0x6bd3f9c6U, - 0x038f5fe7U, 0x15929c95U, 0xbf6d7aebU, 0x955259daU, - 0xd4be832dU, 0x587421d3U, 0x49e06929U, 0x8ec9c844U, - 0x75c2896aU, 0xf48e7978U, 0x99583e6bU, 0x27b971ddU, - 0xbee14fb6U, 0xf088ad17U, 0xc920ac66U, 0x7dce3ab4U, - 0x63df4a18U, 0xe51a3182U, 0x97513360U, 0x62537f45U, - 0xb16477e0U, 0xbb6bae84U, 0xfe81a01cU, 0xf9082b94U, - 0x70486858U, 0x8f45fd19U, 0x94de6c87U, 0x527bf8b7U, - 0xab73d323U, 0x724b02e2U, 0xe31f8f57U, 0x6655ab2aU, - 0xb2eb2807U, 0x2fb5c203U, 0x86c57b9aU, 0xd33708a5U, - 0x302887f2U, 0x23bfa5b2U, 0x02036abaU, 0xed16825cU, - 0x8acf1c2bU, 0xa779b492U, 0xf307f2f0U, 0x4e69e2a1U, - 0x65daf4cdU, 0x0605bed5U, 0xd134621fU, 0xc4a6fe8aU, - 0x342e539dU, 0xa2f355a0U, 0x058ae132U, 0xa4f6eb75U, - 0x0b83ec39U, 0x4060efaaU, 0x5e719f06U, 0xbd6e1051U, - 0x3e218af9U, 0x96dd063dU, 0xdd3e05aeU, 0x4de6bd46U, - 0x91548db5U, 0x71c45d05U, 0x0406d46fU, 0x605015ffU, - 0x1998fb24U, 0xd6bde997U, 0x894043ccU, 0x67d99e77U, - 0xb0e842bdU, 0x07898b88U, 0xe7195b38U, 0x79c8eedbU, - 0xa17c0a47U, 0x7c420fe9U, 0xf8841ec9U, 0x00000000U, - 0x09808683U, 0x322bed48U, 0x1e1170acU, 0x6c5a724eU, - 0xfd0efffbU, 0x0f853856U, 0x3daed51eU, 0x362d3927U, - 0x0a0fd964U, 0x685ca621U, 0x9b5b54d1U, 0x24362e3aU, - 0x0c0a67b1U, 0x9357e70fU, 0xb4ee96d2U, 0x1b9b919eU, - 0x80c0c54fU, 0x61dc20a2U, 0x5a774b69U, 0x1c121a16U, - 0xe293ba0aU, 0xc0a02ae5U, 0x3c22e043U, 0x121b171dU, - 0x0e090d0bU, 0xf28bc7adU, 0x2db6a8b9U, 0x141ea9c8U, - 0x57f11985U, 0xaf75074cU, 0xee99ddbbU, 0xa37f60fdU, - 0xf701269fU, 0x5c72f5bcU, 0x44663bc5U, 0x5bfb7e34U, - 0x8b432976U, 0xcb23c6dcU, 0xb6edfc68U, 0xb8e4f163U, - 0xd731dccaU, 0x42638510U, 0x13972240U, 0x84c61120U, - 0x854a247dU, 0xd2bb3df8U, 0xaef93211U, 0xc729a16dU, - 0x1d9e2f4bU, 0xdcb230f3U, 0x0d8652ecU, 0x77c1e3d0U, - 0x2bb3166cU, 0xa970b999U, 0x119448faU, 0x47e96422U, - 0xa8fc8cc4U, 0xa0f03f1aU, 0x567d2cd8U, 0x223390efU, - 0x87494ec7U, 0xd938d1c1U, 0x8ccaa2feU, 0x98d40b36U, - 0xa6f581cfU, 0xa57ade28U, 0xdab78e26U, 0x3fadbfa4U, - 0x2c3a9de4U, 0x5078920dU, 0x6a5fcc9bU, 0x547e4662U, - 0xf68d13c2U, 0x90d8b8e8U, 0x2e39f75eU, 0x82c3aff5U, - 0x9f5d80beU, 0x69d0937cU, 0x6fd52da9U, 0xcf2512b3U, - 0xc8ac993bU, 0x10187da7U, 0xe89c636eU, 0xdb3bbb7bU, - 0xcd267809U, 0x6e5918f4U, 0xec9ab701U, 0x834f9aa8U, - 0xe6956e65U, 0xaaffe67eU, 0x21bccf08U, 0xef15e8e6U, - 0xbae79bd9U, 0x4a6f36ceU, 0xea9f09d4U, 0x29b07cd6U, - 0x31a4b2afU, 0x2a3f2331U, 0xc6a59430U, 0x35a266c0U, - 0x744ebc37U, 0xfc82caa6U, 0xe090d0b0U, 0x33a7d815U, - 0xf104984aU, 0x41ecdaf7U, 0x7fcd500eU, 0x1791f62fU, - 0x764dd68dU, 0x43efb04dU, 0xccaa4d54U, 0xe49604dfU, - 0x9ed1b5e3U, 0x4c6a881bU, 0xc12c1fb8U, 0x4665517fU, - 0x9d5eea04U, 0x018c355dU, 0xfa877473U, 0xfb0b412eU, - 0xb3671d5aU, 0x92dbd252U, 0xe9105633U, 0x6dd64713U, - 0x9ad7618cU, 0x37a10c7aU, 0x59f8148eU, 0xeb133c89U, - 0xcea927eeU, 0xb761c935U, 0xe11ce5edU, 0x7a47b13cU, - 0x9cd2df59U, 0x55f2733fU, 0x1814ce79U, 0x73c737bfU, - 0x53f7cdeaU, 0x5ffdaa5bU, 0xdf3d6f14U, 0x7844db86U, - 0xcaaff381U, 0xb968c43eU, 0x3824342cU, 0xc2a3405fU, - 0x161dc372U, 0xbce2250cU, 0x283c498bU, 0xff0d9541U, - 0x39a80171U, 0x080cb3deU, 0xd8b4e49cU, 0x6456c190U, - 0x7bcb8461U, 0xd532b670U, 0x486c5c74U, 0xd0b85742U, -}; - -const u8 Td4s[256] = { - 0x52U, 0x09U, 0x6aU, 0xd5U, 0x30U, 0x36U, 0xa5U, 0x38U, - 0xbfU, 0x40U, 0xa3U, 0x9eU, 0x81U, 0xf3U, 0xd7U, 0xfbU, - 0x7cU, 0xe3U, 0x39U, 0x82U, 0x9bU, 0x2fU, 0xffU, 0x87U, - 0x34U, 0x8eU, 0x43U, 0x44U, 0xc4U, 0xdeU, 0xe9U, 0xcbU, - 0x54U, 0x7bU, 0x94U, 0x32U, 0xa6U, 0xc2U, 0x23U, 0x3dU, - 0xeeU, 0x4cU, 0x95U, 0x0bU, 0x42U, 0xfaU, 0xc3U, 0x4eU, - 0x08U, 0x2eU, 0xa1U, 0x66U, 0x28U, 0xd9U, 0x24U, 0xb2U, - 0x76U, 0x5bU, 0xa2U, 0x49U, 0x6dU, 0x8bU, 0xd1U, 0x25U, - 0x72U, 0xf8U, 0xf6U, 0x64U, 0x86U, 0x68U, 0x98U, 0x16U, - 0xd4U, 0xa4U, 0x5cU, 0xccU, 0x5dU, 0x65U, 0xb6U, 0x92U, - 0x6cU, 0x70U, 0x48U, 0x50U, 0xfdU, 0xedU, 0xb9U, 0xdaU, - 0x5eU, 0x15U, 0x46U, 0x57U, 0xa7U, 0x8dU, 0x9dU, 0x84U, - 0x90U, 0xd8U, 0xabU, 0x00U, 0x8cU, 0xbcU, 0xd3U, 0x0aU, - 0xf7U, 0xe4U, 0x58U, 0x05U, 0xb8U, 0xb3U, 0x45U, 0x06U, - 0xd0U, 0x2cU, 0x1eU, 0x8fU, 0xcaU, 0x3fU, 0x0fU, 0x02U, - 0xc1U, 0xafU, 0xbdU, 0x03U, 0x01U, 0x13U, 0x8aU, 0x6bU, - 0x3aU, 0x91U, 0x11U, 0x41U, 0x4fU, 0x67U, 0xdcU, 0xeaU, - 0x97U, 0xf2U, 0xcfU, 0xceU, 0xf0U, 0xb4U, 0xe6U, 0x73U, - 0x96U, 0xacU, 0x74U, 0x22U, 0xe7U, 0xadU, 0x35U, 0x85U, - 0xe2U, 0xf9U, 0x37U, 0xe8U, 0x1cU, 0x75U, 0xdfU, 0x6eU, - 0x47U, 0xf1U, 0x1aU, 0x71U, 0x1dU, 0x29U, 0xc5U, 0x89U, - 0x6fU, 0xb7U, 0x62U, 0x0eU, 0xaaU, 0x18U, 0xbeU, 0x1bU, - 0xfcU, 0x56U, 0x3eU, 0x4bU, 0xc6U, 0xd2U, 0x79U, 0x20U, - 0x9aU, 0xdbU, 0xc0U, 0xfeU, 0x78U, 0xcdU, 0x5aU, 0xf4U, - 0x1fU, 0xddU, 0xa8U, 0x33U, 0x88U, 0x07U, 0xc7U, 0x31U, - 0xb1U, 0x12U, 0x10U, 0x59U, 0x27U, 0x80U, 0xecU, 0x5fU, - 0x60U, 0x51U, 0x7fU, 0xa9U, 0x19U, 0xb5U, 0x4aU, 0x0dU, - 0x2dU, 0xe5U, 0x7aU, 0x9fU, 0x93U, 0xc9U, 0x9cU, 0xefU, - 0xa0U, 0xe0U, 0x3bU, 0x4dU, 0xaeU, 0x2aU, 0xf5U, 0xb0U, - 0xc8U, 0xebU, 0xbbU, 0x3cU, 0x83U, 0x53U, 0x99U, 0x61U, - 0x17U, 0x2bU, 0x04U, 0x7eU, 0xbaU, 0x77U, 0xd6U, 0x26U, - 0xe1U, 0x69U, 0x14U, 0x63U, 0x55U, 0x21U, 0x0cU, 0x7dU, -}; - -const u8 rcons[] = { - 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1B, 0x36 - /* for 128-bit blocks, Rijndael never uses more than 10 rcon values */ -}; - -/** - * Expand the cipher key into the encryption key schedule. - * - * @return the number of rounds for the given cipher key size. - */ -static void rijndaelKeySetupEnc(u32 rk[/*44*/], const u8 cipherKey[]) -{ - int i; - u32 temp; - - rk[0] = GETU32(cipherKey); - rk[1] = GETU32(cipherKey + 4); - rk[2] = GETU32(cipherKey + 8); - rk[3] = GETU32(cipherKey + 12); - for (i = 0; i < 10; i++) { - temp = rk[3]; - rk[4] = rk[0] ^ - TE421(temp) ^ TE432(temp) ^ TE443(temp) ^ TE414(temp) ^ - RCON(i); - rk[5] = rk[1] ^ rk[4]; - rk[6] = rk[2] ^ rk[5]; - rk[7] = rk[3] ^ rk[6]; - rk += 4; - } -} - -static void rijndaelEncrypt(u32 rk[/*44*/], u8 pt[16], u8 ct[16]) -{ - u32 s0, s1, s2, s3, t0, t1, t2, t3; - int Nr = 10; - int r; - - /* - * map byte array block to cipher state - * and add initial round key: - */ - s0 = GETU32(pt) ^ rk[0]; - s1 = GETU32(pt + 4) ^ rk[1]; - s2 = GETU32(pt + 8) ^ rk[2]; - s3 = GETU32(pt + 12) ^ rk[3]; - -#define ROUND(i, d, s) \ - do { \ - d##0 = TE0(s##0) ^ TE1(s##1) ^ TE2(s##2) ^ TE3(s##3) ^ rk[4 * i]; \ - d##1 = TE0(s##1) ^ TE1(s##2) ^ TE2(s##3) ^ TE3(s##0) ^ rk[4 * i + 1]; \ - d##2 = TE0(s##2) ^ TE1(s##3) ^ TE2(s##0) ^ TE3(s##1) ^ rk[4 * i + 2]; \ - d##3 = TE0(s##3) ^ TE1(s##0) ^ TE2(s##1) ^ TE3(s##2) ^ rk[4 * i + 3]; \ - } while (0) - - /* Nr - 1 full rounds: */ - r = Nr >> 1; - for (;;) { - ROUND(1, t, s); - rk += 8; - if (--r == 0) - break; - ROUND(0, s, t); - } - -#undef ROUND - - /* - * apply last round and - * map cipher state to byte array block: - */ - s0 = TE41(t0) ^ TE42(t1) ^ TE43(t2) ^ TE44(t3) ^ rk[0]; - PUTU32(ct, s0); - s1 = TE41(t1) ^ TE42(t2) ^ TE43(t3) ^ TE44(t0) ^ rk[1]; - PUTU32(ct + 4, s1); - s2 = TE41(t2) ^ TE42(t3) ^ TE43(t0) ^ TE44(t1) ^ rk[2]; - PUTU32(ct + 8, s2); - s3 = TE41(t3) ^ TE42(t0) ^ TE43(t1) ^ TE44(t2) ^ rk[3]; - PUTU32(ct + 12, s3); -} - -static void *aes_encrypt_init(u8 *key, size_t len) -{ - u32 *rk; - - if (len != 16) - return NULL; - rk = rtw_malloc(AES_PRIV_SIZE); - if (rk == NULL) - return NULL; - rijndaelKeySetupEnc(rk, key); - return rk; -} - -static void aes_128_encrypt(void *ctx, u8 *plain, u8 *crypt) -{ - rijndaelEncrypt(ctx, plain, crypt); -} - static void gf_mulx(u8 *pad) { int i, carry; @@ -2039,11 +1457,6 @@ static void gf_mulx(u8 *pad) pad[AES_BLOCK_SIZE - 1] ^= 0x87; } -static void aes_encrypt_deinit(void *ctx) -{ - kfree_sensitive(ctx); -} - /** * omac1_aes_128_vector - One-Key CBC MAC (OMAC1) hash with AES-128 * @key: 128-bit key for the hash operation @@ -2058,15 +1471,16 @@ static void aes_encrypt_deinit(void *ctx) * (SP) 800-38B. */ static int omac1_aes_128_vector(u8 *key, size_t num_elem, - u8 *addr[], size_t *len, u8 *mac) + u8 *addr[], size_t *len, u8 *mac) { - void *ctx; + struct crypto_aes_ctx ctx; u8 cbc[AES_BLOCK_SIZE], pad[AES_BLOCK_SIZE]; u8 *pos, *end; size_t i, e, left, total_len; + int ret; - ctx = aes_encrypt_init(key, 16); - if (ctx == NULL) + ret = aes_expandkey(&ctx, key, 16); + if (ret) return -1; memset(cbc, 0, AES_BLOCK_SIZE); @@ -2089,12 +1503,12 @@ static int omac1_aes_128_vector(u8 *key, size_t num_elem, } } if (left > AES_BLOCK_SIZE) - aes_128_encrypt(ctx, cbc, cbc); + aes_encrypt(&ctx, cbc, cbc); left -= AES_BLOCK_SIZE; } memset(pad, 0, AES_BLOCK_SIZE); - aes_128_encrypt(ctx, pad, pad); + aes_encrypt(&ctx, pad, pad); gf_mulx(pad); if (left || total_len == 0) { @@ -2112,8 +1526,8 @@ static int omac1_aes_128_vector(u8 *key, size_t num_elem, for (i = 0; i < AES_BLOCK_SIZE; i++) pad[i] ^= cbc[i]; - aes_128_encrypt(ctx, pad, mac); - aes_encrypt_deinit(ctx); + aes_encrypt(&ctx, pad, mac); + memzero_explicit(&ctx, sizeof(ctx)); return 0; } diff --git a/drivers/staging/rtl8723bs/core/rtw_sta_mgt.c b/drivers/staging/rtl8723bs/core/rtw_sta_mgt.c index 85663182b388..67ca219f95bf 100644 --- a/drivers/staging/rtl8723bs/core/rtw_sta_mgt.c +++ b/drivers/staging/rtl8723bs/core/rtw_sta_mgt.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _RTW_STA_MGT_C_ - #include <drv_types.h> #include <rtw_debug.h> @@ -119,7 +117,6 @@ void kfree_all_stainfo(struct sta_priv *pstapriv); void kfree_all_stainfo(struct sta_priv *pstapriv) { struct list_head *plist, *phead; - struct sta_info *psta = NULL; spin_lock_bh(&pstapriv->sta_hash_lock); @@ -127,7 +124,6 @@ void kfree_all_stainfo(struct sta_priv *pstapriv) plist = get_next(phead); while (phead != plist) { - psta = container_of(plist, struct sta_info, list); plist = get_next(plist); } @@ -152,13 +148,11 @@ u32 _rtw_free_sta_priv(struct sta_priv *pstapriv) spin_lock_bh(&pstapriv->sta_hash_lock); for (index = 0; index < NUM_STA; index++) { phead = &(pstapriv->sta_hash[index]); - plist = get_next(phead); - - while (phead != plist) { + list_for_each(plist, phead) { int i; - psta = container_of(plist, struct sta_info, hash_list); - plist = get_next(plist); + psta = list_entry(plist, struct sta_info, + hash_list); for (i = 0; i < 16 ; i++) { preorder_ctrl = &psta->recvreorder_ctrl[i]; @@ -429,7 +423,7 @@ exit: /* free all stainfo which in sta_hash[all] */ void rtw_free_all_stainfo(struct adapter *padapter) { - struct list_head *plist, *phead; + struct list_head *plist, *phead, *tmp; s32 index; struct sta_info *psta = NULL; struct sta_priv *pstapriv = &padapter->stapriv; @@ -442,12 +436,8 @@ void rtw_free_all_stainfo(struct adapter *padapter) for (index = 0; index < NUM_STA; index++) { phead = &(pstapriv->sta_hash[index]); - plist = get_next(phead); - - while (phead != plist) { - psta = container_of(plist, struct sta_info, hash_list); - - plist = get_next(plist); + list_for_each_safe(plist, tmp, phead) { + psta = list_entry(plist, struct sta_info, hash_list); if (pbcmc_stainfo != psta) rtw_free_stainfo(padapter, psta); @@ -479,17 +469,14 @@ struct sta_info *rtw_get_stainfo(struct sta_priv *pstapriv, u8 *hwaddr) spin_lock_bh(&pstapriv->sta_hash_lock); phead = &(pstapriv->sta_hash[index]); - plist = get_next(phead); - - while (phead != plist) { - psta = container_of(plist, struct sta_info, hash_list); + list_for_each(plist, phead) { + psta = list_entry(plist, struct sta_info, hash_list); if ((!memcmp(psta->hwaddr, addr, ETH_ALEN))) /* if found the matched address */ break; psta = NULL; - plist = get_next(plist); } spin_unlock_bh(&pstapriv->sta_hash_lock); @@ -499,7 +486,6 @@ struct sta_info *rtw_get_stainfo(struct sta_priv *pstapriv, u8 *hwaddr) u32 rtw_init_bcmc_stainfo(struct adapter *padapter) { struct sta_info *psta; - u32 res = _SUCCESS; NDIS_802_11_MAC_ADDRESS bcast_addr = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; struct sta_priv *pstapriv = &padapter->stapriv; @@ -507,15 +493,12 @@ u32 rtw_init_bcmc_stainfo(struct adapter *padapter) psta = rtw_alloc_stainfo(pstapriv, bcast_addr); - if (!psta) { - res = _FAIL; - goto exit; - } + if (!psta) + return _FAIL; /* default broadcast & multicast use macid 1 */ psta->mac_id = 1; -exit: return _SUCCESS; } @@ -539,10 +522,8 @@ u8 rtw_access_ctrl(struct adapter *padapter, u8 *mac_addr) spin_lock_bh(&(pacl_node_q->lock)); phead = get_list_head(pacl_node_q); - plist = get_next(phead); - while (phead != plist) { - paclnode = container_of(plist, struct rtw_wlan_acl_node, list); - plist = get_next(plist); + list_for_each(plist, phead) { + paclnode = list_entry(plist, struct rtw_wlan_acl_node, list); if (!memcmp(paclnode->addr, mac_addr, ETH_ALEN)) if (paclnode->valid == true) { diff --git a/drivers/staging/rtl8723bs/core/rtw_wlan_util.c b/drivers/staging/rtl8723bs/core/rtw_wlan_util.c index f9bd7c167da7..c06b74f6569a 100644 --- a/drivers/staging/rtl8723bs/core/rtw_wlan_util.c +++ b/drivers/staging/rtl8723bs/core/rtw_wlan_util.c @@ -55,9 +55,6 @@ u8 networktype_to_raid_ex(struct adapter *adapter, struct sta_info *psta) if (cur_rf_type == RF_1T1R) { rf_type = RF_1T1R; - } else if (IsSupportedVHT(psta->wireless_mode)) { - if (psta->ra_mask & 0xffc00000) - rf_type = RF_2T2R; } else if (IsSupportedHT(psta->wireless_mode)) { if (psta->ra_mask & 0xfff00000) rf_type = RF_2T2R; @@ -67,7 +64,6 @@ u8 networktype_to_raid_ex(struct adapter *adapter, struct sta_info *psta) case WIRELESS_11B: raid = RATEID_IDX_B; break; - case WIRELESS_11A: case WIRELESS_11G: raid = RATEID_IDX_G; break; @@ -75,8 +71,6 @@ u8 networktype_to_raid_ex(struct adapter *adapter, struct sta_info *psta) raid = RATEID_IDX_BG; break; case WIRELESS_11_24N: - case WIRELESS_11_5N: - case WIRELESS_11A_5N: case WIRELESS_11G_24N: if (rf_type == RF_2T2R) raid = RATEID_IDX_GN_N2SS; @@ -342,9 +336,7 @@ u8 rtw_get_center_ch(u8 channel, u8 chnl_bw, u8 chnl_offset) { u8 center_ch = channel; - if (chnl_bw == CHANNEL_WIDTH_80) { - center_ch = 7; - } else if (chnl_bw == CHANNEL_WIDTH_40) { + if (chnl_bw == CHANNEL_WIDTH_40) { if (chnl_offset == HAL_PRIME_CHNL_OFFSET_LOWER) center_ch = channel + 2; else @@ -381,14 +373,6 @@ void set_channel_bwmode(struct adapter *padapter, unsigned char channel, unsigne center_ch = rtw_get_center_ch(channel, bwmode, channel_offset); - if (bwmode == CHANNEL_WIDTH_80) { - if (center_ch > channel) - chnl_offset80 = HAL_PRIME_CHNL_OFFSET_LOWER; - else if (center_ch < channel) - chnl_offset80 = HAL_PRIME_CHNL_OFFSET_UPPER; - else - chnl_offset80 = HAL_PRIME_CHNL_OFFSET_DONT_CARE; - } /* set Channel */ if (mutex_lock_interruptible(&(adapter_to_dvobj(padapter)->setch_mutex))) @@ -777,6 +761,32 @@ int WMM_param_handler(struct adapter *padapter, struct ndis_80211_var_ie *pIE) return true; } +static void sort_wmm_ac_params(u32 *inx, u32 *edca) +{ + u32 i, j, change_inx = false; + + /* entry indx: 0->vo, 1->vi, 2->be, 3->bk. */ + for (i = 0; i < 4; i++) { + for (j = i + 1; j < 4; j++) { + /* compare CW and AIFS */ + if ((edca[j] & 0xFFFF) < (edca[i] & 0xFFFF)) { + change_inx = true; + } else if ((edca[j] & 0xFFFF) == (edca[i] & 0xFFFF)) { + /* compare TXOP */ + if ((edca[j] >> 16) > (edca[i] >> 16)) + change_inx = true; + } + + if (change_inx) { + swap(edca[i], edca[j]); + swap(inx[i], inx[j]); + + change_inx = false; + } + } + } +} + void WMMOnAssocRsp(struct adapter *padapter) { u8 ACI, ACM, AIFS, ECWMin, ECWMax, aSifsTime; @@ -801,7 +811,7 @@ void WMMOnAssocRsp(struct adapter *padapter) AIFS = aSifsTime + (2 * pmlmeinfo->slotTime); - if (pmlmeext->cur_wireless_mode & (WIRELESS_11G | WIRELESS_11A)) { + if (pmlmeext->cur_wireless_mode & WIRELESS_11G) { ECWMin = 4; ECWMax = 10; } else if (pmlmeext->cur_wireless_mode & WIRELESS_11B) { @@ -873,35 +883,8 @@ void WMMOnAssocRsp(struct adapter *padapter) inx[0] = 0; inx[1] = 1; inx[2] = 2; inx[3] = 3; - if (pregpriv->wifi_spec == 1) { - u32 j, tmp, change_inx = false; - - /* entry indx: 0->vo, 1->vi, 2->be, 3->bk. */ - for (i = 0; i < 4; i++) { - for (j = i+1; j < 4; j++) { - /* compare CW and AIFS */ - if ((edca[j] & 0xFFFF) < (edca[i] & 0xFFFF)) { - change_inx = true; - } else if ((edca[j] & 0xFFFF) == (edca[i] & 0xFFFF)) { - /* compare TXOP */ - if ((edca[j] >> 16) > (edca[i] >> 16)) - change_inx = true; - } - - if (change_inx) { - tmp = edca[i]; - edca[i] = edca[j]; - edca[j] = tmp; - - tmp = inx[i]; - inx[i] = inx[j]; - inx[j] = tmp; - - change_inx = false; - } - } - } - } + if (pregpriv->wifi_spec == 1) + sort_wmm_ac_params(inx, edca); for (i = 0; i < 4; i++) pxmitpriv->wmm_para_seq[i] = inx[i]; @@ -926,9 +909,6 @@ static void bwmode_update_check(struct adapter *padapter, struct ndis_80211_var_ if (phtpriv->ht_option == false) return; - if (pmlmeext->cur_bwmode >= CHANNEL_WIDTH_80) - return; - if (pIE->Length > sizeof(struct HT_info_element)) return; @@ -1255,34 +1235,34 @@ int rtw_check_bcn_info(struct adapter *Adapter, u8 *pframe, u32 packet_len) /* parsing HT_CAP_IE */ p = rtw_get_ie(bssid->IEs + _FIXED_IE_LENGTH_, WLAN_EID_HT_CAPABILITY, &len, bssid->IELength - _FIXED_IE_LENGTH_); if (p && len > 0) { - pht_cap = (struct ieee80211_ht_cap *)(p + 2); - ht_cap_info = le16_to_cpu(pht_cap->cap_info); + pht_cap = (struct ieee80211_ht_cap *)(p + 2); + ht_cap_info = le16_to_cpu(pht_cap->cap_info); } else { - ht_cap_info = 0; + ht_cap_info = 0; } /* parsing HT_INFO_IE */ p = rtw_get_ie(bssid->IEs + _FIXED_IE_LENGTH_, WLAN_EID_HT_OPERATION, &len, bssid->IELength - _FIXED_IE_LENGTH_); if (p && len > 0) { - pht_info = (struct HT_info_element *)(p + 2); - ht_info_infos_0 = pht_info->infos[0]; + pht_info = (struct HT_info_element *)(p + 2); + ht_info_infos_0 = pht_info->infos[0]; } else { - ht_info_infos_0 = 0; + ht_info_infos_0 = 0; } if (ht_cap_info != cur_network->BcnInfo.ht_cap_info || - ((ht_info_infos_0&0x03) != (cur_network->BcnInfo.ht_info_infos_0&0x03))) { - { - /* bcn_info_update */ - cur_network->BcnInfo.ht_cap_info = ht_cap_info; - cur_network->BcnInfo.ht_info_infos_0 = ht_info_infos_0; - /* to do : need to check that whether modify related register of BB or not */ - } - /* goto _mismatch; */ + ((ht_info_infos_0&0x03) != (cur_network->BcnInfo.ht_info_infos_0&0x03))) { + { + /* bcn_info_update */ + cur_network->BcnInfo.ht_cap_info = ht_cap_info; + cur_network->BcnInfo.ht_info_infos_0 = ht_info_infos_0; + /* to do : need to check that whether modify related register of BB or not */ + } + /* goto _mismatch; */ } /* Checking for channel */ p = rtw_get_ie(bssid->IEs + _FIXED_IE_LENGTH_, WLAN_EID_DS_PARAMS, &len, bssid->IELength - _FIXED_IE_LENGTH_); if (p) { - bcn_channel = *(p + 2); + bcn_channel = *(p + 2); } else {/* In 5G, some ap do not have DSSET IE checking HT info for channel */ rtw_get_ie(bssid->IEs + _FIXED_IE_LENGTH_, WLAN_EID_HT_OPERATION, &len, bssid->IELength - _FIXED_IE_LENGTH_); @@ -1293,7 +1273,7 @@ int rtw_check_bcn_info(struct adapter *Adapter, u8 *pframe, u32 packet_len) } if (bcn_channel != Adapter->mlmeextpriv.cur_channel) - goto _mismatch; + goto _mismatch; /* checking SSID */ ssid_len = 0; @@ -1496,6 +1476,33 @@ void set_sta_rate(struct adapter *padapter, struct sta_info *psta) Update_RA_Entry(padapter, psta); } +static u32 get_realtek_assoc_AP_vender(struct ndis_80211_var_ie *pIE) +{ + u32 Vender = HT_IOT_PEER_REALTEK; + + if (pIE->Length >= 5) { + if (pIE->data[4] == 1) + /* if (pIE->data[5] & RT_HT_CAP_USE_LONG_PREAMBLE) */ + /* bssDesc->BssHT.RT2RT_HT_Mode |= RT_HT_CAP_USE_LONG_PREAMBLE; */ + if (pIE->data[5] & RT_HT_CAP_USE_92SE) + /* bssDesc->BssHT.RT2RT_HT_Mode |= RT_HT_CAP_USE_92SE; */ + Vender = HT_IOT_PEER_REALTEK_92SE; + + if (pIE->data[5] & RT_HT_CAP_USE_SOFTAP) + Vender = HT_IOT_PEER_REALTEK_SOFTAP; + + if (pIE->data[4] == 2) { + if (pIE->data[6] & RT_HT_CAP_USE_JAGUAR_BCUT) + Vender = HT_IOT_PEER_REALTEK_JAGUAR_BCUTAP; + + if (pIE->data[6] & RT_HT_CAP_USE_JAGUAR_CCUT) + Vender = HT_IOT_PEER_REALTEK_JAGUAR_CCUTAP; + } + } + + return Vender; +} + unsigned char check_assoc_AP(u8 *pframe, uint len) { unsigned int i; @@ -1506,47 +1513,24 @@ unsigned char check_assoc_AP(u8 *pframe, uint len) switch (pIE->ElementID) { case WLAN_EID_VENDOR_SPECIFIC: - if ((!memcmp(pIE->data, ARTHEROS_OUI1, 3)) || (!memcmp(pIE->data, ARTHEROS_OUI2, 3))) { + if ((!memcmp(pIE->data, ARTHEROS_OUI1, 3)) || (!memcmp(pIE->data, ARTHEROS_OUI2, 3))) return HT_IOT_PEER_ATHEROS; - } else if ((!memcmp(pIE->data, BROADCOM_OUI1, 3)) || - (!memcmp(pIE->data, BROADCOM_OUI2, 3)) || - (!memcmp(pIE->data, BROADCOM_OUI3, 3))) { + else if ((!memcmp(pIE->data, BROADCOM_OUI1, 3)) || + (!memcmp(pIE->data, BROADCOM_OUI2, 3)) || + (!memcmp(pIE->data, BROADCOM_OUI3, 3))) return HT_IOT_PEER_BROADCOM; - } else if (!memcmp(pIE->data, MARVELL_OUI, 3)) { + else if (!memcmp(pIE->data, MARVELL_OUI, 3)) return HT_IOT_PEER_MARVELL; - } else if (!memcmp(pIE->data, RALINK_OUI, 3)) { + else if (!memcmp(pIE->data, RALINK_OUI, 3)) return HT_IOT_PEER_RALINK; - } else if (!memcmp(pIE->data, CISCO_OUI, 3)) { + else if (!memcmp(pIE->data, CISCO_OUI, 3)) return HT_IOT_PEER_CISCO; - } else if (!memcmp(pIE->data, REALTEK_OUI, 3)) { - u32 Vender = HT_IOT_PEER_REALTEK; - - if (pIE->Length >= 5) { - if (pIE->data[4] == 1) - /* if (pIE->data[5] & RT_HT_CAP_USE_LONG_PREAMBLE) */ - /* bssDesc->BssHT.RT2RT_HT_Mode |= RT_HT_CAP_USE_LONG_PREAMBLE; */ - if (pIE->data[5] & RT_HT_CAP_USE_92SE) - /* bssDesc->BssHT.RT2RT_HT_Mode |= RT_HT_CAP_USE_92SE; */ - Vender = HT_IOT_PEER_REALTEK_92SE; - - if (pIE->data[5] & RT_HT_CAP_USE_SOFTAP) - Vender = HT_IOT_PEER_REALTEK_SOFTAP; - - if (pIE->data[4] == 2) { - if (pIE->data[6] & RT_HT_CAP_USE_JAGUAR_BCUT) - Vender = HT_IOT_PEER_REALTEK_JAGUAR_BCUTAP; - - if (pIE->data[6] & RT_HT_CAP_USE_JAGUAR_CCUT) - Vender = HT_IOT_PEER_REALTEK_JAGUAR_CCUTAP; - } - } - - return Vender; - } else if (!memcmp(pIE->data, AIRGOCAP_OUI, 3)) { + else if (!memcmp(pIE->data, REALTEK_OUI, 3)) + return get_realtek_assoc_AP_vender(pIE); + else if (!memcmp(pIE->data, AIRGOCAP_OUI, 3)) return HT_IOT_PEER_AIRGO; - } else { + else break; - } default: break; @@ -1620,7 +1604,7 @@ void update_capinfo(struct adapter *Adapter, u16 updateCap) pmlmeinfo->slotTime = NON_SHORT_SLOT_TIME; } else { /* Filen: See 802.11-2007 p.90 */ - if (pmlmeext->cur_wireless_mode & (WIRELESS_11_24N | WIRELESS_11A | WIRELESS_11_5N | WIRELESS_11AC)) { + if (pmlmeext->cur_wireless_mode & (WIRELESS_11_24N)) { pmlmeinfo->slotTime = SHORT_SLOT_TIME; } else if (pmlmeext->cur_wireless_mode & (WIRELESS_11G)) { if ((updateCap & cShortSlotTime) /* && (!(pMgntInfo->pHTInfo->RT2RT_HT_Mode & RT_HT_CAP_USE_LONG_PREAMBLE)) */) @@ -1650,9 +1634,7 @@ void update_wireless_mode(struct adapter *padapter) if ((pmlmeinfo->HT_info_enable) && (pmlmeinfo->HT_caps_enable)) pmlmeinfo->HT_enable = 1; - if (pmlmeinfo->VHT_enable) - network_type = WIRELESS_11AC; - else if (pmlmeinfo->HT_enable) + if (pmlmeinfo->HT_enable) network_type = WIRELESS_11_24N; if (rtw_is_cckratesonly_included(rate)) @@ -1716,7 +1698,7 @@ int update_sta_support_rate(struct adapter *padapter, u8 *pvar_ie, uint var_ie_l void process_addba_req(struct adapter *padapter, u8 *paddba_req, u8 *addr) { struct sta_info *psta; - u16 tid, start_seq, param; + u16 tid, param; struct recv_reorder_ctrl *preorder_ctrl; struct sta_priv *pstapriv = &padapter->stapriv; struct ADDBA_request *preq = (struct ADDBA_request *)paddba_req; @@ -1726,8 +1708,6 @@ void process_addba_req(struct adapter *padapter, u8 *paddba_req, u8 *addr) psta = rtw_get_stainfo(pstapriv, addr); if (psta) { - start_seq = le16_to_cpu(preq->BA_starting_seqctrl) >> 4; - param = le16_to_cpu(preq->BA_para_set); tid = (param>>2)&0x0f; diff --git a/drivers/staging/rtl8723bs/core/rtw_xmit.c b/drivers/staging/rtl8723bs/core/rtw_xmit.c index bd3acdd7d75f..79e4d7df1ef5 100644 --- a/drivers/staging/rtl8723bs/core/rtw_xmit.c +++ b/drivers/staging/rtl8723bs/core/rtw_xmit.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _RTW_XMIT_C_ - #include <drv_types.h> #include <rtw_debug.h> @@ -323,15 +321,12 @@ void _rtw_free_xmit_priv(struct xmit_priv *pxmitpriv) u8 query_ra_short_GI(struct sta_info *psta) { - u8 sgi = false, sgi_20m = false, sgi_40m = false, sgi_80m = false; + u8 sgi = false, sgi_20m = false, sgi_40m = false; sgi_20m = psta->htpriv.sgi_20m; sgi_40m = psta->htpriv.sgi_40m; switch (psta->bw_mode) { - case CHANNEL_WIDTH_80: - sgi = sgi_80m; - break; case CHANNEL_WIDTH_40: sgi = sgi_40m; break; @@ -647,7 +642,7 @@ static s32 update_attrib(struct adapter *padapter, struct sk_buff *pkt, struct p pattrib->pktlen = pktfile.pkt_len; - if (ETH_P_IP == pattrib->ether_type) { + if (pattrib->ether_type == ETH_P_IP) { /* The following is for DHCP and ARP packet, we use cck1M to tx these packets and let LPS awake some time */ /* to prevent DHCP protocol fail */ @@ -657,7 +652,7 @@ static s32 update_attrib(struct adapter *padapter, struct sk_buff *pkt, struct p pattrib->dhcp_pkt = 0; if (pktfile.pkt_len > 282) {/* MINIMUM_DHCP_PACKET_SIZE) { */ - if (ETH_P_IP == pattrib->ether_type) {/* IP header */ + if (pattrib->ether_type == ETH_P_IP) {/* IP header */ if (((tmp[21] == 68) && (tmp[23] == 67)) || ((tmp[21] == 67) && (tmp[23] == 68))) { /* 68 : UDP BOOTP client */ @@ -675,7 +670,7 @@ static s32 update_attrib(struct adapter *padapter, struct sk_buff *pkt, struct p if (piphdr->protocol == 0x1) /* protocol type in ip header 0x1 is ICMP */ pattrib->icmp_pkt = 1; } - } else if (0x888e == pattrib->ether_type) { + } else if (pattrib->ether_type == 0x888e) { netdev_dbg(padapter->pnetdev, "send eapol packet\n"); } @@ -1725,18 +1720,14 @@ exit: void rtw_free_xmitframe_queue(struct xmit_priv *pxmitpriv, struct __queue *pframequeue) { - struct list_head *plist, *phead; + struct list_head *plist, *phead, *tmp; struct xmit_frame *pxmitframe; spin_lock_bh(&pframequeue->lock); phead = get_list_head(pframequeue); - plist = get_next(phead); - - while (phead != plist) { - pxmitframe = container_of(plist, struct xmit_frame, list); - - plist = get_next(plist); + list_for_each_safe(plist, tmp, phead) { + pxmitframe = list_entry(plist, struct xmit_frame, list); rtw_free_xmitframe(pxmitpriv, pxmitframe); } @@ -2128,7 +2119,7 @@ signed int xmitframe_enqueue_for_sleeping_sta(struct adapter *padapter, struct x static void dequeue_xmitframes_to_sleeping_queue(struct adapter *padapter, struct sta_info *psta, struct __queue *pframequeue) { signed int ret; - struct list_head *plist, *phead; + struct list_head *plist, *phead, *tmp; u8 ac_index; struct tx_servq *ptxservq; struct pkt_attrib *pattrib; @@ -2136,12 +2127,8 @@ static void dequeue_xmitframes_to_sleeping_queue(struct adapter *padapter, struc struct hw_xmit *phwxmits = padapter->xmitpriv.hwxmits; phead = get_list_head(pframequeue); - plist = get_next(phead); - - while (phead != plist) { - pxmitframe = container_of(plist, struct xmit_frame, list); - - plist = get_next(plist); + list_for_each_safe(plist, tmp, phead) { + pxmitframe = list_entry(plist, struct xmit_frame, list); pattrib = &pxmitframe->attrib; @@ -2201,7 +2188,7 @@ void wakeup_sta_to_xmit(struct adapter *padapter, struct sta_info *psta) { u8 update_mask = 0, wmmps_ac = 0; struct sta_info *psta_bmc; - struct list_head *xmitframe_plist, *xmitframe_phead; + struct list_head *xmitframe_plist, *xmitframe_phead, *tmp; struct xmit_frame *pxmitframe = NULL; struct sta_priv *pstapriv = &padapter->stapriv; struct xmit_priv *pxmitpriv = &padapter->xmitpriv; @@ -2211,12 +2198,9 @@ void wakeup_sta_to_xmit(struct adapter *padapter, struct sta_info *psta) spin_lock_bh(&pxmitpriv->lock); xmitframe_phead = get_list_head(&psta->sleep_q); - xmitframe_plist = get_next(xmitframe_phead); - - while (xmitframe_phead != xmitframe_plist) { - pxmitframe = container_of(xmitframe_plist, struct xmit_frame, list); - - xmitframe_plist = get_next(xmitframe_plist); + list_for_each_safe(xmitframe_plist, tmp, xmitframe_phead) { + pxmitframe = list_entry(xmitframe_plist, struct xmit_frame, + list); list_del_init(&pxmitframe->list); @@ -2285,12 +2269,9 @@ void wakeup_sta_to_xmit(struct adapter *padapter, struct sta_info *psta) if ((pstapriv->sta_dz_bitmap&0xfffe) == 0x0) { /* no any sta in ps mode */ xmitframe_phead = get_list_head(&psta_bmc->sleep_q); - xmitframe_plist = get_next(xmitframe_phead); - - while (xmitframe_phead != xmitframe_plist) { - pxmitframe = container_of(xmitframe_plist, struct xmit_frame, list); - - xmitframe_plist = get_next(xmitframe_plist); + list_for_each_safe(xmitframe_plist, tmp, xmitframe_phead) { + pxmitframe = list_entry(xmitframe_plist, + struct xmit_frame, list); list_del_init(&pxmitframe->list); @@ -2324,7 +2305,7 @@ _exit: void xmit_delivery_enabled_frames(struct adapter *padapter, struct sta_info *psta) { u8 wmmps_ac = 0; - struct list_head *xmitframe_plist, *xmitframe_phead; + struct list_head *xmitframe_plist, *xmitframe_phead, *tmp; struct xmit_frame *pxmitframe = NULL; struct sta_priv *pstapriv = &padapter->stapriv; struct xmit_priv *pxmitpriv = &padapter->xmitpriv; @@ -2332,12 +2313,9 @@ void xmit_delivery_enabled_frames(struct adapter *padapter, struct sta_info *pst spin_lock_bh(&pxmitpriv->lock); xmitframe_phead = get_list_head(&psta->sleep_q); - xmitframe_plist = get_next(xmitframe_phead); - - while (xmitframe_phead != xmitframe_plist) { - pxmitframe = container_of(xmitframe_plist, struct xmit_frame, list); - - xmitframe_plist = get_next(xmitframe_plist); + list_for_each_safe(xmitframe_plist, tmp, xmitframe_phead) { + pxmitframe = list_entry(xmitframe_plist, struct xmit_frame, + list); switch (pxmitframe->attrib.priority) { case 1: @@ -2524,7 +2502,7 @@ void rtw_sctx_init(struct submit_ctx *sctx, int timeout_ms) sctx->status = RTW_SCTX_SUBMITTED; } -int rtw_sctx_wait(struct submit_ctx *sctx, const char *msg) +int rtw_sctx_wait(struct submit_ctx *sctx) { int ret = _FAIL; unsigned long expire; @@ -2565,7 +2543,7 @@ int rtw_ack_tx_wait(struct xmit_priv *pxmitpriv, u32 timeout_ms) pack_tx_ops->timeout_ms = timeout_ms; pack_tx_ops->status = RTW_SCTX_SUBMITTED; - return rtw_sctx_wait(pack_tx_ops, __func__); + return rtw_sctx_wait(pack_tx_ops); } void rtw_ack_tx_done(struct xmit_priv *pxmitpriv, int status) diff --git a/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.c b/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.c index 503790924532..dc58bb87f1b0 100644 --- a/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.c +++ b/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.c @@ -38,110 +38,44 @@ static u8 halbtc8723b1ant_BtRssiState( (pCoexSta->preBtRssiState == BTC_RSSI_STATE_LOW) || (pCoexSta->preBtRssiState == BTC_RSSI_STATE_STAY_LOW) ) { - if (btRssi >= (rssiThresh + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT)) { + if (btRssi >= (rssiThresh + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT)) btRssiState = BTC_RSSI_STATE_HIGH; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state switch to High\n") - ); - } else { + else btRssiState = BTC_RSSI_STATE_STAY_LOW; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state stay at Low\n") - ); - } } else { - if (btRssi < rssiThresh) { + if (btRssi < rssiThresh) btRssiState = BTC_RSSI_STATE_LOW; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state switch to Low\n") - ); - } else { + else btRssiState = BTC_RSSI_STATE_STAY_HIGH; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state stay at High\n") - ); - } } } else if (levelNum == 3) { - if (rssiThresh > rssiThresh1) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi thresh error!!\n") - ); + if (rssiThresh > rssiThresh1) return pCoexSta->preBtRssiState; - } if ( (pCoexSta->preBtRssiState == BTC_RSSI_STATE_LOW) || (pCoexSta->preBtRssiState == BTC_RSSI_STATE_STAY_LOW) ) { - if (btRssi >= (rssiThresh + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT)) { + if (btRssi >= (rssiThresh + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT)) btRssiState = BTC_RSSI_STATE_MEDIUM; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state switch to Medium\n") - ); - } else { + else btRssiState = BTC_RSSI_STATE_STAY_LOW; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state stay at Low\n") - ); - } } else if ( (pCoexSta->preBtRssiState == BTC_RSSI_STATE_MEDIUM) || (pCoexSta->preBtRssiState == BTC_RSSI_STATE_STAY_MEDIUM) ) { - if (btRssi >= (rssiThresh1 + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT)) { + if (btRssi >= (rssiThresh1 + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT)) btRssiState = BTC_RSSI_STATE_HIGH; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state switch to High\n") - ); - } else if (btRssi < rssiThresh) { + else if (btRssi < rssiThresh) btRssiState = BTC_RSSI_STATE_LOW; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state switch to Low\n") - ); - } else { + else btRssiState = BTC_RSSI_STATE_STAY_MEDIUM; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state stay at Medium\n") - ); - } } else { - if (btRssi < rssiThresh1) { + if (btRssi < rssiThresh1) btRssiState = BTC_RSSI_STATE_MEDIUM; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state switch to Medium\n") - ); - } else { + else btRssiState = BTC_RSSI_STATE_STAY_HIGH; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_RSSI_STATE, - ("[BTCoex], BT Rssi state stay at High\n") - ); - } } } @@ -297,7 +231,7 @@ static void halbtc8723b1ant_LimitedRx( u8 rxAggSize = aggBufSize; /* */ - /* Rx Aggregation related setting */ + /* Rx Aggregation related setting */ /* */ pBtCoexist->fBtcSet( pBtCoexist, BTC_SET_BL_TO_REJ_AP_AGG_PKT, &bRejectRxAgg @@ -316,18 +250,12 @@ static void halbtc8723b1ant_LimitedRx( static void halbtc8723b1ant_QueryBtInfo(struct btc_coexist *pBtCoexist) { - u8 H2C_Parameter[1] = {0}; + u8 H2C_Parameter[1] = {0}; pCoexSta->bC2hBtInfoReqSent = true; H2C_Parameter[0] |= BIT0; /* trigger */ - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ("[BTCoex], Query Bt Info, FW write 0x61 = 0x%x\n", H2C_Parameter[0]) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x61, 1, H2C_Parameter); } @@ -367,18 +295,6 @@ static void halbtc8723b1ant_MonitorBtCtr(struct btc_coexist *pBtCoexist) if ((pCoexSta->lowPriorityTx >= 1050) && (!pCoexSta->bC2hBtInquiryPage)) pCoexSta->popEventCnt++; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ( - "[BTCoex], Hi-Pri Rx/Tx: %d/%d, Lo-Pri Rx/Tx: %d/%d\n", - regHPRx, - regHPTx, - regLPRx, - regLPTx - ) - ); - /* reset counter */ pBtCoexist->fBtcWrite1Byte(pBtCoexist, 0x76e, 0xc); @@ -445,15 +361,15 @@ static void halbtc8723b1ant_MonitorWiFiCtr(struct btc_coexist *pBtCoexist) ) ) { if (nCCKLockCounter < 5) - nCCKLockCounter++; + nCCKLockCounter++; } else { if (nCCKLockCounter > 0) - nCCKLockCounter--; + nCCKLockCounter--; } } else { if (nCCKLockCounter > 0) - nCCKLockCounter--; + nCCKLockCounter--; } } else { if (nCCKLockCounter > 0) @@ -463,14 +379,14 @@ static void halbtc8723b1ant_MonitorWiFiCtr(struct btc_coexist *pBtCoexist) if (!pCoexSta->bPreCCKLock) { if (nCCKLockCounter >= 5) - pCoexSta->bCCKLock = true; + pCoexSta->bCCKLock = true; else - pCoexSta->bCCKLock = false; + pCoexSta->bCCKLock = false; } else { if (nCCKLockCounter == 0) - pCoexSta->bCCKLock = false; + pCoexSta->bCCKLock = false; else - pCoexSta->bCCKLock = true; + pCoexSta->bCCKLock = true; } pCoexSta->bPreCCKLock = pCoexSta->bCCKLock; @@ -586,14 +502,8 @@ static u8 halbtc8723b1ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); - if (!pBtLinkInfo->bBtLinkExist) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], No BT link exists!!!\n") - ); + if (!pBtLinkInfo->bBtLinkExist) return algorithm; - } if (pBtLinkInfo->bScoExist) numOfDiffProfile++; @@ -606,151 +516,62 @@ static u8 halbtc8723b1ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) if (numOfDiffProfile == 1) { if (pBtLinkInfo->bScoExist) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = SCO only\n") - ); algorithm = BT_8723B_1ANT_COEX_ALGO_SCO; } else { if (pBtLinkInfo->bHidExist) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = HID only\n") - ); algorithm = BT_8723B_1ANT_COEX_ALGO_HID; } else if (pBtLinkInfo->bA2dpExist) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = A2DP only\n") - ); algorithm = BT_8723B_1ANT_COEX_ALGO_A2DP; } else if (pBtLinkInfo->bPanExist) { - if (bBtHsOn) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = PAN(HS) only\n") - ); + if (bBtHsOn) algorithm = BT_8723B_1ANT_COEX_ALGO_PANHS; - } else { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = PAN(EDR) only\n") - ); + else algorithm = BT_8723B_1ANT_COEX_ALGO_PANEDR; - } } } } else if (numOfDiffProfile == 2) { if (pBtLinkInfo->bScoExist) { if (pBtLinkInfo->bHidExist) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = SCO + HID\n") - ); algorithm = BT_8723B_1ANT_COEX_ALGO_HID; } else if (pBtLinkInfo->bA2dpExist) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = SCO + A2DP ==> SCO\n") - ); algorithm = BT_8723B_1ANT_COEX_ALGO_SCO; } else if (pBtLinkInfo->bPanExist) { - if (bBtHsOn) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = SCO + PAN(HS)\n") - ); + if (bBtHsOn) algorithm = BT_8723B_1ANT_COEX_ALGO_SCO; - } else { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = SCO + PAN(EDR)\n") - ); + else algorithm = BT_8723B_1ANT_COEX_ALGO_PANEDR_HID; - } } } else { if (pBtLinkInfo->bHidExist && pBtLinkInfo->bA2dpExist) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = HID + A2DP\n") - ); algorithm = BT_8723B_1ANT_COEX_ALGO_HID_A2DP; } else if (pBtLinkInfo->bHidExist && pBtLinkInfo->bPanExist) { - if (bBtHsOn) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = HID + PAN(HS)\n") - ); + if (bBtHsOn) algorithm = BT_8723B_1ANT_COEX_ALGO_HID_A2DP; - } else { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = HID + PAN(EDR)\n") - ); + else algorithm = BT_8723B_1ANT_COEX_ALGO_PANEDR_HID; - } } else if (pBtLinkInfo->bPanExist && pBtLinkInfo->bA2dpExist) { - if (bBtHsOn) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = A2DP + PAN(HS)\n") - ); + if (bBtHsOn) algorithm = BT_8723B_1ANT_COEX_ALGO_A2DP_PANHS; - } else { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = A2DP + PAN(EDR)\n") - ); + else algorithm = BT_8723B_1ANT_COEX_ALGO_PANEDR_A2DP; - } } } } else if (numOfDiffProfile == 3) { if (pBtLinkInfo->bScoExist) { if (pBtLinkInfo->bHidExist && pBtLinkInfo->bA2dpExist) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = SCO + HID + A2DP ==> HID\n") - ); algorithm = BT_8723B_1ANT_COEX_ALGO_HID; } else if ( pBtLinkInfo->bHidExist && pBtLinkInfo->bPanExist ) { - if (bBtHsOn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BT Profile = SCO + HID + PAN(HS)\n")); + if (bBtHsOn) algorithm = BT_8723B_1ANT_COEX_ALGO_HID_A2DP; - } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BT Profile = SCO + HID + PAN(EDR)\n")); + else algorithm = BT_8723B_1ANT_COEX_ALGO_PANEDR_HID; - } } else if (pBtLinkInfo->bPanExist && pBtLinkInfo->bA2dpExist) { - if (bBtHsOn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BT Profile = SCO + A2DP + PAN(HS)\n")); + if (bBtHsOn) algorithm = BT_8723B_1ANT_COEX_ALGO_SCO; - } else { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = SCO + A2DP + PAN(EDR) ==> HID\n") - ); + else algorithm = BT_8723B_1ANT_COEX_ALGO_PANEDR_HID; - } } } else { if ( @@ -758,21 +579,10 @@ static u8 halbtc8723b1ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) pBtLinkInfo->bPanExist && pBtLinkInfo->bA2dpExist ) { - if (bBtHsOn) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = HID + A2DP + PAN(HS)\n") - ); + if (bBtHsOn) algorithm = BT_8723B_1ANT_COEX_ALGO_HID_A2DP; - } else { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = HID + A2DP + PAN(EDR)\n") - ); + else algorithm = BT_8723B_1ANT_COEX_ALGO_HID_A2DP_PANEDR; - } } } } else if (numOfDiffProfile >= 3) { @@ -782,21 +592,9 @@ static u8 halbtc8723b1ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) pBtLinkInfo->bPanExist && pBtLinkInfo->bA2dpExist ) { - if (bBtHsOn) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], Error!!! BT Profile = SCO + HID + A2DP + PAN(HS)\n") - ); - - } else { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT Profile = SCO + HID + A2DP + PAN(EDR) ==>PAN(EDR)+HID\n") - ); + if (!bBtHsOn) algorithm = BT_8723B_1ANT_COEX_ALGO_PANEDR_HID; - } + } } } @@ -808,7 +606,7 @@ static void halbtc8723b1ant_SetSwPenaltyTxRateAdaptive( struct btc_coexist *pBtCoexist, bool bLowPenaltyRa ) { - u8 H2C_Parameter[6] = {0}; + u8 H2C_Parameter[6] = {0}; H2C_Parameter[0] = 0x6; /* opCode, 0x6 = Retry_Penalty */ @@ -820,15 +618,6 @@ static void halbtc8723b1ant_SetSwPenaltyTxRateAdaptive( H2C_Parameter[5] = 0xf9; /* MCS5 or OFDM36 */ } - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ( - "[BTCoex], set WiFi Low-Penalty Retry: %s", - (bLowPenaltyRa ? "ON!!" : "OFF!!") - ) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x69, 6, H2C_Parameter); } @@ -857,32 +646,12 @@ static void halbtc8723b1ant_SetCoexTable( u8 val0x6cc ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_EXEC, - ("[BTCoex], set coex table, set 0x6c0 = 0x%x\n", val0x6c0) - ); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0x6c0, val0x6c0); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_EXEC, - ("[BTCoex], set coex table, set 0x6c4 = 0x%x\n", val0x6c4) - ); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0x6c4, val0x6c4); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_EXEC, - ("[BTCoex], set coex table, set 0x6c8 = 0x%x\n", val0x6c8) - ); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0x6c8, val0x6c8); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_EXEC, - ("[BTCoex], set coex table, set 0x6cc = 0x%x\n", val0x6cc) - ); pBtCoexist->fBtcWrite1Byte(pBtCoexist, 0x6cc, val0x6cc); } @@ -895,15 +664,6 @@ static void halbtc8723b1ant_CoexTable( u8 val0x6cc ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW, - ( - "[BTCoex], %s write Coex Table 0x6c0 = 0x%x, 0x6c4 = 0x%x, 0x6cc = 0x%x\n", - (bForceExec ? "force to" : ""), - val0x6c0, val0x6c4, val0x6cc - ) - ); pCoexDm->curVal0x6c0 = val0x6c0; pCoexDm->curVal0x6c4 = val0x6c4; pCoexDm->curVal0x6c8 = val0x6c8; @@ -933,12 +693,6 @@ static void halbtc8723b1ant_CoexTableWithType( struct btc_coexist *pBtCoexist, bool bForceExec, u8 type ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], ********** CoexTable(%d) **********\n", type) - ); - pCoexSta->nCoexTableType = type; switch (type) { @@ -996,15 +750,6 @@ static void halbtc8723b1ant_SetFwIgnoreWlanAct( if (bEnable) H2C_Parameter[0] |= BIT0; /* function enable */ - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ( - "[BTCoex], set FW for BT Ignore Wlan_Act, FW write 0x63 = 0x%x\n", - H2C_Parameter[0] - ) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x63, 1, H2C_Parameter); } @@ -1012,28 +757,9 @@ static void halbtc8723b1ant_IgnoreWlanAct( struct btc_coexist *pBtCoexist, bool bForceExec, bool bEnable ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW, - ( - "[BTCoex], %s turn Ignore WlanAct %s\n", - (bForceExec ? "force to" : ""), - (bEnable ? "ON" : "OFF") - ) - ); pCoexDm->bCurIgnoreWlanAct = bEnable; if (!bForceExec) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ( - "[BTCoex], bPreIgnoreWlanAct = %d, bCurIgnoreWlanAct = %d!!\n", - pCoexDm->bPreIgnoreWlanAct, - pCoexDm->bCurIgnoreWlanAct - ) - ); - if (pCoexDm->bPreIgnoreWlanAct == pCoexDm->bCurIgnoreWlanAct) return; } @@ -1057,44 +783,14 @@ static void halbtc8723b1ant_LpsRpwm( struct btc_coexist *pBtCoexist, bool bForceExec, u8 lpsVal, u8 rpwmVal ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW, - ( - "[BTCoex], %s set lps/rpwm = 0x%x/0x%x\n", - (bForceExec ? "force to" : ""), - lpsVal, - rpwmVal - ) - ); pCoexDm->curLps = lpsVal; pCoexDm->curRpwm = rpwmVal; if (!bForceExec) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ( - "[BTCoex], LPS-RxBeaconMode = 0x%x , LPS-RPWM = 0x%x!!\n", - pCoexDm->curLps, - pCoexDm->curRpwm - ) - ); - if ( (pCoexDm->preLps == pCoexDm->curLps) && (pCoexDm->preRpwm == pCoexDm->curRpwm) ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ( - "[BTCoex], LPS-RPWM_Last = 0x%x , LPS-RPWM_Now = 0x%x!!\n", - pCoexDm->preRpwm, - pCoexDm->curRpwm - ) - ); - return; } } @@ -1108,12 +804,6 @@ static void halbtc8723b1ant_SwMechanism( struct btc_coexist *pBtCoexist, bool bLowPenaltyRA ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_MONITOR, - ("[BTCoex], SM[LpRA] = %d\n", bLowPenaltyRA) - ); - halbtc8723b1ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, bLowPenaltyRA); } @@ -1189,13 +879,10 @@ static void halbtc8723b1ant_SetAntPath( u1Tmp = pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x49d); cntBtCalChk++; - if (u1Tmp & BIT0) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], ########### BT is calibrating (wait cnt =%d) ###########\n", cntBtCalChk)); + if (u1Tmp & BIT0) mdelay(50); - } else { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], ********** BT is NOT calibrating (wait cnt =%d)**********\n", cntBtCalChk)); + else break; - } } /* set grant_bt to PTA */ @@ -1318,11 +1005,6 @@ static void halbtc8723b1ant_SetFwPstdma( if (bApEnable) { if (byte1 & BIT4 && !(byte1 & BIT5)) { - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ("[BTCoex], FW for 1Ant AP mode\n") - ); realByte1 &= ~BIT4; realByte1 |= BIT5; @@ -1343,19 +1025,6 @@ static void halbtc8723b1ant_SetFwPstdma( pCoexDm->psTdmaPara[3] = byte4; pCoexDm->psTdmaPara[4] = realByte5; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ( - "[BTCoex], PS-TDMA H2C cmd = 0x%x%08x\n", - H2C_Parameter[0], - H2C_Parameter[1] << 24 | - H2C_Parameter[2] << 16 | - H2C_Parameter[3] << 8 | - H2C_Parameter[4] - ) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x60, 5, H2C_Parameter); } @@ -1369,35 +1038,13 @@ static void halbtc8723b1ant_PsTdma( u8 rssiAdjustVal = 0; u8 psTdmaByte4Val = 0x50, psTdmaByte0Val = 0x51, psTdmaByte3Val = 0x10; s8 nWiFiDurationAdjust = 0x0; - /* u32 fwVer = 0; */ + /* u32 fwVer = 0; */ - /* BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s turn %s PS TDMA, type =%d\n", */ - /* (bForceExec? "force to":""), (bTurnOn? "ON":"OFF"), type)); */ pCoexDm->bCurPsTdmaOn = bTurnOn; pCoexDm->curPsTdma = type; pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_BUSY, &bWifiBusy); - if (pCoexDm->bCurPsTdmaOn) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ( - "[BTCoex], ********** TDMA(on, %d) **********\n", - pCoexDm->curPsTdma - ) - ); - } else { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ( - "[BTCoex], ********** TDMA(off, %d) **********\n", - pCoexDm->curPsTdma - ) - ); - } - if (!bForceExec) { if ( (pCoexDm->bPrePsTdmaOn == pCoexDm->bCurPsTdmaOn) && @@ -1670,80 +1317,40 @@ static bool halbtc8723b1ant_IsCommonAction(struct btc_coexist *pBtCoexist) if ( !bWifiConnected && - BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE == pCoexDm->btStatus + pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], Wifi non connected-idle + BT non connected-idle!!\n") - ); - /* halbtc8723b1ant_SwMechanism(pBtCoexist, false); */ bCommon = true; } else if ( bWifiConnected && - (BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE == pCoexDm->btStatus) + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE) ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], Wifi connected + BT non connected-idle!!\n") - ); - /* halbtc8723b1ant_SwMechanism(pBtCoexist, false); */ bCommon = true; } else if ( !bWifiConnected && - (BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus) + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE) ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], Wifi non connected-idle + BT connected-idle!!\n") - ); - /* halbtc8723b1ant_SwMechanism(pBtCoexist, false); */ bCommon = true; } else if ( bWifiConnected && - (BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus) + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE) ) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi connected + BT connected-idle!!\n")); - /* halbtc8723b1ant_SwMechanism(pBtCoexist, false); */ bCommon = true; } else if ( !bWifiConnected && - (BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE != pCoexDm->btStatus) + (pCoexDm->btStatus != BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE) ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], Wifi non connected-idle + BT Busy!!\n") - ); - /* halbtc8723b1ant_SwMechanism(pBtCoexist, false); */ bCommon = true; } else { - if (bWifiBusy) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], Wifi Connected-Busy + BT Busy!!\n") - ); - } else { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], Wifi Connected-Idle + BT Busy!!\n") - ); - } - bCommon = false; } @@ -1759,16 +1366,10 @@ static void halbtc8723b1ant_TdmaDurationAdjustForAcl( s32 result; /* 0: no change, +1: increase WiFi duration, -1: decrease WiFi duration */ u8 retryCount = 0, btInfoExt; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW, - ("[BTCoex], TdmaDurationAdjustForAcl()\n") - ); - if ( - (BT_8723B_1ANT_WIFI_STATUS_NON_CONNECTED_ASSO_AUTH_SCAN == wifiStatus) || - (BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SCAN == wifiStatus) || - (BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SPECIAL_PKT == wifiStatus) + (wifiStatus == BT_8723B_1ANT_WIFI_STATUS_NON_CONNECTED_ASSO_AUTH_SCAN) || + (wifiStatus == BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SCAN) || + (wifiStatus == BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SPECIAL_PKT) ) { if ( pCoexDm->curPsTdma != 1 && @@ -1791,11 +1392,6 @@ static void halbtc8723b1ant_TdmaDurationAdjustForAcl( if (!pCoexDm->bAutoTdmaAdjust) { pCoexDm->bAutoTdmaAdjust = true; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ("[BTCoex], first run TdmaDurationAdjust()!!\n") - ); halbtc8723b1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); pCoexDm->psTdmaDuAdjType = 2; @@ -1810,9 +1406,6 @@ static void halbtc8723b1ant_TdmaDurationAdjustForAcl( /* acquire the BT TRx retry count from BT_Info byte2 */ retryCount = pCoexSta->btRetryCnt; btInfoExt = pCoexSta->btInfoExt; - /* BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], retryCount = %d\n", retryCount)); */ - /* BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], up =%d, dn =%d, m =%d, n =%d, WaitCount =%d\n", */ - /* up, dn, m, n, WaitCount)); */ if (pCoexSta->lowPriorityTx > 1050 || pCoexSta->lowPriorityRx > 1250) retryCount++; @@ -1833,11 +1426,6 @@ static void halbtc8723b1ant_TdmaDurationAdjustForAcl( up = 0; dn = 0; result = 1; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ("[BTCoex], Increase wifi duration!!\n") - ); } } else if (retryCount <= 3) { /* <=3 retry in the last 2-second duration */ up--; @@ -1860,7 +1448,6 @@ static void halbtc8723b1ant_TdmaDurationAdjustForAcl( dn = 0; WaitCount = 0; result = -1; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Decrease wifi duration for retryCounter<3!!\n")); } } else { /* retry count > 3, 只要1次 retry count > 3, 則調窄WiFi duration */ if (WaitCount == 1) @@ -1876,11 +1463,6 @@ static void halbtc8723b1ant_TdmaDurationAdjustForAcl( dn = 0; WaitCount = 0; result = -1; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ("[BTCoex], Decrease wifi duration for retryCounter>3!!\n") - ); } if (result == -1) { @@ -1917,15 +1499,6 @@ static void halbtc8723b1ant_TdmaDurationAdjustForAcl( halbtc8723b1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 1); pCoexDm->psTdmaDuAdjType = 1; } - } else { /* no change */ - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ( - "[BTCoex], ********** TDMA(on, %d) **********\n", - pCoexDm->curPsTdma - ) - ); } if ( @@ -2002,13 +1575,13 @@ static void halbtc8723b1ant_PowerSaveState( /* */ /* */ -/* Software Coex Mechanism start */ +/* Software Coex Mechanism start */ /* */ /* */ /* */ /* */ -/* Non-Software Coex Mechanism start */ +/* Non-Software Coex Mechanism start */ /* */ /* */ static void halbtc8723b1ant_ActionWifiMultiPort(struct btc_coexist *pBtCoexist) @@ -2091,6 +1664,7 @@ static void halbtc8723b1ant_ActionWifiConnectedBtAclBusy( ) { struct btc_bt_link_info *pBtLinkInfo = &pBtCoexist->btLinkInfo; + halbtc8723b1ant_BtRssiState(2, 28, 0); if ((pCoexSta->lowPriorityRx >= 1000) && (pCoexSta->lowPriorityRx != 65535)) @@ -2103,7 +1677,7 @@ static void halbtc8723b1ant_ActionWifiConnectedBtAclBusy( pCoexDm->bAutoTdmaAdjust = false; return; } else if (pBtLinkInfo->bA2dpOnly) { /* A2DP */ - if (BT_8723B_1ANT_WIFI_STATUS_CONNECTED_IDLE == wifiStatus) { + if (wifiStatus == BT_8723B_1ANT_WIFI_STATUS_CONNECTED_IDLE) { halbtc8723b1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 32); halbtc8723b1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 4); pCoexDm->bAutoTdmaAdjust = false; @@ -2158,7 +1732,7 @@ static void halbtc8723b1ant_ActionWifiNotConnectedScan( halbtc8723b1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); /* tdma and coex table */ - if (BT_8723B_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) { + if (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_BUSY) { if (pBtLinkInfo->bA2dpExist) { halbtc8723b1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 32); halbtc8723b1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 4); @@ -2170,8 +1744,8 @@ static void halbtc8723b1ant_ActionWifiNotConnectedScan( halbtc8723b1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 4); } } else if ( - (BT_8723B_1ANT_BT_STATUS_SCO_BUSY == pCoexDm->btStatus) || - (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == pCoexDm->btStatus) + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_SCO_BUSY) || + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY) ) { halbtc8723b1ant_ActionBtScoHidOnlyBusy( pBtCoexist, BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SCAN @@ -2215,7 +1789,7 @@ static void halbtc8723b1ant_ActionWifiConnectedScan(struct btc_coexist *pBtCoexi halbtc8723b1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); /* tdma and coex table */ - if (BT_8723B_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) { + if (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_BUSY) { if (pBtLinkInfo->bA2dpExist) { halbtc8723b1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 32); halbtc8723b1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 4); @@ -2227,8 +1801,8 @@ static void halbtc8723b1ant_ActionWifiConnectedScan(struct btc_coexist *pBtCoexi halbtc8723b1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 4); } } else if ( - (BT_8723B_1ANT_BT_STATUS_SCO_BUSY == pCoexDm->btStatus) || - (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == pCoexDm->btStatus) + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_SCO_BUSY) || + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY) ) { halbtc8723b1ant_ActionBtScoHidOnlyBusy( pBtCoexist, BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SCAN @@ -2271,20 +1845,9 @@ static void halbtc8723b1ant_ActionWifiConnected(struct btc_coexist *pBtCoexist) bool bScan = false, bLink = false, bRoam = false; bool bUnder4way = false, bApEnable = false; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], CoexForWifiConnect() ===>\n") - ); - pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_4_WAY_PROGRESS, &bUnder4way); if (bUnder4way) { halbtc8723b1ant_ActionWifiConnectedSpecialPacket(pBtCoexist); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], CoexForWifiConnect(), return for wifi is under 4way<===\n") - ); return; } @@ -2296,11 +1859,6 @@ static void halbtc8723b1ant_ActionWifiConnected(struct btc_coexist *pBtCoexist) halbtc8723b1ant_ActionWifiConnectedScan(pBtCoexist); else halbtc8723b1ant_ActionWifiConnectedSpecialPacket(pBtCoexist); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], CoexForWifiConnect(), return for wifi is under scan<===\n") - ); return; } @@ -2310,7 +1868,7 @@ static void halbtc8723b1ant_ActionWifiConnected(struct btc_coexist *pBtCoexist) /* power save state */ if ( !bApEnable && - BT_8723B_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus && + pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_BUSY && !pBtCoexist->btLinkInfo.bHidOnly ) { if (pBtCoexist->btLinkInfo.bA2dpOnly) { /* A2DP */ @@ -2341,14 +1899,14 @@ static void halbtc8723b1ant_ActionWifiConnected(struct btc_coexist *pBtCoexist) /* tdma and coex table */ if (!bWifiBusy) { - if (BT_8723B_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) { + if (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_BUSY) { halbtc8723b1ant_ActionWifiConnectedBtAclBusy( pBtCoexist, BT_8723B_1ANT_WIFI_STATUS_CONNECTED_IDLE ); } else if ( - (BT_8723B_1ANT_BT_STATUS_SCO_BUSY == pCoexDm->btStatus) || - (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == pCoexDm->btStatus) + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_SCO_BUSY) || + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY) ) { halbtc8723b1ant_ActionBtScoHidOnlyBusy(pBtCoexist, BT_8723B_1ANT_WIFI_STATUS_CONNECTED_IDLE); @@ -2361,14 +1919,14 @@ static void halbtc8723b1ant_ActionWifiConnected(struct btc_coexist *pBtCoexist) halbtc8723b1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 7); } } else { - if (BT_8723B_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) { + if (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_BUSY) { halbtc8723b1ant_ActionWifiConnectedBtAclBusy( pBtCoexist, BT_8723B_1ANT_WIFI_STATUS_CONNECTED_BUSY ); } else if ( - (BT_8723B_1ANT_BT_STATUS_SCO_BUSY == pCoexDm->btStatus) || - (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == pCoexDm->btStatus) + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_SCO_BUSY) || + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY) ) { halbtc8723b1ant_ActionBtScoHidOnlyBusy( pBtCoexist, @@ -2397,47 +1955,36 @@ static void halbtc8723b1ant_RunSwCoexistMechanism(struct btc_coexist *pBtCoexist } else { switch (pCoexDm->curAlgorithm) { case BT_8723B_1ANT_COEX_ALGO_SCO: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = SCO.\n")); /* halbtc8723b1ant_ActionSco(pBtCoexist); */ break; case BT_8723B_1ANT_COEX_ALGO_HID: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HID.\n")); /* halbtc8723b1ant_ActionHid(pBtCoexist); */ break; case BT_8723B_1ANT_COEX_ALGO_A2DP: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = A2DP.\n")); /* halbtc8723b1ant_ActionA2dp(pBtCoexist); */ break; case BT_8723B_1ANT_COEX_ALGO_A2DP_PANHS: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = A2DP+PAN(HS).\n")); /* halbtc8723b1ant_ActionA2dpPanHs(pBtCoexist); */ break; case BT_8723B_1ANT_COEX_ALGO_PANEDR: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = PAN(EDR).\n")); /* halbtc8723b1ant_ActionPanEdr(pBtCoexist); */ break; case BT_8723B_1ANT_COEX_ALGO_PANHS: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HS mode.\n")); /* halbtc8723b1ant_ActionPanHs(pBtCoexist); */ break; case BT_8723B_1ANT_COEX_ALGO_PANEDR_A2DP: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = PAN+A2DP.\n")); /* halbtc8723b1ant_ActionPanEdrA2dp(pBtCoexist); */ break; case BT_8723B_1ANT_COEX_ALGO_PANEDR_HID: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = PAN(EDR)+HID.\n")); /* halbtc8723b1ant_ActionPanEdrHid(pBtCoexist); */ break; case BT_8723B_1ANT_COEX_ALGO_HID_A2DP_PANEDR: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HID+A2DP+PAN.\n")); /* halbtc8723b1ant_ActionHidA2dpPanEdr(pBtCoexist); */ break; case BT_8723B_1ANT_COEX_ALGO_HID_A2DP: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HID+A2DP.\n")); /* halbtc8723b1ant_ActionHidA2dp(pBtCoexist); */ break; default: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = coexist All Off!!\n")); break; } pCoexDm->preAlgorithm = pCoexDm->curAlgorithm; @@ -2454,27 +2001,19 @@ static void halbtc8723b1ant_RunCoexistMechanism(struct btc_coexist *pBtCoexist) u32 wifiLinkStatus = 0; u32 numOfWifiLink = 0; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism() ===>\n")); - - if (pBtCoexist->bManualControl) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism(), return for Manual CTRL <===\n")); + if (pBtCoexist->bManualControl) return; - } - if (pBtCoexist->bStopCoexDm) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism(), return for Stop Coex DM <===\n")); + if (pBtCoexist->bStopCoexDm) return; - } - if (pCoexSta->bUnderIps) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi is under IPS !!!\n")); + if (pCoexSta->bUnderIps) return; - } if ( - (BT_8723B_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) || - (BT_8723B_1ANT_BT_STATUS_SCO_BUSY == pCoexDm->btStatus) || - (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == pCoexDm->btStatus) + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_BUSY) || + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_SCO_BUSY) || + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY) ){ bIncreaseScanDevNum = true; } @@ -2498,26 +2037,12 @@ static void halbtc8723b1ant_RunCoexistMechanism(struct btc_coexist *pBtCoexist) numOfWifiLink = wifiLinkStatus >> 16; if ((numOfWifiLink >= 2) || (wifiLinkStatus & WIFI_P2P_GO_CONNECTED)) { - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ( - "############# [BTCoex], Multi-Port numOfWifiLink = %d, wifiLinkStatus = 0x%x\n", - numOfWifiLink, - wifiLinkStatus - ) - ); halbtc8723b1ant_LimitedTx(pBtCoexist, NORMAL_EXEC, 0, 0, 0, 0); halbtc8723b1ant_LimitedRx(pBtCoexist, NORMAL_EXEC, false, bBtCtrlAggBufSize, aggBufSize); - if ((pBtLinkInfo->bA2dpExist) && (pCoexSta->bC2hBtInquiryPage)) { - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ("############# [BTCoex], BT Is Inquirying\n") - ); + if ((pBtLinkInfo->bA2dpExist) && (pCoexSta->bC2hBtInquiryPage)) halbtc8723b1ant_ActionBtInquiry(pBtCoexist); - } else + else halbtc8723b1ant_ActionWifiMultiPort(pBtCoexist); return; @@ -2544,11 +2069,6 @@ static void halbtc8723b1ant_RunCoexistMechanism(struct btc_coexist *pBtCoexist) pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); if (pCoexSta->bC2hBtInquiryPage) { - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ("############# [BTCoex], BT Is Inquirying\n") - ); halbtc8723b1ant_ActionBtInquiry(pBtCoexist); return; } else if (bBtHsOn) { @@ -2560,16 +2080,14 @@ static void halbtc8723b1ant_RunCoexistMechanism(struct btc_coexist *pBtCoexist) if (!bWifiConnected) { bool bScan = false, bLink = false, bRoam = false; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi is non connected-idle !!!\n")); - pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_ROAM, &bRoam); if (bScan || bLink || bRoam) { - if (bScan) + if (bScan) halbtc8723b1ant_ActionWifiNotConnectedScan(pBtCoexist); - else + else halbtc8723b1ant_ActionWifiNotConnectedAssoAuth(pBtCoexist); } else halbtc8723b1ant_ActionWifiNotConnected(pBtCoexist); @@ -2596,15 +2114,6 @@ static void halbtc8723b1ant_InitHwConfig( bool bWifiOnly ) { - u32 u4Tmp = 0;/* fwVer; */ - u8 u1Tmpa = 0, u1Tmpb = 0; - - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_INIT, - ("[BTCoex], 1Ant Init HW Config!!\n") - ); - pBtCoexist->fBtcWrite1ByteBitMask(pBtCoexist, 0x550, 0x8, 0x1); /* enable TBTT nterrupt */ /* 0x790[5:0]= 0x5 */ @@ -2624,20 +2133,9 @@ static void halbtc8723b1ant_InitHwConfig( /* PTA parameter */ halbtc8723b1ant_CoexTableWithType(pBtCoexist, FORCE_EXEC, 0); - u4Tmp = pBtCoexist->fBtcRead4Byte(pBtCoexist, 0x948); - u1Tmpa = pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x765); - u1Tmpb = pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x67); - - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ( - "############# [BTCoex], 0x948 = 0x%x, 0x765 = 0x%x, 0x67 = 0x%x\n", - u4Tmp, - u1Tmpa, - u1Tmpb - ) - ); + pBtCoexist->fBtcRead4Byte(pBtCoexist, 0x948); + pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x765); + pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x67); } /* */ @@ -2666,9 +2164,9 @@ void EXhalbtc8723b1ant_PowerOnSetting(struct btc_coexist *pBtCoexist) /* */ /* S0 or S1 setting and Local register setting(By the setting fw can get ant number, S0/S1, ... info) */ /* Local setting bit define */ - /* BIT0: "0" for no antenna inverse; "1" for antenna inverse */ - /* BIT1: "0" for internal switch; "1" for external switch */ - /* BIT2: "0" for one antenna; "1" for two antenna */ + /* BIT0: "0" for no antenna inverse; "1" for antenna inverse */ + /* BIT1: "0" for internal switch; "1" for external switch */ + /* BIT2: "0" for one antenna; "1" for two antenna */ /* NOTE: here default all internal switch and 1-antenna ==> BIT1 = 0 and BIT2 = 0 */ if (pBtCoexist->chipInterface == BTC_INTF_USB) { /* fixed at S0 for USB interface */ @@ -2705,12 +2203,6 @@ void EXhalbtc8723b1ant_InitHwConfig(struct btc_coexist *pBtCoexist, bool bWifiOn void EXhalbtc8723b1ant_InitCoexDm(struct btc_coexist *pBtCoexist) { - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_INIT, - ("[BTCoex], Coex Mechanism Init!!\n") - ); - pBtCoexist->bStopCoexDm = false; halbtc8723b1ant_InitCoexDm(pBtCoexist); @@ -2730,7 +2222,6 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) bool bRoam = false; bool bScan = false; bool bLink = false; - bool bWifiUnder5G = false; bool bWifiUnderBMode = false; bool bBtHsOn = false; bool bWifiBusy = false; @@ -2778,7 +2269,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d/ %d/ %d", "Ant PG Num/ Ant Mech/ Ant Pos:", \ + "\r\n %-35s = %d/ %d/ %d", "Ant PG Num/ Ant Mech/ Ant Pos:", pBoardInfo->pgAntNum, pBoardInfo->btdmAntNum, pBoardInfo->btdmAntPos @@ -2788,7 +2279,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %s / %d", "BT stack/ hci ext ver", \ + "\r\n %-35s = %s / %d", "BT stack/ hci ext ver", ((pStackInfo->bProfileNotified) ? "Yes" : "No"), pStackInfo->hciVersion ); @@ -2799,7 +2290,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d_%x/ 0x%x/ 0x%x(%d)", "CoexVer/ FwVer/ PatchVer", \ + "\r\n %-35s = %d_%x/ 0x%x/ 0x%x(%d)", "CoexVer/ FwVer/ PatchVer", GLCoexVerDate8723b1Ant, GLCoexVer8723b1Ant, fwVer, @@ -2814,7 +2305,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d / %d(%d)", "Dot11 channel / HsChnl(HsMode)", \ + "\r\n %-35s = %d / %d(%d)", "Dot11 channel / HsChnl(HsMode)", wifiDot11Chnl, wifiHsChnl, bBtHsOn @@ -2824,7 +2315,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %02x %02x %02x ", "H2C Wifi inform bt chnl Info", \ + "\r\n %-35s = %02x %02x %02x ", "H2C Wifi inform bt chnl Info", pCoexDm->wifiChnlInfo[0], pCoexDm->wifiChnlInfo[1], pCoexDm->wifiChnlInfo[2] @@ -2836,7 +2327,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d/ %d", "Wifi rssi/ HS rssi", \ + "\r\n %-35s = %d/ %d", "Wifi rssi/ HS rssi", wifiRssi - 100, btHsRssi - 100 ); CL_PRINTF(cliBuf); @@ -2847,12 +2338,11 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d/ %d/ %d/ %s", "Wifi bLink/ bRoam/ bScan/ bHi-Pri", \ + "\r\n %-35s = %d/ %d/ %d/ %s", "Wifi bLink/ bRoam/ bScan/ bHi-Pri", bLink, bRoam, bScan, ((pCoexSta->bWiFiIsHighPriTask) ? "1" : "0") ); CL_PRINTF(cliBuf); - pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_UNDER_5G, &bWifiUnder5G); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_BUSY, &bWifiBusy); pBtCoexist->fBtcGet( @@ -2865,10 +2355,10 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %s / %s/ %s/ AP =%d/ %s ", "Wifi status", \ - (bWifiUnder5G ? "5G" : "2.4G"), - ((bWifiUnderBMode) ? "11b" : ((BTC_WIFI_BW_LEGACY == wifiBw) ? "11bg" : (((BTC_WIFI_BW_HT40 == wifiBw) ? "HT40" : "HT20")))), - ((!bWifiBusy) ? "idle" : ((BTC_WIFI_TRAFFIC_TX == wifiTrafficDir) ? "uplink" : "downlink")), + "\r\n %-35s = %s / %s/ %s/ AP =%d/ %s ", "Wifi status", + ("2.4G"), + ((bWifiUnderBMode) ? "11b" : ((wifiBw == BTC_WIFI_BW_LEGACY) ? "11bg" : (((wifiBw == BTC_WIFI_BW_HT40) ? "HT40" : "HT20")))), + ((!bWifiBusy) ? "idle" : ((wifiTrafficDir == BTC_WIFI_TRAFFIC_TX) ? "uplink" : "downlink")), pCoexSta->nScanAPNum, (pCoexSta->bCCKLock) ? "Lock" : "noLock" ); @@ -2880,7 +2370,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d/ %d/ %d/ %d/ %d", "sta/vwifi/hs/p2pGo/p2pGc", \ + "\r\n %-35s = %d/ %d/ %d/ %d/ %d", "sta/vwifi/hs/p2pGo/p2pGc", ((wifiLinkStatus & WIFI_STA_CONNECTED) ? 1 : 0), ((wifiLinkStatus & WIFI_AP_CONNECTED) ? 1 : 0), ((wifiLinkStatus & WIFI_HS_CONNECTED) ? 1 : 0), @@ -2894,9 +2384,9 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = [%s/ %d/ %d/ %d] ", "BT [status/ rssi/ retryCnt/ popCnt]", \ - ((pBtCoexist->btInfo.bBtDisabled) ? ("disabled") : ((pCoexSta->bC2hBtInquiryPage) ? ("inquiry/page scan") : ((BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE == pCoexDm->btStatus) ? "non-connected idle" : - ((BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus) ? "connected-idle" : "busy")))), + "\r\n %-35s = [%s/ %d/ %d/ %d] ", "BT [status/ rssi/ retryCnt/ popCnt]", + ((pBtCoexist->btInfo.bBtDisabled) ? ("disabled") : ((pCoexSta->bC2hBtInquiryPage) ? ("inquiry/page scan") : ((pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE) ? "non-connected idle" : + ((pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE) ? "connected-idle" : "busy")))), pCoexSta->btRssi, pCoexSta->btRetryCnt, pCoexSta->popEventCnt ); CL_PRINTF(cliBuf); @@ -2910,7 +2400,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d / %d / %d / %d", "SCO/HID/PAN/A2DP", \ + "\r\n %-35s = %d / %d / %d / %d", "SCO/HID/PAN/A2DP", pBtLinkInfo->bScoExist, pBtLinkInfo->bHidExist, pBtLinkInfo->bPanExist, @@ -2921,8 +2411,8 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) if (pStackInfo->bProfileNotified) { pBtCoexist->fBtcDispDbgMsg(pBtCoexist, BTC_DBG_DISP_BT_LINK_INFO); } else { - CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s", "BT Role", \ - (pBtLinkInfo->bSlaveRole) ? "Slave" : "Master"); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s", "BT Role", + (pBtLinkInfo->bSlaveRole) ? "Slave" : "Master"); CL_PRINTF(cliBuf); } @@ -2931,7 +2421,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %s", "BT Info A2DP rate", \ + "\r\n %-35s = %s", "BT Info A2DP rate", (btInfoExt & BIT0) ? "Basic rate" : "EDR rate" ); CL_PRINTF(cliBuf); @@ -2941,7 +2431,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %02x %02x %02x %02x %02x %02x %02x(%d)", GLBtInfoSrc8723b1Ant[i], \ + "\r\n %-35s = %02x %02x %02x %02x %02x %02x %02x(%d)", GLBtInfoSrc8723b1Ant[i], pCoexSta->btInfoC2h[i][0], pCoexSta->btInfoC2h[i][1], pCoexSta->btInfoC2h[i][2], pCoexSta->btInfoC2h[i][3], pCoexSta->btInfoC2h[i][4], pCoexSta->btInfoC2h[i][5], @@ -2953,7 +2443,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %s/%s, (0x%x/0x%x)", "PS state, IPS/LPS, (lps/rpwm)", \ + "\r\n %-35s = %s/%s, (0x%x/0x%x)", "PS state, IPS/LPS, (lps/rpwm)", (pCoexSta->bUnderIps ? "IPS ON" : "IPS OFF"), (pCoexSta->bUnderLps ? "LPS ON" : "LPS OFF"), pBtCoexist->btInfo.lpsVal, @@ -2974,7 +2464,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d", "SM[LowPenaltyRA]", \ + "\r\n %-35s = %d", "SM[LowPenaltyRA]", pCoexDm->bCurLowPenaltyRa ); CL_PRINTF(cliBuf); @@ -2982,7 +2472,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %s/ %s/ %d ", "DelBA/ BtCtrlAgg/ AggSize", \ + "\r\n %-35s = %s/ %s/ %d ", "DelBA/ BtCtrlAgg/ AggSize", (pBtCoexist->btInfo.bRejectAggPkt ? "Yes" : "No"), (pBtCoexist->btInfo.bBtCtrlAggBufSize ? "Yes" : "No"), pBtCoexist->btInfo.aggBufSize @@ -2991,7 +2481,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = 0x%x ", "Rate Mask", \ + "\r\n %-35s = 0x%x ", "Rate Mask", pBtCoexist->btInfo.raMask ); CL_PRINTF(cliBuf); @@ -3001,41 +2491,35 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_PRINTF(cliBuf); psTdmaCase = pCoexDm->curPsTdma; - CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x %02x %02x case-%d (auto:%d)", "PS TDMA", \ - pCoexDm->psTdmaPara[0], pCoexDm->psTdmaPara[1], - pCoexDm->psTdmaPara[2], pCoexDm->psTdmaPara[3], - pCoexDm->psTdmaPara[4], psTdmaCase, pCoexDm->bAutoTdmaAdjust); - CL_PRINTF(cliBuf); - - CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d", "Coex Table Type", \ - pCoexSta->nCoexTableType); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x %02x %02x case-%d (auto:%d)", "PS TDMA", + pCoexDm->psTdmaPara[0], pCoexDm->psTdmaPara[1], + pCoexDm->psTdmaPara[2], pCoexDm->psTdmaPara[3], + pCoexDm->psTdmaPara[4], psTdmaCase, pCoexDm->bAutoTdmaAdjust); CL_PRINTF(cliBuf); - CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d", "IgnWlanAct", \ - pCoexDm->bCurIgnoreWlanAct); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d", "Coex Table Type", + pCoexSta->nCoexTableType); CL_PRINTF(cliBuf); - /* - CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x ", "Latest error condition(should be 0)", \ - pCoexDm->errorCondition); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d", "IgnWlanAct", + pCoexDm->bCurIgnoreWlanAct); CL_PRINTF(cliBuf); - */ } /* Hw setting */ CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Hw setting]============"); CL_PRINTF(cliBuf); - CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/0x%x/0x%x/0x%x", "backup ARFR1/ARFR2/RL/AMaxTime", \ - pCoexDm->backupArfrCnt1, pCoexDm->backupArfrCnt2, pCoexDm->backupRetryLimit, pCoexDm->backupAmpduMaxTime); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/0x%x/0x%x/0x%x", "backup ARFR1/ARFR2/RL/AMaxTime", + pCoexDm->backupArfrCnt1, pCoexDm->backupArfrCnt2, pCoexDm->backupRetryLimit, pCoexDm->backupAmpduMaxTime); CL_PRINTF(cliBuf); u4Tmp[0] = pBtCoexist->fBtcRead4Byte(pBtCoexist, 0x430); u4Tmp[1] = pBtCoexist->fBtcRead4Byte(pBtCoexist, 0x434); u2Tmp[0] = pBtCoexist->fBtcRead2Byte(pBtCoexist, 0x42a); u1Tmp[0] = pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x456); - CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/0x%x/0x%x/0x%x", "0x430/0x434/0x42a/0x456", \ - u4Tmp[0], u4Tmp[1], u2Tmp[0], u1Tmp[0]); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/0x%x/0x%x/0x%x", "0x430/0x434/0x42a/0x456", + u4Tmp[0], u4Tmp[1], u2Tmp[0], u1Tmp[0]); CL_PRINTF(cliBuf); u1Tmp[0] = pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x778); @@ -3043,7 +2527,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) u4Tmp[1] = pBtCoexist->fBtcRead4Byte(pBtCoexist, 0x880); CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "0x778/0x6cc/0x880[29:25]", \ + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "0x778/0x6cc/0x880[29:25]", u1Tmp[0], u4Tmp[0], (u4Tmp[1] & 0x3e000000) >> 25 ); CL_PRINTF(cliBuf); @@ -3055,7 +2539,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", "0x948/ 0x67[5] / 0x764 / 0x76e", \ + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", "0x948/ 0x67[5] / 0x764 / 0x76e", u4Tmp[0], ((u1Tmp[0] & 0x20) >> 5), (u4Tmp[1] & 0xffff), u1Tmp[1] ); CL_PRINTF(cliBuf); @@ -3066,7 +2550,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "0x92c[1:0]/ 0x930[7:0]/0x944[1:0]", \ + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "0x92c[1:0]/ 0x930[7:0]/0x944[1:0]", u4Tmp[0] & 0x3, u4Tmp[1] & 0xff, u4Tmp[2] & 0x3 ); CL_PRINTF(cliBuf); @@ -3078,7 +2562,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", "0x38[11]/0x40/0x4c[24:23]/0x64[0]", \ + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", "0x38[11]/0x40/0x4c[24:23]/0x64[0]", ((u1Tmp[0] & 0x8) >> 3), u1Tmp[1], ((u4Tmp[0] & 0x01800000) >> 23), @@ -3091,7 +2575,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = 0x%x/ 0x%x", "0x550(bcn ctrl)/0x522", \ + "\r\n %-35s = 0x%x/ 0x%x", "0x550(bcn ctrl)/0x522", u4Tmp[0], u1Tmp[0] ); CL_PRINTF(cliBuf); @@ -3101,7 +2585,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = 0x%x/ 0x%x", "0xc50(dig)/0x49c(null-drop)", \ + "\r\n %-35s = 0x%x/ 0x%x", "0xc50(dig)/0x49c(null-drop)", u4Tmp[0] & 0xff, u1Tmp[0] ); CL_PRINTF(cliBuf); @@ -3117,14 +2601,14 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) faOfdm = ((u4Tmp[0] & 0xffff0000) >> 16) + ((u4Tmp[1] & 0xffff0000) >> 16) + - (u4Tmp[1] & 0xffff) + (u4Tmp[2] & 0xffff) + \ + (u4Tmp[1] & 0xffff) + (u4Tmp[2] & 0xffff) + ((u4Tmp[3] & 0xffff0000) >> 16) + (u4Tmp[3] & 0xffff); faCck = (u1Tmp[0] << 8) + u1Tmp[1]; CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "OFDM-CCA/OFDM-FA/CCK-FA", \ + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "OFDM-CCA/OFDM-FA/CCK-FA", u4Tmp[0] & 0xffff, faOfdm, faCck ); CL_PRINTF(cliBuf); @@ -3133,7 +2617,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d/ %d/ %d/ %d", "CRC_OK CCK/11g/11n/11n-Agg", \ + "\r\n %-35s = %d/ %d/ %d/ %d", "CRC_OK CCK/11g/11n/11n-Agg", pCoexSta->nCRCOK_CCK, pCoexSta->nCRCOK_11g, pCoexSta->nCRCOK_11n, @@ -3144,7 +2628,7 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d/ %d/ %d/ %d", "CRC_Err CCK/11g/11n/11n-Agg", \ + "\r\n %-35s = %d/ %d/ %d/ %d", "CRC_Err CCK/11g/11n/11n-Agg", pCoexSta->nCRCErr_CCK, pCoexSta->nCRCErr_11g, pCoexSta->nCRCErr_11n, @@ -3158,21 +2642,21 @@ void EXhalbtc8723b1ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "0x6c0/0x6c4/0x6c8(coexTable)", \ + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "0x6c0/0x6c4/0x6c8(coexTable)", u4Tmp[0], u4Tmp[1], u4Tmp[2]); CL_PRINTF(cliBuf); CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d/ %d", "0x770(high-pri rx/tx)", \ + "\r\n %-35s = %d/ %d", "0x770(high-pri rx/tx)", pCoexSta->highPriorityRx, pCoexSta->highPriorityTx ); CL_PRINTF(cliBuf); CL_SPRINTF( cliBuf, BT_TMP_BUF_SIZE, - "\r\n %-35s = %d/ %d", "0x774(low-pri rx/tx)", \ + "\r\n %-35s = %d/ %d", "0x774(low-pri rx/tx)", pCoexSta->lowPriorityRx, pCoexSta->lowPriorityTx ); CL_PRINTF(cliBuf); @@ -3186,19 +2670,13 @@ void EXhalbtc8723b1ant_IpsNotify(struct btc_coexist *pBtCoexist, u8 type) if (pBtCoexist->bManualControl || pBtCoexist->bStopCoexDm) return; - if (BTC_IPS_ENTER == type) { - BTC_PRINT( - BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS ENTER notify\n") - ); + if (type == BTC_IPS_ENTER) { pCoexSta->bUnderIps = true; halbtc8723b1ant_PsTdma(pBtCoexist, NORMAL_EXEC, false, 0); halbtc8723b1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); halbtc8723b1ant_SetAntPath(pBtCoexist, BTC_ANT_PATH_BT, false, true); - } else if (BTC_IPS_LEAVE == type) { - BTC_PRINT( - BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS LEAVE notify\n") - ); + } else if (type == BTC_IPS_LEAVE) { pCoexSta->bUnderIps = false; halbtc8723b1ant_InitHwConfig(pBtCoexist, false, false); @@ -3212,17 +2690,10 @@ void EXhalbtc8723b1ant_LpsNotify(struct btc_coexist *pBtCoexist, u8 type) if (pBtCoexist->bManualControl || pBtCoexist->bStopCoexDm) return; - if (BTC_LPS_ENABLE == type) { - BTC_PRINT( - BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS ENABLE notify\n") - ); + if (type == BTC_LPS_ENABLE) pCoexSta->bUnderLps = true; - } else if (BTC_LPS_DISABLE == type) { - BTC_PRINT( - BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS DISABLE notify\n") - ); + else if (type == BTC_LPS_DISABLE) pCoexSta->bUnderLps = false; - } } void EXhalbtc8723b1ant_ScanNotify(struct btc_coexist *pBtCoexist, u8 type) @@ -3233,39 +2704,18 @@ void EXhalbtc8723b1ant_ScanNotify(struct btc_coexist *pBtCoexist, u8 type) bool bBtCtrlAggBufSize = false; u8 aggBufSize = 5; - u8 u1Tmpa, u1Tmpb; - u32 u4Tmp; - if (pBtCoexist->bManualControl || pBtCoexist->bStopCoexDm) return; - if (BTC_SCAN_START == type) { + if (type == BTC_SCAN_START) { pCoexSta->bWiFiIsHighPriTask = true; - BTC_PRINT( - BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN START notify\n") - ); halbtc8723b1ant_PsTdma(pBtCoexist, FORCE_EXEC, false, 8); /* Force antenna setup for no scan result issue */ - u4Tmp = pBtCoexist->fBtcRead4Byte(pBtCoexist, 0x948); - u1Tmpa = pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x765); - u1Tmpb = pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x67); - - - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ( - "[BTCoex], 0x948 = 0x%x, 0x765 = 0x%x, 0x67 = 0x%x\n", - u4Tmp, - u1Tmpa, - u1Tmpb - ) - ); + pBtCoexist->fBtcRead4Byte(pBtCoexist, 0x948); + pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x765); + pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x67); } else { pCoexSta->bWiFiIsHighPriTask = false; - BTC_PRINT( - BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN FINISH notify\n") - ); pBtCoexist->fBtcGet( pBtCoexist, BTC_GET_U1_AP_NUM, &pCoexSta->nScanAPNum @@ -3300,14 +2750,12 @@ void EXhalbtc8723b1ant_ScanNotify(struct btc_coexist *pBtCoexist, u8 type) return; } - if (BTC_SCAN_START == type) { - /* BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN START notify\n")); */ + if (type == BTC_SCAN_START) { if (!bWifiConnected) /* non-connected scan */ halbtc8723b1ant_ActionWifiNotConnectedScan(pBtCoexist); else /* wifi is connected */ halbtc8723b1ant_ActionWifiConnectedScan(pBtCoexist); - } else if (BTC_SCAN_FINISH == type) { - /* BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN FINISH notify\n")); */ + } else if (type == BTC_SCAN_FINISH) { if (!bWifiConnected) /* non-connected scan */ halbtc8723b1ant_ActionWifiNotConnected(pBtCoexist); else @@ -3330,13 +2778,11 @@ void EXhalbtc8723b1ant_ConnectNotify(struct btc_coexist *pBtCoexist, u8 type) ) return; - if (BTC_ASSOCIATE_START == type) { + if (type == BTC_ASSOCIATE_START) { pCoexSta->bWiFiIsHighPriTask = true; - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT START notify\n")); pCoexDm->nArpCnt = 0; } else { pCoexSta->bWiFiIsHighPriTask = false; - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT FINISH notify\n")); /* pCoexDm->nArpCnt = 0; */ } @@ -3358,12 +2804,9 @@ void EXhalbtc8723b1ant_ConnectNotify(struct btc_coexist *pBtCoexist, u8 type) return; } - if (BTC_ASSOCIATE_START == type) { - /* BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT START notify\n")); */ + if (type == BTC_ASSOCIATE_START) { halbtc8723b1ant_ActionWifiNotConnectedAssoAuth(pBtCoexist); - } else if (BTC_ASSOCIATE_FINISH == type) { - /* BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT FINISH notify\n")); */ - + } else if (type == BTC_ASSOCIATE_FINISH) { pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); if (!bWifiConnected) /* non-connected scan */ halbtc8723b1ant_ActionWifiNotConnected(pBtCoexist); @@ -3386,9 +2829,7 @@ void EXhalbtc8723b1ant_MediaStatusNotify(struct btc_coexist *pBtCoexist, u8 type ) return; - if (BTC_MEDIA_CONNECT == type) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], MEDIA connect notify\n")); - + if (type == BTC_MEDIA_CONNECT) { pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_UNDER_B_MODE, &bWifiUnderBMode); /* Set CCK Tx/Rx high Pri except 11b mode */ @@ -3405,7 +2846,6 @@ void EXhalbtc8723b1ant_MediaStatusNotify(struct btc_coexist *pBtCoexist, u8 type pCoexDm->backupRetryLimit = pBtCoexist->fBtcRead2Byte(pBtCoexist, 0x42a); pCoexDm->backupAmpduMaxTime = pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x456); } else { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], MEDIA disconnect notify\n")); pCoexDm->nArpCnt = 0; pBtCoexist->fBtcWrite1Byte(pBtCoexist, 0x6cd, 0x0); /* CCK Tx */ @@ -3414,13 +2854,13 @@ void EXhalbtc8723b1ant_MediaStatusNotify(struct btc_coexist *pBtCoexist, u8 type /* only 2.4G we need to inform bt the chnl mask */ pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_U1_WIFI_CENTRAL_CHNL, &wifiCentralChnl); - if ((BTC_MEDIA_CONNECT == type) && (wifiCentralChnl <= 14)) { + if ((type == BTC_MEDIA_CONNECT) && (wifiCentralChnl <= 14)) { /* H2C_Parameter[0] = 0x1; */ H2C_Parameter[0] = 0x0; H2C_Parameter[1] = wifiCentralChnl; pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); - if (BTC_WIFI_BW_HT40 == wifiBw) + if (wifiBw == BTC_WIFI_BW_HT40) H2C_Parameter[2] = 0x30; else H2C_Parameter[2] = 0x20; @@ -3430,15 +2870,6 @@ void EXhalbtc8723b1ant_MediaStatusNotify(struct btc_coexist *pBtCoexist, u8 type pCoexDm->wifiChnlInfo[1] = H2C_Parameter[1]; pCoexDm->wifiChnlInfo[2] = H2C_Parameter[2]; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ( - "[BTCoex], FW write 0x66 = 0x%x\n", - H2C_Parameter[0] << 16 | H2C_Parameter[1] << 8 | H2C_Parameter[2] - ) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x66, 3, H2C_Parameter); } @@ -3458,23 +2889,12 @@ void EXhalbtc8723b1ant_SpecialPacketNotify(struct btc_coexist *pBtCoexist, u8 ty return; if ( - BTC_PACKET_DHCP == type || - BTC_PACKET_EAPOL == type || - BTC_PACKET_ARP == type + type == BTC_PACKET_DHCP || + type == BTC_PACKET_EAPOL || + type == BTC_PACKET_ARP ) { - if (BTC_PACKET_ARP == type) { - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ("[BTCoex], special Packet ARP notify\n") - ); - + if (type == BTC_PACKET_ARP) { pCoexDm->nArpCnt++; - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ("[BTCoex], ARP Packet Count = %d\n", pCoexDm->nArpCnt) - ); if (pCoexDm->nArpCnt >= 10) /* if APR PKT > 10 after connect, do not go to ActionWifiConnectedSpecialPacket(pBtCoexist) */ pCoexSta->bWiFiIsHighPriTask = false; @@ -3482,19 +2902,9 @@ void EXhalbtc8723b1ant_SpecialPacketNotify(struct btc_coexist *pBtCoexist, u8 ty pCoexSta->bWiFiIsHighPriTask = true; } else { pCoexSta->bWiFiIsHighPriTask = true; - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ("[BTCoex], special Packet DHCP or EAPOL notify\n") - ); } } else { pCoexSta->bWiFiIsHighPriTask = false; - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ("[BTCoex], special Packet [Type = %d] notify\n", type) - ); } pCoexSta->specialPktPeriodCnt = 0; @@ -3523,9 +2933,9 @@ void EXhalbtc8723b1ant_SpecialPacketNotify(struct btc_coexist *pBtCoexist, u8 ty } if ( - BTC_PACKET_DHCP == type || - BTC_PACKET_EAPOL == type || - ((BTC_PACKET_ARP == type) && (pCoexSta->bWiFiIsHighPriTask)) + type == BTC_PACKET_DHCP || + type == BTC_PACKET_EAPOL || + ((type == BTC_PACKET_ARP) && (pCoexSta->bWiFiIsHighPriTask)) ) halbtc8723b1ant_ActionWifiConnectedSpecialPacket(pBtCoexist); } @@ -3546,26 +2956,13 @@ void EXhalbtc8723b1ant_BtInfoNotify( rspSource = BT_INFO_SRC_8723B_1ANT_WIFI_FW; pCoexSta->btInfoC2hCnt[rspSource]++; - BTC_PRINT( - BTC_MSG_INTERFACE, - INTF_NOTIFY, - ("[BTCoex], Bt info[%d], length =%d, hex data =[", - rspSource, - length) - ); for (i = 0; i < length; i++) { pCoexSta->btInfoC2h[rspSource][i] = tmpBuf[i]; if (i == 1) btInfo = tmpBuf[i]; - if (i == length - 1) - BTC_PRINT( - BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%02x]\n", tmpBuf[i]) - ); - else - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%02x, ", tmpBuf[i])); } - if (BT_INFO_SRC_8723B_1ANT_WIFI_FW != rspSource) { + if (rspSource != BT_INFO_SRC_8723B_1ANT_WIFI_FW) { pCoexSta->btRetryCnt = pCoexSta->btInfoC2h[rspSource][2] & 0xf; if (pCoexSta->btRetryCnt >= 1) @@ -3586,18 +2983,12 @@ void EXhalbtc8723b1ant_BtInfoNotify( if (!pCoexSta->bBtTxRxMask) { /* BT into is responded by BT FW and BT RF REG 0x3C != 0x15 => Need to switch BT TRx Mask */ - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Switch BT TRx Mask since BT RF REG 0x3C != 0x15\n")); pBtCoexist->fBtcSetBtReg(pBtCoexist, BTC_BT_REG_RF, 0x3c, 0x15); } /* Here we need to resend some wifi info to BT */ /* because bt is reset and loss of the info. */ if (pCoexSta->btInfoExt & BIT1) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT ext info bit1 check, send wifi BW&Chnl to BT!!\n") - ); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); if (bWifiConnected) EXhalbtc8723b1ant_MediaStatusNotify(pBtCoexist, BTC_MEDIA_CONNECT); @@ -3606,14 +2997,8 @@ void EXhalbtc8723b1ant_BtInfoNotify( } if (pCoexSta->btInfoExt & BIT3) { - if (!pBtCoexist->bManualControl && !pBtCoexist->bStopCoexDm) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], BT ext info bit3 check, set BT NOT to ignore Wlan active!!\n") - ); + if (!pBtCoexist->bManualControl && !pBtCoexist->bStopCoexDm) halbtc8723b1ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, false); - } } else { /* BT already NOT ignore Wlan active, do nothing here. */ } @@ -3661,32 +3046,27 @@ void EXhalbtc8723b1ant_BtInfoNotify( if (!(btInfo & BT_INFO_8723B_1ANT_B_CONNECTION)) { pCoexDm->btStatus = BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), BT Non-Connected idle!!!\n")); } else if (btInfo == BT_INFO_8723B_1ANT_B_CONNECTION) { /* connection exists but no busy */ pCoexDm->btStatus = BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), BT Connected-idle!!!\n")); } else if ( (btInfo & BT_INFO_8723B_1ANT_B_SCO_ESCO) || (btInfo & BT_INFO_8723B_1ANT_B_SCO_BUSY) ) { pCoexDm->btStatus = BT_8723B_1ANT_BT_STATUS_SCO_BUSY; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), BT SCO busy!!!\n")); } else if (btInfo & BT_INFO_8723B_1ANT_B_ACL_BUSY) { - if (BT_8723B_1ANT_BT_STATUS_ACL_BUSY != pCoexDm->btStatus) + if (pCoexDm->btStatus != BT_8723B_1ANT_BT_STATUS_ACL_BUSY) pCoexDm->bAutoTdmaAdjust = false; pCoexDm->btStatus = BT_8723B_1ANT_BT_STATUS_ACL_BUSY; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), BT ACL busy!!!\n")); } else { pCoexDm->btStatus = BT_8723B_1ANT_BT_STATUS_MAX; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), BT Non-Defined state!!!\n")); } if ( - (BT_8723B_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) || - (BT_8723B_1ANT_BT_STATUS_SCO_BUSY == pCoexDm->btStatus) || - (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == pCoexDm->btStatus) + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_BUSY) || + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_SCO_BUSY) || + (pCoexDm->btStatus == BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY) ) bBtBusy = true; else @@ -3698,8 +3078,6 @@ void EXhalbtc8723b1ant_BtInfoNotify( void EXhalbtc8723b1ant_HaltNotify(struct btc_coexist *pBtCoexist) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Halt notify\n")); - halbtc8723b1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); halbtc8723b1ant_PsTdma(pBtCoexist, FORCE_EXEC, false, 0); halbtc8723b1ant_SetAntPath(pBtCoexist, BTC_ANT_PATH_BT, false, true); @@ -3713,19 +3091,14 @@ void EXhalbtc8723b1ant_HaltNotify(struct btc_coexist *pBtCoexist) void EXhalbtc8723b1ant_PnpNotify(struct btc_coexist *pBtCoexist, u8 pnpState) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Pnp notify\n")); - - if (BTC_WIFI_PNP_SLEEP == pnpState) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Pnp notify to SLEEP\n")); - + if (pnpState == BTC_WIFI_PNP_SLEEP) { halbtc8723b1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); halbtc8723b1ant_PsTdma(pBtCoexist, NORMAL_EXEC, false, 0); halbtc8723b1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 2); halbtc8723b1ant_SetAntPath(pBtCoexist, BTC_ANT_PATH_BT, false, true); pBtCoexist->bStopCoexDm = true; - } else if (BTC_WIFI_PNP_WAKE_UP == pnpState) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Pnp notify to WAKE UP\n")); + } else if (pnpState == BTC_WIFI_PNP_WAKE_UP) { pBtCoexist->bStopCoexDm = false; halbtc8723b1ant_InitHwConfig(pBtCoexist, false, false); halbtc8723b1ant_InitCoexDm(pBtCoexist); @@ -3738,16 +3111,10 @@ void EXhalbtc8723b1ant_Periodical(struct btc_coexist *pBtCoexist) static u8 disVerInfoCnt; u32 fwVer = 0, btPatchVer = 0; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], ==========================Periodical ===========================\n")); - if (disVerInfoCnt <= 5) { disVerInfoCnt += 1; - BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], ****************************************************************\n")); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_U4_BT_PATCH_VER, &btPatchVer); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_U4_WIFI_FW_VER, &fwVer); - BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], CoexVer/ FwVer/ PatchVer = %d_%x/ 0x%x/ 0x%x(%d)\n", \ - GLCoexVerDate8723b1Ant, GLCoexVer8723b1Ant, fwVer, btPatchVer, btPatchVer)); - BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], ****************************************************************\n")); } halbtc8723b1ant_MonitorBtCtr(pBtCoexist); diff --git a/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.c b/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.c index 4b570ec75e67..84241619fb3a 100644 --- a/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.c +++ b/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.c @@ -46,23 +46,18 @@ static u8 halbtc8723b2ant_BtRssiState( ) { if (btRssi >= (rssiThresh + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT)) { btRssiState = BTC_RSSI_STATE_HIGH; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to High\n")); } else { btRssiState = BTC_RSSI_STATE_STAY_LOW; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Low\n")); } } else { if (btRssi < rssiThresh) { btRssiState = BTC_RSSI_STATE_LOW; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Low\n")); } else { btRssiState = BTC_RSSI_STATE_STAY_HIGH; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at High\n")); } } } else if (levelNum == 3) { if (rssiThresh > rssiThresh1) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi thresh error!!\n")); return pCoexSta->preBtRssiState; } @@ -72,10 +67,8 @@ static u8 halbtc8723b2ant_BtRssiState( ) { if (btRssi >= (rssiThresh + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT)) { btRssiState = BTC_RSSI_STATE_MEDIUM; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Medium\n")); } else { btRssiState = BTC_RSSI_STATE_STAY_LOW; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Low\n")); } } else if ( (pCoexSta->preBtRssiState == BTC_RSSI_STATE_MEDIUM) || @@ -83,21 +76,16 @@ static u8 halbtc8723b2ant_BtRssiState( ) { if (btRssi >= (rssiThresh1 + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT)) { btRssiState = BTC_RSSI_STATE_HIGH; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to High\n")); } else if (btRssi < rssiThresh) { btRssiState = BTC_RSSI_STATE_LOW; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Low\n")); } else { btRssiState = BTC_RSSI_STATE_STAY_MEDIUM; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Medium\n")); } } else { if (btRssi < rssiThresh1) { btRssiState = BTC_RSSI_STATE_MEDIUM; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Medium\n")); } else { btRssiState = BTC_RSSI_STATE_STAY_HIGH; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at High\n")); } } } @@ -127,23 +115,18 @@ static u8 halbtc8723b2ant_WifiRssiState( ) { if (wifiRssi >= (rssiThresh + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT)) { wifiRssiState = BTC_RSSI_STATE_HIGH; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to High\n")); } else { wifiRssiState = BTC_RSSI_STATE_STAY_LOW; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Low\n")); } } else { if (wifiRssi < rssiThresh) { wifiRssiState = BTC_RSSI_STATE_LOW; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Low\n")); } else { wifiRssiState = BTC_RSSI_STATE_STAY_HIGH; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at High\n")); } } } else if (levelNum == 3) { if (rssiThresh > rssiThresh1) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI thresh error!!\n")); return pCoexSta->preWifiRssiState[index]; } @@ -153,10 +136,8 @@ static u8 halbtc8723b2ant_WifiRssiState( ) { if (wifiRssi >= (rssiThresh + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT)) { wifiRssiState = BTC_RSSI_STATE_MEDIUM; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Medium\n")); } else { wifiRssiState = BTC_RSSI_STATE_STAY_LOW; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Low\n")); } } else if ( (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_MEDIUM) || @@ -164,21 +145,16 @@ static u8 halbtc8723b2ant_WifiRssiState( ) { if (wifiRssi >= (rssiThresh1 + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT)) { wifiRssiState = BTC_RSSI_STATE_HIGH; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to High\n")); } else if (wifiRssi < rssiThresh) { wifiRssiState = BTC_RSSI_STATE_LOW; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Low\n")); } else { wifiRssiState = BTC_RSSI_STATE_STAY_MEDIUM; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Medium\n")); } } else { if (wifiRssi < rssiThresh1) { wifiRssiState = BTC_RSSI_STATE_MEDIUM; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Medium\n")); } else { wifiRssiState = BTC_RSSI_STATE_STAY_HIGH; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at High\n")); } } } @@ -233,31 +209,6 @@ static void halbtc8723b2ant_MonitorBtCtr(struct btc_coexist *pBtCoexist) pCoexSta->lowPriorityTx = regLPTx; pCoexSta->lowPriorityRx = regLPRx; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_MONITOR, - ( - "[BTCoex], High Priority Tx/Rx (reg 0x%x) = 0x%x(%d)/0x%x(%d)\n", - regHPTxRx, - regHPTx, - regHPTx, - regHPRx, - regHPRx - ) - ); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_BT_MONITOR, - ( - "[BTCoex], Low Priority Tx/Rx (reg 0x%x) = 0x%x(%d)/0x%x(%d)\n", - regLPTxRx, - regLPTx, - regLPTx, - regLPRx, - regLPRx - ) - ); - /* reset counter */ pBtCoexist->fBtcWrite1Byte(pBtCoexist, 0x76e, 0xc); } @@ -270,12 +221,6 @@ static void halbtc8723b2ant_QueryBtInfo(struct btc_coexist *pBtCoexist) H2C_Parameter[0] |= BIT0; /* trigger */ - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ("[BTCoex], Query Bt Info, FW write 0x61 = 0x%x\n", H2C_Parameter[0]) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x61, 1, H2C_Parameter); } @@ -384,7 +329,6 @@ static u8 halbtc8723b2ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); if (!pBtLinkInfo->bBtLinkExist) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], No BT link exists!!!\n")); return algorithm; } @@ -402,21 +346,16 @@ static u8 halbtc8723b2ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) if (numOfDiffProfile == 1) { if (pBtLinkInfo->bScoExist) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO only\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_SCO; } else { if (pBtLinkInfo->bHidExist) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID only\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_HID; } else if (pBtLinkInfo->bA2dpExist) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP only\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_A2DP; } else if (pBtLinkInfo->bPanExist) { if (bBtHsOn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN(HS) only\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_PANHS; } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN(EDR) only\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR; } } @@ -424,17 +363,13 @@ static u8 halbtc8723b2ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) } else if (numOfDiffProfile == 2) { if (pBtLinkInfo->bScoExist) { if (pBtLinkInfo->bHidExist) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; } else if (pBtLinkInfo->bA2dpExist) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP ==> SCO\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; } else if (pBtLinkInfo->bPanExist) { if (bBtHsOn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + PAN(HS)\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_SCO; } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + PAN(EDR)\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; } } @@ -443,17 +378,14 @@ static u8 halbtc8723b2ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) pBtLinkInfo->bHidExist && pBtLinkInfo->bA2dpExist ) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_HID_A2DP; } else if ( pBtLinkInfo->bHidExist && pBtLinkInfo->bPanExist ) { if (bBtHsOn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + PAN(HS)\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_HID; } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + PAN(EDR)\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; } } else if ( @@ -461,10 +393,8 @@ static u8 halbtc8723b2ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) pBtLinkInfo->bA2dpExist ) { if (bBtHsOn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP + PAN(HS)\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_A2DP_PANHS; } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP + PAN(EDR)\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_A2DP; } } @@ -475,42 +405,17 @@ static u8 halbtc8723b2ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) pBtLinkInfo->bHidExist && pBtLinkInfo->bA2dpExist ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], SCO + HID + A2DP ==> HID\n") - ); algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; } else if ( pBtLinkInfo->bHidExist && pBtLinkInfo->bPanExist ) { - if (bBtHsOn) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], SCO + HID + PAN(HS)\n") - ); - algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; - } else { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ("[BTCoex], SCO + HID + PAN(EDR)\n") - ); - algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; - } + algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; } else if ( pBtLinkInfo->bPanExist && pBtLinkInfo->bA2dpExist ) { - if (bBtHsOn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP + PAN(HS)\n")); - algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; - } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP + PAN(EDR) ==> HID\n")); - algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; - } + algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; } } else { if ( @@ -519,10 +424,8 @@ static u8 halbtc8723b2ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) pBtLinkInfo->bA2dpExist ) { if (bBtHsOn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP + PAN(HS)\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_HID_A2DP; } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP + PAN(EDR)\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_HID_A2DP_PANEDR; } } @@ -535,10 +438,7 @@ static u8 halbtc8723b2ant_ActionAlgorithm(struct btc_coexist *pBtCoexist) pBtLinkInfo->bA2dpExist ) { if (bBtHsOn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Error!!! SCO + HID + A2DP + PAN(HS)\n")); - } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + A2DP + PAN(EDR) ==>PAN(EDR)+HID\n")); algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; } } @@ -558,17 +458,6 @@ static void halbtc8723b2ant_SetFwDacSwingLevel( /* 0x18/ 0x10/ 0xc/ 0x8/ 0x4/ 0x6 */ H2C_Parameter[0] = dacSwingLvl; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ("[BTCoex], Set Dac Swing Level = 0x%x\n", dacSwingLvl) - ); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ("[BTCoex], FW write 0x64 = 0x%x\n", H2C_Parameter[0]) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x64, 1, H2C_Parameter); } @@ -580,16 +469,6 @@ static void halbtc8723b2ant_SetFwDecBtPwr( H2C_Parameter[0] = decBtPwrLvl; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ( - "[BTCoex], decrease Bt Power level = %d, FW write 0x62 = 0x%x\n", - decBtPwrLvl, - H2C_Parameter[0] - ) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x62, 1, H2C_Parameter); } @@ -597,28 +476,9 @@ static void halbtc8723b2ant_DecBtPwr( struct btc_coexist *pBtCoexist, bool bForceExec, u8 decBtPwrLvl ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW, - ( - "[BTCoex], %s Dec BT power level = %d\n", - (bForceExec ? "force to" : ""), - decBtPwrLvl - ) - ); pCoexDm->curBtDecPwrLvl = decBtPwrLvl; if (!bForceExec) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ( - "[BTCoex], preBtDecPwrLvl =%d, curBtDecPwrLvl =%d\n", - pCoexDm->preBtDecPwrLvl, - pCoexDm->curBtDecPwrLvl - ) - ); - if (pCoexDm->preBtDecPwrLvl == pCoexDm->curBtDecPwrLvl) return; } @@ -631,28 +491,9 @@ static void halbtc8723b2ant_FwDacSwingLvl( struct btc_coexist *pBtCoexist, bool bForceExec, u8 fwDacSwingLvl ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW, - ( - "[BTCoex], %s set FW Dac Swing level = %d\n", - (bForceExec ? "force to" : ""), - fwDacSwingLvl - ) - ); pCoexDm->curFwDacSwingLvl = fwDacSwingLvl; if (!bForceExec) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ( - "[BTCoex], preFwDacSwingLvl =%d, curFwDacSwingLvl =%d\n", - pCoexDm->preFwDacSwingLvl, - pCoexDm->curFwDacSwingLvl - ) - ); - if (pCoexDm->preFwDacSwingLvl == pCoexDm->curFwDacSwingLvl) return; } @@ -669,17 +510,11 @@ static void halbtc8723b2ant_SetSwRfRxLpfCorner( { if (bRxRfShrinkOn) { /* Shrink RF Rx LPF corner */ - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_EXEC, - ("[BTCoex], Shrink RF Rx LPF corner!!\n") - ); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff, 0xffffc); } else { /* Resume RF Rx LPF corner */ /* After initialized, we can use pCoexDm->btRf0x1eBackup */ if (pBtCoexist->bInitilized) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Resume RF Rx LPF corner!!\n")); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff, pCoexDm->btRf0x1eBackup); } } @@ -689,28 +524,9 @@ static void halbtc8723b2ant_RfShrink( struct btc_coexist *pBtCoexist, bool bForceExec, bool bRxRfShrinkOn ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW, - ( - "[BTCoex], %s turn Rx RF Shrink = %s\n", - (bForceExec ? "force to" : ""), - (bRxRfShrinkOn ? "ON" : "OFF") - ) - ); pCoexDm->bCurRfRxLpfShrink = bRxRfShrinkOn; if (!bForceExec) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_DETAIL, - ( - "[BTCoex], bPreRfRxLpfShrink =%d, bCurRfRxLpfShrink =%d\n", - pCoexDm->bPreRfRxLpfShrink, - pCoexDm->bCurRfRxLpfShrink - ) - ); - if (pCoexDm->bPreRfRxLpfShrink == pCoexDm->bCurRfRxLpfShrink) return; } @@ -735,15 +551,6 @@ static void halbtc8723b2ant_SetSwPenaltyTxRateAdaptive( H2C_Parameter[5] = 0xf9; /* MCS5 or OFDM36 */ } - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ( - "[BTCoex], set WiFi Low-Penalty Retry: %s", - (bLowPenaltyRa ? "ON!!" : "OFF!!") - ) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x69, 6, H2C_Parameter); } @@ -752,28 +559,9 @@ static void halbtc8723b2ant_LowPenaltyRa( ) { /* return; */ - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW, - ( - "[BTCoex], %s turn LowPenaltyRA = %s\n", - (bForceExec ? "force to" : ""), - (bLowPenaltyRa ? "ON" : "OFF") - ) - ); pCoexDm->bCurLowPenaltyRa = bLowPenaltyRa; if (!bForceExec) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_DETAIL, - ( - "[BTCoex], bPreLowPenaltyRa =%d, bCurLowPenaltyRa =%d\n", - pCoexDm->bPreLowPenaltyRa, - pCoexDm->bCurLowPenaltyRa - ) - ); - if (pCoexDm->bPreLowPenaltyRa == pCoexDm->bCurLowPenaltyRa) return; } @@ -786,11 +574,6 @@ static void halbtc8723b2ant_SetDacSwingReg(struct btc_coexist *pBtCoexist, u32 l { u8 val = (u8)level; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_EXEC, - ("[BTCoex], Write SwDacSwing = 0x%x\n", level) - ); pBtCoexist->fBtcWrite1ByteBitMask(pBtCoexist, 0x883, 0x3e, val); } @@ -812,32 +595,10 @@ static void halbtc8723b2ant_DacSwing( u32 dacSwingLvl ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW, - ( - "[BTCoex], %s turn DacSwing =%s, dacSwingLvl = 0x%x\n", - (bForceExec ? "force to" : ""), - (bDacSwingOn ? "ON" : "OFF"), - dacSwingLvl - ) - ); pCoexDm->bCurDacSwingOn = bDacSwingOn; pCoexDm->curDacSwingLvl = dacSwingLvl; if (!bForceExec) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_DETAIL, - ( - "[BTCoex], bPreDacSwingOn =%d, preDacSwingLvl = 0x%x, bCurDacSwingOn =%d, curDacSwingLvl = 0x%x\n", - pCoexDm->bPreDacSwingOn, - pCoexDm->preDacSwingLvl, - pCoexDm->bCurDacSwingOn, - pCoexDm->curDacSwingLvl - ) - ); - if ((pCoexDm->bPreDacSwingOn == pCoexDm->bCurDacSwingOn) && (pCoexDm->preDacSwingLvl == pCoexDm->curDacSwingLvl)) return; @@ -857,7 +618,6 @@ static void halbtc8723b2ant_SetAgcTable( /* BB AGC Gain Table */ if (bAgcTableEn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], BB Agc Table On!\n")); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0xc78, 0x6e1A0001); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0xc78, 0x6d1B0001); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0xc78, 0x6c1C0001); @@ -866,7 +626,6 @@ static void halbtc8723b2ant_SetAgcTable( pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0xc78, 0x691F0001); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0xc78, 0x68200001); } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], BB Agc Table Off!\n")); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0xc78, 0xaa1A0001); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0xc78, 0xa91B0001); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0xc78, 0xa81C0001); @@ -880,11 +639,9 @@ static void halbtc8723b2ant_SetAgcTable( /* RF Gain */ pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0xef, 0xfffff, 0x02000); if (bAgcTableEn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Agc Table On!\n")); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x3b, 0xfffff, 0x38fff); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x3b, 0xfffff, 0x38ffe); } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Agc Table Off!\n")); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x3b, 0xfffff, 0x380c3); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x3b, 0xfffff, 0x28ce6); } @@ -892,11 +649,9 @@ static void halbtc8723b2ant_SetAgcTable( pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0xed, 0xfffff, 0x1); if (bAgcTableEn) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Agc Table On!\n")); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x40, 0xfffff, 0x38fff); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x40, 0xfffff, 0x38ffe); } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Agc Table Off!\n")); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x40, 0xfffff, 0x380c3); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x40, 0xfffff, 0x28ce6); } @@ -913,28 +668,9 @@ static void halbtc8723b2ant_AgcTable( struct btc_coexist *pBtCoexist, bool bForceExec, bool bAgcTableEn ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW, - ( - "[BTCoex], %s %s Agc Table\n", - (bForceExec ? "force to" : ""), - (bAgcTableEn ? "Enable" : "Disable") - ) - ); pCoexDm->bCurAgcTableEn = bAgcTableEn; if (!bForceExec) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_DETAIL, - ( - "[BTCoex], bPreAgcTableEn =%d, bCurAgcTableEn =%d\n", - pCoexDm->bPreAgcTableEn, - pCoexDm->bCurAgcTableEn - ) - ); - if (pCoexDm->bPreAgcTableEn == pCoexDm->bCurAgcTableEn) return; } @@ -951,32 +687,12 @@ static void halbtc8723b2ant_SetCoexTable( u8 val0x6cc ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_EXEC, - ("[BTCoex], set coex table, set 0x6c0 = 0x%x\n", val0x6c0) - ); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0x6c0, val0x6c0); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_EXEC, - ("[BTCoex], set coex table, set 0x6c4 = 0x%x\n", val0x6c4) - ); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0x6c4, val0x6c4); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_EXEC, - ("[BTCoex], set coex table, set 0x6c8 = 0x%x\n", val0x6c8) - ); pBtCoexist->fBtcWrite4Byte(pBtCoexist, 0x6c8, val0x6c8); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_EXEC, - ("[BTCoex], set coex table, set 0x6cc = 0x%x\n", val0x6cc) - ); pBtCoexist->fBtcWrite1Byte(pBtCoexist, 0x6cc, val0x6cc); } @@ -989,47 +705,12 @@ static void halbtc8723b2ant_CoexTable( u8 val0x6cc ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW, - ( - "[BTCoex], %s write Coex Table 0x6c0 = 0x%x, 0x6c4 = 0x%x, 0x6c8 = 0x%x, 0x6cc = 0x%x\n", - (bForceExec ? "force to" : ""), - val0x6c0, - val0x6c4, - val0x6c8, - val0x6cc - ) - ); pCoexDm->curVal0x6c0 = val0x6c0; pCoexDm->curVal0x6c4 = val0x6c4; pCoexDm->curVal0x6c8 = val0x6c8; pCoexDm->curVal0x6cc = val0x6cc; if (!bForceExec) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_DETAIL, - ( - "[BTCoex], preVal0x6c0 = 0x%x, preVal0x6c4 = 0x%x, preVal0x6c8 = 0x%x, preVal0x6cc = 0x%x !!\n", - pCoexDm->preVal0x6c0, - pCoexDm->preVal0x6c4, - pCoexDm->preVal0x6c8, - pCoexDm->preVal0x6cc - ) - ); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_SW_DETAIL, - ( - "[BTCoex], curVal0x6c0 = 0x%x, curVal0x6c4 = 0x%x, curVal0x6c8 = 0x%x, curVal0x6cc = 0x%x !!\n", - pCoexDm->curVal0x6c0, - pCoexDm->curVal0x6c4, - pCoexDm->curVal0x6c8, - pCoexDm->curVal0x6cc - ) - ); - if ( (pCoexDm->preVal0x6c0 == pCoexDm->curVal0x6c0) && (pCoexDm->preVal0x6c4 == pCoexDm->curVal0x6c4) && @@ -1104,15 +785,6 @@ static void halbtc8723b2ant_SetFwIgnoreWlanAct( if (bEnable) H2C_Parameter[0] |= BIT0; /* function enable */ - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ( - "[BTCoex], set FW for BT Ignore Wlan_Act, FW write 0x63 = 0x%x\n", - H2C_Parameter[0] - ) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x63, 1, H2C_Parameter); } @@ -1120,22 +792,9 @@ static void halbtc8723b2ant_IgnoreWlanAct( struct btc_coexist *pBtCoexist, bool bForceExec, bool bEnable ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW, - ( - "[BTCoex], %s turn Ignore WlanAct %s\n", - (bForceExec ? "force to" : ""), - (bEnable ? "ON" : "OFF") - ) - ); - pCoexDm->bCurIgnoreWlanAct = bEnable; if (!bForceExec) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPreIgnoreWlanAct = %d, bCurIgnoreWlanAct = %d!!\n", - pCoexDm->bPreIgnoreWlanAct, pCoexDm->bCurIgnoreWlanAct)); - if (pCoexDm->bPreIgnoreWlanAct == pCoexDm->bCurIgnoreWlanAct) return; } @@ -1167,19 +826,6 @@ static void halbtc8723b2ant_SetFwPstdma( pCoexDm->psTdmaPara[3] = byte4; pCoexDm->psTdmaPara[4] = byte5; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ( - "[BTCoex], FW write 0x60(5bytes) = 0x%x%08x\n", - H2C_Parameter[0], - H2C_Parameter[1] << 24 | - H2C_Parameter[2] << 16 | - H2C_Parameter[3] << 8 | - H2C_Parameter[4] - ) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x60, 5, H2C_Parameter); } @@ -1305,38 +951,10 @@ static void halbtc8723b2ant_PsTdma( struct btc_coexist *pBtCoexist, bool bForceExec, bool bTurnOn, u8 type ) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW, - ( - "[BTCoex], %s turn %s PS TDMA, type =%d\n", - (bForceExec ? "force to" : ""), - (bTurnOn ? "ON" : "OFF"), - type - ) - ); pCoexDm->bCurPsTdmaOn = bTurnOn; pCoexDm->curPsTdma = type; if (!bForceExec) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ( - "[BTCoex], bPrePsTdmaOn = %d, bCurPsTdmaOn = %d!!\n", - pCoexDm->bPrePsTdmaOn, - pCoexDm->bCurPsTdmaOn - ) - ); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ( - "[BTCoex], prePsTdma = %d, curPsTdma = %d!!\n", - pCoexDm->prePsTdma, pCoexDm->curPsTdma - ) - ); - if ( (pCoexDm->bPrePsTdmaOn == pCoexDm->bCurPsTdmaOn) && (pCoexDm->prePsTdma == pCoexDm->curPsTdma) @@ -1505,8 +1123,6 @@ static bool halbtc8723b2ant_IsCommonAction(struct btc_coexist *pBtCoexist) pBtCoexist->fBtcSet(pBtCoexist, BTC_SET_ACT_DISABLE_LOW_POWER, &bLowPwrDisable); halbtc8723b2ant_LimitedRx(pBtCoexist, NORMAL_EXEC, false, false, 0x8); - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi non-connected idle!!\n")); - pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); halbtc8723b2ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); halbtc8723b2ant_PsTdma(pBtCoexist, NORMAL_EXEC, false, 1); @@ -1523,8 +1139,6 @@ static bool halbtc8723b2ant_IsCommonAction(struct btc_coexist *pBtCoexist) pBtCoexist->fBtcSet(pBtCoexist, BTC_SET_ACT_DISABLE_LOW_POWER, &bLowPwrDisable); halbtc8723b2ant_LimitedRx(pBtCoexist, NORMAL_EXEC, false, false, 0x8); - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi connected + BT non connected-idle!!\n")); - pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); halbtc8723b2ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); halbtc8723b2ant_PsTdma(pBtCoexist, NORMAL_EXEC, false, 1); @@ -1542,7 +1156,6 @@ static bool halbtc8723b2ant_IsCommonAction(struct btc_coexist *pBtCoexist) if (bBtHsOn) return false; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi connected + BT connected-idle!!\n")); halbtc8723b2ant_LimitedRx(pBtCoexist, NORMAL_EXEC, false, false, 0x8); pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); @@ -1560,13 +1173,11 @@ static bool halbtc8723b2ant_IsCommonAction(struct btc_coexist *pBtCoexist) pBtCoexist->fBtcSet(pBtCoexist, BTC_SET_ACT_DISABLE_LOW_POWER, &bLowPwrDisable); if (bWifiBusy) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi Connected-Busy + BT Busy!!\n")); bCommon = false; } else { if (bBtHsOn) return false; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi Connected-Idle + BT Busy!!\n")); btRssiState = halbtc8723b2ant_BtRssiState(2, 29, 0); halbtc8723b2ant_LimitedRx(pBtCoexist, NORMAL_EXEC, false, false, 0x8); @@ -1598,11 +1209,8 @@ static void halbtc8723b2ant_TdmaDurationAdjust( s32 result; /* 0: no change, +1: increase WiFi duration, -1: decrease WiFi duration */ u8 retryCount = 0; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], TdmaDurationAdjust()\n")); - if (!pCoexDm->bAutoTdmaAdjust) { pCoexDm->bAutoTdmaAdjust = true; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], first run TdmaDurationAdjust()!!\n")); { if (bScoHid) { if (bTxPause) { @@ -1648,15 +1256,6 @@ static void halbtc8723b2ant_TdmaDurationAdjust( } else { /* acquire the BT TRx retry count from BT_Info byte2 */ retryCount = pCoexSta->btRetryCnt; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], retryCount = %d\n", retryCount)); - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ( - "[BTCoex], up =%d, dn =%d, m =%d, n =%d, WaitCount =%d\n", - up, dn, m, n, WaitCount - ) - ); result = 0; WaitCount++; @@ -1673,7 +1272,6 @@ static void halbtc8723b2ant_TdmaDurationAdjust( up = 0; dn = 0; result = 1; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Increase wifi duration!!\n")); } } else if (retryCount <= 3) { /* <=3 retry in the last 2-second duration */ up--; @@ -1696,7 +1294,6 @@ static void halbtc8723b2ant_TdmaDurationAdjust( dn = 0; WaitCount = 0; result = -1; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Decrease wifi duration for retryCounter<3!!\n")); } } else { /* retry count > 3, 只要1次 retry count > 3, 則調窄WiFi duration */ if (WaitCount == 1) @@ -1712,14 +1309,10 @@ static void halbtc8723b2ant_TdmaDurationAdjust( dn = 0; WaitCount = 0; result = -1; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Decrease wifi duration for retryCounter>3!!\n")); } - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], max Interval = %d\n", maxInterval)); if (maxInterval == 1) { if (bTxPause) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 1\n")); - if (pCoexDm->curPsTdma == 71) HAL_BTC8723B2ANT_DMA_DURATION_ADJUST(5); else if (pCoexDm->curPsTdma == 1) @@ -1768,7 +1361,6 @@ static void halbtc8723b2ant_TdmaDurationAdjust( HAL_BTC8723B2ANT_DMA_DURATION_ADJUST(13); } } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 0\n")); if (pCoexDm->curPsTdma == 5) HAL_BTC8723B2ANT_DMA_DURATION_ADJUST(71); else if (pCoexDm->curPsTdma == 6) @@ -1821,7 +1413,6 @@ static void halbtc8723b2ant_TdmaDurationAdjust( } } else if (maxInterval == 2) { if (bTxPause) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 1\n")); if (pCoexDm->curPsTdma == 1) HAL_BTC8723B2ANT_DMA_DURATION_ADJUST(6); else if (pCoexDm->curPsTdma == 2) @@ -1868,7 +1459,6 @@ static void halbtc8723b2ant_TdmaDurationAdjust( HAL_BTC8723B2ANT_DMA_DURATION_ADJUST(14); } } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 0\n")); if (pCoexDm->curPsTdma == 5) HAL_BTC8723B2ANT_DMA_DURATION_ADJUST(2); else if (pCoexDm->curPsTdma == 6) @@ -1917,7 +1507,6 @@ static void halbtc8723b2ant_TdmaDurationAdjust( } } else if (maxInterval == 3) { if (bTxPause) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 1\n")); if (pCoexDm->curPsTdma == 1) HAL_BTC8723B2ANT_DMA_DURATION_ADJUST(7); else if (pCoexDm->curPsTdma == 2) @@ -1964,7 +1553,6 @@ static void halbtc8723b2ant_TdmaDurationAdjust( HAL_BTC8723B2ANT_DMA_DURATION_ADJUST(15); } } else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 0\n")); if (pCoexDm->curPsTdma == 5) HAL_BTC8723B2ANT_DMA_DURATION_ADJUST(3); else if (pCoexDm->curPsTdma == 6) @@ -2018,15 +1606,6 @@ static void halbtc8723b2ant_TdmaDurationAdjust( /* then we have to adjust it back to the previous record one. */ if (pCoexDm->curPsTdma != pCoexDm->psTdmaDuAdjType) { bool bScan = false, bLink = false, bRoam = false; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_DETAIL, - ( - "[BTCoex], PsTdma type mismatch!!!, curPsTdma =%d, recordPsTdma =%d\n", - pCoexDm->curPsTdma, - pCoexDm->psTdmaDuAdjType - ) - ); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); @@ -2034,9 +1613,7 @@ static void halbtc8723b2ant_TdmaDurationAdjust( if (!bScan && !bLink && !bRoam) halbtc8723b2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, pCoexDm->psTdmaDuAdjType); - else { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], roaming/link/scan is under progress, will adjust next time!!!\n")); - } + } } @@ -2171,7 +1748,6 @@ static void halbtc8723b2ant_ActionA2dp(struct btc_coexist *pBtCoexist) /* define the office environment */ if (apNum >= 10 && BTC_RSSI_HIGH(wifiRssiState1)) { - /* DbgPrint(" AP#>10(%d)\n", apNum); */ pBtCoexist->fBtcSetRfReg(pBtCoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); halbtc8723b2ant_LimitedRx(pBtCoexist, NORMAL_EXEC, false, false, 0x8); halbtc8723b2ant_FwDacSwingLvl(pBtCoexist, NORMAL_EXEC, 6); @@ -2660,21 +2236,16 @@ static void halbtc8723b2ant_RunCoexistMechanism(struct btc_coexist *pBtCoexist) { u8 algorithm = 0; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism() ===>\n")); - if (pBtCoexist->bManualControl) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism(), return for Manual CTRL <===\n")); return; } if (pCoexSta->bUnderIps) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi is under IPS !!!\n")); return; } algorithm = halbtc8723b2ant_ActionAlgorithm(pBtCoexist); if (pCoexSta->bC2hBtInquiryPage && (BT_8723B_2ANT_COEX_ALGO_PANHS != algorithm)) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BT is under inquiry/page scan !!\n")); halbtc8723b2ant_ActionBtInquiry(pBtCoexist); return; } else { @@ -2685,69 +2256,47 @@ static void halbtc8723b2ant_RunCoexistMechanism(struct btc_coexist *pBtCoexist) } pCoexDm->curAlgorithm = algorithm; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Algorithm = %d\n", pCoexDm->curAlgorithm)); if (halbtc8723b2ant_IsCommonAction(pBtCoexist)) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant common.\n")); pCoexDm->bAutoTdmaAdjust = false; } else { if (pCoexDm->curAlgorithm != pCoexDm->preAlgorithm) { - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE, - ( - "[BTCoex], preAlgorithm =%d, curAlgorithm =%d\n", - pCoexDm->preAlgorithm, - pCoexDm->curAlgorithm - ) - ); pCoexDm->bAutoTdmaAdjust = false; } switch (pCoexDm->curAlgorithm) { case BT_8723B_2ANT_COEX_ALGO_SCO: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = SCO.\n")); halbtc8723b2ant_ActionSco(pBtCoexist); break; case BT_8723B_2ANT_COEX_ALGO_HID: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = HID.\n")); halbtc8723b2ant_ActionHid(pBtCoexist); break; case BT_8723B_2ANT_COEX_ALGO_A2DP: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = A2DP.\n")); halbtc8723b2ant_ActionA2dp(pBtCoexist); break; case BT_8723B_2ANT_COEX_ALGO_A2DP_PANHS: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = A2DP+PAN(HS).\n")); halbtc8723b2ant_ActionA2dpPanHs(pBtCoexist); break; case BT_8723B_2ANT_COEX_ALGO_PANEDR: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = PAN(EDR).\n")); halbtc8723b2ant_ActionPanEdr(pBtCoexist); break; case BT_8723B_2ANT_COEX_ALGO_PANHS: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = HS mode.\n")); halbtc8723b2ant_ActionPanHs(pBtCoexist); break; case BT_8723B_2ANT_COEX_ALGO_PANEDR_A2DP: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = PAN+A2DP.\n")); halbtc8723b2ant_ActionPanEdrA2dp(pBtCoexist); break; case BT_8723B_2ANT_COEX_ALGO_PANEDR_HID: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = PAN(EDR)+HID.\n")); halbtc8723b2ant_ActionPanEdrHid(pBtCoexist); break; case BT_8723B_2ANT_COEX_ALGO_HID_A2DP_PANEDR: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = HID+A2DP+PAN.\n")); halbtc8723b2ant_ActionHidA2dpPanEdr(pBtCoexist); break; case BT_8723B_2ANT_COEX_ALGO_HID_A2DP: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = HID+A2DP.\n")); halbtc8723b2ant_ActionHidA2dp(pBtCoexist); break; default: - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = coexist All Off!!\n")); halbtc8723b2ant_CoexAllOff(pBtCoexist); break; } @@ -2784,8 +2333,6 @@ static void halbtc8723b2ant_InitHwConfig(struct btc_coexist *pBtCoexist, bool bB { u8 u1Tmp = 0; - BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], 2Ant Init HW Config!!\n")); - /* backup rf 0x1e value */ pCoexDm->btRf0x1eBackup = pBtCoexist->fBtcGetRfReg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff); @@ -2873,8 +2420,6 @@ void EXhalbtc8723b2ant_InitHwConfig(struct btc_coexist *pBtCoexist, bool bWifiOn void EXhalbtc8723b2ant_InitCoexDm(struct btc_coexist *pBtCoexist) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], Coex Mechanism Init!!\n")); - halbtc8723b2ant_InitCoexDm(pBtCoexist); } @@ -2886,7 +2431,7 @@ void EXhalbtc8723b2ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) u8 *cliBuf = pBtCoexist->cliBuf; u8 u1Tmp[4], i, btInfoExt, psTdmaCase = 0; u32 u4Tmp[4]; - bool bRoam = false, bScan = false, bLink = false, bWifiUnder5G = false; + bool bRoam = false, bScan = false, bLink = false; bool bBtHsOn = false, bWifiBusy = false; s32 wifiRssi = 0, btHsRssi = 0; u32 wifiBw, wifiTrafficDir, faOfdm, faCck; @@ -2977,7 +2522,6 @@ void EXhalbtc8723b2ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) ); CL_PRINTF(cliBuf); - pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_UNDER_5G, &bWifiUnder5G); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_BUSY, &bWifiBusy); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, &wifiTrafficDir); @@ -2985,7 +2529,7 @@ void EXhalbtc8723b2ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %s/ %s ", "Wifi status", \ - (bWifiUnder5G ? "5G" : "2.4G"), + ("2.4G"), ((BTC_WIFI_BW_LEGACY == wifiBw) ? "Legacy" : (((BTC_WIFI_BW_HT40 == wifiBw) ? "HT40" : "HT20"))), ((!bWifiBusy) ? "idle" : ((BTC_WIFI_TRAFFIC_TX == wifiTrafficDir) ? "uplink" : "downlink")) ); @@ -3262,13 +2806,11 @@ void EXhalbtc8723b2ant_DisplayCoexInfo(struct btc_coexist *pBtCoexist) void EXhalbtc8723b2ant_IpsNotify(struct btc_coexist *pBtCoexist, u8 type) { if (BTC_IPS_ENTER == type) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS ENTER notify\n")); pCoexSta->bUnderIps = true; halbtc8723b2ant_WifiOffHwCfg(pBtCoexist); halbtc8723b2ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, true); halbtc8723b2ant_CoexAllOff(pBtCoexist); } else if (BTC_IPS_LEAVE == type) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS LEAVE notify\n")); pCoexSta->bUnderIps = false; halbtc8723b2ant_InitHwConfig(pBtCoexist, false); halbtc8723b2ant_InitCoexDm(pBtCoexist); @@ -3279,10 +2821,8 @@ void EXhalbtc8723b2ant_IpsNotify(struct btc_coexist *pBtCoexist, u8 type) void EXhalbtc8723b2ant_LpsNotify(struct btc_coexist *pBtCoexist, u8 type) { if (BTC_LPS_ENABLE == type) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS ENABLE notify\n")); pCoexSta->bUnderLps = true; } else if (BTC_LPS_DISABLE == type) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS DISABLE notify\n")); pCoexSta->bUnderLps = false; } } @@ -3290,18 +2830,14 @@ void EXhalbtc8723b2ant_LpsNotify(struct btc_coexist *pBtCoexist, u8 type) void EXhalbtc8723b2ant_ScanNotify(struct btc_coexist *pBtCoexist, u8 type) { if (BTC_SCAN_START == type) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN START notify\n")); } else if (BTC_SCAN_FINISH == type) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN FINISH notify\n")); } } void EXhalbtc8723b2ant_ConnectNotify(struct btc_coexist *pBtCoexist, u8 type) { if (BTC_ASSOCIATE_START == type) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT START notify\n")); } else if (BTC_ASSOCIATE_FINISH == type) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT FINISH notify\n")); } } @@ -3312,12 +2848,6 @@ void EXhalbtc8723b2ant_MediaStatusNotify(struct btc_coexist *pBtCoexist, u8 type u8 wifiCentralChnl; u8 apNum = 0; - if (BTC_MEDIA_CONNECT == type) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], MEDIA connect notify\n")); - } else { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], MEDIA disconnect notify\n")); - } - /* only 2.4G we need to inform bt the chnl mask */ pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_U1_WIFI_CENTRAL_CHNL, &wifiCentralChnl); if ((BTC_MEDIA_CONNECT == type) && (wifiCentralChnl <= 14)) { @@ -3339,23 +2869,11 @@ void EXhalbtc8723b2ant_MediaStatusNotify(struct btc_coexist *pBtCoexist, u8 type pCoexDm->wifiChnlInfo[1] = H2C_Parameter[1]; pCoexDm->wifiChnlInfo[2] = H2C_Parameter[2]; - BTC_PRINT( - BTC_MSG_ALGORITHM, - ALGO_TRACE_FW_EXEC, - ( - "[BTCoex], FW write 0x66 = 0x%x\n", - H2C_Parameter[0] << 16 | H2C_Parameter[1] << 8 | H2C_Parameter[2] - ) - ); - pBtCoexist->fBtcFillH2c(pBtCoexist, 0x66, 3, H2C_Parameter); } void EXhalbtc8723b2ant_SpecialPacketNotify(struct btc_coexist *pBtCoexist, u8 type) { - if (type == BTC_PACKET_DHCP) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], DHCP Packet notify\n")); - } } void EXhalbtc8723b2ant_BtInfoNotify( @@ -3375,21 +2893,14 @@ void EXhalbtc8723b2ant_BtInfoNotify( pCoexSta->btInfoC2hCnt[rspSource]++; - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Bt info[%d], length =%d, hex data =[", rspSource, length)); for (i = 0; i < length; i++) { pCoexSta->btInfoC2h[rspSource][i] = tmpBuf[i]; if (i == 1) btInfo = tmpBuf[i]; - if (i == length - 1) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%02x]\n", tmpBuf[i])); - } else { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%02x, ", tmpBuf[i])); - } } if (pBtCoexist->bManualControl) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), return for Manual CTRL<===\n")); return; } @@ -3404,14 +2915,12 @@ void EXhalbtc8723b2ant_BtInfoNotify( pBtCoexist->fBtcSet(pBtCoexist, BTC_SET_BL_BT_TX_RX_MASK, &pCoexSta->bBtTxRxMask); if (pCoexSta->bBtTxRxMask) { /* BT into is responded by BT FW and BT RF REG 0x3C != 0x01 => Need to switch BT TRx Mask */ - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Switch BT TRx Mask since BT RF REG 0x3C != 0x01\n")); pBtCoexist->fBtcSetBtReg(pBtCoexist, BTC_BT_REG_RF, 0x3c, 0x01); } /* Here we need to resend some wifi info to BT */ /* because bt is reset and loss of the info. */ if ((pCoexSta->btInfoExt & BIT1)) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BT ext info bit1 check, send wifi BW&Chnl to BT!!\n")); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); if (bWifiConnected) @@ -3421,7 +2930,6 @@ void EXhalbtc8723b2ant_BtInfoNotify( } if ((pCoexSta->btInfoExt & BIT3)) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BT ext info bit3 check, set BT NOT to ignore Wlan active!!\n")); halbtc8723b2ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, false); } else { /* BT already NOT ignore Wlan active, do nothing here. */ @@ -3465,22 +2973,17 @@ void EXhalbtc8723b2ant_BtInfoNotify( if (!(btInfo & BT_INFO_8723B_2ANT_B_CONNECTION)) { pCoexDm->btStatus = BT_8723B_2ANT_BT_STATUS_NON_CONNECTED_IDLE; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), BT Non-Connected idle!!!\n")); } else if (btInfo == BT_INFO_8723B_2ANT_B_CONNECTION) { /* connection exists but no busy */ pCoexDm->btStatus = BT_8723B_2ANT_BT_STATUS_CONNECTED_IDLE; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), BT Connected-idle!!!\n")); } else if ( (btInfo & BT_INFO_8723B_2ANT_B_SCO_ESCO) || (btInfo & BT_INFO_8723B_2ANT_B_SCO_BUSY) ) { pCoexDm->btStatus = BT_8723B_2ANT_BT_STATUS_SCO_BUSY; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), BT SCO busy!!!\n")); } else if (btInfo & BT_INFO_8723B_2ANT_B_ACL_BUSY) { pCoexDm->btStatus = BT_8723B_2ANT_BT_STATUS_ACL_BUSY; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), BT ACL busy!!!\n")); } else { pCoexDm->btStatus = BT_8723B_2ANT_BT_STATUS_MAX; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), BT Non-Defined state!!!\n")); } if ( @@ -3505,8 +3008,6 @@ void EXhalbtc8723b2ant_BtInfoNotify( void EXhalbtc8723b2ant_HaltNotify(struct btc_coexist *pBtCoexist) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Halt notify\n")); - halbtc8723b2ant_WifiOffHwCfg(pBtCoexist); pBtCoexist->fBtcSetBtReg(pBtCoexist, BTC_BT_REG_RF, 0x3c, 0x15); /* BT goto standby while GNT_BT 1-->0 */ halbtc8723b2ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, true); @@ -3516,12 +3017,8 @@ void EXhalbtc8723b2ant_HaltNotify(struct btc_coexist *pBtCoexist) void EXhalbtc8723b2ant_PnpNotify(struct btc_coexist *pBtCoexist, u8 pnpState) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Pnp notify\n")); - if (BTC_WIFI_PNP_SLEEP == pnpState) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Pnp notify to SLEEP\n")); } else if (BTC_WIFI_PNP_WAKE_UP == pnpState) { - BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Pnp notify to WAKE UP\n")); halbtc8723b2ant_InitHwConfig(pBtCoexist, false); halbtc8723b2ant_InitCoexDm(pBtCoexist); halbtc8723b2ant_QueryBtInfo(pBtCoexist); @@ -3533,16 +3030,10 @@ void EXhalbtc8723b2ant_Periodical(struct btc_coexist *pBtCoexist) static u8 disVerInfoCnt; u32 fwVer = 0, btPatchVer = 0; - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], ==========================Periodical ===========================\n")); - if (disVerInfoCnt <= 5) { disVerInfoCnt += 1; - BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], ****************************************************************\n")); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_U4_BT_PATCH_VER, &btPatchVer); pBtCoexist->fBtcGet(pBtCoexist, BTC_GET_U4_WIFI_FW_VER, &fwVer); - BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], CoexVer/ FwVer/ PatchVer = %d_%x/ 0x%x/ 0x%x(%d)\n", \ - GLCoexVerDate8723b2Ant, GLCoexVer8723b2Ant, fwVer, btPatchVer, btPatchVer)); - BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], ****************************************************************\n")); } if ( diff --git a/drivers/staging/rtl8723bs/hal/HalBtcOutSrc.h b/drivers/staging/rtl8723bs/hal/HalBtcOutSrc.h index 7b2d94a33d9c..deb57fa15eaf 100644 --- a/drivers/staging/rtl8723bs/hal/HalBtcOutSrc.h +++ b/drivers/staging/rtl8723bs/hal/HalBtcOutSrc.h @@ -78,29 +78,6 @@ enum { BTC_CHIP_MAX }; -enum { - BTC_MSG_INTERFACE = 0x0, - BTC_MSG_ALGORITHM = 0x1, - BTC_MSG_MAX -}; -extern u32 GLBtcDbgType[]; - -/* following is for BTC_MSG_INTERFACE */ -#define INTF_INIT BIT0 -#define INTF_NOTIFY BIT2 - -/* following is for BTC_ALGORITHM */ -#define ALGO_BT_RSSI_STATE BIT0 -#define ALGO_WIFI_RSSI_STATE BIT1 -#define ALGO_BT_MONITOR BIT2 -#define ALGO_TRACE BIT3 -#define ALGO_TRACE_FW BIT4 -#define ALGO_TRACE_FW_DETAIL BIT5 -#define ALGO_TRACE_FW_EXEC BIT6 -#define ALGO_TRACE_SW BIT7 -#define ALGO_TRACE_SW_DETAIL BIT8 -#define ALGO_TRACE_SW_EXEC BIT9 - /* following is for wifi link status */ #define WIFI_STA_CONNECTED BIT0 #define WIFI_AP_CONNECTED BIT1 @@ -112,50 +89,6 @@ extern u32 GLBtcDbgType[]; #define CL_SPRINTF snprintf #define CL_PRINTF DCMD_Printf -/* The following is for dbgview print */ -#if DBG -#define BTC_PRINT(dbgtype, dbgflag, printstr)\ -{\ - if (GLBtcDbgType[dbgtype] & dbgflag)\ - DbgPrint printstr;\ -} - -#define BTC_PRINT_ADDR(dbgtype, dbgflag, printstr, _Ptr)\ -{\ - if (GLBtcDbgType[dbgtype] & dbgflag) {\ - int __i;\ - u8 *ptr = (u8 *)_Ptr;\ - DbgPrint printstr;\ - DbgPrint(" ");\ - for (__i = 0; __i < 6; __i++)\ - DbgPrint("%02X%s", ptr[__i], (__i == 5) ? "" : "-");\ - DbgPrint("\n");\ - } \ -} - -#define BTC_PRINT_DATA(dbgtype, dbgflag, _TitleString, _HexData, _HexDataLen)\ -{\ - if (GLBtcDbgType[dbgtype] & dbgflag) {\ - int __i;\ - u8 *ptr = (u8 *)_HexData;\ - DbgPrint(_TitleString);\ - for (__i = 0; __i < (int)_HexDataLen; __i++) {\ - DbgPrint("%02X%s", ptr[__i], (((__i + 1) % 4) == 0) ? " " : " ");\ - if (((__i + 1) % 16) == 0)\ - DbgPrint("\n");\ - } \ - DbgPrint("\n");\ - } \ -} - -#else -#define BTC_PRINT(dbgtype, dbgflag, printstr) no_printk printstr -#define BTC_PRINT_F(dbgtype, dbgflag, printstr) no_printk printstr -#define BTC_PRINT_ADDR(dbgtype, dbgflag, printstr, _Ptr) no_printk printstr -#define BTC_PRINT_DATA(dbgtype, dbgflag, _TitleString, _HexData, _HexDataLen) \ - no_printk("%s %p %zu", _TitleString, _HexData, _HexDataLen) -#endif - struct btc_board_info { /* The following is some board information */ u8 btChipType; @@ -209,7 +142,6 @@ enum { BTC_GET_BL_WIFI_LINK, BTC_GET_BL_WIFI_ROAM, BTC_GET_BL_WIFI_4_WAY_PROGRESS, - BTC_GET_BL_WIFI_UNDER_5G, BTC_GET_BL_WIFI_AP_MODE_ENABLE, BTC_GET_BL_WIFI_ENABLE_ENCRYPTION, BTC_GET_BL_WIFI_UNDER_B_MODE, diff --git a/drivers/staging/rtl8723bs/hal/HalHWImg8723B_BB.c b/drivers/staging/rtl8723bs/hal/HalHWImg8723B_BB.c index 016d257b90a0..3de8dcb5ed7c 100644 --- a/drivers/staging/rtl8723bs/hal/HalHWImg8723B_BB.c +++ b/drivers/staging/rtl8723bs/hal/HalHWImg8723B_BB.c @@ -33,47 +33,6 @@ static bool CheckPositive( pDM_Odm->TypeALNA << 16 | pDM_Odm->TypeAPA << 24; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> [8812A] CheckPositive (cond1, cond2) = (0x%X 0x%X)\n", - cond1, - cond2 - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> [8812A] CheckPositive (driver1, driver2) = (0x%X 0x%X)\n", - driver1, - driver2 - ) - ); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - (" (Platform, Interface) = (0x%X, 0x%X)\n", - pDM_Odm->SupportPlatform, - pDM_Odm->SupportInterface - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - " (Board, Package) = (0x%X, 0x%X)\n", - pDM_Odm->BoardType, - pDM_Odm->PackageType - ) - ); - /* Value Defined Check =============== */ /* QFN Type [15:12] and Cut Version [27:24] need to do value check */ @@ -263,13 +222,6 @@ void ODM_ReadAndConfig_MP_8723B_AGC_TAB(struct dm_odm_t *pDM_Odm) u32 ArrayLen = ARRAY_SIZE(Array_MP_8723B_AGC_TAB); u32 *Array = Array_MP_8723B_AGC_TAB; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_LOUD, - ("===> ODM_ReadAndConfig_MP_8723B_AGC_TAB\n") - ); - for (i = 0; i < ArrayLen; i += 2) { u32 v1 = Array[i]; u32 v2 = Array[i+1]; @@ -532,13 +484,6 @@ void ODM_ReadAndConfig_MP_8723B_PHY_REG(struct dm_odm_t *pDM_Odm) u32 ArrayLen = ARRAY_SIZE(Array_MP_8723B_PHY_REG); u32 *Array = Array_MP_8723B_PHY_REG; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_LOUD, - ("===> ODM_ReadAndConfig_MP_8723B_PHY_REG\n") - ); - for (i = 0; i < ArrayLen; i += 2) { u32 v1 = Array[i]; u32 v2 = Array[i+1]; @@ -598,12 +543,12 @@ void ODM_ReadAndConfig_MP_8723B_PHY_REG(struct dm_odm_t *pDM_Odm) ******************************************************************************/ static u32 Array_MP_8723B_PHY_REG_PG[] = { - 0, 0, 0, 0x00000e08, 0x0000ff00, 0x00003800, - 0, 0, 0, 0x0000086c, 0xffffff00, 0x32343600, - 0, 0, 0, 0x00000e00, 0xffffffff, 0x40424444, - 0, 0, 0, 0x00000e04, 0xffffffff, 0x28323638, - 0, 0, 0, 0x00000e10, 0xffffffff, 0x38404244, - 0, 0, 0, 0x00000e14, 0xffffffff, 0x26303436 + 0, 0, 0x00000e08, 0x0000ff00, 0x00003800, + 0, 0, 0x0000086c, 0xffffff00, 0x32343600, + 0, 0, 0x00000e00, 0xffffffff, 0x40424444, + 0, 0, 0x00000e04, 0xffffffff, 0x28323638, + 0, 0, 0x00000e10, 0xffffffff, 0x38404244, + 0, 0, 0x00000e14, 0xffffffff, 0x26303436 }; void ODM_ReadAndConfig_MP_8723B_PHY_REG_PG(struct dm_odm_t *pDM_Odm) @@ -611,24 +556,16 @@ void ODM_ReadAndConfig_MP_8723B_PHY_REG_PG(struct dm_odm_t *pDM_Odm) u32 i = 0; u32 *Array = Array_MP_8723B_PHY_REG_PG; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_LOUD, - ("===> ODM_ReadAndConfig_MP_8723B_PHY_REG_PG\n") - ); - pDM_Odm->PhyRegPgVersion = 1; pDM_Odm->PhyRegPgValueType = PHY_REG_PG_EXACT_VALUE; - for (i = 0; i < ARRAY_SIZE(Array_MP_8723B_PHY_REG_PG); i += 6) { + for (i = 0; i < ARRAY_SIZE(Array_MP_8723B_PHY_REG_PG); i += 5) { u32 v1 = Array[i]; u32 v2 = Array[i+1]; u32 v3 = Array[i+2]; u32 v4 = Array[i+3]; u32 v5 = Array[i+4]; - u32 v6 = Array[i+5]; - odm_ConfigBB_PHY_REG_PG_8723B(pDM_Odm, v1, v2, v3, v4, v5, v6); + odm_ConfigBB_PHY_REG_PG_8723B(pDM_Odm, v1, v2, v3, v4, v5); } } diff --git a/drivers/staging/rtl8723bs/hal/HalHWImg8723B_MAC.c b/drivers/staging/rtl8723bs/hal/HalHWImg8723B_MAC.c index 677bcfa10b0d..47e66f4ad9d1 100644 --- a/drivers/staging/rtl8723bs/hal/HalHWImg8723B_MAC.c +++ b/drivers/staging/rtl8723bs/hal/HalHWImg8723B_MAC.c @@ -33,48 +33,6 @@ static bool CheckPositive( pDM_Odm->TypeALNA << 16 | pDM_Odm->TypeAPA << 24; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> [8812A] CheckPositive (cond1, cond2) = (0x%X 0x%X)\n", - cond1, - cond2 - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> [8812A] CheckPositive (driver1, driver2) = (0x%X 0x%X)\n", - driver1, - driver2 - ) - ); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - " (Platform, Interface) = (0x%X, 0x%X)\n", - pDM_Odm->SupportPlatform, - pDM_Odm->SupportInterface - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - " (Board, Package) = (0x%X, 0x%X)\n", - pDM_Odm->BoardType, - pDM_Odm->PackageType - ) - ); - /* Value Defined Check =============== */ /* QFN Type [15:12] and Cut Version [27:24] need to do value check */ @@ -234,13 +192,6 @@ void ODM_ReadAndConfig_MP_8723B_MAC_REG(struct dm_odm_t *pDM_Odm) u32 ArrayLen = ARRAY_SIZE(Array_MP_8723B_MAC_REG); u32 *Array = Array_MP_8723B_MAC_REG; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_LOUD, - ("===> ODM_ReadAndConfig_MP_8723B_MAC_REG\n") - ); - for (i = 0; i < ArrayLen; i += 2) { u32 v1 = Array[i]; u32 v2 = Array[i+1]; diff --git a/drivers/staging/rtl8723bs/hal/HalHWImg8723B_RF.c b/drivers/staging/rtl8723bs/hal/HalHWImg8723B_RF.c index 2c450c1ce7e7..00d429977ea9 100644 --- a/drivers/staging/rtl8723bs/hal/HalHWImg8723B_RF.c +++ b/drivers/staging/rtl8723bs/hal/HalHWImg8723B_RF.c @@ -33,48 +33,6 @@ static bool CheckPositive( pDM_Odm->TypeALNA << 16 | pDM_Odm->TypeAPA << 24; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> [8812A] CheckPositive (cond1, cond2) = (0x%X 0x%X)\n", - cond1, - cond2 - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> [8812A] CheckPositive (driver1, driver2) = (0x%X 0x%X)\n", - driver1, - driver2 - ) - ); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - " (Platform, Interface) = (0x%X, 0x%X)\n", - pDM_Odm->SupportPlatform, - pDM_Odm->SupportInterface - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - " (Board, Package) = (0x%X, 0x%X)\n", - pDM_Odm->BoardType, - pDM_Odm->PackageType - ) - ); - /* Value Defined Check =============== */ /* QFN Type [15:12] and Cut Version [27:24] need to do value check */ @@ -265,13 +223,6 @@ void ODM_ReadAndConfig_MP_8723B_RadioA(struct dm_odm_t *pDM_Odm) u32 ArrayLen = ARRAY_SIZE(Array_MP_8723B_RadioA); u32 *Array = Array_MP_8723B_RadioA; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_LOUD, - ("===> ODM_ReadAndConfig_MP_8723B_RadioA\n") - ); - for (i = 0; i < ArrayLen; i += 2) { u32 v1 = Array[i]; u32 v2 = Array[i+1]; @@ -331,62 +282,6 @@ void ODM_ReadAndConfig_MP_8723B_RadioA(struct dm_odm_t *pDM_Odm) * TxPowerTrack_SDIO.TXT ******************************************************************************/ -static u8 gDeltaSwingTableIdx_MP_5GB_N_TxPowerTrack_SDIO_8723B[][DELTA_SWINGIDX_SIZE] = { - { - 0, 1, 1, 2, 2, 3, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, - 9, 10, 11, 12, 12, 13, 13, 14, 14, 14, 14, 14, 14, 14 - }, - { - 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, - 10, 11, 11, 12, 12, 13, 13, 14, 14, 14, 14, 14, 14, 14 - }, - { - 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, - 10, 11, 11, 12, 12, 13, 13, 14, 14, 14, 14, 14, 14, 14 - }, -}; -static u8 gDeltaSwingTableIdx_MP_5GB_P_TxPowerTrack_SDIO_8723B[][DELTA_SWINGIDX_SIZE] = { - { - 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, - 12, 13, 14, 15, 15, 16, 16, 17, 17, 18, 19, 20, 20, 20 - }, - { - 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, - 12, 13, 14, 15, 15, 16, 17, 18, 18, 19, 19, 20, 20, 20 - }, - { - 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, - 12, 13, 14, 15, 15, 16, 17, 18, 18, 19, 20, 21, 21, 21 - }, -}; -static u8 gDeltaSwingTableIdx_MP_5GA_N_TxPowerTrack_SDIO_8723B[][DELTA_SWINGIDX_SIZE] = { - { - 0, 1, 2, 3, 3, 4, 4, 5, 5, 6, 7, 8, 8, 9, 9, 10, - 10, 11, 11, 12, 12, 13, 13, 14, 14, 14, 14, 14, 14, 14 - }, - { - 0, 1, 2, 3, 3, 4, 5, 6, 6, 6, 7, 7, 8, 8, 9, 10, - 11, 11, 12, 13, 13, 14, 15, 16, 16, 16, 16, 16, 16, 16 - }, - { - 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 10, 11, - 11, 12, 13, 14, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16 - }, -}; -static u8 gDeltaSwingTableIdx_MP_5GA_P_TxPowerTrack_SDIO_8723B[][DELTA_SWINGIDX_SIZE] = { - { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, - { - 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, - 12, 13, 14, 15, 15, 16, 17, 18, 18, 19, 20, 21, 21, 21 - }, - { - 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, - 12, 13, 14, 15, 15, 16, 17, 18, 18, 19, 20, 21, 21, 21 - }, -}; static u8 gDeltaSwingTableIdx_MP_2GB_N_TxPowerTrack_SDIO_8723B[] = { 0, 0, 1, 2, 2, 2, 3, 3, 3, 4, 5, 5, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 10, 10, 11, 12, 13, 14, 15 @@ -424,13 +319,6 @@ void ODM_ReadAndConfig_MP_8723B_TxPowerTrack_SDIO(struct dm_odm_t *pDM_Odm) { struct odm_rf_cal_t *pRFCalibrateInfo = &pDM_Odm->RFCalibrateInfo; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_LOUD, - ("===> ODM_ReadAndConfig_MP_MP_8723B\n") - ); - memcpy( pRFCalibrateInfo->DeltaSwingTableIdx_2GA_P, @@ -473,27 +361,6 @@ void ODM_ReadAndConfig_MP_8723B_TxPowerTrack_SDIO(struct dm_odm_t *pDM_Odm) gDeltaSwingTableIdx_MP_2GCCKB_N_TxPowerTrack_SDIO_8723B, DELTA_SWINGIDX_SIZE ); - - memcpy( - pRFCalibrateInfo->DeltaSwingTableIdx_5GA_P, - gDeltaSwingTableIdx_MP_5GA_P_TxPowerTrack_SDIO_8723B, - DELTA_SWINGIDX_SIZE*3 - ); - memcpy( - pRFCalibrateInfo->DeltaSwingTableIdx_5GA_N, - gDeltaSwingTableIdx_MP_5GA_N_TxPowerTrack_SDIO_8723B, - DELTA_SWINGIDX_SIZE*3 - ); - memcpy( - pRFCalibrateInfo->DeltaSwingTableIdx_5GB_P, - gDeltaSwingTableIdx_MP_5GB_P_TxPowerTrack_SDIO_8723B, - DELTA_SWINGIDX_SIZE*3 - ); - memcpy( - pRFCalibrateInfo->DeltaSwingTableIdx_5GB_N, - gDeltaSwingTableIdx_MP_5GB_N_TxPowerTrack_SDIO_8723B, - DELTA_SWINGIDX_SIZE*3 - ); } /****************************************************************************** @@ -501,258 +368,258 @@ void ODM_ReadAndConfig_MP_8723B_TxPowerTrack_SDIO(struct dm_odm_t *pDM_Odm) ******************************************************************************/ static u8 *Array_MP_8723B_TXPWR_LMT[] = { - "FCC", "2.4G", "20M", "CCK", "1T", "01", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "01", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "01", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "02", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "02", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "02", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "03", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "03", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "03", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "04", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "04", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "04", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "05", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "05", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "05", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "06", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "06", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "06", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "07", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "07", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "07", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "08", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "08", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "08", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "09", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "09", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "09", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "10", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "10", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "10", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "11", "32", - "ETSI", "2.4G", "20M", "CCK", "1T", "11", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "11", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "12", "63", - "ETSI", "2.4G", "20M", "CCK", "1T", "12", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "12", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "13", "63", - "ETSI", "2.4G", "20M", "CCK", "1T", "13", "32", - "MKK", "2.4G", "20M", "CCK", "1T", "13", "32", - "FCC", "2.4G", "20M", "CCK", "1T", "14", "63", - "ETSI", "2.4G", "20M", "CCK", "1T", "14", "63", - "MKK", "2.4G", "20M", "CCK", "1T", "14", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "01", "28", - "ETSI", "2.4G", "20M", "OFDM", "1T", "01", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "01", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "02", "28", - "ETSI", "2.4G", "20M", "OFDM", "1T", "02", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "02", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "03", "32", - "ETSI", "2.4G", "20M", "OFDM", "1T", "03", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "03", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "04", "32", - "ETSI", "2.4G", "20M", "OFDM", "1T", "04", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "04", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "05", "32", - "ETSI", "2.4G", "20M", "OFDM", "1T", "05", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "05", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "06", "32", - "ETSI", "2.4G", "20M", "OFDM", "1T", "06", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "06", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "07", "32", - "ETSI", "2.4G", "20M", "OFDM", "1T", "07", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "07", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "08", "32", - "ETSI", "2.4G", "20M", "OFDM", "1T", "08", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "08", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "09", "32", - "ETSI", "2.4G", "20M", "OFDM", "1T", "09", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "09", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "10", "28", - "ETSI", "2.4G", "20M", "OFDM", "1T", "10", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "10", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "11", "28", - "ETSI", "2.4G", "20M", "OFDM", "1T", "11", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "11", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "12", "63", - "ETSI", "2.4G", "20M", "OFDM", "1T", "12", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "12", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "13", "63", - "ETSI", "2.4G", "20M", "OFDM", "1T", "13", "32", - "MKK", "2.4G", "20M", "OFDM", "1T", "13", "32", - "FCC", "2.4G", "20M", "OFDM", "1T", "14", "63", - "ETSI", "2.4G", "20M", "OFDM", "1T", "14", "63", - "MKK", "2.4G", "20M", "OFDM", "1T", "14", "63", - "FCC", "2.4G", "20M", "HT", "1T", "01", "26", - "ETSI", "2.4G", "20M", "HT", "1T", "01", "32", - "MKK", "2.4G", "20M", "HT", "1T", "01", "32", - "FCC", "2.4G", "20M", "HT", "1T", "02", "26", - "ETSI", "2.4G", "20M", "HT", "1T", "02", "32", - "MKK", "2.4G", "20M", "HT", "1T", "02", "32", - "FCC", "2.4G", "20M", "HT", "1T", "03", "32", - "ETSI", "2.4G", "20M", "HT", "1T", "03", "32", - "MKK", "2.4G", "20M", "HT", "1T", "03", "32", - "FCC", "2.4G", "20M", "HT", "1T", "04", "32", - "ETSI", "2.4G", "20M", "HT", "1T", "04", "32", - "MKK", "2.4G", "20M", "HT", "1T", "04", "32", - "FCC", "2.4G", "20M", "HT", "1T", "05", "32", - "ETSI", "2.4G", "20M", "HT", "1T", "05", "32", - "MKK", "2.4G", "20M", "HT", "1T", "05", "32", - "FCC", "2.4G", "20M", "HT", "1T", "06", "32", - "ETSI", "2.4G", "20M", "HT", "1T", "06", "32", - "MKK", "2.4G", "20M", "HT", "1T", "06", "32", - "FCC", "2.4G", "20M", "HT", "1T", "07", "32", - "ETSI", "2.4G", "20M", "HT", "1T", "07", "32", - "MKK", "2.4G", "20M", "HT", "1T", "07", "32", - "FCC", "2.4G", "20M", "HT", "1T", "08", "32", - "ETSI", "2.4G", "20M", "HT", "1T", "08", "32", - "MKK", "2.4G", "20M", "HT", "1T", "08", "32", - "FCC", "2.4G", "20M", "HT", "1T", "09", "32", - "ETSI", "2.4G", "20M", "HT", "1T", "09", "32", - "MKK", "2.4G", "20M", "HT", "1T", "09", "32", - "FCC", "2.4G", "20M", "HT", "1T", "10", "26", - "ETSI", "2.4G", "20M", "HT", "1T", "10", "32", - "MKK", "2.4G", "20M", "HT", "1T", "10", "32", - "FCC", "2.4G", "20M", "HT", "1T", "11", "26", - "ETSI", "2.4G", "20M", "HT", "1T", "11", "32", - "MKK", "2.4G", "20M", "HT", "1T", "11", "32", - "FCC", "2.4G", "20M", "HT", "1T", "12", "63", - "ETSI", "2.4G", "20M", "HT", "1T", "12", "32", - "MKK", "2.4G", "20M", "HT", "1T", "12", "32", - "FCC", "2.4G", "20M", "HT", "1T", "13", "63", - "ETSI", "2.4G", "20M", "HT", "1T", "13", "32", - "MKK", "2.4G", "20M", "HT", "1T", "13", "32", - "FCC", "2.4G", "20M", "HT", "1T", "14", "63", - "ETSI", "2.4G", "20M", "HT", "1T", "14", "63", - "MKK", "2.4G", "20M", "HT", "1T", "14", "63", - "FCC", "2.4G", "20M", "HT", "2T", "01", "30", - "ETSI", "2.4G", "20M", "HT", "2T", "01", "32", - "MKK", "2.4G", "20M", "HT", "2T", "01", "32", - "FCC", "2.4G", "20M", "HT", "2T", "02", "32", - "ETSI", "2.4G", "20M", "HT", "2T", "02", "32", - "MKK", "2.4G", "20M", "HT", "2T", "02", "32", - "FCC", "2.4G", "20M", "HT", "2T", "03", "32", - "ETSI", "2.4G", "20M", "HT", "2T", "03", "32", - "MKK", "2.4G", "20M", "HT", "2T", "03", "32", - "FCC", "2.4G", "20M", "HT", "2T", "04", "32", - "ETSI", "2.4G", "20M", "HT", "2T", "04", "32", - "MKK", "2.4G", "20M", "HT", "2T", "04", "32", - "FCC", "2.4G", "20M", "HT", "2T", "05", "32", - "ETSI", "2.4G", "20M", "HT", "2T", "05", "32", - "MKK", "2.4G", "20M", "HT", "2T", "05", "32", - "FCC", "2.4G", "20M", "HT", "2T", "06", "32", - "ETSI", "2.4G", "20M", "HT", "2T", "06", "32", - "MKK", "2.4G", "20M", "HT", "2T", "06", "32", - "FCC", "2.4G", "20M", "HT", "2T", "07", "32", - "ETSI", "2.4G", "20M", "HT", "2T", "07", "32", - "MKK", "2.4G", "20M", "HT", "2T", "07", "32", - "FCC", "2.4G", "20M", "HT", "2T", "08", "32", - "ETSI", "2.4G", "20M", "HT", "2T", "08", "32", - "MKK", "2.4G", "20M", "HT", "2T", "08", "32", - "FCC", "2.4G", "20M", "HT", "2T", "09", "32", - "ETSI", "2.4G", "20M", "HT", "2T", "09", "32", - "MKK", "2.4G", "20M", "HT", "2T", "09", "32", - "FCC", "2.4G", "20M", "HT", "2T", "10", "32", - "ETSI", "2.4G", "20M", "HT", "2T", "10", "32", - "MKK", "2.4G", "20M", "HT", "2T", "10", "32", - "FCC", "2.4G", "20M", "HT", "2T", "11", "30", - "ETSI", "2.4G", "20M", "HT", "2T", "11", "32", - "MKK", "2.4G", "20M", "HT", "2T", "11", "32", - "FCC", "2.4G", "20M", "HT", "2T", "12", "63", - "ETSI", "2.4G", "20M", "HT", "2T", "12", "32", - "MKK", "2.4G", "20M", "HT", "2T", "12", "32", - "FCC", "2.4G", "20M", "HT", "2T", "13", "63", - "ETSI", "2.4G", "20M", "HT", "2T", "13", "32", - "MKK", "2.4G", "20M", "HT", "2T", "13", "32", - "FCC", "2.4G", "20M", "HT", "2T", "14", "63", - "ETSI", "2.4G", "20M", "HT", "2T", "14", "63", - "MKK", "2.4G", "20M", "HT", "2T", "14", "63", - "FCC", "2.4G", "40M", "HT", "1T", "01", "63", - "ETSI", "2.4G", "40M", "HT", "1T", "01", "63", - "MKK", "2.4G", "40M", "HT", "1T", "01", "63", - "FCC", "2.4G", "40M", "HT", "1T", "02", "63", - "ETSI", "2.4G", "40M", "HT", "1T", "02", "63", - "MKK", "2.4G", "40M", "HT", "1T", "02", "63", - "FCC", "2.4G", "40M", "HT", "1T", "03", "26", - "ETSI", "2.4G", "40M", "HT", "1T", "03", "32", - "MKK", "2.4G", "40M", "HT", "1T", "03", "32", - "FCC", "2.4G", "40M", "HT", "1T", "04", "26", - "ETSI", "2.4G", "40M", "HT", "1T", "04", "32", - "MKK", "2.4G", "40M", "HT", "1T", "04", "32", - "FCC", "2.4G", "40M", "HT", "1T", "05", "32", - "ETSI", "2.4G", "40M", "HT", "1T", "05", "32", - "MKK", "2.4G", "40M", "HT", "1T", "05", "32", - "FCC", "2.4G", "40M", "HT", "1T", "06", "32", - "ETSI", "2.4G", "40M", "HT", "1T", "06", "32", - "MKK", "2.4G", "40M", "HT", "1T", "06", "32", - "FCC", "2.4G", "40M", "HT", "1T", "07", "32", - "ETSI", "2.4G", "40M", "HT", "1T", "07", "32", - "MKK", "2.4G", "40M", "HT", "1T", "07", "32", - "FCC", "2.4G", "40M", "HT", "1T", "08", "26", - "ETSI", "2.4G", "40M", "HT", "1T", "08", "32", - "MKK", "2.4G", "40M", "HT", "1T", "08", "32", - "FCC", "2.4G", "40M", "HT", "1T", "09", "26", - "ETSI", "2.4G", "40M", "HT", "1T", "09", "32", - "MKK", "2.4G", "40M", "HT", "1T", "09", "32", - "FCC", "2.4G", "40M", "HT", "1T", "10", "26", - "ETSI", "2.4G", "40M", "HT", "1T", "10", "32", - "MKK", "2.4G", "40M", "HT", "1T", "10", "32", - "FCC", "2.4G", "40M", "HT", "1T", "11", "26", - "ETSI", "2.4G", "40M", "HT", "1T", "11", "32", - "MKK", "2.4G", "40M", "HT", "1T", "11", "32", - "FCC", "2.4G", "40M", "HT", "1T", "12", "63", - "ETSI", "2.4G", "40M", "HT", "1T", "12", "32", - "MKK", "2.4G", "40M", "HT", "1T", "12", "32", - "FCC", "2.4G", "40M", "HT", "1T", "13", "63", - "ETSI", "2.4G", "40M", "HT", "1T", "13", "32", - "MKK", "2.4G", "40M", "HT", "1T", "13", "32", - "FCC", "2.4G", "40M", "HT", "1T", "14", "63", - "ETSI", "2.4G", "40M", "HT", "1T", "14", "63", - "MKK", "2.4G", "40M", "HT", "1T", "14", "63", - "FCC", "2.4G", "40M", "HT", "2T", "01", "63", - "ETSI", "2.4G", "40M", "HT", "2T", "01", "63", - "MKK", "2.4G", "40M", "HT", "2T", "01", "63", - "FCC", "2.4G", "40M", "HT", "2T", "02", "63", - "ETSI", "2.4G", "40M", "HT", "2T", "02", "63", - "MKK", "2.4G", "40M", "HT", "2T", "02", "63", - "FCC", "2.4G", "40M", "HT", "2T", "03", "30", - "ETSI", "2.4G", "40M", "HT", "2T", "03", "30", - "MKK", "2.4G", "40M", "HT", "2T", "03", "30", - "FCC", "2.4G", "40M", "HT", "2T", "04", "32", - "ETSI", "2.4G", "40M", "HT", "2T", "04", "30", - "MKK", "2.4G", "40M", "HT", "2T", "04", "30", - "FCC", "2.4G", "40M", "HT", "2T", "05", "32", - "ETSI", "2.4G", "40M", "HT", "2T", "05", "30", - "MKK", "2.4G", "40M", "HT", "2T", "05", "30", - "FCC", "2.4G", "40M", "HT", "2T", "06", "32", - "ETSI", "2.4G", "40M", "HT", "2T", "06", "30", - "MKK", "2.4G", "40M", "HT", "2T", "06", "30", - "FCC", "2.4G", "40M", "HT", "2T", "07", "32", - "ETSI", "2.4G", "40M", "HT", "2T", "07", "30", - "MKK", "2.4G", "40M", "HT", "2T", "07", "30", - "FCC", "2.4G", "40M", "HT", "2T", "08", "32", - "ETSI", "2.4G", "40M", "HT", "2T", "08", "30", - "MKK", "2.4G", "40M", "HT", "2T", "08", "30", - "FCC", "2.4G", "40M", "HT", "2T", "09", "32", - "ETSI", "2.4G", "40M", "HT", "2T", "09", "30", - "MKK", "2.4G", "40M", "HT", "2T", "09", "30", - "FCC", "2.4G", "40M", "HT", "2T", "10", "32", - "ETSI", "2.4G", "40M", "HT", "2T", "10", "30", - "MKK", "2.4G", "40M", "HT", "2T", "10", "30", - "FCC", "2.4G", "40M", "HT", "2T", "11", "30", - "ETSI", "2.4G", "40M", "HT", "2T", "11", "30", - "MKK", "2.4G", "40M", "HT", "2T", "11", "30", - "FCC", "2.4G", "40M", "HT", "2T", "12", "63", - "ETSI", "2.4G", "40M", "HT", "2T", "12", "32", - "MKK", "2.4G", "40M", "HT", "2T", "12", "32", - "FCC", "2.4G", "40M", "HT", "2T", "13", "63", - "ETSI", "2.4G", "40M", "HT", "2T", "13", "32", - "MKK", "2.4G", "40M", "HT", "2T", "13", "32", - "FCC", "2.4G", "40M", "HT", "2T", "14", "63", - "ETSI", "2.4G", "40M", "HT", "2T", "14", "63", - "MKK", "2.4G", "40M", "HT", "2T", "14", "63" + "FCC", "20M", "CCK", "1T", "01", "32", + "ETSI", "20M", "CCK", "1T", "01", "32", + "MKK", "20M", "CCK", "1T", "01", "32", + "FCC", "20M", "CCK", "1T", "02", "32", + "ETSI", "20M", "CCK", "1T", "02", "32", + "MKK", "20M", "CCK", "1T", "02", "32", + "FCC", "20M", "CCK", "1T", "03", "32", + "ETSI", "20M", "CCK", "1T", "03", "32", + "MKK", "20M", "CCK", "1T", "03", "32", + "FCC", "20M", "CCK", "1T", "04", "32", + "ETSI", "20M", "CCK", "1T", "04", "32", + "MKK", "20M", "CCK", "1T", "04", "32", + "FCC", "20M", "CCK", "1T", "05", "32", + "ETSI", "20M", "CCK", "1T", "05", "32", + "MKK", "20M", "CCK", "1T", "05", "32", + "FCC", "20M", "CCK", "1T", "06", "32", + "ETSI", "20M", "CCK", "1T", "06", "32", + "MKK", "20M", "CCK", "1T", "06", "32", + "FCC", "20M", "CCK", "1T", "07", "32", + "ETSI", "20M", "CCK", "1T", "07", "32", + "MKK", "20M", "CCK", "1T", "07", "32", + "FCC", "20M", "CCK", "1T", "08", "32", + "ETSI", "20M", "CCK", "1T", "08", "32", + "MKK", "20M", "CCK", "1T", "08", "32", + "FCC", "20M", "CCK", "1T", "09", "32", + "ETSI", "20M", "CCK", "1T", "09", "32", + "MKK", "20M", "CCK", "1T", "09", "32", + "FCC", "20M", "CCK", "1T", "10", "32", + "ETSI", "20M", "CCK", "1T", "10", "32", + "MKK", "20M", "CCK", "1T", "10", "32", + "FCC", "20M", "CCK", "1T", "11", "32", + "ETSI", "20M", "CCK", "1T", "11", "32", + "MKK", "20M", "CCK", "1T", "11", "32", + "FCC", "20M", "CCK", "1T", "12", "63", + "ETSI", "20M", "CCK", "1T", "12", "32", + "MKK", "20M", "CCK", "1T", "12", "32", + "FCC", "20M", "CCK", "1T", "13", "63", + "ETSI", "20M", "CCK", "1T", "13", "32", + "MKK", "20M", "CCK", "1T", "13", "32", + "FCC", "20M", "CCK", "1T", "14", "63", + "ETSI", "20M", "CCK", "1T", "14", "63", + "MKK", "20M", "CCK", "1T", "14", "32", + "FCC", "20M", "OFDM", "1T", "01", "28", + "ETSI", "20M", "OFDM", "1T", "01", "32", + "MKK", "20M", "OFDM", "1T", "01", "32", + "FCC", "20M", "OFDM", "1T", "02", "28", + "ETSI", "20M", "OFDM", "1T", "02", "32", + "MKK", "20M", "OFDM", "1T", "02", "32", + "FCC", "20M", "OFDM", "1T", "03", "32", + "ETSI", "20M", "OFDM", "1T", "03", "32", + "MKK", "20M", "OFDM", "1T", "03", "32", + "FCC", "20M", "OFDM", "1T", "04", "32", + "ETSI", "20M", "OFDM", "1T", "04", "32", + "MKK", "20M", "OFDM", "1T", "04", "32", + "FCC", "20M", "OFDM", "1T", "05", "32", + "ETSI", "20M", "OFDM", "1T", "05", "32", + "MKK", "20M", "OFDM", "1T", "05", "32", + "FCC", "20M", "OFDM", "1T", "06", "32", + "ETSI", "20M", "OFDM", "1T", "06", "32", + "MKK", "20M", "OFDM", "1T", "06", "32", + "FCC", "20M", "OFDM", "1T", "07", "32", + "ETSI", "20M", "OFDM", "1T", "07", "32", + "MKK", "20M", "OFDM", "1T", "07", "32", + "FCC", "20M", "OFDM", "1T", "08", "32", + "ETSI", "20M", "OFDM", "1T", "08", "32", + "MKK", "20M", "OFDM", "1T", "08", "32", + "FCC", "20M", "OFDM", "1T", "09", "32", + "ETSI", "20M", "OFDM", "1T", "09", "32", + "MKK", "20M", "OFDM", "1T", "09", "32", + "FCC", "20M", "OFDM", "1T", "10", "28", + "ETSI", "20M", "OFDM", "1T", "10", "32", + "MKK", "20M", "OFDM", "1T", "10", "32", + "FCC", "20M", "OFDM", "1T", "11", "28", + "ETSI", "20M", "OFDM", "1T", "11", "32", + "MKK", "20M", "OFDM", "1T", "11", "32", + "FCC", "20M", "OFDM", "1T", "12", "63", + "ETSI", "20M", "OFDM", "1T", "12", "32", + "MKK", "20M", "OFDM", "1T", "12", "32", + "FCC", "20M", "OFDM", "1T", "13", "63", + "ETSI", "20M", "OFDM", "1T", "13", "32", + "MKK", "20M", "OFDM", "1T", "13", "32", + "FCC", "20M", "OFDM", "1T", "14", "63", + "ETSI", "20M", "OFDM", "1T", "14", "63", + "MKK", "20M", "OFDM", "1T", "14", "63", + "FCC", "20M", "HT", "1T", "01", "26", + "ETSI", "20M", "HT", "1T", "01", "32", + "MKK", "20M", "HT", "1T", "01", "32", + "FCC", "20M", "HT", "1T", "02", "26", + "ETSI", "20M", "HT", "1T", "02", "32", + "MKK", "20M", "HT", "1T", "02", "32", + "FCC", "20M", "HT", "1T", "03", "32", + "ETSI", "20M", "HT", "1T", "03", "32", + "MKK", "20M", "HT", "1T", "03", "32", + "FCC", "20M", "HT", "1T", "04", "32", + "ETSI", "20M", "HT", "1T", "04", "32", + "MKK", "20M", "HT", "1T", "04", "32", + "FCC", "20M", "HT", "1T", "05", "32", + "ETSI", "20M", "HT", "1T", "05", "32", + "MKK", "20M", "HT", "1T", "05", "32", + "FCC", "20M", "HT", "1T", "06", "32", + "ETSI", "20M", "HT", "1T", "06", "32", + "MKK", "20M", "HT", "1T", "06", "32", + "FCC", "20M", "HT", "1T", "07", "32", + "ETSI", "20M", "HT", "1T", "07", "32", + "MKK", "20M", "HT", "1T", "07", "32", + "FCC", "20M", "HT", "1T", "08", "32", + "ETSI", "20M", "HT", "1T", "08", "32", + "MKK", "20M", "HT", "1T", "08", "32", + "FCC", "20M", "HT", "1T", "09", "32", + "ETSI", "20M", "HT", "1T", "09", "32", + "MKK", "20M", "HT", "1T", "09", "32", + "FCC", "20M", "HT", "1T", "10", "26", + "ETSI", "20M", "HT", "1T", "10", "32", + "MKK", "20M", "HT", "1T", "10", "32", + "FCC", "20M", "HT", "1T", "11", "26", + "ETSI", "20M", "HT", "1T", "11", "32", + "MKK", "20M", "HT", "1T", "11", "32", + "FCC", "20M", "HT", "1T", "12", "63", + "ETSI", "20M", "HT", "1T", "12", "32", + "MKK", "20M", "HT", "1T", "12", "32", + "FCC", "20M", "HT", "1T", "13", "63", + "ETSI", "20M", "HT", "1T", "13", "32", + "MKK", "20M", "HT", "1T", "13", "32", + "FCC", "20M", "HT", "1T", "14", "63", + "ETSI", "20M", "HT", "1T", "14", "63", + "MKK", "20M", "HT", "1T", "14", "63", + "FCC", "20M", "HT", "2T", "01", "30", + "ETSI", "20M", "HT", "2T", "01", "32", + "MKK", "20M", "HT", "2T", "01", "32", + "FCC", "20M", "HT", "2T", "02", "32", + "ETSI", "20M", "HT", "2T", "02", "32", + "MKK", "20M", "HT", "2T", "02", "32", + "FCC", "20M", "HT", "2T", "03", "32", + "ETSI", "20M", "HT", "2T", "03", "32", + "MKK", "20M", "HT", "2T", "03", "32", + "FCC", "20M", "HT", "2T", "04", "32", + "ETSI", "20M", "HT", "2T", "04", "32", + "MKK", "20M", "HT", "2T", "04", "32", + "FCC", "20M", "HT", "2T", "05", "32", + "ETSI", "20M", "HT", "2T", "05", "32", + "MKK", "20M", "HT", "2T", "05", "32", + "FCC", "20M", "HT", "2T", "06", "32", + "ETSI", "20M", "HT", "2T", "06", "32", + "MKK", "20M", "HT", "2T", "06", "32", + "FCC", "20M", "HT", "2T", "07", "32", + "ETSI", "20M", "HT", "2T", "07", "32", + "MKK", "20M", "HT", "2T", "07", "32", + "FCC", "20M", "HT", "2T", "08", "32", + "ETSI", "20M", "HT", "2T", "08", "32", + "MKK", "20M", "HT", "2T", "08", "32", + "FCC", "20M", "HT", "2T", "09", "32", + "ETSI", "20M", "HT", "2T", "09", "32", + "MKK", "20M", "HT", "2T", "09", "32", + "FCC", "20M", "HT", "2T", "10", "32", + "ETSI", "20M", "HT", "2T", "10", "32", + "MKK", "20M", "HT", "2T", "10", "32", + "FCC", "20M", "HT", "2T", "11", "30", + "ETSI", "20M", "HT", "2T", "11", "32", + "MKK", "20M", "HT", "2T", "11", "32", + "FCC", "20M", "HT", "2T", "12", "63", + "ETSI", "20M", "HT", "2T", "12", "32", + "MKK", "20M", "HT", "2T", "12", "32", + "FCC", "20M", "HT", "2T", "13", "63", + "ETSI", "20M", "HT", "2T", "13", "32", + "MKK", "20M", "HT", "2T", "13", "32", + "FCC", "20M", "HT", "2T", "14", "63", + "ETSI", "20M", "HT", "2T", "14", "63", + "MKK", "20M", "HT", "2T", "14", "63", + "FCC", "40M", "HT", "1T", "01", "63", + "ETSI", "40M", "HT", "1T", "01", "63", + "MKK", "40M", "HT", "1T", "01", "63", + "FCC", "40M", "HT", "1T", "02", "63", + "ETSI", "40M", "HT", "1T", "02", "63", + "MKK", "40M", "HT", "1T", "02", "63", + "FCC", "40M", "HT", "1T", "03", "26", + "ETSI", "40M", "HT", "1T", "03", "32", + "MKK", "40M", "HT", "1T", "03", "32", + "FCC", "40M", "HT", "1T", "04", "26", + "ETSI", "40M", "HT", "1T", "04", "32", + "MKK", "40M", "HT", "1T", "04", "32", + "FCC", "40M", "HT", "1T", "05", "32", + "ETSI", "40M", "HT", "1T", "05", "32", + "MKK", "40M", "HT", "1T", "05", "32", + "FCC", "40M", "HT", "1T", "06", "32", + "ETSI", "40M", "HT", "1T", "06", "32", + "MKK", "40M", "HT", "1T", "06", "32", + "FCC", "40M", "HT", "1T", "07", "32", + "ETSI", "40M", "HT", "1T", "07", "32", + "MKK", "40M", "HT", "1T", "07", "32", + "FCC", "40M", "HT", "1T", "08", "26", + "ETSI", "40M", "HT", "1T", "08", "32", + "MKK", "40M", "HT", "1T", "08", "32", + "FCC", "40M", "HT", "1T", "09", "26", + "ETSI", "40M", "HT", "1T", "09", "32", + "MKK", "40M", "HT", "1T", "09", "32", + "FCC", "40M", "HT", "1T", "10", "26", + "ETSI", "40M", "HT", "1T", "10", "32", + "MKK", "40M", "HT", "1T", "10", "32", + "FCC", "40M", "HT", "1T", "11", "26", + "ETSI", "40M", "HT", "1T", "11", "32", + "MKK", "40M", "HT", "1T", "11", "32", + "FCC", "40M", "HT", "1T", "12", "63", + "ETSI", "40M", "HT", "1T", "12", "32", + "MKK", "40M", "HT", "1T", "12", "32", + "FCC", "40M", "HT", "1T", "13", "63", + "ETSI", "40M", "HT", "1T", "13", "32", + "MKK", "40M", "HT", "1T", "13", "32", + "FCC", "40M", "HT", "1T", "14", "63", + "ETSI", "40M", "HT", "1T", "14", "63", + "MKK", "40M", "HT", "1T", "14", "63", + "FCC", "40M", "HT", "2T", "01", "63", + "ETSI", "40M", "HT", "2T", "01", "63", + "MKK", "40M", "HT", "2T", "01", "63", + "FCC", "40M", "HT", "2T", "02", "63", + "ETSI", "40M", "HT", "2T", "02", "63", + "MKK", "40M", "HT", "2T", "02", "63", + "FCC", "40M", "HT", "2T", "03", "30", + "ETSI", "40M", "HT", "2T", "03", "30", + "MKK", "40M", "HT", "2T", "03", "30", + "FCC", "40M", "HT", "2T", "04", "32", + "ETSI", "40M", "HT", "2T", "04", "30", + "MKK", "40M", "HT", "2T", "04", "30", + "FCC", "40M", "HT", "2T", "05", "32", + "ETSI", "40M", "HT", "2T", "05", "30", + "MKK", "40M", "HT", "2T", "05", "30", + "FCC", "40M", "HT", "2T", "06", "32", + "ETSI", "40M", "HT", "2T", "06", "30", + "MKK", "40M", "HT", "2T", "06", "30", + "FCC", "40M", "HT", "2T", "07", "32", + "ETSI", "40M", "HT", "2T", "07", "30", + "MKK", "40M", "HT", "2T", "07", "30", + "FCC", "40M", "HT", "2T", "08", "32", + "ETSI", "40M", "HT", "2T", "08", "30", + "MKK", "40M", "HT", "2T", "08", "30", + "FCC", "40M", "HT", "2T", "09", "32", + "ETSI", "40M", "HT", "2T", "09", "30", + "MKK", "40M", "HT", "2T", "09", "30", + "FCC", "40M", "HT", "2T", "10", "32", + "ETSI", "40M", "HT", "2T", "10", "30", + "MKK", "40M", "HT", "2T", "10", "30", + "FCC", "40M", "HT", "2T", "11", "30", + "ETSI", "40M", "HT", "2T", "11", "30", + "MKK", "40M", "HT", "2T", "11", "30", + "FCC", "40M", "HT", "2T", "12", "63", + "ETSI", "40M", "HT", "2T", "12", "32", + "MKK", "40M", "HT", "2T", "12", "32", + "FCC", "40M", "HT", "2T", "13", "63", + "ETSI", "40M", "HT", "2T", "13", "32", + "MKK", "40M", "HT", "2T", "13", "32", + "FCC", "40M", "HT", "2T", "14", "63", + "ETSI", "40M", "HT", "2T", "14", "63", + "MKK", "40M", "HT", "2T", "14", "63" }; void ODM_ReadAndConfig_MP_8723B_TXPWR_LMT(struct dm_odm_t *pDM_Odm) @@ -760,26 +627,17 @@ void ODM_ReadAndConfig_MP_8723B_TXPWR_LMT(struct dm_odm_t *pDM_Odm) u32 i = 0; u8 **Array = Array_MP_8723B_TXPWR_LMT; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_LOUD, - ("===> ODM_ReadAndConfig_MP_8723B_TXPWR_LMT\n") - ); - - for (i = 0; i < ARRAY_SIZE(Array_MP_8723B_TXPWR_LMT); i += 7) { + for (i = 0; i < ARRAY_SIZE(Array_MP_8723B_TXPWR_LMT); i += 6) { u8 *regulation = Array[i]; - u8 *band = Array[i+1]; - u8 *bandwidth = Array[i+2]; - u8 *rate = Array[i+3]; - u8 *rfPath = Array[i+4]; - u8 *chnl = Array[i+5]; - u8 *val = Array[i+6]; + u8 *bandwidth = Array[i+1]; + u8 *rate = Array[i+2]; + u8 *rfPath = Array[i+3]; + u8 *chnl = Array[i+4]; + u8 *val = Array[i+5]; odm_ConfigBB_TXPWR_LMT_8723B( pDM_Odm, regulation, - band, bandwidth, rate, rfPath, diff --git a/drivers/staging/rtl8723bs/hal/HalPhyRf.c b/drivers/staging/rtl8723bs/hal/HalPhyRf.c index 14426151faae..365e1195b5e5 100644 --- a/drivers/staging/rtl8723bs/hal/HalPhyRf.c +++ b/drivers/staging/rtl8723bs/hal/HalPhyRf.c @@ -76,7 +76,7 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) struct hal_com_data *pHalData = GET_HAL_DATA(Adapter); struct dm_odm_t *pDM_Odm = &pHalData->odmpriv; - u8 ThermalValue = 0, delta, delta_LCK, delta_IQK, p = 0, i = 0; + u8 ThermalValue = 0, delta, delta_LCK, p = 0, i = 0; u8 ThermalValue_AVG_count = 0; u32 ThermalValue_AVG = 0; @@ -108,18 +108,6 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) pDM_Odm->RFCalibrateInfo.TXPowerTrackingCallbackCnt++; pDM_Odm->RFCalibrateInfo.bTXPowerTrackingInit = true; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "===>ODM_TXPowerTrackingCallback_ThermalMeter,\npDM_Odm->BbSwingIdxCckBase: %d, pDM_Odm->BbSwingIdxOfdmBase[A]: %d, pDM_Odm->DefaultOfdmIndex: %d\n", - pDM_Odm->BbSwingIdxCckBase, - pDM_Odm->BbSwingIdxOfdmBase[ODM_RF_PATH_A], - pDM_Odm->DefaultOfdmIndex - ) - ); - ThermalValue = (u8)PHY_QueryRFReg(pDM_Odm->Adapter, ODM_RF_PATH_A, c.ThermalRegAddr, 0xfc00); /* 0x42: RF Reg[15:10] 88E */ if ( !pDM_Odm->RFCalibrateInfo.TxPowerTrackControl || @@ -130,13 +118,6 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) /* 4 3. Initialize ThermalValues of RFCalibrateInfo */ - if (pDM_Odm->RFCalibrateInfo.bReloadtxpowerindex) - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ("reload ofdm index for band switch\n") - ); - /* 4 4. Calculate average thermal meter */ pDM_Odm->RFCalibrateInfo.ThermalValue_AVG[pDM_Odm->RFCalibrateInfo.ThermalValue_AVG_index] = ThermalValue; @@ -154,19 +135,9 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) /* Calculate Average ThermalValue after average enough times */ if (ThermalValue_AVG_count) { ThermalValue = (u8)(ThermalValue_AVG / ThermalValue_AVG_count); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "AVG Thermal Meter = 0x%X, EFUSE Thermal Base = 0x%X\n", - ThermalValue, - pHalData->EEPROMThermalMeter - ) - ); } - /* 4 5. Calculate delta, delta_LCK, delta_IQK. */ + /* 4 5. Calculate delta, delta_LCK */ /* delta" here is used to determine whether thermal value changes or not. */ delta = (ThermalValue > pDM_Odm->RFCalibrateInfo.ThermalValue) ? @@ -176,36 +147,10 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) (ThermalValue > pDM_Odm->RFCalibrateInfo.ThermalValue_LCK) ? (ThermalValue - pDM_Odm->RFCalibrateInfo.ThermalValue_LCK) : (pDM_Odm->RFCalibrateInfo.ThermalValue_LCK - ThermalValue); - delta_IQK = - (ThermalValue > pDM_Odm->RFCalibrateInfo.ThermalValue_IQK) ? - (ThermalValue - pDM_Odm->RFCalibrateInfo.ThermalValue_IQK) : - (pDM_Odm->RFCalibrateInfo.ThermalValue_IQK - ThermalValue); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "(delta, delta_LCK, delta_IQK) = (%d, %d, %d)\n", - delta, - delta_LCK, - delta_IQK - ) - ); /* 4 6. If necessary, do LCK. */ /* Delta temperature is equal to or larger than 20 centigrade. */ if (delta_LCK >= c.Threshold_IQK) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "delta_LCK(%d) >= Threshold_IQK(%d)\n", - delta_LCK, - c.Threshold_IQK - ) - ); pDM_Odm->RFCalibrateInfo.ThermalValue_LCK = ThermalValue; if (c.PHY_LCCalibrate) (*c.PHY_LCCalibrate)(pDM_Odm); @@ -224,16 +169,6 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) /* 4 7.1 The Final Power Index = BaseIndex + PowerIndexOffset */ if (ThermalValue > pHalData->EEPROMThermalMeter) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "deltaSwingTableIdx_TUP_A[%d] = %d\n", - delta, - deltaSwingTableIdx_TUP_A[delta] - ) - ); pDM_Odm->RFCalibrateInfo.DeltaPowerIndexLast[ODM_RF_PATH_A] = pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[ODM_RF_PATH_A]; pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[ODM_RF_PATH_A] = @@ -243,27 +178,7 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_A] = deltaSwingTableIdx_TUP_A[delta]; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "******Temp is higher and pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_A] = %d\n", - pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_A] - ) - ); - if (c.RfPathCount > 1) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "deltaSwingTableIdx_TUP_B[%d] = %d\n", - delta, - deltaSwingTableIdx_TUP_B[delta] - ) - ); pDM_Odm->RFCalibrateInfo.DeltaPowerIndexLast[ODM_RF_PATH_B] = pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[ODM_RF_PATH_B]; pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[ODM_RF_PATH_B] = @@ -272,29 +187,9 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) /* Record delta swing for mix mode power tracking */ pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_B] = deltaSwingTableIdx_TUP_B[delta]; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "******Temp is higher and pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_B] = %d\n", - pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_B] - ) - ); } } else { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "deltaSwingTableIdx_TDOWN_A[%d] = %d\n", - delta, - deltaSwingTableIdx_TDOWN_A[delta] - ) - ); - pDM_Odm->RFCalibrateInfo.DeltaPowerIndexLast[ODM_RF_PATH_A] = pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[ODM_RF_PATH_A]; pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[ODM_RF_PATH_A] = @@ -304,28 +199,7 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_A] = -1 * deltaSwingTableIdx_TDOWN_A[delta]; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "******Temp is lower and pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_A] = %d\n", - pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_A] - ) - ); - if (c.RfPathCount > 1) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "deltaSwingTableIdx_TDOWN_B[%d] = %d\n", - delta, - deltaSwingTableIdx_TDOWN_B[delta] - ) - ); - pDM_Odm->RFCalibrateInfo.DeltaPowerIndexLast[ODM_RF_PATH_B] = pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[ODM_RF_PATH_B]; pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[ODM_RF_PATH_B] = @@ -334,30 +208,10 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) /* Record delta swing for mix mode power tracking */ pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_B] = -1 * deltaSwingTableIdx_TDOWN_B[delta]; - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "******Temp is lower and pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_B] = %d\n", - pDM_Odm->Absolute_OFDMSwingIdx[ODM_RF_PATH_B] - ) - ); } } for (p = ODM_RF_PATH_A; p < c.RfPathCount; p++) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "\n\n ================================ [Path-%c] Calculating PowerIndexOffset ================================\n", - (p == ODM_RF_PATH_A ? 'A' : 'B') - ) - ); - if ( pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[p] == pDM_Odm->RFCalibrateInfo.DeltaPowerIndexLast[p] @@ -366,20 +220,6 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) else pDM_Odm->RFCalibrateInfo.PowerIndexOffset[p] = pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[p] - pDM_Odm->RFCalibrateInfo.DeltaPowerIndexLast[p]; /* Power Index Diff between 2 times Power Tracking */ - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "[Path-%c] PowerIndexOffset(%d) = DeltaPowerIndex(%d) - DeltaPowerIndexLast(%d)\n", - ( - p == ODM_RF_PATH_A ? 'A' : 'B'), - pDM_Odm->RFCalibrateInfo.PowerIndexOffset[p], - pDM_Odm->RFCalibrateInfo.DeltaPowerIndex[p], - pDM_Odm->RFCalibrateInfo.DeltaPowerIndexLast[p] - ) - ); - pDM_Odm->RFCalibrateInfo.OFDM_index[p] = pDM_Odm->BbSwingIdxOfdmBase[p] + pDM_Odm->RFCalibrateInfo.PowerIndexOffset[p]; @@ -394,87 +234,23 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) pDM_Odm->BbSwingIdxOfdm[p] = pDM_Odm->RFCalibrateInfo.OFDM_index[p]; - /* *************Print BB Swing Base and Index Offset************* */ - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "The 'CCK' final index(%d) = BaseIndex(%d) + PowerIndexOffset(%d)\n", - pDM_Odm->BbSwingIdxCck, - pDM_Odm->BbSwingIdxCckBase, - pDM_Odm->RFCalibrateInfo.PowerIndexOffset[p] - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "The 'OFDM' final index(%d) = BaseIndex[%c](%d) + PowerIndexOffset(%d)\n", - pDM_Odm->BbSwingIdxOfdm[p], - (p == ODM_RF_PATH_A ? 'A' : 'B'), - pDM_Odm->BbSwingIdxOfdmBase[p], - pDM_Odm->RFCalibrateInfo.PowerIndexOffset[p] - ) - ); - /* 4 7.1 Handle boundary conditions of index. */ if (pDM_Odm->RFCalibrateInfo.OFDM_index[p] > c.SwingTableSize_OFDM-1) pDM_Odm->RFCalibrateInfo.OFDM_index[p] = c.SwingTableSize_OFDM-1; else if (pDM_Odm->RFCalibrateInfo.OFDM_index[p] < OFDM_min_index) pDM_Odm->RFCalibrateInfo.OFDM_index[p] = OFDM_min_index; } - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ("\n\n ========================================================================================================\n") - ); if (pDM_Odm->RFCalibrateInfo.CCK_index > c.SwingTableSize_CCK-1) pDM_Odm->RFCalibrateInfo.CCK_index = c.SwingTableSize_CCK-1; /* else if (pDM_Odm->RFCalibrateInfo.CCK_index < 0) */ /* pDM_Odm->RFCalibrateInfo.CCK_index = 0; */ } else { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "The thermal meter is unchanged or TxPowerTracking OFF(%d): ThermalValue: %d , pDM_Odm->RFCalibrateInfo.ThermalValue: %d\n", - pDM_Odm->RFCalibrateInfo.TxPowerTrackControl, - ThermalValue, - pDM_Odm->RFCalibrateInfo.ThermalValue - ) - ); - for (p = ODM_RF_PATH_A; p < c.RfPathCount; p++) pDM_Odm->RFCalibrateInfo.PowerIndexOffset[p] = 0; } - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "TxPowerTracking: [CCK] Swing Current Index: %d, Swing Base Index: %d\n", - pDM_Odm->RFCalibrateInfo.CCK_index, - pDM_Odm->BbSwingIdxCckBase - ) - ); /* Print Swing base & current */ for (p = ODM_RF_PATH_A; p < c.RfPathCount; p++) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "TxPowerTracking: [OFDM] Swing Current Index: %d, Swing Base Index[%c]: %d\n", - pDM_Odm->RFCalibrateInfo.OFDM_index[p], - (p == ODM_RF_PATH_A ? 'A' : 'B'), - pDM_Odm->BbSwingIdxOfdmBase[p] - ) - ); } if ( @@ -490,106 +266,11 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) /* to increase TX power. Otherwise, EVM will be bad. */ /* */ /* 2012/04/25 MH Add for tx power tracking to set tx power in tx agc for 88E. */ - if (ThermalValue > pDM_Odm->RFCalibrateInfo.ThermalValue) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "Temperature Increasing(A): delta_pi: %d , delta_t: %d, Now_t: %d, EFUSE_t: %d, Last_t: %d\n", - pDM_Odm->RFCalibrateInfo.PowerIndexOffset[ODM_RF_PATH_A], - delta, - ThermalValue, - pHalData->EEPROMThermalMeter, - pDM_Odm->RFCalibrateInfo.ThermalValue - ) - ); - - if (c.RfPathCount > 1) - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "Temperature Increasing(B): delta_pi: %d , delta_t: %d, Now_t: %d, EFUSE_t: %d, Last_t: %d\n", - pDM_Odm->RFCalibrateInfo.PowerIndexOffset[ODM_RF_PATH_B], - delta, - ThermalValue, - pHalData->EEPROMThermalMeter, - pDM_Odm->RFCalibrateInfo.ThermalValue - ) - ); - - } else if (ThermalValue < pDM_Odm->RFCalibrateInfo.ThermalValue) { /* Low temperature */ - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "Temperature Decreasing(A): delta_pi: %d , delta_t: %d, Now_t: %d, EFUSE_t: %d, Last_t: %d\n", - pDM_Odm->RFCalibrateInfo.PowerIndexOffset[ODM_RF_PATH_A], - delta, - ThermalValue, - pHalData->EEPROMThermalMeter, - pDM_Odm->RFCalibrateInfo.ThermalValue - ) - ); - - if (c.RfPathCount > 1) - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "Temperature Decreasing(B): delta_pi: %d , delta_t: %d, Now_t: %d, EFUSE_t: %d, Last_t: %d\n", - pDM_Odm->RFCalibrateInfo.PowerIndexOffset[ODM_RF_PATH_B], - delta, - ThermalValue, - pHalData->EEPROMThermalMeter, - pDM_Odm->RFCalibrateInfo.ThermalValue - ) - ); - - } if (ThermalValue > pHalData->EEPROMThermalMeter) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "Temperature(%d) higher than PG value(%d)\n", - ThermalValue, - pHalData->EEPROMThermalMeter - ) - ); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ("**********Enter POWER Tracking MIX_MODE**********\n") - ); for (p = ODM_RF_PATH_A; p < c.RfPathCount; p++) (*c.ODM_TxPwrTrackSetPwr)(pDM_Odm, MIX_MODE, p, 0); } else { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ( - "Temperature(%d) lower than PG value(%d)\n", - ThermalValue, - pHalData->EEPROMThermalMeter - ) - ); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ("**********Enter POWER Tracking MIX_MODE**********\n") - ); for (p = ODM_RF_PATH_A; p < c.RfPathCount; p++) (*c.ODM_TxPwrTrackSetPwr)(pDM_Odm, MIX_MODE, p, Indexforchannel); } @@ -599,26 +280,9 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter) for (p = ODM_RF_PATH_A; p < c.RfPathCount; p++) pDM_Odm->BbSwingIdxOfdmBase[p] = pDM_Odm->BbSwingIdxOfdm[p]; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ( - "pDM_Odm->RFCalibrateInfo.ThermalValue = %d ThermalValue = %d\n", - pDM_Odm->RFCalibrateInfo.ThermalValue, - ThermalValue - ) - ); - /* Record last Power Tracking Thermal Value */ pDM_Odm->RFCalibrateInfo.ThermalValue = ThermalValue; } - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_TX_PWR_TRACK, - ODM_DBG_LOUD, - ("<===ODM_TXPowerTrackingCallback_ThermalMeter\n") - ); - pDM_Odm->RFCalibrateInfo.TXPowercount = 0; } diff --git a/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.c b/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.c index c70b9cf2da32..8121b8eb45b6 100644 --- a/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.c +++ b/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.c @@ -69,7 +69,7 @@ static void setIqkMatrix_8723B( ele_D = (OFDMSwingTable_New[OFDM_index] & 0xFFC00000)>>22; /* new element A = element D x X */ - if ((IqkResult_X != 0) && (*(pDM_Odm->pBandType) == ODM_BAND_2_4G)) { + if (IqkResult_X != 0) { if ((IqkResult_X & 0x00000200) != 0) /* consider minus */ IqkResult_X = IqkResult_X | 0xFFFFFC00; ele_A = ((IqkResult_X * ele_D)>>8)&0x000003FF; @@ -129,9 +129,6 @@ static void setIqkMatrix_8723B( break; } } - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, ("TxPwrTracking path B: X = 0x%x, Y = 0x%x ele_A = 0x%x ele_C = 0x%x ele_D = 0x%x 0xeb4 = 0x%x 0xebc = 0x%x\n", - (u32)IqkResult_X, (u32)IqkResult_Y, (u32)ele_A, (u32)ele_C, (u32)ele_D, (u32)IqkResult_X, (u32)IqkResult_Y)); } @@ -210,8 +207,6 @@ void ODM_TxPwrTrackSetPwr_8723B( } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, ("===>ODM_TxPwrTrackSetPwr8723B\n")); - if (TxRate != 0xFF) { /* 2 CCK */ if ((TxRate >= MGN_1M) && (TxRate <= MGN_11M)) @@ -233,13 +228,10 @@ void ODM_TxPwrTrackSetPwr_8723B( else PwrTrackingLimit_OFDM = pDM_Odm->DefaultOfdmIndex; /* Default OFDM index = 30 */ } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, ("TxRate = 0x%x, PwrTrackingLimit =%d\n", TxRate, PwrTrackingLimit_OFDM)); if (Method == TXAGC) { struct adapter *Adapter = pDM_Odm->Adapter; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, ("odm_TxPwrTrackSetPwr8723B CH =%d\n", *(pDM_Odm->pChannel))); - pDM_Odm->Remnant_OFDMSwingIdx[RFPath] = pDM_Odm->Absolute_OFDMSwingIdx[RFPath]; pDM_Odm->Modify_TxAGC_Flag_PathA = true; @@ -270,10 +262,6 @@ void ODM_TxPwrTrackSetPwr_8723B( setCCKFilterCoefficient(pDM_Odm, Final_CCK_Swing_Index); } else if (Method == MIX_MODE) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ("pDM_Odm->DefaultOfdmIndex =%d, pDM_Odm->DefaultCCKIndex =%d, pDM_Odm->Absolute_OFDMSwingIdx[RFPath]=%d, RF_Path = %d\n", - pDM_Odm->DefaultOfdmIndex, pDM_Odm->DefaultCckIndex, pDM_Odm->Absolute_OFDMSwingIdx[RFPath], RFPath)); - Final_OFDM_Swing_Index = pDM_Odm->DefaultOfdmIndex + pDM_Odm->Absolute_OFDMSwingIdx[RFPath]; Final_CCK_Swing_Index = pDM_Odm->DefaultCckIndex + pDM_Odm->Absolute_OFDMSwingIdx[RFPath]; @@ -287,10 +275,6 @@ void ODM_TxPwrTrackSetPwr_8723B( pDM_Odm->Modify_TxAGC_Flag_PathA = true; PHY_SetTxPowerIndexByRateSection(Adapter, RFPath, pHalData->CurrentChannel, OFDM); PHY_SetTxPowerIndexByRateSection(Adapter, RFPath, pHalData->CurrentChannel, HT_MCS0_MCS7); - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ("******Path_A Over BBSwing Limit , PwrTrackingLimit = %d , Remnant TxAGC Value = %d\n", - PwrTrackingLimit_OFDM, pDM_Odm->Remnant_OFDMSwingIdx[RFPath])); } else if (Final_OFDM_Swing_Index <= 0) { pDM_Odm->Remnant_OFDMSwingIdx[RFPath] = Final_OFDM_Swing_Index; @@ -301,26 +285,16 @@ void ODM_TxPwrTrackSetPwr_8723B( pDM_Odm->Modify_TxAGC_Flag_PathA = true; PHY_SetTxPowerIndexByRateSection(Adapter, RFPath, pHalData->CurrentChannel, OFDM); PHY_SetTxPowerIndexByRateSection(Adapter, RFPath, pHalData->CurrentChannel, HT_MCS0_MCS7); - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ("******Path_A Lower then BBSwing lower bound 0 , Remnant TxAGC Value = %d\n", - pDM_Odm->Remnant_OFDMSwingIdx[RFPath])); } else { setIqkMatrix_8723B(pDM_Odm, Final_OFDM_Swing_Index, RFPath, pDM_Odm->RFCalibrateInfo.IQKMatrixRegSetting[ChannelMappedIndex].Value[0][0], pDM_Odm->RFCalibrateInfo.IQKMatrixRegSetting[ChannelMappedIndex].Value[0][1]); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ("******Path_A Compensate with BBSwing , Final_OFDM_Swing_Index = %d\n", Final_OFDM_Swing_Index)); - if (pDM_Odm->Modify_TxAGC_Flag_PathA) { /* If TxAGC has changed, reset TxAGC again */ pDM_Odm->Remnant_OFDMSwingIdx[RFPath] = 0; PHY_SetTxPowerIndexByRateSection(Adapter, RFPath, pHalData->CurrentChannel, OFDM); PHY_SetTxPowerIndexByRateSection(Adapter, RFPath, pHalData->CurrentChannel, HT_MCS0_MCS7); pDM_Odm->Modify_TxAGC_Flag_PathA = false; - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ("******Path_A pDM_Odm->Modify_TxAGC_Flag = false\n")); } } @@ -329,30 +303,18 @@ void ODM_TxPwrTrackSetPwr_8723B( setCCKFilterCoefficient(pDM_Odm, PwrTrackingLimit_CCK); pDM_Odm->Modify_TxAGC_Flag_PathA_CCK = true; PHY_SetTxPowerIndexByRateSection(Adapter, RFPath, pHalData->CurrentChannel, CCK); - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ("******Path_A CCK Over Limit , PwrTrackingLimit_CCK = %d , pDM_Odm->Remnant_CCKSwingIdx = %d\n", PwrTrackingLimit_CCK, pDM_Odm->Remnant_CCKSwingIdx)); } else if (Final_CCK_Swing_Index <= 0) { /* Lowest CCK Index = 0 */ pDM_Odm->Remnant_CCKSwingIdx = Final_CCK_Swing_Index; setCCKFilterCoefficient(pDM_Odm, 0); pDM_Odm->Modify_TxAGC_Flag_PathA_CCK = true; PHY_SetTxPowerIndexByRateSection(Adapter, RFPath, pHalData->CurrentChannel, CCK); - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ("******Path_A CCK Under Limit , PwrTrackingLimit_CCK = %d , pDM_Odm->Remnant_CCKSwingIdx = %d\n", 0, pDM_Odm->Remnant_CCKSwingIdx)); } else { setCCKFilterCoefficient(pDM_Odm, Final_CCK_Swing_Index); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ("******Path_A CCK Compensate with BBSwing , Final_CCK_Swing_Index = %d\n", Final_CCK_Swing_Index)); - if (pDM_Odm->Modify_TxAGC_Flag_PathA_CCK) { /* If TxAGC has changed, reset TxAGC again */ pDM_Odm->Remnant_CCKSwingIdx = 0; PHY_SetTxPowerIndexByRateSection(Adapter, RFPath, pHalData->CurrentChannel, CCK); pDM_Odm->Modify_TxAGC_Flag_PathA_CCK = false; - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, - ("******Path_A pDM_Odm->Modify_TxAGC_Flag_CCK = false\n")); } } } else @@ -385,22 +347,7 @@ static void GetDeltaSwingTable_8723B( *TemperatureUP_B = pRFCalibrateInfo->DeltaSwingTableIdx_2GB_P; *TemperatureDOWN_B = pRFCalibrateInfo->DeltaSwingTableIdx_2GB_N; } - } /*else if (36 <= channel && channel <= 64) { - *TemperatureUP_A = pRFCalibrateInfo->DeltaSwingTableIdx_5GA_P[0]; - *TemperatureDOWN_A = pRFCalibrateInfo->DeltaSwingTableIdx_5GA_N[0]; - *TemperatureUP_B = pRFCalibrateInfo->DeltaSwingTableIdx_5GB_P[0]; - *TemperatureDOWN_B = pRFCalibrateInfo->DeltaSwingTableIdx_5GB_N[0]; - } else if (100 <= channel && channel <= 140) { - *TemperatureUP_A = pRFCalibrateInfo->DeltaSwingTableIdx_5GA_P[1]; - *TemperatureDOWN_A = pRFCalibrateInfo->DeltaSwingTableIdx_5GA_N[1]; - *TemperatureUP_B = pRFCalibrateInfo->DeltaSwingTableIdx_5GB_P[1]; - *TemperatureDOWN_B = pRFCalibrateInfo->DeltaSwingTableIdx_5GB_N[1]; - } else if (149 <= channel && channel <= 173) { - *TemperatureUP_A = pRFCalibrateInfo->DeltaSwingTableIdx_5GA_P[2]; - *TemperatureDOWN_A = pRFCalibrateInfo->DeltaSwingTableIdx_5GA_N[2]; - *TemperatureUP_B = pRFCalibrateInfo->DeltaSwingTableIdx_5GB_P[2]; - *TemperatureDOWN_B = pRFCalibrateInfo->DeltaSwingTableIdx_5GB_N[2]; - }*/else { + } else { *TemperatureUP_A = (u8 *)DeltaSwingTableIdx_2GA_P_8188E; *TemperatureDOWN_A = (u8 *)DeltaSwingTableIdx_2GA_N_8188E; *TemperatureUP_B = (u8 *)DeltaSwingTableIdx_2GA_P_8188E; @@ -442,8 +389,6 @@ static u8 phy_PathA_IQK_8723B( /* Save RF Path */ Path_SEL_BB = PHY_QueryBBReg(pDM_Odm->Adapter, 0x948, bMaskDWord); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path A IQK!\n")); - /* leave IQK mode */ PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, bMaskH3Bytes, 0x000000); @@ -461,7 +406,6 @@ static u8 phy_PathA_IQK_8723B( PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK, bMaskDWord, 0x01007c00); PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK, bMaskDWord, 0x01004800); /* path-A IQK setting */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path-A IQK setting!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_Tone_A, bMaskDWord, 0x18008c1c); PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_Tone_A, bMaskDWord, 0x38008c1c); PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_Tone_B, bMaskDWord, 0x38008c1c); @@ -473,7 +417,6 @@ static u8 phy_PathA_IQK_8723B( PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_B, bMaskDWord, 0x28110000); /* LO calibration setting */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("LO calibration setting!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Rsp, bMaskDWord, 0x00462911); /* enter IQK mode */ @@ -491,12 +434,10 @@ static u8 phy_PathA_IQK_8723B( PHY_SetBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord, 0x00000800); /* One shot, path A LOK & IQK */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("One shot, path A LOK & IQK!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf9000000); PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000); /* delay x ms */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Delay %d ms for One shot, path A LOK & IQK.\n", IQK_DELAY_TIME_8723B)); */ /* PlatformStallExecution(IQK_DELAY_TIME_8723B*1000); */ mdelay(IQK_DELAY_TIME_8723B); @@ -513,11 +454,6 @@ static u8 phy_PathA_IQK_8723B( regEAC = PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord); regE94 = PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_Before_IQK_A, bMaskDWord); regE9C = PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_After_IQK_A, bMaskDWord); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xeac = 0x%x\n", regEAC)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xe94 = 0x%x, 0xe9c = 0x%x\n", regE94, regE9C)); - /* monitor image power before & after IQK */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xe90(before IQK) = 0x%x, 0xe98(afer IQK) = 0x%x\n", - PHY_QueryBBReg(pDM_Odm->Adapter, 0xe90, bMaskDWord), PHY_QueryBBReg(pDM_Odm->Adapter, 0xe98, bMaskDWord))); /* Allen 20131125 */ @@ -550,18 +486,13 @@ static u8 phy_PathA_RxIQK8723B( struct hal_com_data *pHalData = GET_HAL_DATA(padapter); struct dm_odm_t *pDM_Odm = &pHalData->odmpriv; -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path A Rx IQK!\n")); */ - /* Save RF Path */ Path_SEL_BB = PHY_QueryBBReg(pDM_Odm->Adapter, 0x948, bMaskDWord); /* leave IQK mode */ PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, bMaskH3Bytes, 0x000000); - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path A RX IQK:Get TXIMR setting\n")); /* 1 Get TXIMR setting */ /* modify RXIQK mode table */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path-A Rx IQK modify RXIQK mode table!\n")); */ PHY_SetRFReg(pDM_Odm->Adapter, ODM_RF_PATH_A, RF_WE_LUT, 0x80000, 0x1); PHY_SetRFReg(pDM_Odm->Adapter, ODM_RF_PATH_A, RF_RCK_OS, bRFRegOffsetMask, 0x18000); PHY_SetRFReg(pDM_Odm->Adapter, ODM_RF_PATH_A, RF_TXPA_G1, bRFRegOffsetMask, 0x0001f); @@ -587,7 +518,6 @@ static u8 phy_PathA_RxIQK8723B( PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_B, bMaskDWord, 0x28110000); /* LO calibration setting */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("LO calibration setting!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Rsp, bMaskDWord, 0x0046a911); /* enter IQK mode */ @@ -605,12 +535,10 @@ static u8 phy_PathA_RxIQK8723B( PHY_SetBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord, 0x00000800); /* One shot, path A LOK & IQK */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("One shot, path A LOK & IQK!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf9000000); PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000); /* delay x ms */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Delay %d ms for One shot, path A LOK & IQK.\n", IQK_DELAY_TIME_8723B)); */ /* PlatformStallExecution(IQK_DELAY_TIME_8723B*1000); */ mdelay(IQK_DELAY_TIME_8723B); @@ -626,11 +554,6 @@ static u8 phy_PathA_RxIQK8723B( regEAC = PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord); regE94 = PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_Before_IQK_A, bMaskDWord); regE9C = PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_After_IQK_A, bMaskDWord); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xeac = 0x%x\n", regEAC)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xe94 = 0x%x, 0xe9c = 0x%x\n", regE94, regE9C)); - /* monitor image power before & after IQK */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xe90(before IQK) = 0x%x, 0xe98(afer IQK) = 0x%x\n", - PHY_QueryBBReg(pDM_Odm->Adapter, 0xe90, bMaskDWord), PHY_QueryBBReg(pDM_Odm->Adapter, 0xe98, bMaskDWord))); /* Allen 20131125 */ tmp = (regE9C & 0x03FF0000)>>16; @@ -651,14 +574,8 @@ static u8 phy_PathA_RxIQK8723B( u4tmp = 0x80007C00 | (regE94&0x3FF0000) | ((regE9C&0x3FF0000) >> 16); PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK, bMaskDWord, u4tmp); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xe40 = 0x%x u4tmp = 0x%x\n", PHY_QueryBBReg(pDM_Odm->Adapter, rTx_IQK, bMaskDWord), u4tmp)); - - - /* 1 RX IQK */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path A RX IQK\n")); /* modify RXIQK mode table */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path-A Rx IQK modify RXIQK mode table 2!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, bMaskH3Bytes, 0x000000); PHY_SetRFReg(pDM_Odm->Adapter, ODM_RF_PATH_A, RF_WE_LUT, 0x80000, 0x1); PHY_SetRFReg(pDM_Odm->Adapter, ODM_RF_PATH_A, RF_RCK_OS, bRFRegOffsetMask, 0x18000); @@ -688,7 +605,6 @@ static u8 phy_PathA_RxIQK8723B( PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_B, bMaskDWord, 0x28110000); /* LO calibration setting */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("LO calibration setting!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Rsp, bMaskDWord, 0x0046a8d1); /* enter IQK mode */ @@ -706,12 +622,10 @@ static u8 phy_PathA_RxIQK8723B( PHY_SetBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord, 0x00000800); /* One shot, path A LOK & IQK */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("One shot, path A LOK & IQK!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf9000000); PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000); /* delay x ms */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Delay %d ms for One shot, path A LOK & IQK.\n", IQK_DELAY_TIME_88E)); */ /* PlatformStallExecution(IQK_DELAY_TIME_8723B*1000); */ mdelay(IQK_DELAY_TIME_8723B); @@ -726,11 +640,6 @@ static u8 phy_PathA_RxIQK8723B( /* Check failed */ regEAC = PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord); regEA4 = PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_Before_IQK_A_2, bMaskDWord); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xeac = 0x%x\n", regEAC)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xea4 = 0x%x, 0xeac = 0x%x\n", regEA4, regEAC)); - /* monitor image power before & after IQK */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xea0(before IQK) = 0x%x, 0xea8(afer IQK) = 0x%x\n", - PHY_QueryBBReg(pDM_Odm->Adapter, 0xea0, bMaskDWord), PHY_QueryBBReg(pDM_Odm->Adapter, 0xea8, bMaskDWord))); /* PA/PAD controlled by 0x0 */ /* leave IQK mode */ @@ -751,8 +660,7 @@ static u8 phy_PathA_RxIQK8723B( (tmp < 0xf) ) result |= 0x02; - else /* if Tx not OK, ignore Rx */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path A Rx IQK fail!!\n")); + return result; } @@ -764,8 +672,6 @@ static u8 phy_PathB_IQK_8723B(struct adapter *padapter) struct hal_com_data *pHalData = GET_HAL_DATA(padapter); struct dm_odm_t *pDM_Odm = &pHalData->odmpriv; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path B IQK!\n")); - /* Save RF Path */ Path_SEL_BB = PHY_QueryBBReg(pDM_Odm->Adapter, 0x948, bMaskDWord); @@ -788,7 +694,6 @@ static u8 phy_PathB_IQK_8723B(struct adapter *padapter) PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK, bMaskDWord, 0x01007c00); PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK, bMaskDWord, 0x01004800); /* path-A IQK setting */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path-B IQK setting!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_Tone_A, bMaskDWord, 0x18008c1c); PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_Tone_A, bMaskDWord, 0x38008c1c); PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_Tone_B, bMaskDWord, 0x38008c1c); @@ -801,7 +706,6 @@ static u8 phy_PathB_IQK_8723B(struct adapter *padapter) PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_B, bMaskDWord, 0x28110000); /* LO calibration setting */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("LO calibration setting!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Rsp, bMaskDWord, 0x00462911); /* enter IQK mode */ @@ -815,12 +719,10 @@ static u8 phy_PathB_IQK_8723B(struct adapter *padapter) PHY_SetBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord, 0x00000800); /* One shot, path B LOK & IQK */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("One shot, path B LOK & IQK!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf9000000); PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000); /* delay x ms */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Delay %d ms for One shot, path B LOK & IQK.\n", IQK_DELAY_TIME_88E)); */ /* PlatformStallExecution(IQK_DELAY_TIME_88E*1000); */ mdelay(IQK_DELAY_TIME_8723B); @@ -832,18 +734,10 @@ static u8 phy_PathB_IQK_8723B(struct adapter *padapter) /* leave IQK mode */ PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, bMaskH3Bytes, 0x000000); -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0x948 = 0x%x\n", PHY_QueryBBReg(pDM_Odm->Adapter, 0x948, bMaskDWord))); */ - - /* Check failed */ regEAC = PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord); regE94 = PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_Before_IQK_A, bMaskDWord); regE9C = PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_After_IQK_A, bMaskDWord); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xeac = 0x%x\n", regEAC)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xe94 = 0x%x, 0xe9c = 0x%x\n", regE94, regE9C)); - /* monitor image power before & after IQK */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xe90(before IQK) = 0x%x, 0xe98(afer IQK) = 0x%x\n", - PHY_QueryBBReg(pDM_Odm->Adapter, 0xe90, bMaskDWord), PHY_QueryBBReg(pDM_Odm->Adapter, 0xe98, bMaskDWord))); /* Allen 20131125 */ tmp = (regE9C & 0x03FF0000)>>16; @@ -871,8 +765,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB) struct hal_com_data *pHalData = GET_HAL_DATA(padapter); struct dm_odm_t *pDM_Odm = &pHalData->odmpriv; -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path B Rx IQK!\n")); */ - /* Save RF Path */ Path_SEL_BB = PHY_QueryBBReg(pDM_Odm->Adapter, 0x948, bMaskDWord); /* leave IQK mode */ @@ -880,11 +772,7 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB) /* switch to path B */ PHY_SetBBReg(pDM_Odm->Adapter, 0x948, bMaskDWord, 0x00000280); - - /* 1 Get TXIMR setting */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path B RX IQK:Get TXIMR setting!\n")); /* modify RXIQK mode table */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path-A Rx IQK modify RXIQK mode table!\n")); */ PHY_SetRFReg(pDM_Odm->Adapter, ODM_RF_PATH_A, RF_WE_LUT, 0x80000, 0x1); PHY_SetRFReg(pDM_Odm->Adapter, ODM_RF_PATH_A, RF_RCK_OS, bRFRegOffsetMask, 0x18000); PHY_SetRFReg(pDM_Odm->Adapter, ODM_RF_PATH_A, RF_TXPA_G1, bRFRegOffsetMask, 0x0001f); @@ -912,7 +800,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB) PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_B, bMaskDWord, 0x28110000); /* LO calibration setting */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("LO calibration setting!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Rsp, bMaskDWord, 0x0046a911); /* enter IQK mode */ @@ -926,13 +813,11 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB) PHY_SetBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord, 0x00000800); /* One shot, path B TXIQK @ RXIQK */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("One shot, path B LOK & IQK!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf9000000); PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000); /* delay x ms */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Delay %d ms for One shot, path A LOK & IQK.\n", IQK_DELAY_TIME_88E)); */ /* PlatformStallExecution(IQK_DELAY_TIME_88E*1000); */ mdelay(IQK_DELAY_TIME_8723B); @@ -948,18 +833,11 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB) regEAC = PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord); regE94 = PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_Before_IQK_A, bMaskDWord); regE9C = PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_After_IQK_A, bMaskDWord); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xeac = 0x%x\n", regEAC)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xe94 = 0x%x, 0xe9c = 0x%x\n", regE94, regE9C)); - /* monitor image power before & after IQK */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xe90(before IQK) = 0x%x, 0xe98(afer IQK) = 0x%x\n", - PHY_QueryBBReg(pDM_Odm->Adapter, 0xe90, bMaskDWord), PHY_QueryBBReg(pDM_Odm->Adapter, 0xe98, bMaskDWord))); /* Allen 20131125 */ tmp = (regE9C & 0x03FF0000)>>16; -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("tmp1 = 0x%x\n", tmp)); */ if ((tmp & 0x200) > 0) tmp = 0x400 - tmp; -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("tmp2 = 0x%x\n", tmp)); */ if ( !(regEAC & BIT28) && @@ -975,10 +853,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB) u4tmp = 0x80007C00 | (regE94&0x3FF0000) | ((regE9C&0x3FF0000) >> 16); PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK, bMaskDWord, u4tmp); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xe40 = 0x%x u4tmp = 0x%x\n", PHY_QueryBBReg(pDM_Odm->Adapter, rTx_IQK, bMaskDWord), u4tmp)); - - /* 1 RX IQK */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path B RX IQK\n")); /* modify RXIQK mode table */ /* 20121009, Kordan> RF Mode = 3 */ @@ -1013,7 +887,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB) PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_B, bMaskDWord, 0x28110000); /* LO calibration setting */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("LO calibration setting!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Rsp, bMaskDWord, 0x0046a8d1); /* enter IQK mode */ @@ -1027,12 +900,10 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB) PHY_SetBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord, 0x00000800); /* One shot, path B LOK & IQK */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("One shot, path B LOK & IQK!\n")); */ PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf9000000); PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000); /* delay x ms */ -/* ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Delay %d ms for One shot, path A LOK & IQK.\n", IQK_DELAY_TIME_88E)); */ /* PlatformStallExecution(IQK_DELAY_TIME_88E*1000); */ mdelay(IQK_DELAY_TIME_8723B); @@ -1048,12 +919,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB) regEAC = PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord); regEA4 = PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_Before_IQK_A_2, bMaskDWord); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xeac = 0x%x\n", regEAC)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xea4 = 0x%x, 0xeac = 0x%x\n", regEA4, regEAC)); - /* monitor image power before & after IQK */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("0xea0(before IQK) = 0x%x, 0xea8(afer IQK) = 0x%x\n", - PHY_QueryBBReg(pDM_Odm->Adapter, 0xea0, bMaskDWord), PHY_QueryBBReg(pDM_Odm->Adapter, 0xea8, bMaskDWord))); - /* PA/PAD controlled by 0x0 */ /* leave IQK mode */ /* PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, 0xffffff00, 0x00000000); */ @@ -1075,8 +940,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB) (tmp < 0xf) ) result |= 0x02; - else - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path B Rx IQK fail!!\n")); return result; } @@ -1096,8 +959,6 @@ static void _PHY_PathAFillIQKMatrix8723B( struct odm_rf_cal_t *pRFCalibrateInfo = &pDM_Odm->RFCalibrateInfo; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path A IQ Calibration %s !\n", (bIQKOK)?"Success":"Failed")); - if (final_candidate == 0xFF) return; @@ -1108,7 +969,6 @@ static void _PHY_PathAFillIQKMatrix8723B( if ((X & 0x00000200) != 0) X = X | 0xFFFFFC00; TX0_A = (X * Oldval_0) >> 8; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("X = 0x%x, TX0_A = 0x%x, Oldval_0 0x%x\n", X, TX0_A, Oldval_0)); PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_XATxIQImbalance, 0x3FF, TX0_A); PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_ECCAThreshold, BIT(31), ((X*Oldval_0>>7) & 0x1)); @@ -1119,7 +979,6 @@ static void _PHY_PathAFillIQKMatrix8723B( /* 2 Tx IQC */ TX0_C = (Y * Oldval_0) >> 8; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Y = 0x%x, TX = 0x%x\n", Y, TX0_C)); PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_XCTxAFE, 0xF0000000, ((TX0_C&0x3C0)>>6)); pRFCalibrateInfo->TxIQC_8723B[PATH_S1][IDX_0xC94][KEY] = rOFDM0_XCTxAFE; pRFCalibrateInfo->TxIQC_8723B[PATH_S1][IDX_0xC94][VAL] = PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_XCTxAFE, bMaskDWord); @@ -1133,8 +992,6 @@ static void _PHY_PathAFillIQKMatrix8723B( pRFCalibrateInfo->TxIQC_8723B[PATH_S1][IDX_0xC4C][VAL] = PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_ECCAThreshold, bMaskDWord); if (bTxOnly) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("_PHY_PathAFillIQKMatrix8723B only Tx OK\n")); - /* <20130226, Kordan> Saving RxIQC, otherwise not initialized. */ pRFCalibrateInfo->RxIQC_8723B[PATH_S1][IDX_0xCA0][KEY] = rOFDM0_RxIQExtAnta; pRFCalibrateInfo->RxIQC_8723B[PATH_S1][IDX_0xCA0][VAL] = 0xfffffff & PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_RxIQExtAnta, bMaskDWord); @@ -1176,8 +1033,6 @@ static void _PHY_PathBFillIQKMatrix8723B( struct odm_rf_cal_t *pRFCalibrateInfo = &pDM_Odm->RFCalibrateInfo; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path B IQ Calibration %s !\n", (bIQKOK)?"Success":"Failed")); - if (final_candidate == 0xFF) return; @@ -1188,7 +1043,6 @@ static void _PHY_PathBFillIQKMatrix8723B( if ((X & 0x00000200) != 0) X = X | 0xFFFFFC00; TX1_A = (X * Oldval_1) >> 8; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("X = 0x%x, TX1_A = 0x%x\n", X, TX1_A)); PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_XBTxIQImbalance, 0x3FF, TX1_A); @@ -1199,7 +1053,6 @@ static void _PHY_PathBFillIQKMatrix8723B( Y = Y | 0xFFFFFC00; TX1_C = (Y * Oldval_1) >> 8; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Y = 0x%x, TX1_C = 0x%x\n", Y, TX1_C)); /* 2 Tx IQC */ PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_XDTxAFE, 0xF0000000, ((TX1_C&0x3C0)>>6)); @@ -1217,8 +1070,6 @@ static void _PHY_PathBFillIQKMatrix8723B( pRFCalibrateInfo->TxIQC_8723B[PATH_S0][IDX_0xC4C][VAL] = PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_ECCAThreshold, bMaskDWord); if (bTxOnly) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("_PHY_PathBFillIQKMatrix8723B only Tx OK\n")); - pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xC14][KEY] = rOFDM0_XARxIQImbalance; /* pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xC14][VAL] = PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_XARxIQImbalance, bMaskDWord); */ pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xC14][VAL] = 0x40000100; @@ -1297,7 +1148,6 @@ static void _PHY_SaveADDARegisters8723B( if (!ODM_CheckPowerStatus(padapter)) return; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Save ADDA parameters.\n")); for (i = 0 ; i < RegisterNum ; i++) { ADDABackup[i] = PHY_QueryBBReg(pDM_Odm->Adapter, ADDAReg[i], bMaskDWord); } @@ -1312,7 +1162,6 @@ static void _PHY_SaveMACRegisters8723B( struct hal_com_data *pHalData = GET_HAL_DATA(padapter); struct dm_odm_t *pDM_Odm = &pHalData->odmpriv; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Save MAC parameters.\n")); for (i = 0 ; i < (IQK_MAC_REG_NUM - 1); i++) { MACBackup[i] = rtw_read8(pDM_Odm->Adapter, MACReg[i]); } @@ -1332,7 +1181,6 @@ static void _PHY_ReloadADDARegisters8723B( struct hal_com_data *pHalData = GET_HAL_DATA(padapter); struct dm_odm_t *pDM_Odm = &pHalData->odmpriv; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Reload ADDA power saving parameters !\n")); for (i = 0 ; i < RegiesterNum; i++) { PHY_SetBBReg(pDM_Odm->Adapter, ADDAReg[i], bMaskDWord, ADDABackup[i]); } @@ -1362,8 +1210,6 @@ static void _PHY_PathADDAOn8723B( struct hal_com_data *pHalData = GET_HAL_DATA(padapter); struct dm_odm_t *pDM_Odm = &pHalData->odmpriv; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("ADDA ON.\n")); - pathOn = 0x01c00014; if (!is2T) { pathOn = 0x01c00014; @@ -1386,8 +1232,6 @@ static void _PHY_MACSettingCalibration8723B( struct hal_com_data *pHalData = GET_HAL_DATA(padapter); struct dm_odm_t *pDM_Odm = &pHalData->odmpriv; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("MAC settings for Calibration.\n")); - rtw_write8(pDM_Odm->Adapter, MACReg[i], 0x3F); for (i = 1 ; i < (IQK_MAC_REG_NUM - 1); i++) { @@ -1540,17 +1384,12 @@ static void phy_IQCalibrate_8723B( /* u32 bbvalue; */ if (t == 0) { -/* bbvalue = PHY_QueryBBReg(pDM_Odm->Adapter, rFPGA0_RFMOD, bMaskDWord); */ -/* RT_DISP(FINIT, INIT_IQK, ("phy_IQCalibrate_8188E() ==>0x%08x\n", bbvalue)); */ - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQ Calibration for %s for %d times\n", (is2T ? "2T2R" : "1T1R"), t)); /* Save ADDA parameters, turn Path A ADDA on */ _PHY_SaveADDARegisters8723B(padapter, ADDA_REG, pDM_Odm->RFCalibrateInfo.ADDA_backup, IQK_ADDA_REG_NUM); _PHY_SaveMACRegisters8723B(padapter, IQK_MAC_REG, pDM_Odm->RFCalibrateInfo.IQK_MAC_backup); _PHY_SaveADDARegisters8723B(padapter, IQK_BB_REG_92C, pDM_Odm->RFCalibrateInfo.IQK_BB_backup, IQK_BB_REG_NUM); } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQ Calibration for %s for %d times\n", (is2T ? "2T2R" : "1T1R"), t)); _PHY_PathADDAOn8723B(padapter, ADDA_REG, is2T); @@ -1596,7 +1435,6 @@ static void phy_IQCalibrate_8723B( PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, bMaskH3Bytes, 0x000000); pDM_Odm->RFCalibrateInfo.TxLOK[ODM_RF_PATH_A] = PHY_QueryRFReg(pDM_Odm->Adapter, ODM_RF_PATH_A, 0x8, bRFRegOffsetMask); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path A Tx IQK Success!!\n")); result[t][0] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_Before_IQK_A, bMaskDWord)&0x3FF0000)>>16; result[t][1] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_After_IQK_A, bMaskDWord)&0x3FF0000)>>16; break; @@ -1607,19 +1445,15 @@ static void phy_IQCalibrate_8723B( for (i = 0 ; i < retryCount ; i++) { PathAOK = phy_PathA_RxIQK8723B(padapter, is2T, RF_Path); if (PathAOK == 0x03) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path A Rx IQK Success!!\n")); /* result[t][0] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_Before_IQK_A, bMaskDWord)&0x3FF0000)>>16; */ /* result[t][1] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_After_IQK_A, bMaskDWord)&0x3FF0000)>>16; */ result[t][2] = (PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_Before_IQK_A_2, bMaskDWord)&0x3FF0000)>>16; result[t][3] = (PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord)&0x3FF0000)>>16; break; - } else { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path A Rx IQK Fail!!\n")); } } if (0x00 == PathAOK) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path A IQK failed!!\n")); } /* path B IQK */ @@ -1633,7 +1467,6 @@ static void phy_IQCalibrate_8723B( PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, bMaskH3Bytes, 0x000000); pDM_Odm->RFCalibrateInfo.TxLOK[ODM_RF_PATH_B] = PHY_QueryRFReg(pDM_Odm->Adapter, ODM_RF_PATH_B, 0x8, bRFRegOffsetMask); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path B Tx IQK Success!!\n")); result[t][4] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_Before_IQK_A, bMaskDWord)&0x3FF0000)>>16; result[t][5] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_After_IQK_A, bMaskDWord)&0x3FF0000)>>16; break; @@ -1644,25 +1477,18 @@ static void phy_IQCalibrate_8723B( for (i = 0 ; i < retryCount ; i++) { PathBOK = phy_PathB_RxIQK8723B(padapter, is2T); if (PathBOK == 0x03) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path B Rx IQK Success!!\n")); /* result[t][0] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_Before_IQK_A, bMaskDWord)&0x3FF0000)>>16; */ /* result[t][1] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_After_IQK_A, bMaskDWord)&0x3FF0000)>>16; */ result[t][6] = (PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_Before_IQK_A_2, bMaskDWord)&0x3FF0000)>>16; result[t][7] = (PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord)&0x3FF0000)>>16; break; - } else { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path B Rx IQK Fail!!\n")); } } /* Allen end */ - if (0x00 == PathBOK) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("Path B IQK failed!!\n")); - } } /* Back to BB mode, load original value */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK:Back to BB mode, load original value!\n")); PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, bMaskH3Bytes, 0); if (t != 0) { @@ -1692,7 +1518,6 @@ static void phy_IQCalibrate_8723B( PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_Tone_A, bMaskDWord, 0x01008c00); } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("phy_IQCalibrate_8723B() <==\n")); } @@ -1789,7 +1614,7 @@ void PHY_IQCalibrate_8723B( s32 result[4][8]; /* last is final result */ u8 i, final_candidate; bool bPathAOK, bPathBOK; - s32 RegE94, RegE9C, RegEA4, RegEAC, RegEB4, RegEBC, RegEC4, RegECC, RegTmp = 0; + s32 RegE94, RegE9C, RegEA4, RegEB4, RegEBC, RegEC4, RegTmp = 0; bool is12simular, is13simular, is23simular; bool bSingleTone = false, bCarrierSuppression = false; u32 IQK_BB_REG_92C[IQK_BB_REG_NUM] = { @@ -1805,8 +1630,6 @@ void PHY_IQCalibrate_8723B( }; /* u32 Path_SEL_BB = 0; */ u32 GNT_BT_default; - u32 StartTime; - s32 ProgressingTime; if (!ODM_CheckPowerStatus(padapter)) return; @@ -1818,9 +1641,6 @@ void PHY_IQCalibrate_8723B( if (bSingleTone || bCarrierSuppression) return; -#if DISABLE_BB_RF - return; -#endif if (pDM_Odm->RFCalibrateInfo.bIQKInProgress) return; @@ -1868,12 +1688,9 @@ void PHY_IQCalibrate_8723B( } if (bReCovery) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_INIT, ODM_DBG_LOUD, ("PHY_IQCalibrate_8723B: Return due to bReCovery!\n")); _PHY_ReloadADDARegisters8723B(padapter, IQK_BB_REG_92C, pDM_Odm->RFCalibrateInfo.IQK_BB_backup_recover, 9); return; } - StartTime = jiffies; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK:Start!!!\n")); /* save default GNT_BT */ GNT_BT_default = PHY_QueryBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord); @@ -1908,7 +1725,6 @@ void PHY_IQCalibrate_8723B( is12simular = phy_SimularityCompare_8723B(padapter, result, 0, 1); if (is12simular) { final_candidate = 0; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK: is12simular final_candidate is %x\n", final_candidate)); break; } } @@ -1917,7 +1733,6 @@ void PHY_IQCalibrate_8723B( is13simular = phy_SimularityCompare_8723B(padapter, result, 0, 2); if (is13simular) { final_candidate = 0; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK: is13simular final_candidate is %x\n", final_candidate)); break; } @@ -1925,7 +1740,6 @@ void PHY_IQCalibrate_8723B( is23simular = phy_SimularityCompare_8723B(padapter, result, 1, 2); if (is23simular) { final_candidate = 1; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK: is23simular final_candidate is %x\n", final_candidate)); } else { for (i = 0; i < 8; i++) RegTmp += result[3][i]; @@ -1942,29 +1756,20 @@ void PHY_IQCalibrate_8723B( RegE94 = result[i][0]; RegE9C = result[i][1]; RegEA4 = result[i][2]; - RegEAC = result[i][3]; RegEB4 = result[i][4]; RegEBC = result[i][5]; RegEC4 = result[i][6]; - RegECC = result[i][7]; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK: RegE94 =%x RegE9C =%x RegEA4 =%x RegEAC =%x RegEB4 =%x RegEBC =%x RegEC4 =%x RegECC =%x\n ", RegE94, RegE9C, RegEA4, RegEAC, RegEB4, RegEBC, RegEC4, RegECC)); } if (final_candidate != 0xff) { pDM_Odm->RFCalibrateInfo.RegE94 = RegE94 = result[final_candidate][0]; pDM_Odm->RFCalibrateInfo.RegE9C = RegE9C = result[final_candidate][1]; RegEA4 = result[final_candidate][2]; - RegEAC = result[final_candidate][3]; pDM_Odm->RFCalibrateInfo.RegEB4 = RegEB4 = result[final_candidate][4]; pDM_Odm->RFCalibrateInfo.RegEBC = RegEBC = result[final_candidate][5]; RegEC4 = result[final_candidate][6]; - RegECC = result[final_candidate][7]; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK: final_candidate is %x\n", final_candidate)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK: RegE94 =%x RegE9C =%x RegEA4 =%x RegEAC =%x RegEB4 =%x RegEBC =%x RegEC4 =%x RegECC =%x\n ", RegE94, RegE9C, RegEA4, RegEAC, RegEB4, RegEBC, RegEC4, RegECC)); bPathAOK = bPathBOK = true; } else { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK: FAIL use default value\n")); - pDM_Odm->RFCalibrateInfo.RegE94 = pDM_Odm->RFCalibrateInfo.RegEB4 = 0x100; /* X default value */ pDM_Odm->RFCalibrateInfo.RegE9C = pDM_Odm->RFCalibrateInfo.RegEBC = 0x0; /* Y default value */ } @@ -1985,7 +1790,6 @@ void PHY_IQCalibrate_8723B( pDM_Odm->RFCalibrateInfo.IQKMatrixRegSetting[0].Value[0][i] = result[final_candidate][i]; pDM_Odm->RFCalibrateInfo.IQKMatrixRegSetting[0].bIQKDone = true; } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("\nIQK OK Indexforchannel %d.\n", 0)); _PHY_SaveADDARegisters8723B(padapter, IQK_BB_REG_92C, pDM_Odm->RFCalibrateInfo.IQK_BB_backup_recover, 9); @@ -2015,12 +1819,6 @@ void PHY_IQCalibrate_8723B( } pDM_Odm->RFCalibrateInfo.bIQKInProgress = false; - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK finished\n")); - ProgressingTime = jiffies_to_msecs(jiffies - StartTime); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("IQK ProgressingTime = %d\n", ProgressingTime)); - - } @@ -2028,12 +1826,6 @@ void PHY_LCCalibrate_8723B(struct dm_odm_t *pDM_Odm) { bool bSingleTone = false, bCarrierSuppression = false; u32 timeout = 2000, timecount = 0; - u32 StartTime; - s32 ProgressingTime; - -#if DISABLE_BB_RF - return; -#endif if (!(pDM_Odm->SupportAbility & ODM_RF_CALIBRATION)) return; @@ -2042,7 +1834,6 @@ void PHY_LCCalibrate_8723B(struct dm_odm_t *pDM_Odm) if (bSingleTone || bCarrierSuppression) return; - StartTime = jiffies; while (*(pDM_Odm->pbScanInProcess) && timecount < timeout) { mdelay(50); timecount += 50; @@ -2055,8 +1846,4 @@ void PHY_LCCalibrate_8723B(struct dm_odm_t *pDM_Odm) pDM_Odm->RFCalibrateInfo.bLCKInProgress = false; - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("LCK:Finish!!!interface %d\n", pDM_Odm->InterfaceIndex)); - ProgressingTime = jiffies_to_msecs(jiffies - StartTime); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CALIBRATION, ODM_DBG_LOUD, ("LCK ProgressingTime = %d\n", ProgressingTime)); } diff --git a/drivers/staging/rtl8723bs/hal/hal_btcoex.c b/drivers/staging/rtl8723bs/hal/hal_btcoex.c index 5802ed4c6f82..3b0573885dce 100644 --- a/drivers/staging/rtl8723bs/hal/hal_btcoex.c +++ b/drivers/staging/rtl8723bs/hal/hal_btcoex.c @@ -17,7 +17,6 @@ struct btc_coexist GLBtCoexist; static u8 GLBtcWiFiInScanState; static u8 GLBtcWiFiInIQKState; -u32 GLBtcDbgType[BTC_MSG_MAX]; static u8 GLBtcDbgBuf[BT_TMP_BUF_SIZE]; struct btcdbginfo { /* _btcoexdbginfo */ @@ -75,32 +74,6 @@ static u8 halbtcoutsrc_IsBtCoexistAvailable(struct btc_coexist *pBtCoexist) return true; } -static void halbtcoutsrc_DbgInit(void) -{ - u8 i; - - for (i = 0; i < BTC_MSG_MAX; i++) - GLBtcDbgType[i] = 0; - - GLBtcDbgType[BTC_MSG_INTERFACE] = \ -/* INTF_INIT | */ -/* INTF_NOTIFY | */ - 0; - - GLBtcDbgType[BTC_MSG_ALGORITHM] = \ -/* ALGO_BT_RSSI_STATE | */ -/* ALGO_WIFI_RSSI_STATE | */ -/* ALGO_BT_MONITOR | */ -/* ALGO_TRACE | */ -/* ALGO_TRACE_FW | */ -/* ALGO_TRACE_FW_DETAIL | */ -/* ALGO_TRACE_FW_EXEC | */ -/* ALGO_TRACE_SW | */ -/* ALGO_TRACE_SW_DETAIL | */ -/* ALGO_TRACE_SW_EXEC | */ - 0; -} - static void halbtcoutsrc_LeaveLps(struct btc_coexist *pBtCoexist) { struct adapter *padapter; @@ -131,9 +104,6 @@ static void halbtcoutsrc_NormalLps(struct btc_coexist *pBtCoexist) { struct adapter *padapter; - - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Normal LPS behavior!!!\n")); - padapter = pBtCoexist->Adapter; if (pBtCoexist->btInfo.bBtCtrlLps) { @@ -398,10 +368,6 @@ static u8 halbtcoutsrc_Get(void *pBtcContext, u8 getType, void *pOutBuf) *pu8 = false; break; - case BTC_GET_BL_WIFI_UNDER_5G: - *pu8 = pHalData->CurrentBandType == 1; - break; - case BTC_GET_BL_WIFI_AP_MODE_ENABLE: *pu8 = check_fwstate(&padapter->mlmepriv, WIFI_AP_STATE); break; @@ -922,8 +888,6 @@ void hal_btcoex_Initialize(void *padapter) /* pBtCoexist->statistics.cntBind++; */ - halbtcoutsrc_DbgInit(); - pBtCoexist->chipInterface = BTC_INTF_SDIO; EXhalbtcoutsrc_BindBtCoexWithAdapter(padapter); @@ -1481,10 +1445,6 @@ u32 hal_btcoex_GetRaMask(struct adapter *padapter) void hal_btcoex_RecordPwrMode(struct adapter *padapter, u8 *pCmdBuf, u8 cmdLen) { - BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], FW write pwrModeCmd = 0x%04x%08x\n", - pCmdBuf[0] << 8 | pCmdBuf[1], - pCmdBuf[2] << 24 | pCmdBuf[3] << 16 | pCmdBuf[4] << 8 | pCmdBuf[5])); - memcpy(GLBtCoexist.pwrModeVal, pCmdBuf, cmdLen); } @@ -1499,138 +1459,3 @@ void hal_btcoex_DisplayBtCoexInfo(struct adapter *padapter, u8 *pbuf, u32 bufsiz DBG_BT_INFO_INIT(pinfo, NULL, 0); } -void hal_btcoex_SetDBG(struct adapter *padapter, u32 *pDbgModule) -{ - u32 i; - - - if (!pDbgModule) - return; - - for (i = 0; i < BTC_MSG_MAX; i++) - GLBtcDbgType[i] = pDbgModule[i]; -} - -u32 hal_btcoex_GetDBG(struct adapter *padapter, u8 *pStrBuf, u32 bufSize) -{ - s32 count; - u8 *pstr; - u32 leftSize; - - - if (!pStrBuf || bufSize == 0) - return 0; - - pstr = pStrBuf; - leftSize = bufSize; - - count = rtw_sprintf(pstr, leftSize, "#define DBG\t%d\n", DBG); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - - count = rtw_sprintf(pstr, leftSize, "BTCOEX Debug Setting:\n"); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - - count = rtw_sprintf(pstr, leftSize, - "INTERFACE / ALGORITHM: 0x%08X / 0x%08X\n\n", - GLBtcDbgType[BTC_MSG_INTERFACE], - GLBtcDbgType[BTC_MSG_ALGORITHM]); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - - count = rtw_sprintf(pstr, leftSize, "INTERFACE Debug Setting Definition:\n"); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[0]=%d for INTF_INIT\n", - (GLBtcDbgType[BTC_MSG_INTERFACE] & INTF_INIT) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[2]=%d for INTF_NOTIFY\n\n", - (GLBtcDbgType[BTC_MSG_INTERFACE] & INTF_NOTIFY) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - - count = rtw_sprintf(pstr, leftSize, "ALGORITHM Debug Setting Definition:\n"); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[0]=%d for BT_RSSI_STATE\n", - (GLBtcDbgType[BTC_MSG_ALGORITHM] & ALGO_BT_RSSI_STATE) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[1]=%d for WIFI_RSSI_STATE\n", - (GLBtcDbgType[BTC_MSG_ALGORITHM] & ALGO_WIFI_RSSI_STATE) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[2]=%d for BT_MONITOR\n", - (GLBtcDbgType[BTC_MSG_ALGORITHM] & ALGO_BT_MONITOR) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[3]=%d for TRACE\n", - (GLBtcDbgType[BTC_MSG_ALGORITHM] & ALGO_TRACE) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[4]=%d for TRACE_FW\n", - (GLBtcDbgType[BTC_MSG_ALGORITHM] & ALGO_TRACE_FW) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[5]=%d for TRACE_FW_DETAIL\n", - (GLBtcDbgType[BTC_MSG_ALGORITHM] & ALGO_TRACE_FW_DETAIL) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[6]=%d for TRACE_FW_EXEC\n", - (GLBtcDbgType[BTC_MSG_ALGORITHM] & ALGO_TRACE_FW_EXEC) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[7]=%d for TRACE_SW\n", - (GLBtcDbgType[BTC_MSG_ALGORITHM] & ALGO_TRACE_SW) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[8]=%d for TRACE_SW_DETAIL\n", - (GLBtcDbgType[BTC_MSG_ALGORITHM] & ALGO_TRACE_SW_DETAIL) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - count = rtw_sprintf(pstr, leftSize, "\tbit[9]=%d for TRACE_SW_EXEC\n", - (GLBtcDbgType[BTC_MSG_ALGORITHM] & ALGO_TRACE_SW_EXEC) ? 1 : 0); - if ((count < 0) || (count >= leftSize)) - goto exit; - pstr += count; - leftSize -= count; - -exit: - count = pstr - pStrBuf; - - return count; -} diff --git a/drivers/staging/rtl8723bs/hal/hal_com.c b/drivers/staging/rtl8723bs/hal/hal_com.c index e82f59fc5e9b..eebd48438733 100644 --- a/drivers/staging/rtl8723bs/hal/hal_com.c +++ b/drivers/staging/rtl8723bs/hal/hal_com.c @@ -295,126 +295,6 @@ u8 MRateToHwRate(u8 rate) case MGN_MCS31: ret = DESC_RATEMCS31; break; - case MGN_VHT1SS_MCS0: - ret = DESC_RATEVHTSS1MCS0; - break; - case MGN_VHT1SS_MCS1: - ret = DESC_RATEVHTSS1MCS1; - break; - case MGN_VHT1SS_MCS2: - ret = DESC_RATEVHTSS1MCS2; - break; - case MGN_VHT1SS_MCS3: - ret = DESC_RATEVHTSS1MCS3; - break; - case MGN_VHT1SS_MCS4: - ret = DESC_RATEVHTSS1MCS4; - break; - case MGN_VHT1SS_MCS5: - ret = DESC_RATEVHTSS1MCS5; - break; - case MGN_VHT1SS_MCS6: - ret = DESC_RATEVHTSS1MCS6; - break; - case MGN_VHT1SS_MCS7: - ret = DESC_RATEVHTSS1MCS7; - break; - case MGN_VHT1SS_MCS8: - ret = DESC_RATEVHTSS1MCS8; - break; - case MGN_VHT1SS_MCS9: - ret = DESC_RATEVHTSS1MCS9; - break; - case MGN_VHT2SS_MCS0: - ret = DESC_RATEVHTSS2MCS0; - break; - case MGN_VHT2SS_MCS1: - ret = DESC_RATEVHTSS2MCS1; - break; - case MGN_VHT2SS_MCS2: - ret = DESC_RATEVHTSS2MCS2; - break; - case MGN_VHT2SS_MCS3: - ret = DESC_RATEVHTSS2MCS3; - break; - case MGN_VHT2SS_MCS4: - ret = DESC_RATEVHTSS2MCS4; - break; - case MGN_VHT2SS_MCS5: - ret = DESC_RATEVHTSS2MCS5; - break; - case MGN_VHT2SS_MCS6: - ret = DESC_RATEVHTSS2MCS6; - break; - case MGN_VHT2SS_MCS7: - ret = DESC_RATEVHTSS2MCS7; - break; - case MGN_VHT2SS_MCS8: - ret = DESC_RATEVHTSS2MCS8; - break; - case MGN_VHT2SS_MCS9: - ret = DESC_RATEVHTSS2MCS9; - break; - case MGN_VHT3SS_MCS0: - ret = DESC_RATEVHTSS3MCS0; - break; - case MGN_VHT3SS_MCS1: - ret = DESC_RATEVHTSS3MCS1; - break; - case MGN_VHT3SS_MCS2: - ret = DESC_RATEVHTSS3MCS2; - break; - case MGN_VHT3SS_MCS3: - ret = DESC_RATEVHTSS3MCS3; - break; - case MGN_VHT3SS_MCS4: - ret = DESC_RATEVHTSS3MCS4; - break; - case MGN_VHT3SS_MCS5: - ret = DESC_RATEVHTSS3MCS5; - break; - case MGN_VHT3SS_MCS6: - ret = DESC_RATEVHTSS3MCS6; - break; - case MGN_VHT3SS_MCS7: - ret = DESC_RATEVHTSS3MCS7; - break; - case MGN_VHT3SS_MCS8: - ret = DESC_RATEVHTSS3MCS8; - break; - case MGN_VHT3SS_MCS9: - ret = DESC_RATEVHTSS3MCS9; - break; - case MGN_VHT4SS_MCS0: - ret = DESC_RATEVHTSS4MCS0; - break; - case MGN_VHT4SS_MCS1: - ret = DESC_RATEVHTSS4MCS1; - break; - case MGN_VHT4SS_MCS2: - ret = DESC_RATEVHTSS4MCS2; - break; - case MGN_VHT4SS_MCS3: - ret = DESC_RATEVHTSS4MCS3; - break; - case MGN_VHT4SS_MCS4: - ret = DESC_RATEVHTSS4MCS4; - break; - case MGN_VHT4SS_MCS5: - ret = DESC_RATEVHTSS4MCS5; - break; - case MGN_VHT4SS_MCS6: - ret = DESC_RATEVHTSS4MCS6; - break; - case MGN_VHT4SS_MCS7: - ret = DESC_RATEVHTSS4MCS7; - break; - case MGN_VHT4SS_MCS8: - ret = DESC_RATEVHTSS4MCS8; - break; - case MGN_VHT4SS_MCS9: - ret = DESC_RATEVHTSS4MCS9; - break; default: break; } @@ -559,127 +439,6 @@ u8 HwRateToMRate(u8 rate) case DESC_RATEMCS31: ret_rate = MGN_MCS31; break; - case DESC_RATEVHTSS1MCS0: - ret_rate = MGN_VHT1SS_MCS0; - break; - case DESC_RATEVHTSS1MCS1: - ret_rate = MGN_VHT1SS_MCS1; - break; - case DESC_RATEVHTSS1MCS2: - ret_rate = MGN_VHT1SS_MCS2; - break; - case DESC_RATEVHTSS1MCS3: - ret_rate = MGN_VHT1SS_MCS3; - break; - case DESC_RATEVHTSS1MCS4: - ret_rate = MGN_VHT1SS_MCS4; - break; - case DESC_RATEVHTSS1MCS5: - ret_rate = MGN_VHT1SS_MCS5; - break; - case DESC_RATEVHTSS1MCS6: - ret_rate = MGN_VHT1SS_MCS6; - break; - case DESC_RATEVHTSS1MCS7: - ret_rate = MGN_VHT1SS_MCS7; - break; - case DESC_RATEVHTSS1MCS8: - ret_rate = MGN_VHT1SS_MCS8; - break; - case DESC_RATEVHTSS1MCS9: - ret_rate = MGN_VHT1SS_MCS9; - break; - case DESC_RATEVHTSS2MCS0: - ret_rate = MGN_VHT2SS_MCS0; - break; - case DESC_RATEVHTSS2MCS1: - ret_rate = MGN_VHT2SS_MCS1; - break; - case DESC_RATEVHTSS2MCS2: - ret_rate = MGN_VHT2SS_MCS2; - break; - case DESC_RATEVHTSS2MCS3: - ret_rate = MGN_VHT2SS_MCS3; - break; - case DESC_RATEVHTSS2MCS4: - ret_rate = MGN_VHT2SS_MCS4; - break; - case DESC_RATEVHTSS2MCS5: - ret_rate = MGN_VHT2SS_MCS5; - break; - case DESC_RATEVHTSS2MCS6: - ret_rate = MGN_VHT2SS_MCS6; - break; - case DESC_RATEVHTSS2MCS7: - ret_rate = MGN_VHT2SS_MCS7; - break; - case DESC_RATEVHTSS2MCS8: - ret_rate = MGN_VHT2SS_MCS8; - break; - case DESC_RATEVHTSS2MCS9: - ret_rate = MGN_VHT2SS_MCS9; - break; - case DESC_RATEVHTSS3MCS0: - ret_rate = MGN_VHT3SS_MCS0; - break; - case DESC_RATEVHTSS3MCS1: - ret_rate = MGN_VHT3SS_MCS1; - break; - case DESC_RATEVHTSS3MCS2: - ret_rate = MGN_VHT3SS_MCS2; - break; - case DESC_RATEVHTSS3MCS3: - ret_rate = MGN_VHT3SS_MCS3; - break; - case DESC_RATEVHTSS3MCS4: - ret_rate = MGN_VHT3SS_MCS4; - break; - case DESC_RATEVHTSS3MCS5: - ret_rate = MGN_VHT3SS_MCS5; - break; - case DESC_RATEVHTSS3MCS6: - ret_rate = MGN_VHT3SS_MCS6; - break; - case DESC_RATEVHTSS3MCS7: - ret_rate = MGN_VHT3SS_MCS7; - break; - case DESC_RATEVHTSS3MCS8: - ret_rate = MGN_VHT3SS_MCS8; - break; - case DESC_RATEVHTSS3MCS9: - ret_rate = MGN_VHT3SS_MCS9; - break; - case DESC_RATEVHTSS4MCS0: - ret_rate = MGN_VHT4SS_MCS0; - break; - case DESC_RATEVHTSS4MCS1: - ret_rate = MGN_VHT4SS_MCS1; - break; - case DESC_RATEVHTSS4MCS2: - ret_rate = MGN_VHT4SS_MCS2; - break; - case DESC_RATEVHTSS4MCS3: - ret_rate = MGN_VHT4SS_MCS3; - break; - case DESC_RATEVHTSS4MCS4: - ret_rate = MGN_VHT4SS_MCS4; - break; - case DESC_RATEVHTSS4MCS5: - ret_rate = MGN_VHT4SS_MCS5; - break; - case DESC_RATEVHTSS4MCS6: - ret_rate = MGN_VHT4SS_MCS6; - break; - case DESC_RATEVHTSS4MCS7: - ret_rate = MGN_VHT4SS_MCS7; - break; - case DESC_RATEVHTSS4MCS8: - ret_rate = MGN_VHT4SS_MCS8; - break; - case DESC_RATEVHTSS4MCS9: - ret_rate = MGN_VHT4SS_MCS9; - break; - default: break; } @@ -916,16 +675,10 @@ s32 c2h_evt_read_88xx(struct adapter *adapter, u8 *buf) c2h_evt->seq = rtw_read8(adapter, REG_C2HEVT_CMD_SEQ_88XX); c2h_evt->plen = rtw_read8(adapter, REG_C2HEVT_CMD_LEN_88XX); - print_hex_dump_debug(DRIVER_PREFIX ": c2h_evt_read(): ", DUMP_PREFIX_NONE, - 16, 1, &c2h_evt, sizeof(c2h_evt), false); - /* Read the content */ for (i = 0; i < c2h_evt->plen; i++) c2h_evt->payload[i] = rtw_read8(adapter, REG_C2HEVT_MSG_NORMAL + 2 + i); - print_hex_dump_debug(DRIVER_PREFIX ": c2h_evt_read(): Command Content:\n", - DUMP_PREFIX_NONE, 16, 1, c2h_evt->payload, c2h_evt->plen, false); - ret = _SUCCESS; clear_evt: @@ -1093,13 +846,6 @@ u8 SetHalDefVar( u8 bResult = _SUCCESS; switch (variable) { - case HW_DEF_FA_CNT_DUMP: - /* ODM_COMP_COMMON */ - if (*((u8 *)value)) - odm->DebugComponents |= (ODM_COMP_DIG | ODM_COMP_FA_CNT); - else - odm->DebugComponents &= ~(ODM_COMP_DIG | ODM_COMP_FA_CNT); - break; case HAL_DEF_DBG_RX_INFO_DUMP: if (odm->bLinked) { @@ -1166,7 +912,6 @@ u8 GetHalDefVar( ) { struct hal_com_data *hal_data = GET_HAL_DATA(adapter); - struct dm_odm_t *odm = &(hal_data->odmpriv); u8 bResult = _SUCCESS; switch (variable) { @@ -1183,12 +928,6 @@ u8 GetHalDefVar( *((int *)value) = psta->rssi_stat.UndecoratedSmoothedPWDB; } break; - case HW_DEF_ODM_DBG_FLAG: - *((u64 *)value) = odm->DebugComponents; - break; - case HW_DEF_ODM_DBG_LEVEL: - *((u32 *)value) = odm->DebugLevel; - break; case HAL_DEF_DBG_DM_FUNC: *((u32 *)value) = hal_data->odmpriv.SupportAbility; break; diff --git a/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c b/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c index 94d11689b4ac..bb7941aee0c4 100644 --- a/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c +++ b/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c @@ -11,7 +11,7 @@ #include <hal_data.h> #include <linux/kernel.h> -u8 PHY_GetTxPowerByRateBase(struct adapter *Adapter, u8 Band, u8 RfPath, +u8 PHY_GetTxPowerByRateBase(struct adapter *Adapter, u8 RfPath, u8 TxNum, enum rate_section RateSection) { struct hal_com_data *pHalData = GET_HAL_DATA(Adapter); @@ -20,73 +20,27 @@ u8 PHY_GetTxPowerByRateBase(struct adapter *Adapter, u8 Band, u8 RfPath, if (RfPath > ODM_RF_PATH_D) return 0; - if (Band == BAND_ON_2_4G) { - switch (RateSection) { - case CCK: - value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][0]; - break; - case OFDM: - value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][1]; - break; - case HT_MCS0_MCS7: - value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][2]; - break; - case HT_MCS8_MCS15: - value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][3]; - break; - case HT_MCS16_MCS23: - value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][4]; - break; - case HT_MCS24_MCS31: - value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][5]; - break; - case VHT_1SSMCS0_1SSMCS9: - value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][6]; - break; - case VHT_2SSMCS0_2SSMCS9: - value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][7]; - break; - case VHT_3SSMCS0_3SSMCS9: - value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][8]; - break; - case VHT_4SSMCS0_4SSMCS9: - value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][9]; - break; - default: - break; - } - } else if (Band == BAND_ON_5G) { - switch (RateSection) { - case OFDM: - value = pHalData->TxPwrByRateBase5G[RfPath][TxNum][0]; - break; - case HT_MCS0_MCS7: - value = pHalData->TxPwrByRateBase5G[RfPath][TxNum][1]; - break; - case HT_MCS8_MCS15: - value = pHalData->TxPwrByRateBase5G[RfPath][TxNum][2]; - break; - case HT_MCS16_MCS23: - value = pHalData->TxPwrByRateBase5G[RfPath][TxNum][3]; - break; - case HT_MCS24_MCS31: - value = pHalData->TxPwrByRateBase5G[RfPath][TxNum][4]; - break; - case VHT_1SSMCS0_1SSMCS9: - value = pHalData->TxPwrByRateBase5G[RfPath][TxNum][5]; - break; - case VHT_2SSMCS0_2SSMCS9: - value = pHalData->TxPwrByRateBase5G[RfPath][TxNum][6]; - break; - case VHT_3SSMCS0_3SSMCS9: - value = pHalData->TxPwrByRateBase5G[RfPath][TxNum][7]; - break; - case VHT_4SSMCS0_4SSMCS9: - value = pHalData->TxPwrByRateBase5G[RfPath][TxNum][8]; - break; - default: - break; - } + switch (RateSection) { + case CCK: + value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][0]; + break; + case OFDM: + value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][1]; + break; + case HT_MCS0_MCS7: + value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][2]; + break; + case HT_MCS8_MCS15: + value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][3]; + break; + case HT_MCS16_MCS23: + value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][4]; + break; + case HT_MCS24_MCS31: + value = pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][5]; + break; + default: + break; } return value; @@ -95,7 +49,6 @@ u8 PHY_GetTxPowerByRateBase(struct adapter *Adapter, u8 Band, u8 RfPath, static void phy_SetTxPowerByRateBase( struct adapter *Adapter, - u8 Band, u8 RfPath, enum rate_section RateSection, u8 TxNum, @@ -107,73 +60,27 @@ phy_SetTxPowerByRateBase( if (RfPath > ODM_RF_PATH_D) return; - if (Band == BAND_ON_2_4G) { - switch (RateSection) { - case CCK: - pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][0] = Value; - break; - case OFDM: - pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][1] = Value; - break; - case HT_MCS0_MCS7: - pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][2] = Value; - break; - case HT_MCS8_MCS15: - pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][3] = Value; - break; - case HT_MCS16_MCS23: - pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][4] = Value; - break; - case HT_MCS24_MCS31: - pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][5] = Value; - break; - case VHT_1SSMCS0_1SSMCS9: - pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][6] = Value; - break; - case VHT_2SSMCS0_2SSMCS9: - pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][7] = Value; - break; - case VHT_3SSMCS0_3SSMCS9: - pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][8] = Value; - break; - case VHT_4SSMCS0_4SSMCS9: - pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][9] = Value; - break; - default: - break; - } - } else if (Band == BAND_ON_5G) { - switch (RateSection) { - case OFDM: - pHalData->TxPwrByRateBase5G[RfPath][TxNum][0] = Value; - break; - case HT_MCS0_MCS7: - pHalData->TxPwrByRateBase5G[RfPath][TxNum][1] = Value; - break; - case HT_MCS8_MCS15: - pHalData->TxPwrByRateBase5G[RfPath][TxNum][2] = Value; - break; - case HT_MCS16_MCS23: - pHalData->TxPwrByRateBase5G[RfPath][TxNum][3] = Value; - break; - case HT_MCS24_MCS31: - pHalData->TxPwrByRateBase5G[RfPath][TxNum][4] = Value; - break; - case VHT_1SSMCS0_1SSMCS9: - pHalData->TxPwrByRateBase5G[RfPath][TxNum][5] = Value; - break; - case VHT_2SSMCS0_2SSMCS9: - pHalData->TxPwrByRateBase5G[RfPath][TxNum][6] = Value; - break; - case VHT_3SSMCS0_3SSMCS9: - pHalData->TxPwrByRateBase5G[RfPath][TxNum][7] = Value; - break; - case VHT_4SSMCS0_4SSMCS9: - pHalData->TxPwrByRateBase5G[RfPath][TxNum][8] = Value; - break; - default: - break; - } + switch (RateSection) { + case CCK: + pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][0] = Value; + break; + case OFDM: + pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][1] = Value; + break; + case HT_MCS0_MCS7: + pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][2] = Value; + break; + case HT_MCS8_MCS15: + pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][3] = Value; + break; + case HT_MCS16_MCS23: + pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][4] = Value; + break; + case HT_MCS24_MCS31: + pHalData->TxPwrByRateBase2_4G[RfPath][TxNum][5] = Value; + break; + default: + break; } } @@ -185,50 +92,21 @@ struct adapter *padapter u8 path, base; for (path = ODM_RF_PATH_A; path <= ODM_RF_PATH_B; ++path) { - base = PHY_GetTxPowerByRate(padapter, BAND_ON_2_4G, path, RF_1TX, MGN_11M); - phy_SetTxPowerByRateBase(padapter, BAND_ON_2_4G, path, CCK, RF_1TX, base); - - base = PHY_GetTxPowerByRate(padapter, BAND_ON_2_4G, path, RF_1TX, MGN_54M); - phy_SetTxPowerByRateBase(padapter, BAND_ON_2_4G, path, OFDM, RF_1TX, base); - - base = PHY_GetTxPowerByRate(padapter, BAND_ON_2_4G, path, RF_1TX, MGN_MCS7); - phy_SetTxPowerByRateBase(padapter, BAND_ON_2_4G, path, HT_MCS0_MCS7, RF_1TX, base); - - base = PHY_GetTxPowerByRate(padapter, BAND_ON_2_4G, path, RF_2TX, MGN_MCS15); - phy_SetTxPowerByRateBase(padapter, BAND_ON_2_4G, path, HT_MCS8_MCS15, RF_2TX, base); - - base = PHY_GetTxPowerByRate(padapter, BAND_ON_2_4G, path, RF_3TX, MGN_MCS23); - phy_SetTxPowerByRateBase(padapter, BAND_ON_2_4G, path, HT_MCS16_MCS23, RF_3TX, base); - - base = PHY_GetTxPowerByRate(padapter, BAND_ON_2_4G, path, RF_1TX, MGN_VHT1SS_MCS7); - phy_SetTxPowerByRateBase(padapter, BAND_ON_2_4G, path, VHT_1SSMCS0_1SSMCS9, RF_1TX, base); - - base = PHY_GetTxPowerByRate(padapter, BAND_ON_2_4G, path, RF_2TX, MGN_VHT2SS_MCS7); - phy_SetTxPowerByRateBase(padapter, BAND_ON_2_4G, path, VHT_2SSMCS0_2SSMCS9, RF_2TX, base); - - base = PHY_GetTxPowerByRate(padapter, BAND_ON_2_4G, path, RF_3TX, MGN_VHT3SS_MCS7); - phy_SetTxPowerByRateBase(padapter, BAND_ON_2_4G, path, VHT_3SSMCS0_3SSMCS9, RF_3TX, base); + base = PHY_GetTxPowerByRate(padapter, path, RF_1TX, MGN_11M); + phy_SetTxPowerByRateBase(padapter, path, CCK, RF_1TX, base); - base = PHY_GetTxPowerByRate(padapter, BAND_ON_5G, path, RF_1TX, MGN_54M); - phy_SetTxPowerByRateBase(padapter, BAND_ON_5G, path, OFDM, RF_1TX, base); + base = PHY_GetTxPowerByRate(padapter, path, RF_1TX, MGN_54M); + phy_SetTxPowerByRateBase(padapter, path, OFDM, RF_1TX, base); - base = PHY_GetTxPowerByRate(padapter, BAND_ON_5G, path, RF_1TX, MGN_MCS7); - phy_SetTxPowerByRateBase(padapter, BAND_ON_5G, path, HT_MCS0_MCS7, RF_1TX, base); + base = PHY_GetTxPowerByRate(padapter, path, RF_1TX, MGN_MCS7); + phy_SetTxPowerByRateBase(padapter, path, HT_MCS0_MCS7, RF_1TX, base); - base = PHY_GetTxPowerByRate(padapter, BAND_ON_5G, path, RF_2TX, MGN_MCS15); - phy_SetTxPowerByRateBase(padapter, BAND_ON_5G, path, HT_MCS8_MCS15, RF_2TX, base); + base = PHY_GetTxPowerByRate(padapter, path, RF_2TX, MGN_MCS15); + phy_SetTxPowerByRateBase(padapter, path, HT_MCS8_MCS15, RF_2TX, base); - base = PHY_GetTxPowerByRate(padapter, BAND_ON_5G, path, RF_3TX, MGN_MCS23); - phy_SetTxPowerByRateBase(padapter, BAND_ON_5G, path, HT_MCS16_MCS23, RF_3TX, base); + base = PHY_GetTxPowerByRate(padapter, path, RF_3TX, MGN_MCS23); + phy_SetTxPowerByRateBase(padapter, path, HT_MCS16_MCS23, RF_3TX, base); - base = PHY_GetTxPowerByRate(padapter, BAND_ON_5G, path, RF_1TX, MGN_VHT1SS_MCS7); - phy_SetTxPowerByRateBase(padapter, BAND_ON_5G, path, VHT_1SSMCS0_1SSMCS9, RF_1TX, base); - - base = PHY_GetTxPowerByRate(padapter, BAND_ON_5G, path, RF_2TX, MGN_VHT2SS_MCS7); - phy_SetTxPowerByRateBase(padapter, BAND_ON_5G, path, VHT_2SSMCS0_2SSMCS9, RF_2TX, base); - - base = PHY_GetTxPowerByRate(padapter, BAND_ON_5G, path, RF_3TX, MGN_VHT2SS_MCS7); - phy_SetTxPowerByRateBase(padapter, BAND_ON_5G, path, VHT_3SSMCS0_3SSMCS9, RF_3TX, base); } } @@ -532,81 +410,6 @@ PHY_GetRateValuesOfTxPowerByRate( *RateNum = 4; break; - case 0xC3C: - case 0xE3C: - case 0x183C: - case 0x1a3C: - RateIndex[0] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT1SS_MCS0); - RateIndex[1] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT1SS_MCS1); - RateIndex[2] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT1SS_MCS2); - RateIndex[3] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT1SS_MCS3); - for (i = 0; i < 4; ++i) { - PwrByRateVal[i] = (s8) ((((Value >> (i * 8 + 4)) & 0xF)) * 10 + - ((Value >> (i * 8)) & 0xF)); - } - *RateNum = 4; - break; - - case 0xC40: - case 0xE40: - case 0x1840: - case 0x1a40: - RateIndex[0] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT1SS_MCS4); - RateIndex[1] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT1SS_MCS5); - RateIndex[2] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT1SS_MCS6); - RateIndex[3] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT1SS_MCS7); - for (i = 0; i < 4; ++i) { - PwrByRateVal[i] = (s8) ((((Value >> (i * 8 + 4)) & 0xF)) * 10 + - ((Value >> (i * 8)) & 0xF)); - } - *RateNum = 4; - break; - - case 0xC44: - case 0xE44: - case 0x1844: - case 0x1a44: - RateIndex[0] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT1SS_MCS8); - RateIndex[1] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT1SS_MCS9); - RateIndex[2] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS0); - RateIndex[3] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS1); - for (i = 0; i < 4; ++i) { - PwrByRateVal[i] = (s8) ((((Value >> (i * 8 + 4)) & 0xF)) * 10 + - ((Value >> (i * 8)) & 0xF)); - } - *RateNum = 4; - break; - - case 0xC48: - case 0xE48: - case 0x1848: - case 0x1a48: - RateIndex[0] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS2); - RateIndex[1] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS3); - RateIndex[2] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS4); - RateIndex[3] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS5); - for (i = 0; i < 4; ++i) { - PwrByRateVal[i] = (s8) ((((Value >> (i * 8 + 4)) & 0xF)) * 10 + - ((Value >> (i * 8)) & 0xF)); - } - *RateNum = 4; - break; - - case 0xC4C: - case 0xE4C: - case 0x184C: - case 0x1a4C: - RateIndex[0] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS6); - RateIndex[1] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS7); - RateIndex[2] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS8); - RateIndex[3] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS9); - for (i = 0; i < 4; ++i) { - PwrByRateVal[i] = (s8) ((((Value >> (i * 8 + 4)) & 0xF)) * 10 + - ((Value >> (i * 8)) & 0xF)); - } - *RateNum = 4; - break; - case 0xCD8: case 0xED8: case 0x18D8: @@ -637,49 +440,6 @@ PHY_GetRateValuesOfTxPowerByRate( *RateNum = 4; break; - case 0xCE0: - case 0xEE0: - case 0x18E0: - case 0x1aE0: - RateIndex[0] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT3SS_MCS0); - RateIndex[1] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT3SS_MCS1); - RateIndex[2] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT3SS_MCS2); - RateIndex[3] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT3SS_MCS3); - for (i = 0; i < 4; ++i) { - PwrByRateVal[i] = (s8) ((((Value >> (i * 8 + 4)) & 0xF)) * 10 + - ((Value >> (i * 8)) & 0xF)); - } - *RateNum = 4; - break; - - case 0xCE4: - case 0xEE4: - case 0x18E4: - case 0x1aE4: - RateIndex[0] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT3SS_MCS4); - RateIndex[1] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT3SS_MCS5); - RateIndex[2] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT3SS_MCS6); - RateIndex[3] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT3SS_MCS7); - for (i = 0; i < 4; ++i) { - PwrByRateVal[i] = (s8) ((((Value >> (i * 8 + 4)) & 0xF)) * 10 + - ((Value >> (i * 8)) & 0xF)); - } - *RateNum = 4; - break; - - case 0xCE8: - case 0xEE8: - case 0x18E8: - case 0x1aE8: - RateIndex[0] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT3SS_MCS8); - RateIndex[1] = PHY_GetRateIndexOfTxPowerByRate(MGN_VHT3SS_MCS9); - for (i = 0; i < 2; ++i) { - PwrByRateVal[i] = (s8) ((((Value >> (i * 8 + 4)) & 0xF)) * 10 + - ((Value >> (i * 8)) & 0xF)); - } - *RateNum = 4; - break; - default: break; } @@ -687,7 +447,6 @@ PHY_GetRateValuesOfTxPowerByRate( static void PHY_StoreTxPowerByRateNew( struct adapter *padapter, - u32 Band, u32 RfPath, u32 TxNum, u32 RegAddr, @@ -701,9 +460,6 @@ static void PHY_StoreTxPowerByRateNew( PHY_GetRateValuesOfTxPowerByRate(padapter, RegAddr, BitMask, Data, rateIndex, PwrByRateVal, &rateNum); - if (Band != BAND_ON_2_4G && Band != BAND_ON_5G) - return; - if (RfPath > ODM_RF_PATH_D) return; @@ -711,11 +467,7 @@ static void PHY_StoreTxPowerByRateNew( return; for (i = 0; i < rateNum; ++i) { - if (rateIndex[i] == PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS0) || - rateIndex[i] == PHY_GetRateIndexOfTxPowerByRate(MGN_VHT2SS_MCS1)) - TxNum = RF_2TX; - - pHalData->TxPwrByRateOffset[Band][RfPath][TxNum][rateIndex[i]] = PwrByRateVal[i]; + pHalData->TxPwrByRateOffset[RfPath][TxNum][rateIndex[i]] = PwrByRateVal[i]; } } @@ -732,18 +484,16 @@ static void PHY_StoreTxPowerByRateOld( void PHY_InitTxPowerByRate(struct adapter *padapter) { struct hal_com_data *pHalData = GET_HAL_DATA(padapter); - u8 band, rfPath, TxNum, rate; + u8 rfPath, TxNum, rate; - for (band = BAND_ON_2_4G; band <= BAND_ON_5G; ++band) - for (rfPath = 0; rfPath < TX_PWR_BY_RATE_NUM_RF; ++rfPath) - for (TxNum = 0; TxNum < TX_PWR_BY_RATE_NUM_RF; ++TxNum) - for (rate = 0; rate < TX_PWR_BY_RATE_NUM_RATE; ++rate) - pHalData->TxPwrByRateOffset[band][rfPath][TxNum][rate] = 0; + for (rfPath = 0; rfPath < TX_PWR_BY_RATE_NUM_RF; ++rfPath) + for (TxNum = 0; TxNum < TX_PWR_BY_RATE_NUM_RF; ++TxNum) + for (rate = 0; rate < TX_PWR_BY_RATE_NUM_RATE; ++rate) + pHalData->TxPwrByRateOffset[rfPath][TxNum][rate] = 0; } void PHY_StoreTxPowerByRate( struct adapter *padapter, - u32 Band, u32 RfPath, u32 TxNum, u32 RegAddr, @@ -755,7 +505,7 @@ void PHY_StoreTxPowerByRate( struct dm_odm_t *pDM_Odm = &pHalData->odmpriv; if (pDM_Odm->PhyRegPgVersion > 0) - PHY_StoreTxPowerByRateNew(padapter, Band, RfPath, TxNum, RegAddr, BitMask, Data); + PHY_StoreTxPowerByRateNew(padapter, RfPath, TxNum, RegAddr, BitMask, Data); else if (pDM_Odm->PhyRegPgVersion == 0) { PHY_StoreTxPowerByRateOld(padapter, RegAddr, BitMask, Data); @@ -771,7 +521,7 @@ phy_ConvertTxPowerByRateInDbmToRelativeValues( struct adapter *padapter ) { - u8 base = 0, i = 0, value = 0, band = 0, path = 0, txNum = 0; + u8 base = 0, i = 0, value = 0, path = 0, txNum = 0; u8 cckRates[4] = { MGN_1M, MGN_2M, MGN_5_5M, MGN_11M }; @@ -787,77 +537,42 @@ struct adapter *padapter u8 mcs16_23Rates[8] = { MGN_MCS16, MGN_MCS17, MGN_MCS18, MGN_MCS19, MGN_MCS20, MGN_MCS21, MGN_MCS22, MGN_MCS23 }; - u8 vht1ssRates[10] = { - MGN_VHT1SS_MCS0, MGN_VHT1SS_MCS1, MGN_VHT1SS_MCS2, MGN_VHT1SS_MCS3, MGN_VHT1SS_MCS4, - MGN_VHT1SS_MCS5, MGN_VHT1SS_MCS6, MGN_VHT1SS_MCS7, MGN_VHT1SS_MCS8, MGN_VHT1SS_MCS9 - }; - u8 vht2ssRates[10] = { - MGN_VHT2SS_MCS0, MGN_VHT2SS_MCS1, MGN_VHT2SS_MCS2, MGN_VHT2SS_MCS3, MGN_VHT2SS_MCS4, - MGN_VHT2SS_MCS5, MGN_VHT2SS_MCS6, MGN_VHT2SS_MCS7, MGN_VHT2SS_MCS8, MGN_VHT2SS_MCS9 - }; - u8 vht3ssRates[10] = { - MGN_VHT3SS_MCS0, MGN_VHT3SS_MCS1, MGN_VHT3SS_MCS2, MGN_VHT3SS_MCS3, MGN_VHT3SS_MCS4, - MGN_VHT3SS_MCS5, MGN_VHT3SS_MCS6, MGN_VHT3SS_MCS7, MGN_VHT3SS_MCS8, MGN_VHT3SS_MCS9 - }; - - for (band = BAND_ON_2_4G; band <= BAND_ON_5G; ++band) { - for (path = ODM_RF_PATH_A; path <= ODM_RF_PATH_D; ++path) { - for (txNum = RF_1TX; txNum < RF_MAX_TX_NUM; ++txNum) { - /* CCK */ - base = PHY_GetTxPowerByRate(padapter, band, path, txNum, MGN_11M); - for (i = 0; i < ARRAY_SIZE(cckRates); ++i) { - value = PHY_GetTxPowerByRate(padapter, band, path, txNum, cckRates[i]); - PHY_SetTxPowerByRate(padapter, band, path, txNum, cckRates[i], value - base); - } - /* OFDM */ - base = PHY_GetTxPowerByRate(padapter, band, path, txNum, MGN_54M); - for (i = 0; i < sizeof(ofdmRates); ++i) { - value = PHY_GetTxPowerByRate(padapter, band, path, txNum, ofdmRates[i]); - PHY_SetTxPowerByRate(padapter, band, path, txNum, ofdmRates[i], value - base); - } - - /* HT MCS0~7 */ - base = PHY_GetTxPowerByRate(padapter, band, path, txNum, MGN_MCS7); - for (i = 0; i < sizeof(mcs0_7Rates); ++i) { - value = PHY_GetTxPowerByRate(padapter, band, path, txNum, mcs0_7Rates[i]); - PHY_SetTxPowerByRate(padapter, band, path, txNum, mcs0_7Rates[i], value - base); - } - - /* HT MCS8~15 */ - base = PHY_GetTxPowerByRate(padapter, band, path, txNum, MGN_MCS15); - for (i = 0; i < sizeof(mcs8_15Rates); ++i) { - value = PHY_GetTxPowerByRate(padapter, band, path, txNum, mcs8_15Rates[i]); - PHY_SetTxPowerByRate(padapter, band, path, txNum, mcs8_15Rates[i], value - base); - } + for (path = ODM_RF_PATH_A; path <= ODM_RF_PATH_D; ++path) { + for (txNum = RF_1TX; txNum < RF_MAX_TX_NUM; ++txNum) { + /* CCK */ + base = PHY_GetTxPowerByRate(padapter, path, txNum, MGN_11M); + for (i = 0; i < ARRAY_SIZE(cckRates); ++i) { + value = PHY_GetTxPowerByRate(padapter, path, txNum, cckRates[i]); + PHY_SetTxPowerByRate(padapter, path, txNum, cckRates[i], value - base); + } - /* HT MCS16~23 */ - base = PHY_GetTxPowerByRate(padapter, band, path, txNum, MGN_MCS23); - for (i = 0; i < sizeof(mcs16_23Rates); ++i) { - value = PHY_GetTxPowerByRate(padapter, band, path, txNum, mcs16_23Rates[i]); - PHY_SetTxPowerByRate(padapter, band, path, txNum, mcs16_23Rates[i], value - base); - } + /* OFDM */ + base = PHY_GetTxPowerByRate(padapter, path, txNum, MGN_54M); + for (i = 0; i < sizeof(ofdmRates); ++i) { + value = PHY_GetTxPowerByRate(padapter, path, txNum, ofdmRates[i]); + PHY_SetTxPowerByRate(padapter, path, txNum, ofdmRates[i], value - base); + } - /* VHT 1SS */ - base = PHY_GetTxPowerByRate(padapter, band, path, txNum, MGN_VHT1SS_MCS7); - for (i = 0; i < sizeof(vht1ssRates); ++i) { - value = PHY_GetTxPowerByRate(padapter, band, path, txNum, vht1ssRates[i]); - PHY_SetTxPowerByRate(padapter, band, path, txNum, vht1ssRates[i], value - base); - } + /* HT MCS0~7 */ + base = PHY_GetTxPowerByRate(padapter, path, txNum, MGN_MCS7); + for (i = 0; i < sizeof(mcs0_7Rates); ++i) { + value = PHY_GetTxPowerByRate(padapter, path, txNum, mcs0_7Rates[i]); + PHY_SetTxPowerByRate(padapter, path, txNum, mcs0_7Rates[i], value - base); + } - /* VHT 2SS */ - base = PHY_GetTxPowerByRate(padapter, band, path, txNum, MGN_VHT2SS_MCS7); - for (i = 0; i < sizeof(vht2ssRates); ++i) { - value = PHY_GetTxPowerByRate(padapter, band, path, txNum, vht2ssRates[i]); - PHY_SetTxPowerByRate(padapter, band, path, txNum, vht2ssRates[i], value - base); - } + /* HT MCS8~15 */ + base = PHY_GetTxPowerByRate(padapter, path, txNum, MGN_MCS15); + for (i = 0; i < sizeof(mcs8_15Rates); ++i) { + value = PHY_GetTxPowerByRate(padapter, path, txNum, mcs8_15Rates[i]); + PHY_SetTxPowerByRate(padapter, path, txNum, mcs8_15Rates[i], value - base); + } - /* VHT 3SS */ - base = PHY_GetTxPowerByRate(padapter, band, path, txNum, MGN_VHT3SS_MCS7); - for (i = 0; i < sizeof(vht3ssRates); ++i) { - value = PHY_GetTxPowerByRate(padapter, band, path, txNum, vht3ssRates[i]); - PHY_SetTxPowerByRate(padapter, band, path, txNum, vht3ssRates[i], value - base); - } + /* HT MCS16~23 */ + base = PHY_GetTxPowerByRate(padapter, path, txNum, MGN_MCS23); + for (i = 0; i < sizeof(mcs16_23Rates); ++i) { + value = PHY_GetTxPowerByRate(padapter, path, txNum, mcs16_23Rates[i]); + PHY_SetTxPowerByRate(padapter, path, txNum, mcs16_23Rates[i], value - base); } } } @@ -881,11 +596,10 @@ void PHY_SetTxPowerIndexByRateSection( if (RateSection == CCK) { u8 cckRates[] = {MGN_1M, MGN_2M, MGN_5_5M, MGN_11M}; - if (pHalData->CurrentBandType == BAND_ON_2_4G) - PHY_SetTxPowerIndexByRateArray(padapter, RFPath, - pHalData->CurrentChannelBW, - Channel, cckRates, - ARRAY_SIZE(cckRates)); + PHY_SetTxPowerIndexByRateArray(padapter, RFPath, + pHalData->CurrentChannelBW, + Channel, cckRates, + ARRAY_SIZE(cckRates)); } else if (RateSection == OFDM) { u8 ofdmRates[] = {MGN_6M, MGN_9M, MGN_12M, MGN_18M, MGN_24M, MGN_36M, MGN_48M, MGN_54M}; @@ -922,67 +636,7 @@ void PHY_SetTxPowerIndexByRateSection( Channel, htRates4T, ARRAY_SIZE(htRates4T)); - } else if (RateSection == VHT_1SSMCS0_1SSMCS9) { - u8 vhtRates1T[] = {MGN_VHT1SS_MCS0, MGN_VHT1SS_MCS1, MGN_VHT1SS_MCS2, MGN_VHT1SS_MCS3, MGN_VHT1SS_MCS4, - MGN_VHT1SS_MCS5, MGN_VHT1SS_MCS6, MGN_VHT1SS_MCS7, MGN_VHT1SS_MCS8, MGN_VHT1SS_MCS9}; - PHY_SetTxPowerIndexByRateArray(padapter, RFPath, - pHalData->CurrentChannelBW, - Channel, vhtRates1T, - ARRAY_SIZE(vhtRates1T)); - - } else if (RateSection == VHT_2SSMCS0_2SSMCS9) { - u8 vhtRates2T[] = {MGN_VHT2SS_MCS0, MGN_VHT2SS_MCS1, MGN_VHT2SS_MCS2, MGN_VHT2SS_MCS3, MGN_VHT2SS_MCS4, - MGN_VHT2SS_MCS5, MGN_VHT2SS_MCS6, MGN_VHT2SS_MCS7, MGN_VHT2SS_MCS8, MGN_VHT2SS_MCS9}; - - PHY_SetTxPowerIndexByRateArray(padapter, RFPath, - pHalData->CurrentChannelBW, - Channel, vhtRates2T, - ARRAY_SIZE(vhtRates2T)); - } else if (RateSection == VHT_3SSMCS0_3SSMCS9) { - u8 vhtRates3T[] = {MGN_VHT3SS_MCS0, MGN_VHT3SS_MCS1, MGN_VHT3SS_MCS2, MGN_VHT3SS_MCS3, MGN_VHT3SS_MCS4, - MGN_VHT3SS_MCS5, MGN_VHT3SS_MCS6, MGN_VHT3SS_MCS7, MGN_VHT3SS_MCS8, MGN_VHT3SS_MCS9}; - - PHY_SetTxPowerIndexByRateArray(padapter, RFPath, - pHalData->CurrentChannelBW, - Channel, vhtRates3T, - ARRAY_SIZE(vhtRates3T)); - } else if (RateSection == VHT_4SSMCS0_4SSMCS9) { - u8 vhtRates4T[] = {MGN_VHT4SS_MCS0, MGN_VHT4SS_MCS1, MGN_VHT4SS_MCS2, MGN_VHT4SS_MCS3, MGN_VHT4SS_MCS4, - MGN_VHT4SS_MCS5, MGN_VHT4SS_MCS6, MGN_VHT4SS_MCS7, MGN_VHT4SS_MCS8, MGN_VHT4SS_MCS9}; - - PHY_SetTxPowerIndexByRateArray(padapter, RFPath, - pHalData->CurrentChannelBW, - Channel, vhtRates4T, - ARRAY_SIZE(vhtRates4T)); - } -} - -static bool phy_GetChnlIndex(u8 Channel, u8 *ChannelIdx) -{ - u8 channel5G[CHANNEL_MAX_NUMBER_5G] = { - 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 100, 102, - 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, - 132, 134, 136, 138, 140, 142, 144, 149, 151, 153, 155, 157, 159, 161, - 163, 165, 167, 168, 169, 171, 173, 175, 177 - }; - u8 i = 0; - bool bIn24G = true; - - if (Channel <= 14) { - bIn24G = true; - *ChannelIdx = Channel-1; - } else { - bIn24G = false; - - for (i = 0; i < ARRAY_SIZE(channel5G); ++i) { - if (channel5G[i] == Channel) { - *ChannelIdx = i; - return bIn24G; - } - } } - - return bIn24G; } u8 PHY_GetTxPowerIndexBase( @@ -990,110 +644,45 @@ u8 PHY_GetTxPowerIndexBase( u8 RFPath, u8 Rate, enum channel_width BandWidth, - u8 Channel, - bool *bIn24G + u8 Channel ) { struct hal_com_data *pHalData = GET_HAL_DATA(padapter); - u8 i = 0; /* default set to 1S */ u8 txPower = 0; u8 chnlIdx = (Channel-1); if (HAL_IsLegalChannel(padapter, Channel) == false) chnlIdx = 0; - *bIn24G = phy_GetChnlIndex(Channel, &chnlIdx); - - if (*bIn24G) { /* 3 ============================== 2.4 G ============================== */ - if (IS_CCK_RATE(Rate)) - txPower = pHalData->Index24G_CCK_Base[RFPath][chnlIdx]; - else if (MGN_6M <= Rate) - txPower = pHalData->Index24G_BW40_Base[RFPath][chnlIdx]; - - /* OFDM-1T */ - if ((MGN_6M <= Rate && Rate <= MGN_54M) && !IS_CCK_RATE(Rate)) - txPower += pHalData->OFDM_24G_Diff[RFPath][TX_1S]; - - if (BandWidth == CHANNEL_WIDTH_20) { /* BW20-1S, BW20-2S */ - if ((MGN_MCS0 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT1SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW20_24G_Diff[RFPath][TX_1S]; - if ((MGN_MCS8 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT2SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW20_24G_Diff[RFPath][TX_2S]; - if ((MGN_MCS16 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT3SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW20_24G_Diff[RFPath][TX_3S]; - if ((MGN_MCS24 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT4SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW20_24G_Diff[RFPath][TX_4S]; - - } else if (BandWidth == CHANNEL_WIDTH_40) { /* BW40-1S, BW40-2S */ - if ((MGN_MCS0 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT1SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_24G_Diff[RFPath][TX_1S]; - if ((MGN_MCS8 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT2SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_24G_Diff[RFPath][TX_2S]; - if ((MGN_MCS16 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT3SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_24G_Diff[RFPath][TX_3S]; - if ((MGN_MCS24 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT4SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_24G_Diff[RFPath][TX_4S]; - - } - /* Willis suggest adopt BW 40M power index while in BW 80 mode */ - else if (BandWidth == CHANNEL_WIDTH_80) { - if ((MGN_MCS0 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT1SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_24G_Diff[RFPath][TX_1S]; - if ((MGN_MCS8 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT2SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_24G_Diff[RFPath][TX_2S]; - if ((MGN_MCS16 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT3SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_24G_Diff[RFPath][TX_3S]; - if ((MGN_MCS24 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT4SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_24G_Diff[RFPath][TX_4S]; + if (IS_CCK_RATE(Rate)) + txPower = pHalData->Index24G_CCK_Base[RFPath][chnlIdx]; + else if (MGN_6M <= Rate) + txPower = pHalData->Index24G_BW40_Base[RFPath][chnlIdx]; + + /* OFDM-1T */ + if ((MGN_6M <= Rate && Rate <= MGN_54M) && !IS_CCK_RATE(Rate)) + txPower += pHalData->OFDM_24G_Diff[RFPath][TX_1S]; + + if (BandWidth == CHANNEL_WIDTH_20) { /* BW20-1S, BW20-2S */ + if (MGN_MCS0 <= Rate && Rate <= MGN_MCS31) + txPower += pHalData->BW20_24G_Diff[RFPath][TX_1S]; + if (MGN_MCS8 <= Rate && Rate <= MGN_MCS31) + txPower += pHalData->BW20_24G_Diff[RFPath][TX_2S]; + if (MGN_MCS16 <= Rate && Rate <= MGN_MCS31) + txPower += pHalData->BW20_24G_Diff[RFPath][TX_3S]; + if (MGN_MCS24 <= Rate && Rate <= MGN_MCS31) + txPower += pHalData->BW20_24G_Diff[RFPath][TX_4S]; + + } else if (BandWidth == CHANNEL_WIDTH_40) { /* BW40-1S, BW40-2S */ + if (MGN_MCS0 <= Rate && Rate <= MGN_MCS31) + txPower += pHalData->BW40_24G_Diff[RFPath][TX_1S]; + if (MGN_MCS8 <= Rate && Rate <= MGN_MCS31) + txPower += pHalData->BW40_24G_Diff[RFPath][TX_2S]; + if (MGN_MCS16 <= Rate && Rate <= MGN_MCS31) + txPower += pHalData->BW40_24G_Diff[RFPath][TX_3S]; + if (MGN_MCS24 <= Rate && Rate <= MGN_MCS31) + txPower += pHalData->BW40_24G_Diff[RFPath][TX_4S]; - } - } else {/* 3 ============================== 5 G ============================== */ - if (MGN_6M <= Rate) - txPower = pHalData->Index5G_BW40_Base[RFPath][chnlIdx]; - - /* OFDM-1T */ - if ((MGN_6M <= Rate && Rate <= MGN_54M) && !IS_CCK_RATE(Rate)) - txPower += pHalData->OFDM_5G_Diff[RFPath][TX_1S]; - - /* BW20-1S, BW20-2S */ - if (BandWidth == CHANNEL_WIDTH_20) { - if ((MGN_MCS0 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT1SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW20_5G_Diff[RFPath][TX_1S]; - if ((MGN_MCS8 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT2SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW20_5G_Diff[RFPath][TX_2S]; - if ((MGN_MCS16 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT3SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW20_5G_Diff[RFPath][TX_3S]; - if ((MGN_MCS24 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT4SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW20_5G_Diff[RFPath][TX_4S]; - - } else if (BandWidth == CHANNEL_WIDTH_40) { /* BW40-1S, BW40-2S */ - if ((MGN_MCS0 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT1SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_5G_Diff[RFPath][TX_1S]; - if ((MGN_MCS8 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT2SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_5G_Diff[RFPath][TX_2S]; - if ((MGN_MCS16 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT3SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_5G_Diff[RFPath][TX_3S]; - if ((MGN_MCS24 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT4SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW40_5G_Diff[RFPath][TX_4S]; - - } else if (BandWidth == CHANNEL_WIDTH_80) { /* BW80-1S, BW80-2S */ - /* <20121220, Kordan> Get the index of array "Index5G_BW80_Base". */ - u8 channel5G_80M[CHANNEL_MAX_NUMBER_5G_80M] = {42, 58, 106, 122, 138, 155, 171}; - for (i = 0; i < ARRAY_SIZE(channel5G_80M); ++i) - if (channel5G_80M[i] == Channel) - chnlIdx = i; - - txPower = pHalData->Index5G_BW80_Base[RFPath][chnlIdx]; - - if ((MGN_MCS0 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT1SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += + pHalData->BW80_5G_Diff[RFPath][TX_1S]; - if ((MGN_MCS8 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT2SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW80_5G_Diff[RFPath][TX_2S]; - if ((MGN_MCS16 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT3SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW80_5G_Diff[RFPath][TX_3S]; - if ((MGN_MCS23 <= Rate && Rate <= MGN_MCS31) || (MGN_VHT4SS_MCS0 <= Rate && Rate <= MGN_VHT4SS_MCS9)) - txPower += pHalData->BW80_5G_Diff[RFPath][TX_4S]; - } } return txPower; @@ -1252,126 +841,6 @@ u8 PHY_GetRateIndexOfTxPowerByRate(u8 Rate) case MGN_MCS31: index = 43; break; - case MGN_VHT1SS_MCS0: - index = 44; - break; - case MGN_VHT1SS_MCS1: - index = 45; - break; - case MGN_VHT1SS_MCS2: - index = 46; - break; - case MGN_VHT1SS_MCS3: - index = 47; - break; - case MGN_VHT1SS_MCS4: - index = 48; - break; - case MGN_VHT1SS_MCS5: - index = 49; - break; - case MGN_VHT1SS_MCS6: - index = 50; - break; - case MGN_VHT1SS_MCS7: - index = 51; - break; - case MGN_VHT1SS_MCS8: - index = 52; - break; - case MGN_VHT1SS_MCS9: - index = 53; - break; - case MGN_VHT2SS_MCS0: - index = 54; - break; - case MGN_VHT2SS_MCS1: - index = 55; - break; - case MGN_VHT2SS_MCS2: - index = 56; - break; - case MGN_VHT2SS_MCS3: - index = 57; - break; - case MGN_VHT2SS_MCS4: - index = 58; - break; - case MGN_VHT2SS_MCS5: - index = 59; - break; - case MGN_VHT2SS_MCS6: - index = 60; - break; - case MGN_VHT2SS_MCS7: - index = 61; - break; - case MGN_VHT2SS_MCS8: - index = 62; - break; - case MGN_VHT2SS_MCS9: - index = 63; - break; - case MGN_VHT3SS_MCS0: - index = 64; - break; - case MGN_VHT3SS_MCS1: - index = 65; - break; - case MGN_VHT3SS_MCS2: - index = 66; - break; - case MGN_VHT3SS_MCS3: - index = 67; - break; - case MGN_VHT3SS_MCS4: - index = 68; - break; - case MGN_VHT3SS_MCS5: - index = 69; - break; - case MGN_VHT3SS_MCS6: - index = 70; - break; - case MGN_VHT3SS_MCS7: - index = 71; - break; - case MGN_VHT3SS_MCS8: - index = 72; - break; - case MGN_VHT3SS_MCS9: - index = 73; - break; - case MGN_VHT4SS_MCS0: - index = 74; - break; - case MGN_VHT4SS_MCS1: - index = 75; - break; - case MGN_VHT4SS_MCS2: - index = 76; - break; - case MGN_VHT4SS_MCS3: - index = 77; - break; - case MGN_VHT4SS_MCS4: - index = 78; - break; - case MGN_VHT4SS_MCS5: - index = 79; - break; - case MGN_VHT4SS_MCS6: - index = 80; - break; - case MGN_VHT4SS_MCS7: - index = 81; - break; - case MGN_VHT4SS_MCS8: - index = 82; - break; - case MGN_VHT4SS_MCS9: - index = 83; - break; default: break; } @@ -1379,7 +848,7 @@ u8 PHY_GetRateIndexOfTxPowerByRate(u8 Rate) } s8 PHY_GetTxPowerByRate( - struct adapter *padapter, u8 Band, u8 RFPath, u8 TxNum, u8 Rate + struct adapter *padapter, u8 RFPath, u8 TxNum, u8 Rate ) { struct hal_com_data *pHalData = GET_HAL_DATA(padapter); @@ -1390,9 +859,6 @@ s8 PHY_GetTxPowerByRate( padapter->registrypriv.RegEnableTxPowerByRate == 0) return 0; - if (Band != BAND_ON_2_4G && Band != BAND_ON_5G) - return value; - if (RFPath > ODM_RF_PATH_D) return value; @@ -1402,13 +868,12 @@ s8 PHY_GetTxPowerByRate( if (rateIndex >= TX_PWR_BY_RATE_NUM_RATE) return value; - return pHalData->TxPwrByRateOffset[Band][RFPath][TxNum][rateIndex]; + return pHalData->TxPwrByRateOffset[RFPath][TxNum][rateIndex]; } void PHY_SetTxPowerByRate( struct adapter *padapter, - u8 Band, u8 RFPath, u8 TxNum, u8 Rate, @@ -1418,9 +883,6 @@ void PHY_SetTxPowerByRate( struct hal_com_data *pHalData = GET_HAL_DATA(padapter); u8 rateIndex = PHY_GetRateIndexOfTxPowerByRate(Rate); - if (Band != BAND_ON_2_4G && Band != BAND_ON_5G) - return; - if (RFPath > ODM_RF_PATH_D) return; @@ -1430,18 +892,16 @@ void PHY_SetTxPowerByRate( if (rateIndex >= TX_PWR_BY_RATE_NUM_RATE) return; - pHalData->TxPwrByRateOffset[Band][RFPath][TxNum][rateIndex] = Value; + pHalData->TxPwrByRateOffset[RFPath][TxNum][rateIndex] = Value; } void PHY_SetTxPowerLevelByPath(struct adapter *Adapter, u8 channel, u8 path) { struct hal_com_data *pHalData = GET_HAL_DATA(Adapter); - bool bIsIn24G = (pHalData->CurrentBandType == BAND_ON_2_4G); /* if (pMgntInfo->RegNByteAccess == 0) */ { - if (bIsIn24G) - PHY_SetTxPowerIndexByRateSection(Adapter, path, channel, CCK); + PHY_SetTxPowerIndexByRateSection(Adapter, path, channel, CCK); PHY_SetTxPowerIndexByRateSection(Adapter, path, channel, OFDM); PHY_SetTxPowerIndexByRateSection(Adapter, path, channel, HT_MCS0_MCS7); @@ -1483,26 +943,9 @@ static s8 phy_GetWorldWideLimit(s8 *LimitTable) return min; } -static s8 phy_GetChannelIndexOfTxPowerLimit(u8 Band, u8 Channel) +static s8 phy_GetChannelIndexOfTxPowerLimit(u8 Channel) { - s8 channelIndex = -1; - u8 channel5G[CHANNEL_MAX_NUMBER_5G] = { - 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 100, 102, - 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, - 132, 134, 136, 138, 140, 142, 144, 149, 151, 153, 155, 157, 159, 161, - 163, 165, 167, 168, 169, 171, 173, 175, 177 - }; - u8 i = 0; - if (Band == BAND_ON_2_4G) - channelIndex = Channel - 1; - else if (Band == BAND_ON_5G) { - for (i = 0; i < ARRAY_SIZE(channel5G); ++i) { - if (channel5G[i] == Channel) - channelIndex = i; - } - } - - return channelIndex; + return Channel - 1; } static s16 get_bandwidth_idx(const enum channel_width bandwidth) @@ -1512,10 +955,6 @@ static s16 get_bandwidth_idx(const enum channel_width bandwidth) return 0; case CHANNEL_WIDTH_40: return 1; - case CHANNEL_WIDTH_80: - return 2; - case CHANNEL_WIDTH_160: - return 3; default: return -1; } @@ -1541,42 +980,22 @@ static s16 get_rate_sctn_idx(const u8 rate) case MGN_MCS24: case MGN_MCS25: case MGN_MCS26: case MGN_MCS27: case MGN_MCS28: case MGN_MCS29: case MGN_MCS30: case MGN_MCS31: return 5; - case MGN_VHT1SS_MCS0: case MGN_VHT1SS_MCS1: case MGN_VHT1SS_MCS2: - case MGN_VHT1SS_MCS3: case MGN_VHT1SS_MCS4: case MGN_VHT1SS_MCS5: - case MGN_VHT1SS_MCS6: case MGN_VHT1SS_MCS7: case MGN_VHT1SS_MCS8: - case MGN_VHT1SS_MCS9: - return 6; - case MGN_VHT2SS_MCS0: case MGN_VHT2SS_MCS1: case MGN_VHT2SS_MCS2: - case MGN_VHT2SS_MCS3: case MGN_VHT2SS_MCS4: case MGN_VHT2SS_MCS5: - case MGN_VHT2SS_MCS6: case MGN_VHT2SS_MCS7: case MGN_VHT2SS_MCS8: - case MGN_VHT2SS_MCS9: - return 7; - case MGN_VHT3SS_MCS0: case MGN_VHT3SS_MCS1: case MGN_VHT3SS_MCS2: - case MGN_VHT3SS_MCS3: case MGN_VHT3SS_MCS4: case MGN_VHT3SS_MCS5: - case MGN_VHT3SS_MCS6: case MGN_VHT3SS_MCS7: case MGN_VHT3SS_MCS8: - case MGN_VHT3SS_MCS9: - return 8; - case MGN_VHT4SS_MCS0: case MGN_VHT4SS_MCS1: case MGN_VHT4SS_MCS2: - case MGN_VHT4SS_MCS3: case MGN_VHT4SS_MCS4: case MGN_VHT4SS_MCS5: - case MGN_VHT4SS_MCS6: case MGN_VHT4SS_MCS7: case MGN_VHT4SS_MCS8: - case MGN_VHT4SS_MCS9: - return 9; default: return -1; } } s8 phy_get_tx_pwr_lmt(struct adapter *adapter, u32 reg_pwr_tbl_sel, - enum band_type band_type, enum channel_width bandwidth, + enum channel_width bandwidth, u8 rf_path, u8 data_rate, u8 channel) { - s16 idx_band = -1; s16 idx_regulation = -1; s16 idx_bandwidth = -1; s16 idx_rate_sctn = -1; s16 idx_channel = -1; s8 pwr_lmt = MAX_POWER_INDEX; struct hal_com_data *hal_data = GET_HAL_DATA(adapter); + s8 limits[10] = {0}; u8 i = 0; if (((adapter->registrypriv.RegEnableTxPowerLimit == 2) && (hal_data->EEPROMRegulatory != 1)) || @@ -1597,17 +1016,10 @@ s8 phy_get_tx_pwr_lmt(struct adapter *adapter, u32 reg_pwr_tbl_sel, idx_regulation = TXPWR_LMT_WW; break; default: - idx_regulation = (band_type == BAND_ON_2_4G) ? - hal_data->Regulation2_4G : - hal_data->Regulation5G; + idx_regulation = hal_data->Regulation2_4G; break; } - if (band_type == BAND_ON_2_4G) - idx_band = 0; - else if (band_type == BAND_ON_5G) - idx_band = 1; - idx_bandwidth = get_bandwidth_idx(bandwidth); idx_rate_sctn = get_rate_sctn_idx(data_rate); @@ -1617,107 +1029,30 @@ s8 phy_get_tx_pwr_lmt(struct adapter *adapter, u32 reg_pwr_tbl_sel, /* HT on 80M will reference to HT on 40M */ if (idx_rate_sctn == 0 || idx_rate_sctn == 1) idx_bandwidth = 0; - else if ((idx_rate_sctn == 2 || idx_rate_sctn == 3) && - (band_type == BAND_ON_5G) && (idx_bandwidth == 2)) - idx_bandwidth = 1; - if (band_type == BAND_ON_2_4G || band_type == BAND_ON_5G) - channel = phy_GetChannelIndexOfTxPowerLimit(band_type, channel); + channel = phy_GetChannelIndexOfTxPowerLimit(channel); - if (idx_band == -1 || idx_regulation == -1 || idx_bandwidth == -1 || + if (idx_regulation == -1 || idx_bandwidth == -1 || idx_rate_sctn == -1 || idx_channel == -1) return MAX_POWER_INDEX; - if (band_type == BAND_ON_2_4G) { - s8 limits[10] = {0}; u8 i = 0; - - for (i = 0; i < MAX_REGULATION_NUM; i++) - limits[i] = hal_data->TxPwrLimit_2_4G[i] - [idx_bandwidth] - [idx_rate_sctn] - [idx_channel] - [rf_path]; - - pwr_lmt = (idx_regulation == TXPWR_LMT_WW) ? - phy_GetWorldWideLimit(limits) : - hal_data->TxPwrLimit_2_4G[idx_regulation] - [idx_bandwidth] - [idx_rate_sctn] - [idx_channel] - [rf_path]; - - } else if (band_type == BAND_ON_5G) { - s8 limits[10] = {0}; u8 i = 0; - - for (i = 0; i < MAX_REGULATION_NUM; ++i) - limits[i] = hal_data->TxPwrLimit_5G[i] - [idx_bandwidth] - [idx_rate_sctn] - [idx_channel] - [rf_path]; - - pwr_lmt = (idx_regulation == TXPWR_LMT_WW) ? - phy_GetWorldWideLimit(limits) : - hal_data->TxPwrLimit_5G[idx_regulation] - [idx_bandwidth] - [idx_rate_sctn] - [idx_channel] - [rf_path]; - } - return pwr_lmt; -} + for (i = 0; i < MAX_REGULATION_NUM; i++) + limits[i] = hal_data->TxPwrLimit_2_4G[i] + [idx_bandwidth] + [idx_rate_sctn] + [idx_channel] + [rf_path]; -static void phy_CrossReferenceHTAndVHTTxPowerLimit(struct adapter *padapter) -{ - struct hal_com_data *pHalData = GET_HAL_DATA(padapter); - u8 regulation, bw, channel, rateSection; - s8 tempPwrLmt = 0; + pwr_lmt = (idx_regulation == TXPWR_LMT_WW) ? + phy_GetWorldWideLimit(limits) : + hal_data->TxPwrLimit_2_4G[idx_regulation] + [idx_bandwidth] + [idx_rate_sctn] + [idx_channel] + [rf_path]; - for (regulation = 0; regulation < MAX_REGULATION_NUM; ++regulation) { - for (bw = 0; bw < MAX_5G_BANDWIDTH_NUM; ++bw) { - for (channel = 0; channel < CHANNEL_MAX_NUMBER_5G; ++channel) { - for (rateSection = 0; rateSection < MAX_RATE_SECTION_NUM; ++rateSection) { - tempPwrLmt = pHalData->TxPwrLimit_5G[regulation][bw][rateSection][channel][ODM_RF_PATH_A]; - if (tempPwrLmt == MAX_POWER_INDEX) { - u8 baseSection = 2, refSection = 6; - if (bw == 0 || bw == 1) { /* 5G 20M 40M VHT and HT can cross reference */ - /* 1, bw, rateSection, channel, ODM_RF_PATH_A); */ - if (rateSection >= 2 && rateSection <= 9) { - if (rateSection == 2) { - baseSection = 2; - refSection = 6; - } else if (rateSection == 3) { - baseSection = 3; - refSection = 7; - } else if (rateSection == 4) { - baseSection = 4; - refSection = 8; - } else if (rateSection == 5) { - baseSection = 5; - refSection = 9; - } else if (rateSection == 6) { - baseSection = 6; - refSection = 2; - } else if (rateSection == 7) { - baseSection = 7; - refSection = 3; - } else if (rateSection == 8) { - baseSection = 8; - refSection = 4; - } else if (rateSection == 9) { - baseSection = 9; - refSection = 5; - } - pHalData->TxPwrLimit_5G[regulation][bw][baseSection][channel][ODM_RF_PATH_A] = - pHalData->TxPwrLimit_5G[regulation][bw][refSection][channel][ODM_RF_PATH_A]; - } - } - } - } - } - } - } + return pwr_lmt; } void PHY_ConvertTxPowerLimitToPowerIndex(struct adapter *Adapter) @@ -1728,8 +1063,6 @@ void PHY_ConvertTxPowerLimitToPowerIndex(struct adapter *Adapter) s8 tempValue = 0, tempPwrLmt = 0; u8 rfPath = 0; - phy_CrossReferenceHTAndVHTTxPowerLimit(Adapter); - for (regulation = 0; regulation < MAX_REGULATION_NUM; ++regulation) { for (bw = 0; bw < MAX_2_4G_BANDWIDTH_NUM; ++bw) { for (channel = 0; channel < CHANNEL_MAX_NUMBER_2G; ++channel) { @@ -1739,17 +1072,17 @@ void PHY_ConvertTxPowerLimitToPowerIndex(struct adapter *Adapter) for (rfPath = ODM_RF_PATH_A; rfPath < MAX_RF_PATH_NUM; ++rfPath) { if (pHalData->odmpriv.PhyRegPgValueType == PHY_REG_PG_EXACT_VALUE) { if (rateSection == 5) /* HT 4T */ - BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, BAND_ON_2_4G, rfPath, RF_4TX, HT_MCS24_MCS31); + BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, rfPath, RF_4TX, HT_MCS24_MCS31); else if (rateSection == 4) /* HT 3T */ - BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, BAND_ON_2_4G, rfPath, RF_3TX, HT_MCS16_MCS23); + BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, rfPath, RF_3TX, HT_MCS16_MCS23); else if (rateSection == 3) /* HT 2T */ - BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, BAND_ON_2_4G, rfPath, RF_2TX, HT_MCS8_MCS15); + BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, rfPath, RF_2TX, HT_MCS8_MCS15); else if (rateSection == 2) /* HT 1T */ - BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, BAND_ON_2_4G, rfPath, RF_1TX, HT_MCS0_MCS7); + BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, rfPath, RF_1TX, HT_MCS0_MCS7); else if (rateSection == 1) /* OFDM */ - BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, BAND_ON_2_4G, rfPath, RF_1TX, OFDM); + BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, rfPath, RF_1TX, OFDM); else if (rateSection == 0) /* CCK */ - BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, BAND_ON_2_4G, rfPath, RF_1TX, CCK); + BW40PwrBasedBm2_4G = PHY_GetTxPowerByRateBase(Adapter, rfPath, RF_1TX, CCK); } else BW40PwrBasedBm2_4G = Adapter->registrypriv.RegPowerBase * 2; @@ -1776,20 +1109,11 @@ void PHY_InitTxPowerLimit(struct adapter *Adapter) for (l = 0; l < MAX_RF_PATH_NUM; ++l) pHalData->TxPwrLimit_2_4G[i][j][k][m][l] = MAX_POWER_INDEX; } - - for (i = 0; i < MAX_REGULATION_NUM; ++i) { - for (j = 0; j < MAX_5G_BANDWIDTH_NUM; ++j) - for (k = 0; k < MAX_RATE_SECTION_NUM; ++k) - for (m = 0; m < CHANNEL_MAX_NUMBER_5G; ++m) - for (l = 0; l < MAX_RF_PATH_NUM; ++l) - pHalData->TxPwrLimit_5G[i][j][k][m][l] = MAX_POWER_INDEX; - } } void PHY_SetTxPowerLimit( struct adapter *Adapter, u8 *Regulation, - u8 *Band, u8 *Bandwidth, u8 *RateSection, u8 *RfPath, @@ -1827,14 +1151,6 @@ void PHY_SetTxPowerLimit( rateSection = 4; else if (eqNByte(RateSection, (u8 *)("HT"), 2) && eqNByte(RfPath, (u8 *)("4T"), 2)) rateSection = 5; - else if (eqNByte(RateSection, (u8 *)("VHT"), 3) && eqNByte(RfPath, (u8 *)("1T"), 2)) - rateSection = 6; - else if (eqNByte(RateSection, (u8 *)("VHT"), 3) && eqNByte(RfPath, (u8 *)("2T"), 2)) - rateSection = 7; - else if (eqNByte(RateSection, (u8 *)("VHT"), 3) && eqNByte(RfPath, (u8 *)("3T"), 2)) - rateSection = 8; - else if (eqNByte(RateSection, (u8 *)("VHT"), 3) && eqNByte(RfPath, (u8 *)("4T"), 2)) - rateSection = 9; else return; @@ -1847,38 +1163,21 @@ void PHY_SetTxPowerLimit( else if (eqNByte(Bandwidth, (u8 *)("160M"), 4)) bandwidth = 3; - if (eqNByte(Band, (u8 *)("2.4G"), 4)) { - channelIndex = phy_GetChannelIndexOfTxPowerLimit(BAND_ON_2_4G, channel); + channelIndex = phy_GetChannelIndexOfTxPowerLimit(channel); - if (channelIndex == -1) - return; - - prevPowerLimit = pHalData->TxPwrLimit_2_4G[regulation][bandwidth][rateSection][channelIndex][ODM_RF_PATH_A]; - - if (powerLimit < prevPowerLimit) - pHalData->TxPwrLimit_2_4G[regulation][bandwidth][rateSection][channelIndex][ODM_RF_PATH_A] = powerLimit; - - } else if (eqNByte(Band, (u8 *)("5G"), 2)) { - channelIndex = phy_GetChannelIndexOfTxPowerLimit(BAND_ON_5G, channel); - - if (channelIndex == -1) - return; - - prevPowerLimit = pHalData->TxPwrLimit_5G[regulation][bandwidth][rateSection][channelIndex][ODM_RF_PATH_A]; + if (channelIndex == -1) + return; - if (powerLimit < prevPowerLimit) - pHalData->TxPwrLimit_5G[regulation][bandwidth][rateSection][channelIndex][ODM_RF_PATH_A] = powerLimit; + prevPowerLimit = pHalData->TxPwrLimit_2_4G[regulation][bandwidth][rateSection][channelIndex][ODM_RF_PATH_A]; - } else { - return; - } + if (powerLimit < prevPowerLimit) + pHalData->TxPwrLimit_2_4G[regulation][bandwidth][rateSection][channelIndex][ODM_RF_PATH_A] = powerLimit; } void Hal_ChannelPlanToRegulation(struct adapter *Adapter, u16 ChannelPlan) { struct hal_com_data *pHalData = GET_HAL_DATA(Adapter); pHalData->Regulation2_4G = TXPWR_LMT_WW; - pHalData->Regulation5G = TXPWR_LMT_WW; switch (ChannelPlan) { case RT_CHANNEL_DOMAIN_WORLD_NULL: @@ -1898,139 +1197,105 @@ void Hal_ChannelPlanToRegulation(struct adapter *Adapter, u16 ChannelPlan) break; case RT_CHANNEL_DOMAIN_FCC1_FCC1: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI1: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_MKK1_MKK1: pHalData->Regulation2_4G = TXPWR_LMT_MKK; - pHalData->Regulation5G = TXPWR_LMT_MKK; break; case RT_CHANNEL_DOMAIN_WORLD_KCC1: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_MKK; break; case RT_CHANNEL_DOMAIN_WORLD_FCC2: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_FCC3: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_FCC4: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_FCC5: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_FCC6: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_FCC1_FCC7: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI2: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI3: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_MKK1_MKK2: pHalData->Regulation2_4G = TXPWR_LMT_MKK; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_MKK1_MKK3: pHalData->Regulation2_4G = TXPWR_LMT_MKK; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_FCC1_NCC1: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_FCC1_NCC2: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_GLOBAL_NULL: pHalData->Regulation2_4G = TXPWR_LMT_WW; - pHalData->Regulation5G = TXPWR_LMT_WW; break; case RT_CHANNEL_DOMAIN_ETSI1_ETSI4: pHalData->Regulation2_4G = TXPWR_LMT_ETSI; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_FCC1_FCC2: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_FCC1_NCC3: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI5: pHalData->Regulation2_4G = TXPWR_LMT_ETSI; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_FCC1_FCC8: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI6: pHalData->Regulation2_4G = TXPWR_LMT_ETSI; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI7: pHalData->Regulation2_4G = TXPWR_LMT_ETSI; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI8: pHalData->Regulation2_4G = TXPWR_LMT_ETSI; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI9: pHalData->Regulation2_4G = TXPWR_LMT_ETSI; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI10: pHalData->Regulation2_4G = TXPWR_LMT_ETSI; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI11: pHalData->Regulation2_4G = TXPWR_LMT_ETSI; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_FCC1_NCC4: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI12: pHalData->Regulation2_4G = TXPWR_LMT_ETSI; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_FCC1_FCC9: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_WORLD_ETSI13: pHalData->Regulation2_4G = TXPWR_LMT_ETSI; - pHalData->Regulation5G = TXPWR_LMT_ETSI; break; case RT_CHANNEL_DOMAIN_FCC1_FCC10: pHalData->Regulation2_4G = TXPWR_LMT_FCC; - pHalData->Regulation5G = TXPWR_LMT_FCC; break; case RT_CHANNEL_DOMAIN_REALTEK_DEFINE: /* Realtek Reserve */ pHalData->Regulation2_4G = TXPWR_LMT_WW; - pHalData->Regulation5G = TXPWR_LMT_WW; break; default: break; diff --git a/drivers/staging/rtl8723bs/hal/hal_intf.c b/drivers/staging/rtl8723bs/hal/hal_intf.c index 8dc4dd8c6d4c..4868a69cdb8f 100644 --- a/drivers/staging/rtl8723bs/hal/hal_intf.c +++ b/drivers/staging/rtl8723bs/hal/hal_intf.c @@ -4,9 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * ******************************************************************************/ - -#define _HAL_INTF_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <hal_data.h> diff --git a/drivers/staging/rtl8723bs/hal/odm.c b/drivers/staging/rtl8723bs/hal/odm.c index 092b32c41ff3..68dfb77772b2 100644 --- a/drivers/staging/rtl8723bs/hal/odm.c +++ b/drivers/staging/rtl8723bs/hal/odm.c @@ -290,8 +290,6 @@ static void odm_CommonInfoSelfInit(struct dm_odm_t *pDM_Odm) pDM_Odm->bCckHighPower = (bool) PHY_QueryBBReg(pDM_Odm->Adapter, ODM_REG(CCK_RPT_FORMAT, pDM_Odm), ODM_BIT(CCK_RPT_FORMAT, pDM_Odm)); pDM_Odm->RFPathRxEnable = (u8) PHY_QueryBBReg(pDM_Odm->Adapter, ODM_REG(BB_RX_PATH, pDM_Odm), ODM_BIT(BB_RX_PATH, pDM_Odm)); - ODM_InitDebugSetting(pDM_Odm); - pDM_Odm->TxRate = 0xFF; } @@ -323,32 +321,10 @@ static void odm_CommonInfoSelfUpdate(struct dm_odm_t *pDM_Odm) static void odm_CmnInfoInit_Debug(struct dm_odm_t *pDM_Odm) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("odm_CmnInfoInit_Debug ==>\n")); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("SupportPlatform =%d\n", pDM_Odm->SupportPlatform)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("SupportAbility = 0x%x\n", pDM_Odm->SupportAbility)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("SupportInterface =%d\n", pDM_Odm->SupportInterface)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("SupportICType = 0x%x\n", pDM_Odm->SupportICType)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("CutVersion =%d\n", pDM_Odm->CutVersion)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("FabVersion =%d\n", pDM_Odm->FabVersion)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("RFType =%d\n", pDM_Odm->RFType)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("BoardType =%d\n", pDM_Odm->BoardType)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("ExtLNA =%d\n", pDM_Odm->ExtLNA)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("ExtPA =%d\n", pDM_Odm->ExtPA)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("ExtTRSW =%d\n", pDM_Odm->ExtTRSW)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("PatchID =%d\n", pDM_Odm->PatchID)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("bInHctTest =%d\n", pDM_Odm->bInHctTest)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("bWIFITest =%d\n", pDM_Odm->bWIFITest)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("bDualMacSmartConcurrent =%d\n", pDM_Odm->bDualMacSmartConcurrent)); - } static void odm_BasicDbgMessage(struct dm_odm_t *pDM_Odm) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("odm_BasicDbgMsg ==>\n")); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("bLinked = %d, RSSI_Min = %d,\n", - pDM_Odm->bLinked, pDM_Odm->RSSI_Min)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("RxRate = 0x%x, RSSI_A = %d, RSSI_B = %d\n", - pDM_Odm->RxRate, pDM_Odm->RSSI_A, pDM_Odm->RSSI_B)); } /* 3 ============================================================ */ @@ -401,7 +377,6 @@ u32 ODM_Get_Rate_Bitmap( break; case (ODM_WM_G): - case (ODM_WM_A): if (rssi_level == DM_RATR_STA_HIGH) rate_bitmap = 0x00000f00; else @@ -420,7 +395,6 @@ u32 ODM_Get_Rate_Bitmap( case (ODM_WM_B|ODM_WM_G|ODM_WM_N24G): case (ODM_WM_B|ODM_WM_N24G): case (ODM_WM_G|ODM_WM_N24G): - case (ODM_WM_A|ODM_WM_N5G): if (pDM_Odm->RFType == ODM_1T2R || pDM_Odm->RFType == ODM_1T1R) { if (rssi_level == DM_RATR_STA_HIGH) rate_bitmap = 0x000f0000; @@ -446,34 +420,6 @@ u32 ODM_Get_Rate_Bitmap( } break; - case (ODM_WM_AC|ODM_WM_G): - if (rssi_level == 1) - rate_bitmap = 0xfc3f0000; - else if (rssi_level == 2) - rate_bitmap = 0xfffff000; - else - rate_bitmap = 0xffffffff; - break; - - case (ODM_WM_AC|ODM_WM_A): - - if (pDM_Odm->RFType == RF_1T1R) { - if (rssi_level == 1) /* add by Gary for ac-series */ - rate_bitmap = 0x003f8000; - else if (rssi_level == 2) - rate_bitmap = 0x003ff000; - else - rate_bitmap = 0x003ff010; - } else { - if (rssi_level == 1) /* add by Gary for ac-series */ - rate_bitmap = 0xfe3f8000; /* VHT 2SS MCS3~9 */ - else if (rssi_level == 2) - rate_bitmap = 0xfffff000; /* VHT 2SS MCS0~9 */ - else - rate_bitmap = 0xfffff010; /* All */ - } - break; - default: if (pDM_Odm->RFType == RF_1T2R) rate_bitmap = 0x000fffff; @@ -482,9 +428,6 @@ u32 ODM_Get_Rate_Bitmap( break; } - /* printk("%s ==> rssi_level:0x%02x, WirelessMode:0x%02x, rate_bitmap:0x%08x\n", __func__, rssi_level, WirelessMode, rate_bitmap); */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_RA_MASK, ODM_DBG_LOUD, (" ==> rssi_level:0x%02x, WirelessMode:0x%02x, rate_bitmap:0x%08x\n", rssi_level, WirelessMode, rate_bitmap)); - return ra_mask & rate_bitmap; } @@ -495,12 +438,10 @@ static void odm_RefreshRateAdaptiveMaskCE(struct dm_odm_t *pDM_Odm) struct adapter *padapter = pDM_Odm->Adapter; if (padapter->bDriverStopped) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_RA_MASK, ODM_DBG_TRACE, ("<---- odm_RefreshRateAdaptiveMask(): driver is going to unload\n")); return; } if (!pDM_Odm->bUseRAMask) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_RA_MASK, ODM_DBG_LOUD, ("<---- odm_RefreshRateAdaptiveMask(): driver does not control rate adaptive mask\n")); return; } @@ -512,7 +453,6 @@ static void odm_RefreshRateAdaptiveMaskCE(struct dm_odm_t *pDM_Odm) continue; if (true == ODM_RAStateCheck(pDM_Odm, pstat->rssi_stat.UndecoratedSmoothedPWDB, false, &pstat->rssi_level)) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_RA_MASK, ODM_DBG_LOUD, ("RSSI:%d, RSSI_LEVEL:%d\n", pstat->rssi_stat.UndecoratedSmoothedPWDB, pstat->rssi_level)); /* printk("RSSI:%d, RSSI_LEVEL:%d\n", pstat->rssi_stat.UndecoratedSmoothedPWDB, pstat->rssi_level); */ rtw_hal_update_ra_mask(pstat, pstat->rssi_level); } @@ -541,9 +481,7 @@ static void odm_RefreshRateAdaptiveMaskCE(struct dm_odm_t *pDM_Odm) static void odm_RefreshRateAdaptiveMask(struct dm_odm_t *pDM_Odm) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_RA_MASK, ODM_DBG_TRACE, ("odm_RefreshRateAdaptiveMask()---------->\n")); if (!(pDM_Odm->SupportAbility & ODM_BB_RA_MASK)) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_RA_MASK, ODM_DBG_TRACE, ("odm_RefreshRateAdaptiveMask(): Return cos not supported\n")); return; } odm_RefreshRateAdaptiveMaskCE(pDM_Odm); @@ -582,7 +520,8 @@ bool ODM_RAStateCheck( break; default: - ODM_RT_ASSERT(pDM_Odm, false, ("wrong rssi level setting %d !", *pRATRState)); + netdev_dbg(pDM_Odm->Adapter->pnetdev, + "wrong rssi level setting %d !", *pRATRState); break; } @@ -596,7 +535,6 @@ bool ODM_RAStateCheck( /* printk("==>%s, RATRState:0x%02x , RSSI:%d\n", __func__, RATRState, RSSI); */ if (*pRATRState != RATRState || bForceUpdate) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_RA_MASK, ODM_DBG_LOUD, ("RSSI Level %d -> %d\n", *pRATRState, RATRState)); *pRATRState = RATRState; return true; } @@ -631,11 +569,8 @@ static void FindMinimumRSSI(struct adapter *padapter) (pdmpriv->EntryMinUndecoratedSmoothedPWDB == 0) ) { pdmpriv->MinUndecoratedPWDBForDM = 0; - /* ODM_RT_TRACE(pDM_Odm, COMP_BB_POWERSAVING, DBG_LOUD, ("Not connected to any\n")); */ } else pdmpriv->MinUndecoratedPWDBForDM = pdmpriv->EntryMinUndecoratedSmoothedPWDB; - - /* ODM_RT_TRACE(pDM_Odm, COMP_DIG, DBG_LOUD, ("MinUndecoratedPWDBForDM =%d\n", pHalData->MinUndecoratedPWDBForDM)); */ } static void odm_RSSIMonitorCheckCE(struct dm_odm_t *pDM_Odm) @@ -838,9 +773,6 @@ void ODM_DMInit(struct dm_odm_t *pDM_Odm) ODM_ClearTxPowerTrackingState(pDM_Odm); - if (*(pDM_Odm->mp_mode) != 1) - odm_PathDiversityInit(pDM_Odm); - odm_DynamicBBPowerSavingInit(pDM_Odm); odm_DynamicTxPowerInit(pDM_Odm); @@ -858,7 +790,6 @@ void ODM_DMWatchdog(struct dm_odm_t *pDM_Odm) odm_BasicDbgMessage(pDM_Odm); odm_FalseAlarmCounterStatistics(pDM_Odm); odm_NHMCounterStatistics(pDM_Odm); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): RSSI = 0x%x\n", pDM_Odm->RSSI_Min)); odm_RSSIMonitorCheck(pDM_Odm); @@ -872,8 +803,6 @@ void ODM_DMWatchdog(struct dm_odm_t *pDM_Odm) /* (pDM_Odm->SupportICType & (ODM_RTL8188E) &&(&&(((pDM_Odm->SupportInterface == ODM_ITRF_SDIO))) */ /* */ ) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("----Step1: odm_DIG is in LPS mode\n")); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("---Step2: 8723AS is in LPS mode\n")); odm_DIGbyRSSI_LPS(pDM_Odm); } else odm_DIG(pDM_Odm); @@ -891,7 +820,6 @@ void ODM_DMWatchdog(struct dm_odm_t *pDM_Odm) odm_RefreshRateAdaptiveMask(pDM_Odm); odm_EdcaTurboCheck(pDM_Odm); - odm_PathDiversity(pDM_Odm); ODM_CfoTracking(pDM_Odm); ODM_TXPowerTrackingCheck(pDM_Odm); @@ -956,10 +884,6 @@ void ODM_CmnInfoInit(struct dm_odm_t *pDM_Odm, enum odm_cmninfo_e CmnInfo, u32 V pDM_Odm->AntDivType = (u8)Value; break; - case ODM_CMNINFO_BOARD_TYPE: - pDM_Odm->BoardType = (u8)Value; - break; - case ODM_CMNINFO_PACKAGE_TYPE: pDM_Odm->PackageType = (u8)Value; break; @@ -968,18 +892,10 @@ void ODM_CmnInfoInit(struct dm_odm_t *pDM_Odm, enum odm_cmninfo_e CmnInfo, u32 V pDM_Odm->ExtLNA = (u8)Value; break; - case ODM_CMNINFO_5G_EXT_LNA: - pDM_Odm->ExtLNA5G = (u8)Value; - break; - case ODM_CMNINFO_EXT_PA: pDM_Odm->ExtPA = (u8)Value; break; - case ODM_CMNINFO_5G_EXT_PA: - pDM_Odm->ExtPA5G = (u8)Value; - break; - case ODM_CMNINFO_GPA: pDM_Odm->TypeGPA = (enum odm_type_gpa_e)Value; break; @@ -1044,10 +960,6 @@ void ODM_CmnInfoHook(struct dm_odm_t *pDM_Odm, enum odm_cmninfo_e CmnInfo, void pDM_Odm->pwirelessmode = pValue; break; - case ODM_CMNINFO_BAND: - pDM_Odm->pBandType = pValue; - break; - case ODM_CMNINFO_SEC_CHNL_OFFSET: pDM_Odm->pSecChOffset = pValue; break; @@ -1214,13 +1126,6 @@ void ODM_CmnInfoUpdate(struct dm_odm_t *pDM_Odm, u32 CmnInfo, u64 Value) pDM_Odm->RSSI_Min = (u8)Value; break; - case ODM_CMNINFO_DBG_COMP: - pDM_Odm->DebugComponents = Value; - break; - - case ODM_CMNINFO_DBG_LEVEL: - pDM_Odm->DebugLevel = (u32)Value; - break; case ODM_CMNINFO_RA_THRESHOLD_HIGH: pDM_Odm->RateAdaptive.HighRSSIThresh = (u8)Value; break; @@ -1262,10 +1167,6 @@ void ODM_CmnInfoUpdate(struct dm_odm_t *pDM_Odm, u32 CmnInfo, u64 Value) pDM_Odm->WirelessMode = (u8)Value; break; - case ODM_CMNINFO_BAND: - pDM_Odm->BandType = (u8)Value; - break; - case ODM_CMNINFO_SEC_CHNL_OFFSET: pDM_Odm->SecChOffset = (u8)Value; break; diff --git a/drivers/staging/rtl8723bs/hal/odm.h b/drivers/staging/rtl8723bs/hal/odm.h index ff21343fbe0b..abf6547518fb 100644 --- a/drivers/staging/rtl8723bs/hal/odm.h +++ b/drivers/staging/rtl8723bs/hal/odm.h @@ -11,7 +11,6 @@ #include "odm_EdcaTurboCheck.h" #include "odm_DIG.h" -#include "odm_PathDiv.h" #include "odm_DynamicBBPowerSaving.h" #include "odm_DynamicTxPower.h" #include "odm_CfoTracking.h" @@ -152,7 +151,6 @@ struct swat_t { /* _SW_Antenna_Switch_ */ bool ANTB_ON; /* To indicate Ant B is on or not */ bool Pre_Aux_FailDetec; bool RSSI_AntDect_bResult; - u8 Ant5G; u8 Ant2G; s32 RSSI_sum_A; @@ -197,10 +195,7 @@ struct odm_rate_adaptive { #define AVG_THERMAL_NUM 8 #define IQK_Matrix_REG_NUM 8 -#define IQK_Matrix_Settings_NUM (14 + 24 + 21) /* Channels_2_4G_NUM - * + Channels_5G_20M_NUM - * + Channels_5G - */ +#define IQK_Matrix_Settings_NUM 14 /* Channels_2_4G_NUM */ #define DM_Type_ByFW 0 #define DM_Type_ByDriver 1 @@ -293,12 +288,9 @@ enum odm_cmninfo_e { ODM_CMNINFO_FAB_VER, /* ODM_FAB_E */ ODM_CMNINFO_RF_TYPE, /* ODM_RF_PATH_E or ODM_RF_TYPE_E? */ ODM_CMNINFO_RFE_TYPE, - ODM_CMNINFO_BOARD_TYPE, /* ODM_BOARD_TYPE_E */ ODM_CMNINFO_PACKAGE_TYPE, ODM_CMNINFO_EXT_LNA, /* true */ - ODM_CMNINFO_5G_EXT_LNA, ODM_CMNINFO_EXT_PA, - ODM_CMNINFO_5G_EXT_PA, ODM_CMNINFO_GPA, ODM_CMNINFO_APA, ODM_CMNINFO_GLNA, @@ -316,7 +308,6 @@ enum odm_cmninfo_e { ODM_CMNINFO_TX_UNI, ODM_CMNINFO_RX_UNI, ODM_CMNINFO_WM_MODE, /* ODM_WIRELESS_MODE_E */ - ODM_CMNINFO_BAND, /* ODM_BAND_TYPE_E */ ODM_CMNINFO_SEC_CHNL_OFFSET, /* ODM_SEC_CHNL_OFFSET_E */ ODM_CMNINFO_SEC_MODE, /* ODM_SECURITY_E */ ODM_CMNINFO_BW, /* ODM_BW_E */ @@ -456,33 +447,17 @@ enum { /* tag_Wireless_Mode_Definition */ ODM_WM_UNKNOWN = 0x0, ODM_WM_B = BIT0, ODM_WM_G = BIT1, - ODM_WM_A = BIT2, ODM_WM_N24G = BIT3, - ODM_WM_N5G = BIT4, ODM_WM_AUTO = BIT5, - ODM_WM_AC = BIT6, -}; - -/* ODM_CMNINFO_BAND */ -enum { /* tag_Band_Type_Definition */ - ODM_BAND_2_4G = 0, - ODM_BAND_5G, - ODM_BAND_ON_BOTH, - ODM_BANDMAX }; /* ODM_CMNINFO_BW */ enum { /* tag_Bandwidth_Definition */ ODM_BW20M = 0, ODM_BW40M = 1, - ODM_BW80M = 2, - ODM_BW160M = 3, - ODM_BW10M = 4, }; -/* ODM_CMNINFO_BOARD_TYPE */ -/* For non-AC-series IC , ODM_BOARD_5G_EXT_PA and ODM_BOARD_5G_EXT_LNA are ignored */ -/* For AC-series IC, external PA & LNA can be indivisuallly added on 2.4G and/or 5G */ +/* For AC-series IC, external PA & LNA can be individually added on 2.4G */ enum odm_type_gpa_e { /* tag_ODM_TYPE_GPA_Definition */ TYPE_GPA0 = 0, @@ -530,7 +505,6 @@ struct odm_rf_cal_t { /* ODM_RF_Calibration_Structure */ bool bTXPowerTracking; u8 TxPowerTrackControl; /* for mp mode, turn off txpwrtracking as default */ u8 TM_Trigger; - u8 InternalPA5G[2]; /* pathA / pathB */ u8 ThermalMeter[2]; /* ThermalMeter, index 0 for RFIC0, and 1 for RFIC1 */ u8 ThermalValue; @@ -565,7 +539,7 @@ struct odm_rf_cal_t { /* ODM_RF_Calibration_Structure */ bool bIQKInProgress; u8 Delta_IQK; u8 Delta_LCK; - s8 BBSwingDiff2G, BBSwingDiff5G; /* Unit: dB */ + s8 BBSwingDiff2G; /* Unit: dB */ u8 DeltaSwingTableIdx_2GCCKA_P[DELTA_SWINGIDX_SIZE]; u8 DeltaSwingTableIdx_2GCCKA_N[DELTA_SWINGIDX_SIZE]; u8 DeltaSwingTableIdx_2GCCKB_P[DELTA_SWINGIDX_SIZE]; @@ -574,10 +548,6 @@ struct odm_rf_cal_t { /* ODM_RF_Calibration_Structure */ u8 DeltaSwingTableIdx_2GA_N[DELTA_SWINGIDX_SIZE]; u8 DeltaSwingTableIdx_2GB_P[DELTA_SWINGIDX_SIZE]; u8 DeltaSwingTableIdx_2GB_N[DELTA_SWINGIDX_SIZE]; - u8 DeltaSwingTableIdx_5GA_P[BAND_NUM][DELTA_SWINGIDX_SIZE]; - u8 DeltaSwingTableIdx_5GA_N[BAND_NUM][DELTA_SWINGIDX_SIZE]; - u8 DeltaSwingTableIdx_5GB_P[BAND_NUM][DELTA_SWINGIDX_SIZE]; - u8 DeltaSwingTableIdx_5GB_N[BAND_NUM][DELTA_SWINGIDX_SIZE]; u8 DeltaSwingTableIdx_2GA_P_8188E[DELTA_SWINGIDX_SIZE]; u8 DeltaSwingTableIdx_2GA_N_8188E[DELTA_SWINGIDX_SIZE]; @@ -643,8 +613,6 @@ struct fat_t { /* _FAST_ANTENNA_TRAINNING_ */ bool bBecomeLinked; u32 MinMaxRSSI; u8 idx_AntDiv_counter_2G; - u8 idx_AntDiv_counter_5G; - u32 AntDiv_2G_5G; u32 CCK_counter_main; u32 CCK_counter_aux; u32 OFDM_counter_main; @@ -710,9 +678,6 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */ enum phy_reg_pg_type PhyRegPgValueType; u8 PhyRegPgVersion; - u64 DebugComponents; - u32 DebugLevel; - u32 NumQryPhyStatusAll; /* CCK + OFDM */ u32 LastNumQryPhyStatusAll; u32 RxPWDBAve; @@ -766,10 +731,8 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */ u8 TypeAPA; /* with external LNA NO/Yes = 0/1 */ u8 ExtLNA; - u8 ExtLNA5G; /* with external PA NO/Yes = 0/1 */ u8 ExtPA; - u8 ExtPA5G; /* with external TRSW NO/Yes = 0/1 */ u8 ExtTRSW; u8 PatchID; /* Customer ID */ @@ -798,8 +761,6 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */ u64 *pNumRxBytesUnicast; /* Wireless mode B/G/A/N = BIT0/BIT1/BIT2/BIT3 */ u8 *pwirelessmode; /* ODM_WIRELESS_MODE_E */ - /* Frequence band 2.4G/5G = 0/1 */ - u8 *pBandType; /* Secondary channel offset don't_care/below/above = 0/1/2 */ u8 *pSecChOffset; /* Security mode Open/WEP/AES/TKIP = 0/1/2/3 */ @@ -1068,7 +1029,6 @@ enum ODM_BB_Config_Type { CONFIG_BB_PHY_REG, CONFIG_BB_AGC_TAB, CONFIG_BB_AGC_TAB_2G, - CONFIG_BB_AGC_TAB_5G, CONFIG_BB_PHY_REG_PG, CONFIG_BB_PHY_REG_MP, CONFIG_BB_AGC_TAB_DIFF, diff --git a/drivers/staging/rtl8723bs/hal/odm_CfoTracking.c b/drivers/staging/rtl8723bs/hal/odm_CfoTracking.c index 75471c6c168e..0f6b9d661e39 100644 --- a/drivers/staging/rtl8723bs/hal/odm_CfoTracking.c +++ b/drivers/staging/rtl8723bs/hal/odm_CfoTracking.c @@ -25,16 +25,6 @@ static void odm_SetCrystalCap(void *pDM_VOID, u8 CrystalCap) 0x00FFF000, (CrystalCap | (CrystalCap << 6)) ); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ( - "odm_SetCrystalCap(): CrystalCap = 0x%x\n", - CrystalCap - ) - ); } static u8 odm_GetDefaultCrytaltalCap(void *pDM_VOID) @@ -98,22 +88,6 @@ void ODM_CfoTrackingInit(void *pDM_VOID) pCfoTrack->CrystalCap = odm_GetDefaultCrytaltalCap(pDM_Odm); pCfoTrack->bATCStatus = odm_GetATCStatus(pDM_Odm); pCfoTrack->bAdjust = true; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ("ODM_CfoTracking_init() =========>\n") - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ( - "ODM_CfoTracking_init(): bATCStatus = %d, CrystalCap = 0x%x\n", - pCfoTrack->bATCStatus, - pCfoTrack->DefXCap - ) - ); } void ODM_CfoTracking(void *pDM_VOID) @@ -127,47 +101,16 @@ void ODM_CfoTracking(void *pDM_VOID) /* 4 Support ability */ if (!(pDM_Odm->SupportAbility & ODM_BB_CFO_TRACKING)) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ("ODM_CfoTracking(): Return: SupportAbility ODM_BB_CFO_TRACKING is disabled\n") - ); return; } - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ("ODM_CfoTracking() =========>\n") - ); - if (!pDM_Odm->bLinked || !pDM_Odm->bOneEntryOnly) { /* 4 No link or more than one entry */ ODM_CfoTrackingReset(pDM_Odm); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ( - "ODM_CfoTracking(): Reset: bLinked = %d, bOneEntryOnly = %d\n", - pDM_Odm->bLinked, - pDM_Odm->bOneEntryOnly - ) - ); } else { /* 3 1. CFO Tracking */ /* 4 1.1 No new packet */ if (pCfoTrack->packetCount == pCfoTrack->packetCount_pre) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ( - "ODM_CfoTracking(): packet counter doesn't change\n" - ) - ); return; } pCfoTrack->packetCount_pre = pCfoTrack->packetCount; @@ -180,17 +123,6 @@ void ODM_CfoTracking(void *pDM_VOID) CFO_ave = CFO_kHz_A; else CFO_ave = (int)(CFO_kHz_A + CFO_kHz_B) >> 1; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ( - "ODM_CfoTracking(): CFO_kHz_A = %dkHz, CFO_kHz_B = %dkHz, CFO_ave = %dkHz\n", - CFO_kHz_A, - CFO_kHz_B, - CFO_ave - ) - ); /* 4 1.3 Avoid abnormal large CFO */ CFO_ave_diff = @@ -203,7 +135,6 @@ void ODM_CfoTracking(void *pDM_VOID) pCfoTrack->largeCFOHit == 0 && !pCfoTrack->bAdjust ) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_CFO_TRACKING, ODM_DBG_LOUD, ("ODM_CfoTracking(): first large CFO hit\n")); pCfoTrack->largeCFOHit = 1; return; } else @@ -223,12 +154,6 @@ void ODM_CfoTracking(void *pDM_VOID) if (pDM_Odm->bBtEnabled) { pCfoTrack->bAdjust = false; odm_SetCrystalCap(pDM_Odm, pCfoTrack->DefXCap); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ("ODM_CfoTracking(): Disable CFO tracking for BT!!\n") - ); } /* 4 1.6 Big jump */ @@ -237,16 +162,6 @@ void ODM_CfoTracking(void *pDM_VOID) Adjust_Xtal = Adjust_Xtal+((CFO_ave-CFO_TH_XTAL_LOW)>>2); else if (CFO_ave < (-CFO_TH_XTAL_LOW)) Adjust_Xtal = Adjust_Xtal+((CFO_TH_XTAL_LOW-CFO_ave)>>2); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ( - "ODM_CfoTracking(): Crystal cap offset = %d\n", - Adjust_Xtal - ) - ); } /* 4 1.7 Adjust Crystal Cap. */ @@ -263,34 +178,12 @@ void ODM_CfoTracking(void *pDM_VOID) odm_SetCrystalCap(pDM_Odm, (u8)CrystalCap); } - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ( - "ODM_CfoTracking(): Crystal cap = 0x%x, Default Crystal cap = 0x%x\n", - pCfoTrack->CrystalCap, - pCfoTrack->DefXCap - ) - ); /* 3 2. Dynamic ATC switch */ if (CFO_ave < CFO_TH_ATC && CFO_ave > -CFO_TH_ATC) { odm_SetATCStatus(pDM_Odm, false); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ("ODM_CfoTracking(): Disable ATC!!\n") - ); } else { odm_SetATCStatus(pDM_Odm, true); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CFO_TRACKING, - ODM_DBG_LOUD, - ("ODM_CfoTracking(): Enable ATC!!\n") - ); } } } diff --git a/drivers/staging/rtl8723bs/hal/odm_DIG.c b/drivers/staging/rtl8723bs/hal/odm_DIG.c index dcef7fb17389..ef5b48bb01b2 100644 --- a/drivers/staging/rtl8723bs/hal/odm_DIG.c +++ b/drivers/staging/rtl8723bs/hal/odm_DIG.c @@ -81,17 +81,6 @@ void odm_NHMBB(void *pDM_VOID) *(pDM_Odm->pNumTxBytesUnicast); pDM_Odm->NHMLastRxOkcnt = *(pDM_Odm->pNumRxBytesUnicast); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ( - "NHM_cnt_0 =%d, NHMCurTxOkcnt = %llu, NHMCurRxOkcnt = %llu\n", - pDM_Odm->NHM_cnt_0, - pDM_Odm->NHMCurTxOkcnt, - pDM_Odm->NHMCurRxOkcnt - ) - ); if ((pDM_Odm->NHMCurTxOkcnt) + 1 > (u64)(pDM_Odm->NHMCurRxOkcnt<<2) + 1) { /* Tx > 4*Rx possible for adaptivity test */ @@ -127,8 +116,6 @@ void odm_NHMBB(void *pDM_VOID) } } } - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("adaptivity_flag = %d\n ", pDM_Odm->adaptivity_flag)); } void odm_SearchPwdBLowerBound(void *pDM_VOID, u8 IGI_target) @@ -165,7 +152,6 @@ void odm_SearchPwdBLowerBound(void *pDM_VOID, u8 IGI_target) else pDM_Odm->txEdcca0 = pDM_Odm->txEdcca0 + 1; } - /* DbgPrint("txEdcca1 = %d, txEdcca0 = %d\n", pDM_Odm->txEdcca1, pDM_Odm->txEdcca0); */ if (pDM_Odm->txEdcca1 > 5) { IGI = IGI-1; @@ -199,8 +185,6 @@ void odm_SearchPwdBLowerBound(void *pDM_VOID, u8 IGI_target) pDM_Odm->Adaptivity_IGI_upper = IGI; } } - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("IGI = 0x%x, H2L_lb = 0x%x, L2H_lb = 0x%x\n", IGI, pDM_Odm->H2L_lb, pDM_Odm->L2H_lb)); } void odm_AdaptivityInit(void *pDM_VOID) @@ -239,19 +223,13 @@ void odm_Adaptivity(void *pDM_VOID, u8 IGI) bool EDCCA_State = false; if (!(pDM_Odm->SupportAbility & ODM_BB_ADAPTIVITY)) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("Go to odm_DynamicEDCCA()\n")); return; } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_Adaptivity() =====>\n")); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("ForceEDCCA =%d, IGI_Base = 0x%x, TH_L2H_ini = %d, TH_EDCCA_HL_diff = %d, AdapEn_RSSI = %d\n", - pDM_Odm->ForceEDCCA, pDM_Odm->IGI_Base, pDM_Odm->TH_L2H_ini, pDM_Odm->TH_EDCCA_HL_diff, pDM_Odm->AdapEn_RSSI)); if (*pDM_Odm->pBandWidth == ODM_BW20M) /* CHANNEL_WIDTH_20 */ IGI_target = pDM_Odm->IGI_Base; else if (*pDM_Odm->pBandWidth == ODM_BW40M) IGI_target = pDM_Odm->IGI_Base + 2; - else if (*pDM_Odm->pBandWidth == ODM_BW80M) - IGI_target = pDM_Odm->IGI_Base + 2; else IGI_target = pDM_Odm->IGI_Base; pDM_Odm->IGI_target = (u8) IGI_target; @@ -284,19 +262,6 @@ void odm_Adaptivity(void *pDM_VOID, u8 IGI) ) odm_NHMBB(pDM_Odm); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ( - "BandWidth =%s, IGI_target = 0x%x, EDCCA_State =%d\n", - (*pDM_Odm->pBandWidth == ODM_BW80M) ? "80M" : - ((*pDM_Odm->pBandWidth == ODM_BW40M) ? "40M" : "20M"), - IGI_target, - EDCCA_State - ) - ); - if (EDCCA_State) { Diff = IGI_target-(s8)IGI; TH_L2H_dmc = pDM_Odm->TH_L2H_ini + Diff; @@ -314,8 +279,6 @@ void odm_Adaptivity(void *pDM_VOID, u8 IGI) TH_L2H_dmc = 0x7f; TH_H2L_dmc = 0x7f; } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("IGI = 0x%x, TH_L2H_dmc = %d, TH_H2L_dmc = %d\n", - IGI, TH_L2H_dmc, TH_H2L_dmc)); PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_ECCAThreshold, bMaskByte0, (u8)TH_L2H_dmc); PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_ECCAThreshold, bMaskByte2, (u8)TH_H2L_dmc); } @@ -326,18 +289,13 @@ void ODM_Write_DIG(void *pDM_VOID, u8 CurrentIGI) struct dig_t *pDM_DigTable = &pDM_Odm->DM_DigTable; if (pDM_DigTable->bStopDIG) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("Stop Writing IGI\n")); return; } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_TRACE, ("ODM_REG(IGI_A, pDM_Odm) = 0x%x, ODM_BIT(IGI, pDM_Odm) = 0x%x\n", - ODM_REG(IGI_A, pDM_Odm), ODM_BIT(IGI, pDM_Odm))); - if (pDM_DigTable->CurIGValue != CurrentIGI) { /* 1 Check initial gain by upper bound */ if (!pDM_DigTable->bPSDInProgress) { if (CurrentIGI > pDM_DigTable->rx_gain_range_max) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_TRACE, ("CurrentIGI(0x%02x) is larger than upper bound !!\n", pDM_DigTable->rx_gain_range_max)); CurrentIGI = pDM_DigTable->rx_gain_range_max; } @@ -352,8 +310,6 @@ void ODM_Write_DIG(void *pDM_VOID, u8 CurrentIGI) pDM_DigTable->CurIGValue = CurrentIGI; } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_TRACE, ("CurrentIGI(0x%02x).\n", CurrentIGI)); - } void odm_PauseDIG( @@ -366,18 +322,10 @@ void odm_PauseDIG( struct dig_t *pDM_DigTable = &pDM_Odm->DM_DigTable; static bool bPaused; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_PauseDIG() =========>\n")); - if ( (pDM_Odm->SupportAbility & ODM_BB_ADAPTIVITY) && pDM_Odm->TxHangFlg == true ) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ("odm_PauseDIG(): Dynamic adjust threshold in progress !!\n") - ); return; } @@ -385,12 +333,6 @@ void odm_PauseDIG( !bPaused && (!(pDM_Odm->SupportAbility & ODM_BB_DIG) || !(pDM_Odm->SupportAbility & ODM_BB_FA_CNT)) ){ - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ("odm_PauseDIG(): Return: SupportAbility ODM_BB_DIG or ODM_BB_FA_CNT is disabled\n") - ); return; } @@ -399,18 +341,15 @@ void odm_PauseDIG( case ODM_PAUSE_DIG: /* 2 Disable DIG */ ODM_CmnInfoUpdate(pDM_Odm, ODM_CMNINFO_ABILITY, pDM_Odm->SupportAbility & (~ODM_BB_DIG)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_PauseDIG(): Pause DIG !!\n")); /* 2 Backup IGI value */ if (!bPaused) { pDM_DigTable->IGIBackup = pDM_DigTable->CurIGValue; bPaused = true; } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_PauseDIG(): Backup IGI = 0x%x\n", pDM_DigTable->IGIBackup)); /* 2 Write new IGI value */ ODM_Write_DIG(pDM_Odm, IGIValue); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_PauseDIG(): Write new IGI = 0x%x\n", IGIValue)); break; /* 1 Resume DIG */ @@ -419,16 +358,13 @@ void odm_PauseDIG( /* 2 Write backup IGI value */ ODM_Write_DIG(pDM_Odm, pDM_DigTable->IGIBackup); bPaused = false; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_PauseDIG(): Write original IGI = 0x%x\n", pDM_DigTable->IGIBackup)); /* 2 Enable DIG */ ODM_CmnInfoUpdate(pDM_Odm, ODM_CMNINFO_ABILITY, pDM_Odm->SupportAbility | ODM_BB_DIG); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_PauseDIG(): Resume DIG !!\n")); } break; default: - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_PauseDIG(): Wrong type !!\n")); break; } } @@ -439,25 +375,21 @@ bool odm_DigAbort(void *pDM_VOID) /* SupportAbility */ if (!(pDM_Odm->SupportAbility & ODM_BB_FA_CNT)) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Return: SupportAbility ODM_BB_FA_CNT is disabled\n")); return true; } /* SupportAbility */ if (!(pDM_Odm->SupportAbility & ODM_BB_DIG)) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Return: SupportAbility ODM_BB_DIG is disabled\n")); return true; } /* ScanInProcess */ if (*(pDM_Odm->pbScanInProcess)) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Return: In Scan Progress\n")); return true; } /* add by Neil Chen to avoid PSD is processing */ if (pDM_Odm->bDMInitialGainEnable == false) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Return: PSD is Processing\n")); return true; } @@ -523,8 +455,6 @@ void odm_DIG(void *pDM_VOID) if (odm_DigAbort(pDM_Odm)) return; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG() ===========================>\n\n")); - if (pDM_Odm->adaptivity_flag == true) Adap_IGI_Upper = pDM_Odm->Adaptivity_IGI_upper; @@ -540,15 +470,12 @@ void odm_DIG(void *pDM_VOID) dm_dig_min = DM_DIG_MIN_NIC; DIG_MaxOfMin = DM_DIG_MAX_AP; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Absolutely upper bound = 0x%x, lower bound = 0x%x\n", dm_dig_max, dm_dig_min)); - /* 1 Adjust boundary by RSSI */ if (pDM_Odm->bLinked && bPerformance) { /* 2 Modify DIG upper bound */ /* 4 Modify DIG upper bound for 92E, 8723A\B, 8821 & 8812 BT */ if (pDM_Odm->bBtLimitedDig == 1) { offset = 10; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Coex. case: Force upper bound to RSSI + %d !!!!!!\n", offset)); } else offset = 15; @@ -586,49 +513,9 @@ void odm_DIG(void *pDM_VOID) DIG_Dynamic_MIN = DIG_MaxOfMin; else DIG_Dynamic_MIN = (u8) pDM_DigTable->AntDiv_RSSI_max; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_ANT_DIV, - ODM_DBG_LOUD, - ( - "odm_DIG(): Antenna diversity case: Force lower bound to 0x%x !!!!!!\n", - DIG_Dynamic_MIN - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_ANT_DIV, - ODM_DBG_LOUD, - ( - "odm_DIG(): Antenna diversity case: RSSI_max = 0x%x !!!!!!\n", - pDM_DigTable->AntDiv_RSSI_max - ) - ); } } } - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ( - "odm_DIG(): Adjust boundary by RSSI Upper bound = 0x%x, Lower bound = 0x%x\n", - pDM_DigTable->rx_gain_range_max, - DIG_Dynamic_MIN - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ( - "odm_DIG(): Link status: bLinked = %d, RSSI = %d, bFirstConnect = %d, bFirsrDisConnect = %d\n\n", - pDM_Odm->bLinked, - pDM_Odm->RSSI_Min, - FirstConnect, - FirstDisConnect - ) - ); /* 1 Modify DIG lower bound, deal with abnormal case */ /* 2 Abnormal false alarm case */ @@ -645,47 +532,20 @@ void odm_DIG(void *pDM_VOID) pDM_Odm->bsta_state ) { pDM_DigTable->rx_gain_range_min = dm_dig_min; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ( - "odm_DIG(): Abnormal #beacon (%d) case in STA mode: Force lower bound to 0x%x !!!!!!\n\n", - pDM_Odm->PhyDbgInfo.NumQryBeaconPkt, - pDM_DigTable->rx_gain_range_min - ) - ); } } /* 2 Abnormal lower bound case */ if (pDM_DigTable->rx_gain_range_min > pDM_DigTable->rx_gain_range_max) { pDM_DigTable->rx_gain_range_min = pDM_DigTable->rx_gain_range_max; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ( - "odm_DIG(): Abnormal lower bound case: Force lower bound to 0x%x !!!!!!\n\n", - pDM_DigTable->rx_gain_range_min - ) - ); } /* 1 False alarm threshold decision */ odm_FAThresholdCheck(pDM_Odm, bDFSBand, bPerformance, RxTp, TxTp, dm_FA_thres); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): False alarm threshold = %d, %d, %d\n\n", dm_FA_thres[0], dm_FA_thres[1], dm_FA_thres[2])); /* 1 Adjust initial gain by false alarm */ if (pDM_Odm->bLinked && bPerformance) { - /* 2 After link */ - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ("odm_DIG(): Adjust IGI after link\n") - ); if (bFirstTpTarget || (FirstConnect && bPerformance)) { pDM_DigTable->LargeFAHit = 0; @@ -698,16 +558,6 @@ void odm_DIG(void *pDM_VOID) CurrentIGI = DIG_MaxOfMin; } - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ( - "odm_DIG(): First connect case: IGI does on-shot to 0x%x\n", - CurrentIGI - ) - ); - } else { if (pFalseAlmCnt->Cnt_all > dm_FA_thres[2]) CurrentIGI = CurrentIGI + 4; @@ -722,35 +572,12 @@ void odm_DIG(void *pDM_VOID) (pDM_Odm->bsta_state) ) { CurrentIGI = pDM_DigTable->rx_gain_range_min; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ( - "odm_DIG(): Abnormal #beacon (%d) case: IGI does one-shot to 0x%x\n", - pDM_Odm->PhyDbgInfo.NumQryBeaconPkt, - CurrentIGI - ) - ); } } } else { - /* 2 Before link */ - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ("odm_DIG(): Adjust IGI before link\n") - ); if (FirstDisConnect || bFirstCoverage) { CurrentIGI = dm_dig_min; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ("odm_DIG(): First disconnect case: IGI does on-shot to lower bound\n") - ); } else { if (pFalseAlmCnt->Cnt_all > dm_FA_thres[2]) CurrentIGI = CurrentIGI + 4; @@ -768,17 +595,6 @@ void odm_DIG(void *pDM_VOID) if (CurrentIGI > pDM_DigTable->rx_gain_range_max) CurrentIGI = pDM_DigTable->rx_gain_range_max; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ( - "odm_DIG(): CurIGValue = 0x%x, TotalFA = %d\n\n", - CurrentIGI, - pFalseAlmCnt->Cnt_all - ) - ); - /* 1 Force upper bound and lower bound for adaptivity */ if ( pDM_Odm->SupportAbility & ODM_BB_ADAPTIVITY && @@ -791,8 +607,6 @@ void odm_DIG(void *pDM_VOID) if (CurrentIGI < pDM_Odm->IGI_LowerBound) CurrentIGI = pDM_Odm->IGI_LowerBound; } - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Adaptivity case: Force upper bound to 0x%x !!!!!!\n", Adap_IGI_Upper)); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Adaptivity case: Force lower bound to 0x%x !!!!!!\n\n", pDM_Odm->IGI_LowerBound)); } @@ -831,13 +645,6 @@ void odm_DIGbyRSSI_LPS(void *pDM_VOID) CurrentIGI = CurrentIGI+RSSI_OFFSET_DIG; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ("odm_DIGbyRSSI_LPS() ==>\n") - ); - /* Using FW PS mode to make IGI */ /* Adjust by FA in LPS MODE */ if (pFalseAlmCnt->Cnt_all > DM_DIG_FA_TH2_LPS) @@ -862,26 +669,6 @@ void odm_DIGbyRSSI_LPS(void *pDM_VOID) else if (CurrentIGI < RSSI_Lower) CurrentIGI = RSSI_Lower; - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ("odm_DIGbyRSSI_LPS(): pFalseAlmCnt->Cnt_all = %d\n", pFalseAlmCnt->Cnt_all) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ("odm_DIGbyRSSI_LPS(): pDM_Odm->RSSI_Min = %d\n", pDM_Odm->RSSI_Min) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_DIG, - ODM_DBG_LOUD, - ("odm_DIGbyRSSI_LPS(): CurrentIGI = 0x%x\n", CurrentIGI) - ); - ODM_Write_DIG(pDM_Odm, CurrentIGI); /* ODM_Write_DIG(pDM_Odm, pDM_DigTable->CurIGValue); */ } @@ -970,86 +757,6 @@ void odm_FalseAlarmCounterStatistics(void *pDM_VOID) FalseAlmCnt->Cnt_CCA_all = FalseAlmCnt->Cnt_OFDM_CCA + FalseAlmCnt->Cnt_CCK_CCA; - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ("Enter odm_FalseAlarmCounterStatistics\n") - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ( - "Cnt_Fast_Fsync =%d, Cnt_SB_Search_fail =%d\n", - FalseAlmCnt->Cnt_Fast_Fsync, - FalseAlmCnt->Cnt_SB_Search_fail - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ( - "Cnt_Parity_Fail =%d, Cnt_Rate_Illegal =%d\n", - FalseAlmCnt->Cnt_Parity_Fail, - FalseAlmCnt->Cnt_Rate_Illegal - ) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ( - "Cnt_Crc8_fail =%d, Cnt_Mcs_fail =%d\n", - FalseAlmCnt->Cnt_Crc8_fail, - FalseAlmCnt->Cnt_Mcs_fail - ) - ); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ("Cnt_OFDM_CCA =%d\n", FalseAlmCnt->Cnt_OFDM_CCA) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ("Cnt_CCK_CCA =%d\n", FalseAlmCnt->Cnt_CCK_CCA) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ("Cnt_CCA_all =%d\n", FalseAlmCnt->Cnt_CCA_all) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ("Cnt_Ofdm_fail =%d\n", FalseAlmCnt->Cnt_Ofdm_fail) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ("Cnt_Cck_fail =%d\n", FalseAlmCnt->Cnt_Cck_fail) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ("Cnt_Ofdm_fail =%d\n", FalseAlmCnt->Cnt_Ofdm_fail) - ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_FA_CNT, - ODM_DBG_LOUD, - ("Total False Alarm =%d\n", FalseAlmCnt->Cnt_all) - ); } @@ -1084,8 +791,6 @@ u8 odm_ForbiddenIGICheck(void *pDM_VOID, u8 DIG_Dynamic_MIN, u8 CurrentIGI) u8 rx_gain_range_min = pDM_DigTable->rx_gain_range_min; if (pFalseAlmCnt->Cnt_all > 10000) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Abnormally false alarm case.\n")); - if (pDM_DigTable->LargeFAHit != 3) pDM_DigTable->LargeFAHit++; @@ -1102,22 +807,18 @@ u8 odm_ForbiddenIGICheck(void *pDM_VOID, u8 DIG_Dynamic_MIN, u8 CurrentIGI) else rx_gain_range_min = (pDM_DigTable->ForbiddenIGI + 2); pDM_DigTable->Recover_cnt = 1800; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Abnormally false alarm case: Recover_cnt = %d\n", pDM_DigTable->Recover_cnt)); } } else { if (pDM_DigTable->Recover_cnt != 0) { pDM_DigTable->Recover_cnt--; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Normal Case: Recover_cnt = %d\n", pDM_DigTable->Recover_cnt)); } else { if (pDM_DigTable->LargeFAHit < 3) { if ((pDM_DigTable->ForbiddenIGI - 2) < DIG_Dynamic_MIN) { /* DM_DIG_MIN) */ pDM_DigTable->ForbiddenIGI = DIG_Dynamic_MIN; /* DM_DIG_MIN; */ rx_gain_range_min = DIG_Dynamic_MIN; /* DM_DIG_MIN; */ - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Normal Case: At Lower Bound\n")); } else { pDM_DigTable->ForbiddenIGI -= 2; rx_gain_range_min = (pDM_DigTable->ForbiddenIGI + 2); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_DIG, ODM_DBG_LOUD, ("odm_DIG(): Normal Case: Approach Lower Bound\n")); } } else pDM_DigTable->LargeFAHit = 0; @@ -1143,25 +844,12 @@ void odm_CCKPacketDetectionThresh(void *pDM_VOID) !(pDM_Odm->SupportAbility & ODM_BB_CCK_PD) || !(pDM_Odm->SupportAbility & ODM_BB_FA_CNT) ) { - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CCK_PD, - ODM_DBG_LOUD, - ("odm_CCKPacketDetectionThresh() return ==========\n") - ); return; } if (pDM_Odm->ExtLNA) return; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CCK_PD, - ODM_DBG_LOUD, - ("odm_CCKPacketDetectionThresh() ==========>\n") - ); - if (pDM_Odm->bLinked) { if (pDM_Odm->RSSI_Min > 25) CurCCK_CCAThres = 0xcd; @@ -1181,16 +869,6 @@ void odm_CCKPacketDetectionThresh(void *pDM_VOID) } ODM_Write_CCK_CCA_Thres(pDM_Odm, CurCCK_CCAThres); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_CCK_PD, - ODM_DBG_LOUD, - ( - "odm_CCKPacketDetectionThresh() CurCCK_CCAThres = 0x%x\n", - CurCCK_CCAThres - ) - ); } void ODM_Write_CCK_CCA_Thres(void *pDM_VOID, u8 CurCCK_CCAThres) diff --git a/drivers/staging/rtl8723bs/hal/odm_EdcaTurboCheck.c b/drivers/staging/rtl8723bs/hal/odm_EdcaTurboCheck.c index 12b37c17ea0c..578d5712645c 100644 --- a/drivers/staging/rtl8723bs/hal/odm_EdcaTurboCheck.c +++ b/drivers/staging/rtl8723bs/hal/odm_EdcaTurboCheck.c @@ -37,19 +37,6 @@ void ODM_EdcaTurboInit(void *pDM_VOID) pDM_Odm->DM_EDCA_Table.bCurrentTurboEDCA = false; pDM_Odm->DM_EDCA_Table.bIsCurRDLState = false; Adapter->recvpriv.bIsAnyNonBEPkts = false; - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_EDCA_TURBO, ODM_DBG_LOUD, - ("Original VO PARAM: 0x%x\n", - rtw_read32(pDM_Odm->Adapter, ODM_EDCA_VO_PARAM))); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_EDCA_TURBO, ODM_DBG_LOUD, - ("Original VI PARAM: 0x%x\n", - rtw_read32(pDM_Odm->Adapter, ODM_EDCA_VI_PARAM))); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_EDCA_TURBO, ODM_DBG_LOUD, - ("Original BE PARAM: 0x%x\n", - rtw_read32(pDM_Odm->Adapter, ODM_EDCA_BE_PARAM))); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_EDCA_TURBO, ODM_DBG_LOUD, - ("Original BK PARAM: 0x%x\n", - rtw_read32(pDM_Odm->Adapter, ODM_EDCA_BK_PARAM))); } /* ODM_InitEdcaTurbo */ void odm_EdcaTurboCheck(void *pDM_VOID) @@ -60,15 +47,10 @@ void odm_EdcaTurboCheck(void *pDM_VOID) */ struct dm_odm_t *pDM_Odm = (struct dm_odm_t *)pDM_VOID; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_EDCA_TURBO, ODM_DBG_LOUD, - ("odm_EdcaTurboCheck ========================>\n")); - if (!(pDM_Odm->SupportAbility & ODM_MAC_EDCA_TURBO)) return; odm_EdcaTurboCheckCE(pDM_Odm); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_EDCA_TURBO, ODM_DBG_LOUD, - ("<========================odm_EdcaTurboCheck\n")); } /* odm_CheckEdcaTurbo */ void odm_EdcaTurboCheckCE(void *pDM_VOID) @@ -142,12 +124,10 @@ void odm_EdcaTurboCheckCE(void *pDM_VOID) } else if ((iot_peer == HT_IOT_PEER_CISCO) && ((wirelessmode == ODM_WM_G) || (wirelessmode == (ODM_WM_B | ODM_WM_G)) || - (wirelessmode == ODM_WM_A) || (wirelessmode == ODM_WM_B))) { EDCA_BE_DL = edca_setting_DL_GMode[iot_peer]; } else if ((iot_peer == HT_IOT_PEER_AIRGO) && - ((wirelessmode == ODM_WM_G) || - (wirelessmode == ODM_WM_A))) { + (wirelessmode == ODM_WM_G)) { EDCA_BE_DL = 0xa630; } else if (iot_peer == HT_IOT_PEER_MARVELL) { EDCA_BE_DL = edca_setting_DL[iot_peer]; diff --git a/drivers/staging/rtl8723bs/hal/odm_HWConfig.c b/drivers/staging/rtl8723bs/hal/odm_HWConfig.c index 638c16f5c668..32f7eb952ca8 100644 --- a/drivers/staging/rtl8723bs/hal/odm_HWConfig.c +++ b/drivers/staging/rtl8723bs/hal/odm_HWConfig.c @@ -59,9 +59,6 @@ static u8 odm_EVMdbToPercentage(s8 Value) ret_val = Value; ret_val /= 2; - /* DbgPrint("Value =%d\n", Value); */ - /* ODM_RT_DISP(FRX, RX_PHY_SQ, ("EVMdbToPercentage92C Value =%d / %x\n", ret_val, ret_val)); */ - if (ret_val >= 0) ret_val = 0; if (ret_val <= -33) @@ -141,7 +138,6 @@ static void odm_RxPhyStatus92CSeries_Parsing( } - /* DbgPrint("cck SQ = %d\n", SQ); */ pPhyInfo->signal_quality = SQ; pPhyInfo->rx_mimo_signal_quality[ODM_RF_PATH_A] = SQ; pPhyInfo->rx_mimo_signal_quality[ODM_RF_PATH_B] = -1; @@ -168,7 +164,6 @@ static void odm_RxPhyStatus92CSeries_Parsing( /* Translate DBM to percentage. */ RSSI = odm_QueryRxPwrPercentage(rx_pwr[i]); total_rssi += RSSI; - /* RT_DISP(FRX, RX_PHY_SS, ("RF-%d RXPWR =%x RSSI =%d\n", i, rx_pwr[i], RSSI)); */ pPhyInfo->rx_mimo_signal_strength[i] = (u8) RSSI; @@ -183,10 +178,8 @@ static void odm_RxPhyStatus92CSeries_Parsing( rx_pwr_all = (((pPhyStaRpt->cck_sig_qual_ofdm_pwdb_all) >> 1)&0x7f)-110; PWDB_ALL_BT = PWDB_ALL = odm_QueryRxPwrPercentage(rx_pwr_all); - /* RT_DISP(FRX, RX_PHY_SS, ("PWDB_ALL =%d\n", PWDB_ALL)); */ pPhyInfo->rx_pwd_ba11 = PWDB_ALL; - /* ODM_RT_TRACE(pDM_Odm, ODM_COMP_RSSI_MONITOR, ODM_DBG_LOUD, ("ODM OFDM RSSI =%d\n", pPhyInfo->rx_pwd_ba11)); */ pPhyInfo->bt_rx_rssi_percentage = PWDB_ALL_BT; pPhyInfo->rx_power = rx_pwr_all; pPhyInfo->recv_signal_power = rx_pwr_all; @@ -206,9 +199,6 @@ static void odm_RxPhyStatus92CSeries_Parsing( /* value to positive one, then the dbm value (which is supposed to be negative) is not correct anymore. */ EVM = odm_EVMdbToPercentage((pPhyStaRpt->stream_rxevm[i])); /* dbm */ - /* RT_DISP(FRX, RX_PHY_SQ, ("RXRATE =%x RXEVM =%x EVM =%s%d\n", */ - /* GET_RX_STATUS_DESC_RX_MCS(pDesc), pDrvInfo->rxevm[i], "%", EVM)); */ - /* if (pPktinfo->bPacketMatchBSSID) */ { if (i == ODM_RF_PATH_A) /* Fill value in RFD, Get the first spatial stream only */ @@ -232,9 +222,6 @@ static void odm_RxPhyStatus92CSeries_Parsing( pPhyInfo->signal_strength = (u8)(odm_SignalScaleMapping(pDM_Odm, total_rssi /= rf_rx_num)); } } - - /* DbgPrint("isCCKrate = %d, pPhyInfo->rx_pwd_ba11 = %d, pPhyStaRpt->cck_agc_rpt_ofdm_cfosho_a = 0x%x\n", */ - /* isCCKrate, pPhyInfo->rx_pwd_ba11, pPhyStaRpt->cck_agc_rpt_ofdm_cfosho_a); */ } static void odm_Process_RSSIForDM( @@ -286,8 +273,6 @@ static void odm_Process_RSSIForDM( pDM_Odm->RSSI_A = pPhyInfo->rx_mimo_signal_strength[ODM_RF_PATH_A]; pDM_Odm->RSSI_B = 0; } else { - /* DbgPrint("pRfd->Status.rx_mimo_signal_strength[0] = %d, pRfd->Status.rx_mimo_signal_strength[1] = %d\n", */ - /* pRfd->Status.rx_mimo_signal_strength[0], pRfd->Status.rx_mimo_signal_strength[1]); */ pDM_Odm->RSSI_A = pPhyInfo->rx_mimo_signal_strength[ODM_RF_PATH_A]; pDM_Odm->RSSI_B = pPhyInfo->rx_mimo_signal_strength[ODM_RF_PATH_B]; @@ -377,11 +362,6 @@ static void odm_Process_RSSIForDM( pEntry->rssi_stat.UndecoratedSmoothedCCK = UndecoratedSmoothedCCK; pEntry->rssi_stat.UndecoratedSmoothedOFDM = UndecoratedSmoothedOFDM; pEntry->rssi_stat.UndecoratedSmoothedPWDB = UndecoratedSmoothedPWDB; - - /* DbgPrint("OFDM_pkt =%d, Weighting =%d\n", OFDM_pkt, Weighting); */ - /* DbgPrint("UndecoratedSmoothedOFDM =%d, UndecoratedSmoothedPWDB =%d, UndecoratedSmoothedCCK =%d\n", */ - /* UndecoratedSmoothedOFDM, UndecoratedSmoothedPWDB, UndecoratedSmoothedCCK); */ - } } @@ -427,12 +407,6 @@ enum hal_status ODM_ConfigRFWithHeaderFile( enum odm_rf_radio_path_e eRFPath ) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_INIT, ODM_DBG_LOUD, - ("===>ODM_ConfigRFWithHeaderFile (%s)\n", (pDM_Odm->bIsMPChip) ? "MPChip" : "TestChip")); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_INIT, ODM_DBG_LOUD, - ("pDM_Odm->SupportPlatform: 0x%X, pDM_Odm->SupportInterface: 0x%X, pDM_Odm->BoardType: 0x%X\n", - pDM_Odm->SupportPlatform, pDM_Odm->SupportInterface, pDM_Odm->BoardType)); - if (ConfigType == CONFIG_RF_RADIO) READ_AND_CONFIG(8723B, _RadioA); else if (ConfigType == CONFIG_RF_TXPWR_LMT) @@ -443,12 +417,6 @@ enum hal_status ODM_ConfigRFWithHeaderFile( enum hal_status ODM_ConfigRFWithTxPwrTrackHeaderFile(struct dm_odm_t *pDM_Odm) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_INIT, ODM_DBG_LOUD, - ("===>ODM_ConfigRFWithTxPwrTrackHeaderFile (%s)\n", (pDM_Odm->bIsMPChip) ? "MPChip" : "TestChip")); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_INIT, ODM_DBG_LOUD, - ("pDM_Odm->SupportPlatform: 0x%X, pDM_Odm->SupportInterface: 0x%X, pDM_Odm->BoardType: 0x%X\n", - pDM_Odm->SupportPlatform, pDM_Odm->SupportInterface, pDM_Odm->BoardType)); - if (pDM_Odm->SupportInterface == ODM_ITRF_SDIO) READ_AND_CONFIG(8723B, _TxPowerTrack_SDIO); @@ -459,12 +427,6 @@ enum hal_status ODM_ConfigBBWithHeaderFile( struct dm_odm_t *pDM_Odm, enum ODM_BB_Config_Type ConfigType ) { - ODM_RT_TRACE(pDM_Odm, ODM_COMP_INIT, ODM_DBG_LOUD, - ("===>ODM_ConfigBBWithHeaderFile (%s)\n", (pDM_Odm->bIsMPChip) ? "MPChip" : "TestChip")); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_INIT, ODM_DBG_LOUD, - ("pDM_Odm->SupportPlatform: 0x%X, pDM_Odm->SupportInterface: 0x%X, pDM_Odm->BoardType: 0x%X\n", - pDM_Odm->SupportPlatform, pDM_Odm->SupportInterface, pDM_Odm->BoardType)); - if (ConfigType == CONFIG_BB_PHY_REG) READ_AND_CONFIG(8723B, _PHY_REG); else if (ConfigType == CONFIG_BB_AGC_TAB) diff --git a/drivers/staging/rtl8723bs/hal/odm_NoiseMonitor.c b/drivers/staging/rtl8723bs/hal/odm_NoiseMonitor.c index c3de123e2a48..ad169704f3e9 100644 --- a/drivers/staging/rtl8723bs/hal/odm_NoiseMonitor.c +++ b/drivers/staging/rtl8723bs/hal/odm_NoiseMonitor.c @@ -29,9 +29,8 @@ static s16 odm_InbandNoise_Monitor_NSeries( u8 max_rf_path = 0, rf_path; u8 reg_c50, reg_c58, valid_done = 0; struct noise_level noise_data; - u32 start = 0, func_start = 0, func_end = 0; + u32 start = 0; - func_start = jiffies; pDM_Odm->noise_level.noise_all = 0; if ((pDM_Odm->RFType == ODM_1T2R) || (pDM_Odm->RFType == ODM_2T2R)) @@ -39,8 +38,6 @@ static s16 odm_InbandNoise_Monitor_NSeries( else max_rf_path = 1; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("odm_DebugControlInbandNoise_Nseries() ==>\n")); - memset(&noise_data, 0, sizeof(struct noise_level)); /* */ @@ -65,7 +62,6 @@ static s16 odm_InbandNoise_Monitor_NSeries( /* Read Noise Floor Report */ tmp4b = PHY_QueryBBReg(pDM_Odm->Adapter, 0x8f8, bMaskDWord); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("Noise Floor Report (0x8f8) = 0x%08x\n", tmp4b)); /* PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_XAAGCCore1, bMaskByte0, TestInitialGain); */ /* if (max_rf_path == 2) */ @@ -77,17 +73,10 @@ static s16 odm_InbandNoise_Monitor_NSeries( noise_data.value[ODM_RF_PATH_A] = (u8)(tmp4b&0xff); noise_data.value[ODM_RF_PATH_B] = (u8)((tmp4b&0xff00)>>8); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("value_a = 0x%x(%d), value_b = 0x%x(%d)\n", - noise_data.value[ODM_RF_PATH_A], noise_data.value[ODM_RF_PATH_A], noise_data.value[ODM_RF_PATH_B], noise_data.value[ODM_RF_PATH_B])); - for (rf_path = ODM_RF_PATH_A; rf_path < max_rf_path; rf_path++) { noise_data.sval[rf_path] = (s8)noise_data.value[rf_path]; noise_data.sval[rf_path] /= 2; } - - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("sval_a = %d, sval_b = %d\n", - noise_data.sval[ODM_RF_PATH_A], noise_data.sval[ODM_RF_PATH_B])); /* mdelay(10); */ /* msleep(10); */ @@ -95,11 +84,8 @@ static s16 odm_InbandNoise_Monitor_NSeries( if ((noise_data.valid_cnt[rf_path] < ValidCnt) && (noise_data.sval[rf_path] < Valid_Max && noise_data.sval[rf_path] >= Valid_Min)) { noise_data.valid_cnt[rf_path]++; noise_data.sum[rf_path] += noise_data.sval[rf_path]; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("RF_Path:%d Valid sval = %d\n", rf_path, noise_data.sval[rf_path])); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("Sum of sval = %d,\n", noise_data.sum[rf_path])); if (noise_data.valid_cnt[rf_path] == ValidCnt) { valid_done++; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("After divided, RF_Path:%d , sum = %d\n", rf_path, noise_data.sum[rf_path])); } } @@ -120,43 +106,23 @@ static s16 odm_InbandNoise_Monitor_NSeries( } reg_c50 = (s32)PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_XAAGCCore1, bMaskByte0); reg_c50 &= ~BIT7; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("0x%x = 0x%02x(%d)\n", rOFDM0_XAAGCCore1, reg_c50, reg_c50)); pDM_Odm->noise_level.noise[ODM_RF_PATH_A] = -110 + reg_c50 + noise_data.sum[ODM_RF_PATH_A]; pDM_Odm->noise_level.noise_all += pDM_Odm->noise_level.noise[ODM_RF_PATH_A]; if (max_rf_path == 2) { reg_c58 = (s32)PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_XBAGCCore1, bMaskByte0); reg_c58 &= ~BIT7; - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("0x%x = 0x%02x(%d)\n", rOFDM0_XBAGCCore1, reg_c58, reg_c58)); pDM_Odm->noise_level.noise[ODM_RF_PATH_B] = -110 + reg_c58 + noise_data.sum[ODM_RF_PATH_B]; pDM_Odm->noise_level.noise_all += pDM_Odm->noise_level.noise[ODM_RF_PATH_B]; } pDM_Odm->noise_level.noise_all /= max_rf_path; - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_COMMON, - ODM_DBG_LOUD, - ( - "noise_a = %d, noise_b = %d\n", - pDM_Odm->noise_level.noise[ODM_RF_PATH_A], - pDM_Odm->noise_level.noise[ODM_RF_PATH_B] - ) - ); - /* */ /* Step 4. Recover the Dig */ /* */ if (bPauseDIG) odm_PauseDIG(pDM_Odm, ODM_RESUME_DIG, IGIValue); - func_end = jiffies_to_msecs(jiffies - func_start); - /* printk("%s noise_a = %d, noise_b = %d noise_all:%d (%d ms)\n", __func__, */ - /* pDM_Odm->noise_level.noise[ODM_RF_PATH_A], */ - /* pDM_Odm->noise_level.noise[ODM_RF_PATH_B], */ - /* pDM_Odm->noise_level.noise_all, func_end); */ - - ODM_RT_TRACE(pDM_Odm, ODM_COMP_COMMON, ODM_DBG_LOUD, ("odm_DebugControlInbandNoise_Nseries() <==\n")); return pDM_Odm->noise_level.noise_all; } diff --git a/drivers/staging/rtl8723bs/hal/odm_PathDiv.c b/drivers/staging/rtl8723bs/hal/odm_PathDiv.c deleted file mode 100644 index 92b708265d47..000000000000 --- a/drivers/staging/rtl8723bs/hal/odm_PathDiv.c +++ /dev/null @@ -1,34 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0 -/****************************************************************************** - * - * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. - * - ******************************************************************************/ - -#include "odm_precomp.h" - -void odm_PathDiversityInit(void *pDM_VOID) -{ - struct dm_odm_t *pDM_Odm = (struct dm_odm_t *)pDM_VOID; - - if (!(pDM_Odm->SupportAbility & ODM_BB_PATH_DIV)) - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_PATH_DIV, - ODM_DBG_LOUD, - ("Return: Not Support PathDiv\n") - ); -} - -void odm_PathDiversity(void *pDM_VOID) -{ - struct dm_odm_t *pDM_Odm = (struct dm_odm_t *)pDM_VOID; - - if (!(pDM_Odm->SupportAbility & ODM_BB_PATH_DIV)) - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_PATH_DIV, - ODM_DBG_LOUD, - ("Return: Not Support PathDiv\n") - ); -} diff --git a/drivers/staging/rtl8723bs/hal/odm_PathDiv.h b/drivers/staging/rtl8723bs/hal/odm_PathDiv.h deleted file mode 100644 index 7a5bc00c3682..000000000000 --- a/drivers/staging/rtl8723bs/hal/odm_PathDiv.h +++ /dev/null @@ -1,21 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -/****************************************************************************** - * - * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. - * - ******************************************************************************/ - -#ifndef __ODMPATHDIV_H__ -#define __ODMPATHDIV_H__ - -void -odm_PathDiversityInit( - void *pDM_VOID - ); - -void -odm_PathDiversity( - void *pDM_VOID - ); - - #endif /* ifndef __ODMPATHDIV_H__ */ diff --git a/drivers/staging/rtl8723bs/hal/odm_RTL8723B.c b/drivers/staging/rtl8723bs/hal/odm_RTL8723B.c index ecf0045fcad9..54518ea1be6b 100644 --- a/drivers/staging/rtl8723bs/hal/odm_RTL8723B.c +++ b/drivers/staging/rtl8723bs/hal/odm_RTL8723B.c @@ -29,7 +29,6 @@ s8 odm_CCKRSSI_8723B(u8 LNA_idx, u8 VGA_idx) break; default: /* rx_pwr_all = -53+(2*(31-VGA_idx)); */ - /* DbgPrint("wrong LNA index\n"); */ break; } diff --git a/drivers/staging/rtl8723bs/hal/odm_RegConfig8723B.c b/drivers/staging/rtl8723bs/hal/odm_RegConfig8723B.c index 63bf5ba3e0d5..a29bd9375023 100644 --- a/drivers/staging/rtl8723bs/hal/odm_RegConfig8723B.c +++ b/drivers/staging/rtl8723bs/hal/odm_RegConfig8723B.c @@ -38,17 +38,6 @@ void odm_ConfigRFReg_8723B( PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH, RegAddr, bRFRegOffsetMask, Data); udelay(1); getvalue = PHY_QueryRFReg(pDM_Odm->Adapter, RF_PATH, Addr, bMaskDWord); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> ODM_ConfigRFWithHeaderFile: [B6] getvalue 0x%x, Data 0x%x, count %d\n", - getvalue, - Data, - count - ) - ); if (count > 5) break; } @@ -86,17 +75,6 @@ void odm_ConfigRFReg_8723B( getvalue = PHY_QueryRFReg( pDM_Odm->Adapter, RF_PATH, Addr, bMaskDWord ); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> ODM_ConfigRFWithHeaderFile: [B2] getvalue 0x%x, Data 0x%x, count %d\n", - getvalue, - Data, - count - ) - ); if (count > 5) break; @@ -118,32 +96,11 @@ void odm_ConfigRF_RadioA_8723B(struct dm_odm_t *pDM_Odm, u32 Addr, u32 Data) ODM_RF_PATH_A, Addr|maskforPhySet ); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> ODM_ConfigRFWithHeaderFile: [RadioA] %08X %08X\n", - Addr, - Data - ) - ); } void odm_ConfigMAC_8723B(struct dm_odm_t *pDM_Odm, u32 Addr, u8 Data) { rtw_write8(pDM_Odm->Adapter, Addr, Data); - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> ODM_ConfigMACWithHeaderFile: [MAC_REG] %08X %08X\n", - Addr, - Data - ) - ); } void odm_ConfigBB_AGC_8723B( @@ -156,22 +113,10 @@ void odm_ConfigBB_AGC_8723B( PHY_SetBBReg(pDM_Odm->Adapter, Addr, Bitmask, Data); /* Add 1us delay between BB/RF register setting. */ udelay(1); - - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_TRACE, - ( - "===> ODM_ConfigBBWithHeaderFile: [AGC_TAB] %08X %08X\n", - Addr, - Data - ) - ); } void odm_ConfigBB_PHY_REG_PG_8723B( struct dm_odm_t *pDM_Odm, - u32 Band, u32 RfPath, u32 TxNum, u32 Addr, @@ -182,19 +127,8 @@ void odm_ConfigBB_PHY_REG_PG_8723B( if (Addr == 0xfe || Addr == 0xffe) msleep(50); else { - PHY_StoreTxPowerByRate(pDM_Odm->Adapter, Band, RfPath, TxNum, Addr, Bitmask, Data); + PHY_StoreTxPowerByRate(pDM_Odm->Adapter, RfPath, TxNum, Addr, Bitmask, Data); } - ODM_RT_TRACE( - pDM_Odm, - ODM_COMP_INIT, - ODM_DBG_LOUD, - ( - "===> ODM_ConfigBBWithHeaderFile: [PHY_REG] %08X %08X %08X\n", - Addr, - Bitmask, - Data - ) - ); } void odm_ConfigBB_PHY_8723B( @@ -222,13 +156,11 @@ void odm_ConfigBB_PHY_8723B( /* Add 1us delay between BB/RF register setting. */ udelay(1); - ODM_RT_TRACE(pDM_Odm, ODM_COMP_INIT, ODM_DBG_TRACE, ("===> ODM_ConfigBBWithHeaderFile: [PHY_REG] %08X %08X\n", Addr, Data)); } void odm_ConfigBB_TXPWR_LMT_8723B( struct dm_odm_t *pDM_Odm, u8 *Regulation, - u8 *Band, u8 *Bandwidth, u8 *RateSection, u8 *RfPath, @@ -239,7 +171,6 @@ void odm_ConfigBB_TXPWR_LMT_8723B( PHY_SetTxPowerLimit( pDM_Odm->Adapter, Regulation, - Band, Bandwidth, RateSection, RfPath, diff --git a/drivers/staging/rtl8723bs/hal/odm_RegConfig8723B.h b/drivers/staging/rtl8723bs/hal/odm_RegConfig8723B.h index b392d14c389d..bdd6fde49fc6 100644 --- a/drivers/staging/rtl8723bs/hal/odm_RegConfig8723B.h +++ b/drivers/staging/rtl8723bs/hal/odm_RegConfig8723B.h @@ -25,7 +25,6 @@ void odm_ConfigBB_AGC_8723B(struct dm_odm_t *pDM_Odm, ); void odm_ConfigBB_PHY_REG_PG_8723B(struct dm_odm_t *pDM_Odm, - u32 Band, u32 RfPath, u32 TxNum, u32 Addr, @@ -41,7 +40,6 @@ void odm_ConfigBB_PHY_8723B(struct dm_odm_t *pDM_Odm, void odm_ConfigBB_TXPWR_LMT_8723B(struct dm_odm_t *pDM_Odm, u8 *Regulation, - u8 *Band, u8 *Bandwidth, u8 *RateSection, u8 *RfPath, diff --git a/drivers/staging/rtl8723bs/hal/odm_debug.c b/drivers/staging/rtl8723bs/hal/odm_debug.c deleted file mode 100644 index b35451bcb437..000000000000 --- a/drivers/staging/rtl8723bs/hal/odm_debug.c +++ /dev/null @@ -1,44 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0 -/****************************************************************************** - * - * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. - * - ******************************************************************************/ - -#include "odm_precomp.h" - -void ODM_InitDebugSetting(struct dm_odm_t *pDM_Odm) -{ - pDM_Odm->DebugLevel = ODM_DBG_LOUD; - - pDM_Odm->DebugComponents = -/* BB Functions */ -/* ODM_COMP_DIG | */ -/* ODM_COMP_RA_MASK | */ -/* ODM_COMP_DYNAMIC_TXPWR | */ -/* ODM_COMP_FA_CNT | */ -/* ODM_COMP_RSSI_MONITOR | */ -/* ODM_COMP_CCK_PD | */ -/* ODM_COMP_ANT_DIV | */ -/* ODM_COMP_PWR_SAVE | */ -/* ODM_COMP_PWR_TRAIN | */ -/* ODM_COMP_RATE_ADAPTIVE | */ -/* ODM_COMP_PATH_DIV | */ -/* ODM_COMP_DYNAMIC_PRICCA | */ -/* ODM_COMP_RXHP | */ -/* ODM_COMP_MP | */ -/* ODM_COMP_CFO_TRACKING | */ - -/* MAC Functions */ -/* ODM_COMP_EDCA_TURBO | */ -/* ODM_COMP_EARLY_MODE | */ -/* RF Functions */ -/* ODM_COMP_TX_PWR_TRACK | */ -/* ODM_COMP_RX_GAIN_TRACK | */ -/* ODM_COMP_CALIBRATION | */ -/* Common */ -/* ODM_COMP_COMMON | */ -/* ODM_COMP_INIT | */ -/* ODM_COMP_PSD | */ -0; -} diff --git a/drivers/staging/rtl8723bs/hal/odm_debug.h b/drivers/staging/rtl8723bs/hal/odm_debug.h deleted file mode 100644 index be0d4c49a747..000000000000 --- a/drivers/staging/rtl8723bs/hal/odm_debug.h +++ /dev/null @@ -1,165 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -/****************************************************************************** - * - * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. - * - ******************************************************************************/ - -#ifndef __ODM_DBG_H__ -#define __ODM_DBG_H__ - - -/* */ -/* Define the debug levels */ -/* */ -/* 1. DBG_TRACE and DBG_LOUD are used for normal cases. */ -/* So that, they can help SW engineer to developed or trace states changed */ -/* and also help HW enginner to trace every operation to and from HW, */ -/* e.g IO, Tx, Rx. */ -/* */ -/* 2. DBG_WARNNING and DBG_SERIOUS are used for unusual or error cases, */ -/* which help us to debug SW or HW. */ -/* */ -/* */ -/* */ -/* Never used in a call to ODM_RT_TRACE()! */ -/* */ -#define ODM_DBG_OFF 1 - -/* */ -/* Fatal bug. */ -/* For example, Tx/Rx/IO locked up, OS hangs, memory access violation, */ -/* resource allocation failed, unexpected HW behavior, HW BUG and so on. */ -/* */ -#define ODM_DBG_SERIOUS 2 - -/* */ -/* Abnormal, rare, or unexpected cases. */ -/* For example, */ -/* IRP/Packet/OID canceled, */ -/* device suprisely unremoved and so on. */ -/* */ -#define ODM_DBG_WARNING 3 - -/* */ -/* Normal case with useful information about current SW or HW state. */ -/* For example, Tx/Rx descriptor to fill, Tx/Rx descriptor completed status, */ -/* SW protocol state change, dynamic mechanism state change and so on. */ -/* */ -#define ODM_DBG_LOUD 4 - -/* */ -/* Normal case with detail execution flow or information. */ -/* */ -#define ODM_DBG_TRACE 5 - -/* */ -/* Define the tracing components */ -/* */ -/* */ -/* BB Functions */ -#define ODM_COMP_DIG BIT0 -#define ODM_COMP_RA_MASK BIT1 -#define ODM_COMP_DYNAMIC_TXPWR BIT2 -#define ODM_COMP_FA_CNT BIT3 -#define ODM_COMP_RSSI_MONITOR BIT4 -#define ODM_COMP_CCK_PD BIT5 -#define ODM_COMP_ANT_DIV BIT6 -#define ODM_COMP_PWR_SAVE BIT7 -#define ODM_COMP_PWR_TRAIN BIT8 -#define ODM_COMP_RATE_ADAPTIVE BIT9 -#define ODM_COMP_PATH_DIV BIT10 -#define ODM_COMP_PSD BIT11 -#define ODM_COMP_DYNAMIC_PRICCA BIT12 -#define ODM_COMP_RXHP BIT13 -#define ODM_COMP_MP BIT14 -#define ODM_COMP_CFO_TRACKING BIT15 -/* MAC Functions */ -#define ODM_COMP_EDCA_TURBO BIT16 -#define ODM_COMP_EARLY_MODE BIT17 -/* RF Functions */ -#define ODM_COMP_TX_PWR_TRACK BIT24 -#define ODM_COMP_RX_GAIN_TRACK BIT25 -#define ODM_COMP_CALIBRATION BIT26 -/* Common Functions */ -#define ODM_COMP_COMMON BIT30 -#define ODM_COMP_INIT BIT31 - -/*------------------------Export Marco Definition---------------------------*/ - #define DbgPrint printk - #define RT_PRINTK(fmt, args...)\ - DbgPrint("%s(): " fmt, __func__, ## args) - #define RT_DISP(dbgtype, dbgflag, printstr) - -#ifndef ASSERT - #define ASSERT(expr) -#endif - -#if DBG -#define ODM_RT_TRACE(pDM_Odm, comp, level, fmt)\ - do {\ - if (\ - (comp & pDM_Odm->DebugComponents) &&\ - (level <= pDM_Odm->DebugLevel ||\ - level == ODM_DBG_SERIOUS)\ - ) {\ - RT_PRINTK fmt;\ - } \ - } while (0) - -#define ODM_RT_TRACE_F(pDM_Odm, comp, level, fmt)\ - do {\ - if (\ - (comp & pDM_Odm->DebugComponents) &&\ - (level <= pDM_Odm->DebugLevel)\ - ) {\ - RT_PRINTK fmt;\ - } \ - } while (0) - -#define ODM_RT_ASSERT(pDM_Odm, expr, fmt)\ - do {\ - if (!expr) {\ - DbgPrint("Assertion failed! %s at ......\n", #expr);\ - DbgPrint(\ - " ......%s,%s, line =%d\n",\ - __FILE__,\ - __func__,\ - __LINE__\ - );\ - RT_PRINTK fmt;\ - ASSERT(false);\ - } \ - } while (0) -#define ODM_dbg_trace(str) { DbgPrint("%s:%s\n", __func__, str); } - -#define ODM_PRINT_ADDR(pDM_Odm, comp, level, title_str, ptr)\ - do {\ - if (\ - (comp & pDM_Odm->DebugComponents) &&\ - (level <= pDM_Odm->DebugLevel)\ - ) {\ - int __i;\ - u8 *__ptr = (u8 *)ptr;\ - DbgPrint("[ODM] ");\ - DbgPrint(title_str);\ - DbgPrint(" ");\ - for (__i = 0; __i < 6; __i++)\ - DbgPrint("%02X%s", __ptr[__i], (__i == 5) ? "" : "-");\ - DbgPrint("\n");\ - } \ - } while (0) -#else -#define ODM_RT_TRACE(pDM_Odm, comp, level, fmt) no_printk fmt -#define ODM_RT_TRACE_F(pDM_Odm, comp, level, fmt) no_printk fmt -#define ODM_RT_ASSERT(pDM_Odm, expr, fmt) no_printk fmt -#define ODM_dbg_enter() do {} while (0) -#define ODM_dbg_exit() do {} while (0) -#define ODM_dbg_trace(str) no_printk("%s", str) -#define ODM_PRINT_ADDR(pDM_Odm, comp, level, title_str, ptr) \ - no_printk("%s %p", title_str, ptr) -#endif - -void ODM_InitDebugSetting(struct dm_odm_t *pDM_Odm); - -#endif /* __ODM_DBG_H__ */ diff --git a/drivers/staging/rtl8723bs/hal/odm_precomp.h b/drivers/staging/rtl8723bs/hal/odm_precomp.h index d48d681472d5..5041c9535e9a 100644 --- a/drivers/staging/rtl8723bs/hal/odm_precomp.h +++ b/drivers/staging/rtl8723bs/hal/odm_precomp.h @@ -27,11 +27,9 @@ #include "odm.h" #include "odm_HWConfig.h" -#include "odm_debug.h" #include "odm_RegDefine11N.h" #include "odm_EdcaTurboCheck.h" #include "odm_DIG.h" -#include "odm_PathDiv.h" #include "odm_DynamicBBPowerSaving.h" #include "odm_DynamicTxPower.h" #include "odm_CfoTracking.h" diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c b/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c index 2451875ab3c0..2b7077bb52df 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c @@ -114,14 +114,13 @@ static void ConstructBeacon(struct adapter *padapter, u8 *pframe, u32 *pLength) struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv); struct mlme_ext_info *pmlmeinfo = &(pmlmeext->mlmext_info); struct wlan_bssid_ex *cur_network = &(pmlmeinfo->network); - u8 bc_addr[] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; pwlanhdr = (struct ieee80211_hdr *)pframe; fctrl = &(pwlanhdr->frame_control); *(fctrl) = 0; - memcpy(pwlanhdr->addr1, bc_addr, ETH_ALEN); + eth_broadcast_addr(pwlanhdr->addr1); memcpy(pwlanhdr->addr2, myid(&(padapter->eeprompriv)), ETH_ALEN); memcpy(pwlanhdr->addr3, get_my_bssid(cur_network), ETH_ALEN); @@ -309,9 +308,6 @@ static void rtl8723b_set_FwRsvdPage_cmd(struct adapter *padapter, struct rsvdpag SET_8723B_H2CCMD_RSVDPAGE_LOC_QOS_NULL_DATA(u1H2CRsvdPageParm, rsvdpageloc->LocQosNull); SET_8723B_H2CCMD_RSVDPAGE_LOC_BT_QOS_NULL_DATA(u1H2CRsvdPageParm, rsvdpageloc->LocBTQosNull); - print_hex_dump_debug(DRIVER_PREFIX ": u1H2CRsvdPageParm:", DUMP_PREFIX_NONE, - 16, 1, u1H2CRsvdPageParm, H2C_RSVDPAGE_LOC_LEN, false); - FillH2CCmd8723B(padapter, H2C_8723B_RSVD_PAGE, H2C_RSVDPAGE_LOC_LEN, u1H2CRsvdPageParm); } @@ -329,9 +325,6 @@ void rtl8723b_set_FwMediaStatusRpt_cmd(struct adapter *padapter, u8 mstatus, u8 SET_8723B_H2CCMD_MSRRPT_PARM_MACID(u1H2CMediaStatusRptParm, macid); SET_8723B_H2CCMD_MSRRPT_PARM_MACID_END(u1H2CMediaStatusRptParm, macid_end); - print_hex_dump_debug(DRIVER_PREFIX ": u1H2CMediaStatusRptParm:", DUMP_PREFIX_NONE, - 16, 1, u1H2CMediaStatusRptParm, H2C_MEDIA_STATUS_RPT_LEN, false); - FillH2CCmd8723B(padapter, H2C_8723B_MEDIA_STATUS_RPT, H2C_MEDIA_STATUS_RPT_LEN, u1H2CMediaStatusRptParm); } @@ -348,9 +341,6 @@ void rtl8723b_set_FwMacIdConfig_cmd(struct adapter *padapter, u8 mac_id, u8 raid SET_8723B_H2CCMD_MACID_CFG_RATE_MASK2(u1H2CMacIdConfigParm, (u8)((mask & 0x00ff0000) >> 16)); SET_8723B_H2CCMD_MACID_CFG_RATE_MASK3(u1H2CMacIdConfigParm, (u8)((mask & 0xff000000) >> 24)); - print_hex_dump_debug(DRIVER_PREFIX ": u1H2CMacIdConfigParm:", DUMP_PREFIX_NONE, - 16, 1, u1H2CMacIdConfigParm, H2C_MACID_CFG_LEN, false); - FillH2CCmd8723B(padapter, H2C_8723B_MACID_CFG, H2C_MACID_CFG_LEN, u1H2CMacIdConfigParm); } @@ -365,9 +355,6 @@ void rtl8723b_set_rssi_cmd(struct adapter *padapter, u8 *param) SET_8723B_H2CCMD_RSSI_SETTING_RSSI(u1H2CRssiSettingParm, rssi); SET_8723B_H2CCMD_RSSI_SETTING_ULDL_STATE(u1H2CRssiSettingParm, uldl_state); - print_hex_dump_debug(DRIVER_PREFIX ": u1H2CRssiSettingParm:", DUMP_PREFIX_NONE, - 16, 1, u1H2CRssiSettingParm, H2C_RSSI_SETTING_LEN, false); - FillH2CCmd8723B(padapter, H2C_8723B_RSSI_SETTING, H2C_RSSI_SETTING_LEN, u1H2CRssiSettingParm); } @@ -465,9 +452,6 @@ void rtl8723b_set_FwPwrMode_cmd(struct adapter *padapter, u8 psmode) hal_btcoex_RecordPwrMode(padapter, u1H2CPwrModeParm, H2C_PWRMODE_LEN); - print_hex_dump_debug(DRIVER_PREFIX ": u1H2CPwrModeParm:", DUMP_PREFIX_NONE, - 16, 1, u1H2CPwrModeParm, H2C_PWRMODE_LEN, false); - FillH2CCmd8723B(padapter, H2C_8723B_SET_PWR_MODE, H2C_PWRMODE_LEN, u1H2CPwrModeParm); } @@ -485,9 +469,6 @@ void rtl8723b_set_FwPsTuneParam_cmd(struct adapter *padapter) SET_8723B_H2CCMD_PSTUNE_PARM_ADOPT(u1H2CPsTuneParm, 1); SET_8723B_H2CCMD_PSTUNE_PARM_DTIM_PERIOD(u1H2CPsTuneParm, dtim_period); - print_hex_dump_debug(DRIVER_PREFIX ": u1H2CPsTuneParm:", DUMP_PREFIX_NONE, - 16, 1, u1H2CPsTuneParm, H2C_PSTUNEPARAM_LEN, false); - FillH2CCmd8723B(padapter, H2C_8723B_PS_TUNING_PARA, H2C_PSTUNEPARAM_LEN, u1H2CPsTuneParm); } diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_dm.c b/drivers/staging/rtl8723bs/hal/rtl8723b_dm.c index 23be025ceb5b..5840a5241fde 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723b_dm.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723b_dm.c @@ -109,7 +109,6 @@ static void Update_ODM_ComInfo_8723b(struct adapter *Adapter) ODM_CmnInfoHook(pDM_Odm, ODM_CMNINFO_CHNL, &(pHalData->CurrentChannel)); ODM_CmnInfoHook(pDM_Odm, ODM_CMNINFO_NET_CLOSED, &(Adapter->net_closed)); ODM_CmnInfoHook(pDM_Odm, ODM_CMNINFO_MP_MODE, &zero); - ODM_CmnInfoHook(pDM_Odm, ODM_CMNINFO_BAND, &(pHalData->CurrentBandType)); ODM_CmnInfoHook(pDM_Odm, ODM_CMNINFO_FORCED_IGI_LB, &(pHalData->u1ForcedIgiLb)); ODM_CmnInfoHook(pDM_Odm, ODM_CMNINFO_FORCED_RATE, &(pHalData->ForcedDataRate)); diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c b/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c index 082448557b53..059d3050acc6 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c @@ -122,7 +122,6 @@ static int _WriteFW(struct adapter *padapter, void *buffer, u32 size) u8 *bufferPtr = buffer; pageNums = size / MAX_DLFW_PAGE_SIZE; - /* RT_ASSERT((pageNums <= 4), ("Page numbers should not greater then 4\n")); */ remainSize = size % MAX_DLFW_PAGE_SIZE; for (page = 0; page < pageNums; page++) { @@ -1149,10 +1148,8 @@ static u16 hal_EfuseGetCurrentSize_BT(struct adapter *padapter, u8 bPseudoTest) retU2 = ((bank-1)*EFUSE_BT_REAL_BANK_CONTENT_LEN)+efuse_addr; if (bPseudoTest) { pEfuseHal->fakeBTEfuseUsedBytes = retU2; - /* RT_DISP(FEEPROM, EFUSE_PG, ("Hal_EfuseGetCurrentSize_BT92C(), already use %u bytes\n", pEfuseHal->fakeBTEfuseUsedBytes)); */ } else { pEfuseHal->BTEfuseUsedBytes = retU2; - /* RT_DISP(FEEPROM, EFUSE_PG, ("Hal_EfuseGetCurrentSize_BT92C(), already use %u bytes\n", pEfuseHal->BTEfuseUsedBytes)); */ } return retU2; @@ -2512,15 +2509,8 @@ u8 BWMapping_8723B(struct adapter *Adapter, struct pkt_attrib *pattrib) u8 BWSettingOfDesc = 0; struct hal_com_data *pHalData = GET_HAL_DATA(Adapter); - if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_80) { - if (pattrib->bwmode == CHANNEL_WIDTH_80) - BWSettingOfDesc = 2; - else if (pattrib->bwmode == CHANNEL_WIDTH_40) - BWSettingOfDesc = 1; - else - BWSettingOfDesc = 0; - } else if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_40) { - if ((pattrib->bwmode == CHANNEL_WIDTH_40) || (pattrib->bwmode == CHANNEL_WIDTH_80)) + if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_40) { + if (pattrib->bwmode == CHANNEL_WIDTH_40) BWSettingOfDesc = 1; else BWSettingOfDesc = 0; @@ -2538,38 +2528,20 @@ u8 SCMapping_8723B(struct adapter *Adapter, struct pkt_attrib *pattrib) u8 SCSettingOfDesc = 0; struct hal_com_data *pHalData = GET_HAL_DATA(Adapter); - if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_80) { - if (pattrib->bwmode == CHANNEL_WIDTH_80) { - SCSettingOfDesc = VHT_DATA_SC_DONOT_CARE; - } else if (pattrib->bwmode == CHANNEL_WIDTH_40) { - if (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) - SCSettingOfDesc = VHT_DATA_SC_40_LOWER_OF_80MHZ; - else if (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) - SCSettingOfDesc = VHT_DATA_SC_40_UPPER_OF_80MHZ; - } else { - if ((pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) && (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER)) - SCSettingOfDesc = VHT_DATA_SC_20_LOWEST_OF_80MHZ; - else if ((pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) && (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER)) - SCSettingOfDesc = VHT_DATA_SC_20_LOWER_OF_80MHZ; - else if ((pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) && (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER)) - SCSettingOfDesc = VHT_DATA_SC_20_UPPER_OF_80MHZ; - else if ((pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) && (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER)) - SCSettingOfDesc = VHT_DATA_SC_20_UPPERST_OF_80MHZ; - } - } else if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_40) { + if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_40) { if (pattrib->bwmode == CHANNEL_WIDTH_40) { - SCSettingOfDesc = VHT_DATA_SC_DONOT_CARE; + SCSettingOfDesc = HT_DATA_SC_DONOT_CARE; } else if (pattrib->bwmode == CHANNEL_WIDTH_20) { if (pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) { - SCSettingOfDesc = VHT_DATA_SC_20_UPPER_OF_80MHZ; + SCSettingOfDesc = HT_DATA_SC_20_UPPER_OF_40MHZ; } else if (pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) { - SCSettingOfDesc = VHT_DATA_SC_20_LOWER_OF_80MHZ; + SCSettingOfDesc = HT_DATA_SC_20_LOWER_OF_40MHZ; } else { - SCSettingOfDesc = VHT_DATA_SC_DONOT_CARE; + SCSettingOfDesc = HT_DATA_SC_DONOT_CARE; } } } else { - SCSettingOfDesc = VHT_DATA_SC_DONOT_CARE; + SCSettingOfDesc = HT_DATA_SC_DONOT_CARE; } return SCSettingOfDesc; @@ -3315,9 +3287,6 @@ void C2HPacketHandler_8723B(struct adapter *padapter, u8 *pbuffer, u16 length) C2hEvent.CmdLen = length-2; tmpBuf = pbuffer+2; - print_hex_dump_debug(DRIVER_PREFIX ": C2HPacketHandler_8723B(): Command Content:\n", - DUMP_PREFIX_NONE, 16, 1, tmpBuf, C2hEvent.CmdLen, false); - process_c2h_event(padapter, &C2hEvent, tmpBuf); /* c2h_handler_8723b(padapter,&C2hEvent); */ } @@ -3898,27 +3867,19 @@ u8 GetHalDefVar8723B(struct adapter *padapter, enum hal_def_variable variable, v { u8 mac_id = *(u8 *)pval; u32 cmd; - u32 ra_info1, ra_info2; - u32 rate_mask1, rate_mask2; - u8 curr_tx_rate, curr_tx_sgi, hight_rate, lowest_rate; cmd = 0x40000100 | mac_id; rtw_write32(padapter, REG_HMEBOX_DBG_2_8723B, cmd); msleep(10); - ra_info1 = rtw_read32(padapter, 0x2F0); - curr_tx_rate = ra_info1&0x7F; - curr_tx_sgi = (ra_info1>>7)&0x01; + rtw_read32(padapter, 0x2F0); // info 1 cmd = 0x40000400 | mac_id; rtw_write32(padapter, REG_HMEBOX_DBG_2_8723B, cmd); msleep(10); - ra_info1 = rtw_read32(padapter, 0x2F0); - ra_info2 = rtw_read32(padapter, 0x2F4); - rate_mask1 = rtw_read32(padapter, 0x2F8); - rate_mask2 = rtw_read32(padapter, 0x2FC); - hight_rate = ra_info2&0xFF; - lowest_rate = (ra_info2>>8) & 0xFF; - + rtw_read32(padapter, 0x2F0); // info 1 + rtw_read32(padapter, 0x2F4); // info 2 + rtw_read32(padapter, 0x2F8); // rate mask 1 + rtw_read32(padapter, 0x2FC); // rate mask 2 } break; diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_phycfg.c b/drivers/staging/rtl8723bs/hal/rtl8723b_phycfg.c index f43abf9b0d22..6e524034f388 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723b_phycfg.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723b_phycfg.c @@ -38,7 +38,7 @@ static u32 phy_CalculateBitShift(u32 BitMask) /** - * PHY_QueryBBReg - Read "specific bits" from BB register. + * PHY_QueryBBReg_8723B - Read "specific bits" from BB register. * @Adapter: * @RegAddr: The target address to be readback * @BitMask: The target bit position in the target address @@ -53,10 +53,6 @@ u32 PHY_QueryBBReg_8723B(struct adapter *Adapter, u32 RegAddr, u32 BitMask) { u32 OriginalValue, BitShift; -#if (DISABLE_BB_RF == 1) - return 0; -#endif - OriginalValue = rtw_read32(Adapter, RegAddr); BitShift = phy_CalculateBitShift(BitMask); @@ -66,7 +62,7 @@ u32 PHY_QueryBBReg_8723B(struct adapter *Adapter, u32 RegAddr, u32 BitMask) /** - * PHY_SetBBReg - Write "Specific bits" to BB register (page 8~). + * PHY_SetBBReg_8723B - Write "Specific bits" to BB register (page 8~). * @Adapter: * @RegAddr: The target address to be modified * @BitMask: The target bit position in the target address @@ -88,10 +84,6 @@ void PHY_SetBBReg_8723B( /* u16 BBWaitCounter = 0; */ u32 OriginalValue, BitShift; -#if (DISABLE_BB_RF == 1) - return; -#endif - if (BitMask != bMaskDWord) { /* if not "double word" write */ OriginalValue = rtw_read32(Adapter, RegAddr); BitShift = phy_CalculateBitShift(BitMask); @@ -231,10 +223,10 @@ static void phy_RFSerialWrite_8723B( /** - * PHY_QueryRFReg - Query "Specific bits" to RF register (page 8~). + * PHY_QueryRFReg_8723B - Query "Specific bits" to RF register (page 8~). * @Adapter: * @eRFPath: Radio path of A/B/C/D - * @RegAdd: The target address to be read + * @RegAddr: The target address to be read * @BitMask: The target bit position in the target address * to be read * @@ -252,10 +244,6 @@ u32 PHY_QueryRFReg_8723B( { u32 Original_Value, BitShift; -#if (DISABLE_BB_RF == 1) - return 0; -#endif - Original_Value = phy_RFSerialRead_8723B(Adapter, eRFPath, RegAddr); BitShift = phy_CalculateBitShift(BitMask); @@ -263,7 +251,7 @@ u32 PHY_QueryRFReg_8723B( } /** - * PHY_SetRFReg - Write "Specific bits" to RF register (page 8~). + * PHY_SetRFReg_8723B - Write "Specific bits" to RF register (page 8~). * @Adapter: * @eRFPath: Radio path of A/B/C/D * @RegAddr: The target address to be modified @@ -285,10 +273,6 @@ void PHY_SetRFReg_8723B( { u32 Original_Value, BitShift; -#if (DISABLE_BB_RF == 1) - return; -#endif - /* RF data is 12 bits only */ if (BitMask != bRFRegOffsetMask) { Original_Value = phy_RFSerialRead_8723B(Adapter, eRFPath, RegAddr); @@ -562,15 +546,13 @@ u8 PHY_GetTxPowerIndex( { struct hal_com_data *pHalData = GET_HAL_DATA(padapter); s8 txPower = 0, powerDiffByRate = 0, limit = 0; - bool bIn24G = false; - txPower = (s8) PHY_GetTxPowerIndexBase(padapter, RFPath, Rate, BandWidth, Channel, &bIn24G); - powerDiffByRate = PHY_GetTxPowerByRate(padapter, BAND_ON_2_4G, ODM_RF_PATH_A, RF_1TX, Rate); + txPower = (s8) PHY_GetTxPowerIndexBase(padapter, RFPath, Rate, BandWidth, Channel); + powerDiffByRate = PHY_GetTxPowerByRate(padapter, ODM_RF_PATH_A, RF_1TX, Rate); limit = phy_get_tx_pwr_lmt( padapter, padapter->registrypriv.RegPwrTblSel, - (u8)(!bIn24G), pHalData->CurrentChannelBW, RFPath, Rate, @@ -625,11 +607,6 @@ static void phy_SetRegBW_8723B( rtw_write16(Adapter, REG_TRXPTCL_CTL_8723B, (u2tmp & 0xFEFF)); /* BIT 7 = 1, BIT 8 = 0 */ break; - case CHANNEL_WIDTH_80: - u2tmp = RegRfMod_BW | BIT8; - rtw_write16(Adapter, REG_TRXPTCL_CTL_8723B, (u2tmp & 0xFF7F)); /* BIT 7 = 0, BIT 8 = 1 */ - break; - default: break; } @@ -640,37 +617,11 @@ static u8 phy_GetSecondaryChnl_8723B(struct adapter *Adapter) u8 SCSettingOf40 = 0, SCSettingOf20 = 0; struct hal_com_data *pHalData = GET_HAL_DATA(Adapter); - if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_80) { - if (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) - SCSettingOf40 = VHT_DATA_SC_40_LOWER_OF_80MHZ; - else if (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) - SCSettingOf40 = VHT_DATA_SC_40_UPPER_OF_80MHZ; - - if ( - (pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) && - (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) - ) - SCSettingOf20 = VHT_DATA_SC_20_LOWEST_OF_80MHZ; - else if ( - (pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) && - (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) - ) - SCSettingOf20 = VHT_DATA_SC_20_LOWER_OF_80MHZ; - else if ( - (pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) && - (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) - ) - SCSettingOf20 = VHT_DATA_SC_20_UPPER_OF_80MHZ; - else if ( - (pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) && - (pHalData->nCur80MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) - ) - SCSettingOf20 = VHT_DATA_SC_20_UPPERST_OF_80MHZ; - } else if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_40) { + if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_40) { if (pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) - SCSettingOf20 = VHT_DATA_SC_20_UPPER_OF_80MHZ; + SCSettingOf20 = HT_DATA_SC_20_UPPER_OF_40MHZ; else if (pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) - SCSettingOf20 = VHT_DATA_SC_20_LOWER_OF_80MHZ; + SCSettingOf20 = HT_DATA_SC_20_LOWER_OF_40MHZ; } return (SCSettingOf40 << 4) | SCSettingOf20; diff --git a/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c b/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c index 7c2680b6508c..ad803ffc0696 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c @@ -108,7 +108,7 @@ static void update_recvframe_phyinfo(union recv_frame *precvframe, !pattrib->icv_err && !pattrib->crc_err && ether_addr_equal(rx_bssid, my_bssid)); - rx_ra = get_ra(wlanhdr); + rx_ra = rtl8723bs_get_ra(wlanhdr); my_hwaddr = myid(&padapter->eeprompriv); pkt_info.to_self = pkt_info.bssid_match && ether_addr_equal(rx_ra, my_hwaddr); diff --git a/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c b/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c index bd95e62fb053..a05d43b716ee 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c @@ -178,7 +178,7 @@ static s32 xmit_xmitframes(struct adapter *padapter, struct xmit_priv *pxmitpriv struct hw_xmit *hwxmits, *phwxmit; u8 idx, hwentry; struct tx_servq *ptxservq; - struct list_head *sta_plist, *sta_phead, *frame_plist, *frame_phead; + struct list_head *sta_plist, *sta_phead, *frame_plist, *frame_phead, *tmp; struct xmit_frame *pxmitframe; struct __queue *pframe_queue; struct xmit_buf *pxmitbuf; @@ -223,12 +223,11 @@ static s32 xmit_xmitframes(struct adapter *padapter, struct xmit_priv *pxmitpriv spin_lock_bh(&pxmitpriv->lock); sta_phead = get_list_head(phwxmit->sta_queue); - sta_plist = get_next(sta_phead); /* because stop_sta_xmit may delete sta_plist at any time */ /* so we should add lock here, or while loop can not exit */ - while (sta_phead != sta_plist) { - ptxservq = container_of(sta_plist, struct tx_servq, tx_pending); - sta_plist = get_next(sta_plist); + list_for_each_safe(sta_plist, tmp, sta_phead) { + ptxservq = list_entry(sta_plist, struct tx_servq, + tx_pending); pframe_queue = &ptxservq->sta_pending; diff --git a/drivers/staging/rtl8723bs/hal/sdio_halinit.c b/drivers/staging/rtl8723bs/hal/sdio_halinit.c index abd90026a8c7..a07a6dacec42 100644 --- a/drivers/staging/rtl8723bs/hal/sdio_halinit.c +++ b/drivers/staging/rtl8723bs/hal/sdio_halinit.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _SDIO_HALINIT_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <rtl8723b_hal.h> @@ -228,7 +226,6 @@ static void _InitNormalChipOneOutEpPriority(struct adapter *Adapter) value = QUEUE_NORMAL; break; default: - /* RT_ASSERT(false, ("Shall not reach here!\n")); */ break; } @@ -262,7 +259,6 @@ static void _InitNormalChipTwoOutEpPriority(struct adapter *Adapter) valueLow = QUEUE_NORMAL; break; default: - /* RT_ASSERT(false, ("Shall not reach here!\n")); */ break; } @@ -327,7 +323,6 @@ static void _InitQueuePriority(struct adapter *Adapter) _InitNormalChipThreeOutEpPriority(Adapter); break; default: - /* RT_ASSERT(false, ("Shall not reach here!\n")); */ break; } @@ -517,9 +512,6 @@ static void _InitOperationMode(struct adapter *padapter) case WIRELESS_MODE_B: regBwOpMode = BW_OPMODE_20MHZ; break; - case WIRELESS_MODE_A: -/* RT_ASSERT(false, ("Error wireless a mode\n")); */ - break; case WIRELESS_MODE_G: regBwOpMode = BW_OPMODE_20MHZ; break; @@ -531,10 +523,6 @@ static void _InitOperationMode(struct adapter *padapter) /* CCK rate will be filtered out only when associated AP does not support it. */ regBwOpMode = BW_OPMODE_20MHZ; break; - case WIRELESS_MODE_N_5G: -/* RT_ASSERT(false, ("Error wireless mode")); */ - regBwOpMode = BW_OPMODE_5G; - break; default: /* for MacOSX compiler warning. */ break; @@ -567,11 +555,6 @@ static void _InitRFType(struct adapter *padapter) { struct hal_com_data *pHalData = GET_HAL_DATA(padapter); -#if DISABLE_BB_RF - pHalData->rf_chip = RF_PSEUDO_11N; - return; -#endif - pHalData->rf_chip = RF_6052; pHalData->rf_type = RF_1T1R; @@ -695,29 +678,23 @@ static u32 rtl8723bs_hal_init(struct adapter *padapter) /* <Roger_Notes> Current Channel will be updated again later. */ pHalData->CurrentChannel = 6; -#if (HAL_MAC_ENABLE == 1) ret = PHY_MACConfig8723B(padapter); if (ret != _SUCCESS) return ret; -#endif /* */ /* d. Initialize BB related configurations. */ /* */ -#if (HAL_BB_ENABLE == 1) ret = PHY_BBConfig8723B(padapter); if (ret != _SUCCESS) return ret; -#endif /* If RF is on, we need to init RF. Otherwise, skip the procedure. */ /* We need to follow SU method to change the RF cfg.txt. Default disable RF TX/RX mode. */ /* if (pHalData->eRFPowerState == eRfOn) */ { -#if (HAL_RF_ENABLE == 1) ret = PHY_RFConfig8723B(padapter); if (ret != _SUCCESS) return ret; -#endif } /* */ @@ -798,8 +775,6 @@ static u32 rtl8723bs_hal_init(struct adapter *padapter) rtl8723b_InitHalDm(padapter); - /* DbgPrint("pHalData->DefaultTxPwrDbm = %d\n", pHalData->DefaultTxPwrDbm); */ - /* */ /* Update current Tx FIFO page status. */ /* */ @@ -878,10 +853,9 @@ static void CardDisableRTL8723BSdio(struct adapter *padapter) { u8 u1bTmp; u8 bMacPwrCtrlOn; - u8 ret = _FAIL; /* Run LPS WL RFOFF flow */ - ret = HalPwrSeqCmdParsing(padapter, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, rtl8723B_enter_lps_flow); + HalPwrSeqCmdParsing(padapter, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, rtl8723B_enter_lps_flow); /* ==== Reset digital sequence ====== */ @@ -909,9 +883,8 @@ static void CardDisableRTL8723BSdio(struct adapter *padapter) /* ==== Reset digital sequence end ====== */ bMacPwrCtrlOn = false; /* Disable CMD53 R/W */ - ret = false; rtw_hal_set_hwreg(padapter, HW_VAR_APFM_ON_MAC, &bMacPwrCtrlOn); - ret = HalPwrSeqCmdParsing(padapter, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, rtl8723B_card_disable_flow); + HalPwrSeqCmdParsing(padapter, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, rtl8723B_card_disable_flow); } static u32 rtl8723bs_hal_deinit(struct adapter *padapter) @@ -1046,11 +1019,7 @@ static void _ReadRFType(struct adapter *Adapter) { struct hal_com_data *pHalData = GET_HAL_DATA(Adapter); -#if DISABLE_BB_RF - pHalData->rf_chip = RF_PSEUDO_11N; -#else pHalData->rf_chip = RF_6052; -#endif } diff --git a/drivers/staging/rtl8723bs/hal/sdio_ops.c b/drivers/staging/rtl8723bs/hal/sdio_ops.c index a31694525bc1..2dd251ce177e 100644 --- a/drivers/staging/rtl8723bs/hal/sdio_ops.c +++ b/drivers/staging/rtl8723bs/hal/sdio_ops.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * *******************************************************************************/ -#define _SDIO_OPS_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <rtl8723b_hal.h> @@ -160,7 +158,7 @@ static u32 sdio_read32(struct intf_hdl *intfhdl, u32 addr) u32 ftaddr; u8 shift; u32 val; - s32 err; + s32 __maybe_unused err; __le32 le_tmp; adapter = intfhdl->padapter; @@ -348,11 +346,6 @@ static s32 sdio_writeN(struct intf_hdl *intfhdl, u32 addr, u32 cnt, u8 *buf) return err; } -static u8 sdio_f0_read8(struct intf_hdl *intfhdl, u32 addr) -{ - return sd_f0_read8(intfhdl, addr, NULL); -} - static void sdio_read_mem( struct intf_hdl *intfhdl, u32 addr, @@ -360,10 +353,7 @@ static void sdio_read_mem( u8 *rmem ) { - s32 err; - - err = sdio_readN(intfhdl, addr, cnt, rmem); - /* TODO: Report error is err not zero */ + sdio_readN(intfhdl, addr, cnt, rmem); } static void sdio_write_mem( @@ -486,8 +476,6 @@ void sdio_set_intf_ops(struct adapter *adapter, struct _io_ops *ops) ops->_writeN = &sdio_writeN; ops->_write_mem = &sdio_write_mem; ops->_write_port = &sdio_write_port; - - ops->_sd_f0_read8 = sdio_f0_read8; } /* diff --git a/drivers/staging/rtl8723bs/include/Hal8192CPhyReg.h b/drivers/staging/rtl8723bs/include/Hal8192CPhyReg.h index 4b3a7c051630..aad962548278 100644 --- a/drivers/staging/rtl8723bs/include/Hal8192CPhyReg.h +++ b/drivers/staging/rtl8723bs/include/Hal8192CPhyReg.h @@ -558,7 +558,6 @@ #define b3WireRFPowerDown 0x1 /* Useless now */ /* define bHWSISelect 0x8 */ -#define b5GPAPEPolarity 0x40000000 #define b2GPAPEPolarity 0x80000000 #define bRFSW_TxDefaultAnt 0x3 #define bRFSW_TxOptionAnt 0x30 @@ -577,7 +576,6 @@ #define bRFSI_ANTSW 0x100 #define bRFSI_ANTSWB 0x200 #define bRFSI_PAPE 0x400 -#define bRFSI_PAPE5G 0x800 #define bBandSelect 0x1 #define bHTSIG2_GI 0x80 #define bHTSIG2_Smoothing 0x01 diff --git a/drivers/staging/rtl8723bs/include/autoconf.h b/drivers/staging/rtl8723bs/include/autoconf.h deleted file mode 100644 index 944a7d2a1e53..000000000000 --- a/drivers/staging/rtl8723bs/include/autoconf.h +++ /dev/null @@ -1,50 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -/****************************************************************************** - * - * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. - * - ******************************************************************************/ - -/* - * Automatically generated C config: don't edit - */ - -/* - * Functions Config - */ - -#ifndef CONFIG_WIRELESS_EXT -#error CONFIG_WIRELESS_EXT needs to be enabled for this driver to work -#endif - -/* - * Auto Config Section - */ -#define LPS_RPWM_WAIT_MS 300 -#ifndef DISABLE_BB_RF -#define DISABLE_BB_RF 0 -#endif - -#if DISABLE_BB_RF - #define HAL_MAC_ENABLE 0 - #define HAL_BB_ENABLE 0 - #define HAL_RF_ENABLE 0 -#else - #define HAL_MAC_ENABLE 1 - #define HAL_BB_ENABLE 1 - #define HAL_RF_ENABLE 1 -#endif - -/* - * Platform dependent - */ -#define WAKEUP_GPIO_IDX 12 /* WIFI Chip Side */ - -/* - * Debug Related Config - */ - -#define DBG 0 /* for ODM & BTCOEX debug */ - -/* define DBG_XMIT_BUF */ -/* define DBG_XMIT_BUF_EXT */ diff --git a/drivers/staging/rtl8723bs/include/drv_conf.h b/drivers/staging/rtl8723bs/include/drv_conf.h deleted file mode 100644 index 9cef9ce589a1..000000000000 --- a/drivers/staging/rtl8723bs/include/drv_conf.h +++ /dev/null @@ -1,19 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -/****************************************************************************** - * - * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. - * - ******************************************************************************/ -#ifndef __DRV_CONF_H__ -#define __DRV_CONF_H__ -#include "autoconf.h" - -#define DYNAMIC_CAMID_ALLOC - -#ifndef CONFIG_RTW_HIQ_FILTER - #define CONFIG_RTW_HIQ_FILTER 1 -#endif - -//#include <rtl871x_byteorder.h> - -#endif // __DRV_CONF_H__ diff --git a/drivers/staging/rtl8723bs/include/drv_types.h b/drivers/staging/rtl8723bs/include/drv_types.h index 83d43e5726dd..895c41526164 100644 --- a/drivers/staging/rtl8723bs/include/drv_types.h +++ b/drivers/staging/rtl8723bs/include/drv_types.h @@ -15,7 +15,6 @@ #define __DRV_TYPES_H__ #include <linux/sched/signal.h> -#include <autoconf.h> #include <basic_types.h> #include <osdep_service.h> #include <rtw_byteorder.h> @@ -109,9 +108,11 @@ struct registry_priv { struct wlan_bssid_ex dev_network; u8 ht_enable; - /* 0: 20 MHz, 1: 40 MHz, 2: 80 MHz, 3: 160MHz */ - /* 2.4G use bit 0 ~ 3, 5G use bit 4 ~ 7 */ - /* 0x21 means enable 2.4G 40MHz & 5G 80MHz */ + /* + * 0: 20 MHz, 1: 40 MHz + * 2.4G use bit 0 ~ 3 + * 0x01 means enable 2.4G 40MHz + */ u8 bw_mode; u8 ampdu_enable;/* for tx */ u8 rx_stbc; @@ -170,9 +171,7 @@ struct registry_priv { u8 RegPowerBase; u8 RegPwrTblSel; s8 TxBBSwing_2G; - s8 TxBBSwing_5G; u8 AmplifierType_2G; - u8 AmplifierType_5G; u8 bEn_RFE; u8 RFE_Type; u8 check_fw_ps; @@ -503,7 +502,6 @@ static inline u8 *myid(struct eeprom_priv *peepriv) void rtw_indicate_wx_disassoc_event(struct adapter *padapter); void rtw_indicate_wx_assoc_event(struct adapter *padapter); -void rtw_indicate_wx_disassoc_event(struct adapter *padapter); void indicate_wx_scan_complete_event(struct adapter *padapter); int rtw_change_ifname(struct adapter *padapter, const char *ifname); diff --git a/drivers/staging/rtl8723bs/include/hal_btcoex.h b/drivers/staging/rtl8723bs/include/hal_btcoex.h index 3c03be210d87..849fb90b43b7 100644 --- a/drivers/staging/rtl8723bs/include/hal_btcoex.h +++ b/drivers/staging/rtl8723bs/include/hal_btcoex.h @@ -9,6 +9,8 @@ #include <drv_types.h> +#define LPS_RPWM_WAIT_MS 300 + /* Some variables can't get from outsrc BT-Coex, */ /* so we need to save here */ struct bt_coexist { @@ -53,7 +55,5 @@ u8 hal_btcoex_LpsVal(struct adapter *); u32 hal_btcoex_GetRaMask(struct adapter *); void hal_btcoex_RecordPwrMode(struct adapter *padapter, u8 *pCmdBuf, u8 cmdLen); void hal_btcoex_DisplayBtCoexInfo(struct adapter *, u8 *pbuf, u32 bufsize); -void hal_btcoex_SetDBG(struct adapter *, u32 *pDbgModule); -u32 hal_btcoex_GetDBG(struct adapter *, u8 *pStrBuf, u32 bufSize); #endif /* !__HAL_BTCOEX_H__ */ diff --git a/drivers/staging/rtl8723bs/include/hal_com.h b/drivers/staging/rtl8723bs/include/hal_com.h index 6bcc443d59fb..1bc332261b2a 100644 --- a/drivers/staging/rtl8723bs/include/hal_com.h +++ b/drivers/staging/rtl8723bs/include/hal_com.h @@ -69,46 +69,6 @@ #define DESC_RATEMCS29 0x29 #define DESC_RATEMCS30 0x2A #define DESC_RATEMCS31 0x2B -#define DESC_RATEVHTSS1MCS0 0x2C -#define DESC_RATEVHTSS1MCS1 0x2D -#define DESC_RATEVHTSS1MCS2 0x2E -#define DESC_RATEVHTSS1MCS3 0x2F -#define DESC_RATEVHTSS1MCS4 0x30 -#define DESC_RATEVHTSS1MCS5 0x31 -#define DESC_RATEVHTSS1MCS6 0x32 -#define DESC_RATEVHTSS1MCS7 0x33 -#define DESC_RATEVHTSS1MCS8 0x34 -#define DESC_RATEVHTSS1MCS9 0x35 -#define DESC_RATEVHTSS2MCS0 0x36 -#define DESC_RATEVHTSS2MCS1 0x37 -#define DESC_RATEVHTSS2MCS2 0x38 -#define DESC_RATEVHTSS2MCS3 0x39 -#define DESC_RATEVHTSS2MCS4 0x3A -#define DESC_RATEVHTSS2MCS5 0x3B -#define DESC_RATEVHTSS2MCS6 0x3C -#define DESC_RATEVHTSS2MCS7 0x3D -#define DESC_RATEVHTSS2MCS8 0x3E -#define DESC_RATEVHTSS2MCS9 0x3F -#define DESC_RATEVHTSS3MCS0 0x40 -#define DESC_RATEVHTSS3MCS1 0x41 -#define DESC_RATEVHTSS3MCS2 0x42 -#define DESC_RATEVHTSS3MCS3 0x43 -#define DESC_RATEVHTSS3MCS4 0x44 -#define DESC_RATEVHTSS3MCS5 0x45 -#define DESC_RATEVHTSS3MCS6 0x46 -#define DESC_RATEVHTSS3MCS7 0x47 -#define DESC_RATEVHTSS3MCS8 0x48 -#define DESC_RATEVHTSS3MCS9 0x49 -#define DESC_RATEVHTSS4MCS0 0x4A -#define DESC_RATEVHTSS4MCS1 0x4B -#define DESC_RATEVHTSS4MCS2 0x4C -#define DESC_RATEVHTSS4MCS3 0x4D -#define DESC_RATEVHTSS4MCS4 0x4E -#define DESC_RATEVHTSS4MCS5 0x4F -#define DESC_RATEVHTSS4MCS6 0x50 -#define DESC_RATEVHTSS4MCS7 0x51 -#define DESC_RATEVHTSS4MCS8 0x52 -#define DESC_RATEVHTSS4MCS9 0x53 #define HDATA_RATE(rate)\ (rate == DESC_RATE1M) ? "CCK_1M" : \ @@ -138,27 +98,7 @@ (rate == DESC_RATEMCS12) ? "MCS12" : \ (rate == DESC_RATEMCS13) ? "MCS13" : \ (rate == DESC_RATEMCS14) ? "MCS14" : \ -(rate == DESC_RATEMCS15) ? "MCS15" : \ -(rate == DESC_RATEVHTSS1MCS0) ? "VHTSS1MCS0" : \ -(rate == DESC_RATEVHTSS1MCS1) ? "VHTSS1MCS1" : \ -(rate == DESC_RATEVHTSS1MCS2) ? "VHTSS1MCS2" : \ -(rate == DESC_RATEVHTSS1MCS3) ? "VHTSS1MCS3" : \ -(rate == DESC_RATEVHTSS1MCS4) ? "VHTSS1MCS4" : \ -(rate == DESC_RATEVHTSS1MCS5) ? "VHTSS1MCS5" : \ -(rate == DESC_RATEVHTSS1MCS6) ? "VHTSS1MCS6" : \ -(rate == DESC_RATEVHTSS1MCS7) ? "VHTSS1MCS7" : \ -(rate == DESC_RATEVHTSS1MCS8) ? "VHTSS1MCS8" : \ -(rate == DESC_RATEVHTSS1MCS9) ? "VHTSS1MCS9" : \ -(rate == DESC_RATEVHTSS2MCS0) ? "VHTSS2MCS0" : \ -(rate == DESC_RATEVHTSS2MCS1) ? "VHTSS2MCS1" : \ -(rate == DESC_RATEVHTSS2MCS2) ? "VHTSS2MCS2" : \ -(rate == DESC_RATEVHTSS2MCS3) ? "VHTSS2MCS3" : \ -(rate == DESC_RATEVHTSS2MCS4) ? "VHTSS2MCS4" : \ -(rate == DESC_RATEVHTSS2MCS5) ? "VHTSS2MCS5" : \ -(rate == DESC_RATEVHTSS2MCS6) ? "VHTSS2MCS6" : \ -(rate == DESC_RATEVHTSS2MCS7) ? "VHTSS2MCS7" : \ -(rate == DESC_RATEVHTSS2MCS8) ? "VHTSS2MCS8" : \ -(rate == DESC_RATEVHTSS2MCS9) ? "VHTSS2MCS9" : "UNKNOWN" +(rate == DESC_RATEMCS15) ? "MCS15" : "UNKNOWN" enum{ diff --git a/drivers/staging/rtl8723bs/include/hal_com_phycfg.h b/drivers/staging/rtl8723bs/include/hal_com_phycfg.h index 73f6cadb5c79..c966d0e3e5ae 100644 --- a/drivers/staging/rtl8723bs/include/hal_com_phycfg.h +++ b/drivers/staging/rtl8723bs/include/hal_com_phycfg.h @@ -19,10 +19,6 @@ enum rate_section { HT_MCS8_MCS15, HT_MCS16_MCS23, HT_MCS24_MCS31, - VHT_1SSMCS0_1SSMCS9, - VHT_2SSMCS0_2SSMCS9, - VHT_3SSMCS0_3SSMCS9, - VHT_4SSMCS0_4SSMCS9, }; enum { @@ -70,153 +66,55 @@ struct bb_register_def { }; -u8 -PHY_GetTxPowerByRateBase( -struct adapter *Adapter, -u8 Band, -u8 RfPath, -u8 TxNum, -enum rate_section RateSection - ); - -u8 -PHY_GetRateSectionIndexOfTxPowerByRate( -struct adapter *padapter, -u32 RegAddr, -u32 BitMask - ); - -void -PHY_GetRateValuesOfTxPowerByRate( -struct adapter *padapter, -u32 RegAddr, -u32 BitMask, -u32 Value, -u8 *RateIndex, -s8 *PwrByRateVal, -u8 *RateNum - ); - -u8 -PHY_GetRateIndexOfTxPowerByRate( -u8 Rate - ); - -void -PHY_SetTxPowerIndexByRateSection( -struct adapter *padapter, -u8 RFPath, -u8 Channel, -u8 RateSection - ); - -s8 -PHY_GetTxPowerByRate( -struct adapter *padapter, -u8 Band, -u8 RFPath, -u8 TxNum, -u8 RateIndex - ); - -void -PHY_SetTxPowerByRate( -struct adapter *padapter, -u8 Band, -u8 RFPath, -u8 TxNum, -u8 Rate, -s8 Value - ); - -void -PHY_SetTxPowerLevelByPath( -struct adapter *Adapter, -u8 channel, -u8 path - ); - -void -PHY_SetTxPowerIndexByRateArray( -struct adapter *padapter, -u8 RFPath, -enum channel_width BandWidth, -u8 Channel, -u8 *Rates, -u8 RateArraySize - ); - -void -PHY_InitTxPowerByRate( -struct adapter *padapter - ); - -void -PHY_StoreTxPowerByRate( -struct adapter *padapter, -u32 Band, -u32 RfPath, -u32 TxNum, -u32 RegAddr, -u32 BitMask, -u32 Data - ); - -void -PHY_TxPowerByRateConfiguration( - struct adapter *padapter - ); - -u8 -PHY_GetTxPowerIndexBase( -struct adapter *padapter, -u8 RFPath, -u8 Rate, -enum channel_width BandWidth, -u8 Channel, - bool *bIn24G - ); +u8 PHY_GetTxPowerByRateBase(struct adapter *Adapter, u8 RfPath, u8 TxNum, + enum rate_section RateSection); + +u8 PHY_GetRateSectionIndexOfTxPowerByRate(struct adapter *padapter, u32 RegAddr, + u32 BitMask); + +void PHY_GetRateValuesOfTxPowerByRate(struct adapter *padapter, u32 RegAddr, + u32 BitMask, u32 Value, u8 *RateIndex, + s8 *PwrByRateVal, u8 *RateNum); + +u8 PHY_GetRateIndexOfTxPowerByRate(u8 Rate); + +void PHY_SetTxPowerIndexByRateSection(struct adapter *padapter, u8 RFPath, u8 Channel, + u8 RateSection); + +s8 PHY_GetTxPowerByRate(struct adapter *padapter, u8 RFPath, u8 TxNum, u8 RateIndex); + +void PHY_SetTxPowerByRate(struct adapter *padapter, u8 RFPath, u8 TxNum, u8 Rate, + s8 Value); + +void PHY_SetTxPowerLevelByPath(struct adapter *Adapter, u8 channel, u8 path); + +void PHY_SetTxPowerIndexByRateArray(struct adapter *padapter, u8 RFPath, + enum channel_width BandWidth, u8 Channel, + u8 *Rates, u8 RateArraySize); + +void PHY_InitTxPowerByRate(struct adapter *padapter); + +void PHY_StoreTxPowerByRate(struct adapter *padapter, u32 RfPath, u32 TxNum, + u32 RegAddr, u32 BitMask, u32 Data); + +void PHY_TxPowerByRateConfiguration(struct adapter *padapter); + +u8 PHY_GetTxPowerIndexBase(struct adapter *padapter, u8 RFPath, u8 Rate, + enum channel_width BandWidth, u8 Channel); s8 phy_get_tx_pwr_lmt(struct adapter *adapter, u32 RegPwrTblSel, - enum band_type Band, enum channel_width Bandwidth, -u8 RfPath, -u8 DataRate, -u8 Channel - ); - -void -PHY_SetTxPowerLimit( -struct adapter *Adapter, -u8 *Regulation, -u8 *Band, -u8 *Bandwidth, -u8 *RateSection, -u8 *RfPath, -u8 *Channel, -u8 *PowerLimit - ); - -void -PHY_ConvertTxPowerLimitToPowerIndex( -struct adapter *Adapter - ); - -void -PHY_InitTxPowerLimit( -struct adapter *Adapter - ); - -s8 -PHY_GetTxPowerTrackingOffset( - struct adapter *padapter, - u8 Rate, - u8 RFPath - ); - -void -Hal_ChannelPlanToRegulation( -struct adapter *Adapter, -u16 ChannelPlan - ); + enum channel_width Bandwidth, u8 RfPath, u8 DataRate, + u8 Channel); + +void PHY_SetTxPowerLimit(struct adapter *Adapter, u8 *Regulation, u8 *Bandwidth, + u8 *RateSection, u8 *RfPath, u8 *Channel, u8 *PowerLimit); + +void PHY_ConvertTxPowerLimitToPowerIndex(struct adapter *Adapter); + +void PHY_InitTxPowerLimit(struct adapter *Adapter); + +s8 PHY_GetTxPowerTrackingOffset(struct adapter *padapter, u8 Rate, u8 RFPath); + +void Hal_ChannelPlanToRegulation(struct adapter *Adapter, u16 ChannelPlan); #endif /* __HAL_COMMON_H__ */ diff --git a/drivers/staging/rtl8723bs/include/hal_com_reg.h b/drivers/staging/rtl8723bs/include/hal_com_reg.h index b14585cb0233..b2f179b48019 100644 --- a/drivers/staging/rtl8723bs/include/hal_com_reg.h +++ b/drivers/staging/rtl8723bs/include/hal_com_reg.h @@ -717,7 +717,6 @@ Default: 00b. /* BW_OPMODE bits (Offset 0x603, 8bit) */ /* */ #define BW_OPMODE_20MHZ BIT2 -#define BW_OPMODE_5G BIT1 /* */ /* CAM Config Setting (offset 0x680, 1 byte) */ diff --git a/drivers/staging/rtl8723bs/include/hal_data.h b/drivers/staging/rtl8723bs/include/hal_data.h index babcb03a7c23..3298fa8eb682 100644 --- a/drivers/staging/rtl8723bs/include/hal_data.h +++ b/drivers/staging/rtl8723bs/include/hal_data.h @@ -46,21 +46,16 @@ enum rt_ampdu_burst { RT_AMPDU_BURST_8723B = 7, }; -#define CHANNEL_MAX_NUMBER (14 + 24 + 21) /* 14 is the max channel number */ +#define CHANNEL_MAX_NUMBER (14) /* 14 is the max channel number */ #define CHANNEL_MAX_NUMBER_2G 14 -#define CHANNEL_MAX_NUMBER_5G 54 /* Please refer to "phy_GetChnlGroup8812A" and "Hal_ReadTxPowerInfo8812A" */ -#define CHANNEL_MAX_NUMBER_5G_80M 7 #define MAX_PG_GROUP 13 /* Tx Power Limit Table Size */ #define MAX_REGULATION_NUM 4 #define MAX_2_4G_BANDWIDTH_NUM 4 #define MAX_RATE_SECTION_NUM 10 -#define MAX_5G_BANDWIDTH_NUM 4 #define MAX_BASE_NUM_IN_PHY_REG_PG_2_4G 10 /* CCK:1, OFDM:1, HT:4, VHT:4 */ -#define MAX_BASE_NUM_IN_PHY_REG_PG_5G 9 /* OFDM:1, HT:4, VHT:4 */ - /* duplicate code, will move to ODM ######### */ /* define IQK_MAC_REG_NUM 4 */ @@ -182,8 +177,6 @@ struct hal_com_data { /* current WIFI_PHY values */ enum wireless_mode CurrentWirelessMode; enum channel_width CurrentChannelBW; - enum band_type CurrentBandType; /* 0:2.4G, 1:5G */ - enum band_type BandSet; u8 CurrentChannel; u8 CurrentCenterFrequencyIndex1; u8 nCur40MhzPrimeSC;/* Control channel sub-carrier */ @@ -236,16 +229,8 @@ struct hal_com_data { s8 OFDM_24G_Diff[MAX_RF_PATH][MAX_TX_COUNT]; s8 BW20_24G_Diff[MAX_RF_PATH][MAX_TX_COUNT]; s8 BW40_24G_Diff[MAX_RF_PATH][MAX_TX_COUNT]; - /* 3 [5G] */ - u8 Index5G_BW40_Base[MAX_RF_PATH][CHANNEL_MAX_NUMBER]; - u8 Index5G_BW80_Base[MAX_RF_PATH][CHANNEL_MAX_NUMBER_5G_80M]; - s8 OFDM_5G_Diff[MAX_RF_PATH][MAX_TX_COUNT]; - s8 BW20_5G_Diff[MAX_RF_PATH][MAX_TX_COUNT]; - s8 BW40_5G_Diff[MAX_RF_PATH][MAX_TX_COUNT]; - s8 BW80_5G_Diff[MAX_RF_PATH][MAX_TX_COUNT]; u8 Regulation2_4G; - u8 Regulation5G; u8 TxPwrInPercentage; @@ -253,15 +238,13 @@ struct hal_com_data { /* TX power by rate table at most 4RF path. */ /* The register is */ /* VHT TX power by rate off setArray = */ - /* Band:-2G&5G = 0 / 1 */ /* RF: at most 4*4 = ABCD = 0/1/2/3 */ /* CCK = 0 OFDM = 1/2 HT-MCS 0-15 =3/4/56 VHT =7/8/9/10/11 */ u8 TxPwrByRateTable; u8 TxPwrByRateBand; - s8 TxPwrByRateOffset[TX_PWR_BY_RATE_NUM_BAND] - [TX_PWR_BY_RATE_NUM_RF] - [TX_PWR_BY_RATE_NUM_RF] - [TX_PWR_BY_RATE_NUM_RATE]; + s8 TxPwrByRateOffset[TX_PWR_BY_RATE_NUM_RF] + [TX_PWR_BY_RATE_NUM_RF] + [TX_PWR_BY_RATE_NUM_RATE]; /* */ /* 2 Power Limit Table */ @@ -278,21 +261,10 @@ struct hal_com_data { [CHANNEL_MAX_NUMBER_2G] [MAX_RF_PATH_NUM]; - /* Power Limit Table for 5G */ - s8 TxPwrLimit_5G[MAX_REGULATION_NUM] - [MAX_5G_BANDWIDTH_NUM] - [MAX_RATE_SECTION_NUM] - [CHANNEL_MAX_NUMBER_5G] - [MAX_RF_PATH_NUM]; - - /* Store the original power by rate value of the base of each rate section of rf path A & B */ u8 TxPwrByRateBase2_4G[TX_PWR_BY_RATE_NUM_RF] [TX_PWR_BY_RATE_NUM_RF] [MAX_BASE_NUM_IN_PHY_REG_PG_2_4G]; - u8 TxPwrByRateBase5G[TX_PWR_BY_RATE_NUM_RF] - [TX_PWR_BY_RATE_NUM_RF] - [MAX_BASE_NUM_IN_PHY_REG_PG_5G]; /* For power group */ u8 PwrGroupHT20[RF_PATH_MAX_92C_88E][CHANNEL_MAX_NUMBER]; @@ -319,13 +291,9 @@ struct hal_com_data { u32 AntennaRxPath; /* Antenna path Rx */ u8 PAType_2G; - u8 PAType_5G; u8 LNAType_2G; - u8 LNAType_5G; u8 ExternalPA_2G; u8 ExternalLNA_2G; - u8 ExternalPA_5G; - u8 ExternalLNA_5G; u8 TypeGLNA; u8 TypeGPA; u8 TypeALNA; diff --git a/drivers/staging/rtl8723bs/include/hal_pg.h b/drivers/staging/rtl8723bs/include/hal_pg.h index 0b7a8adf5c74..2d8ccc9ddebb 100644 --- a/drivers/staging/rtl8723bs/include/hal_pg.h +++ b/drivers/staging/rtl8723bs/include/hal_pg.h @@ -16,10 +16,8 @@ /* For VHT series TX power by rate table. */ /* VHT TX power by rate off setArray = */ -/* Band:-2G&5G = 0 / 1 */ /* RF: at most 4*4 = ABCD = 0/1/2/3 */ /* CCK = 0 OFDM = 1/2 HT-MCS 0-15 =3/4/56 VHT =7/8/9/10/11 */ -#define TX_PWR_BY_RATE_NUM_BAND 2 #define TX_PWR_BY_RATE_NUM_RF 4 #define TX_PWR_BY_RATE_NUM_RATE 84 #define MAX_RF_PATH_NUM 2 diff --git a/drivers/staging/rtl8723bs/include/hal_phy.h b/drivers/staging/rtl8723bs/include/hal_phy.h index 521eb1c2efad..861aa71cd179 100644 --- a/drivers/staging/rtl8723bs/include/hal_phy.h +++ b/drivers/staging/rtl8723bs/include/hal_phy.h @@ -6,20 +6,6 @@ ******************************************************************************/ #ifndef __HAL_PHY_H__ #define __HAL_PHY_H__ - - -#if DISABLE_BB_RF -#define HAL_FW_ENABLE 0 -#define HAL_MAC_ENABLE 0 -#define HAL_BB_ENABLE 0 -#define HAL_RF_ENABLE 0 -#else /* FPGA_PHY and ASIC */ -#define HAL_FW_ENABLE 1 -#define HAL_MAC_ENABLE 1 -#define HAL_BB_ENABLE 1 -#define HAL_RF_ENABLE 1 -#endif - /* */ /* Antenna detection method, i.e., using single tone detection or RSSI reported from each antenna detected. */ /* Added by Roger, 2013.05.22. */ @@ -31,13 +17,6 @@ /*--------------------------Define Parameters-------------------------------*/ -enum band_type { - BAND_ON_2_4G = 0, - BAND_ON_5G, - BAND_ON_BOTH, - BANDMAX -}; - enum { RF_TYPE_MIN = 0, /* 0 */ RF_8225 = 1, /* 1 11b/g RF for verification only */ @@ -65,13 +44,10 @@ enum rf_path { enum wireless_mode { WIRELESS_MODE_UNKNOWN = 0x00, - WIRELESS_MODE_A = 0x01, WIRELESS_MODE_B = 0x02, WIRELESS_MODE_G = 0x04, WIRELESS_MODE_AUTO = 0x08, WIRELESS_MODE_N_24G = 0x10, - WIRELESS_MODE_N_5G = 0x20, - WIRELESS_MODE_AC_5G = 0x40, WIRELESS_MODE_AC_24G = 0x80, WIRELESS_MODE_AC_ONLY = 0x100, }; diff --git a/drivers/staging/rtl8723bs/include/ieee80211.h b/drivers/staging/rtl8723bs/include/ieee80211.h index 6540c7a22938..378c21595e05 100644 --- a/drivers/staging/rtl8723bs/include/ieee80211.h +++ b/drivers/staging/rtl8723bs/include/ieee80211.h @@ -60,7 +60,6 @@ enum { #define WLAN_STA_HT BIT(11) #define WLAN_STA_WPS BIT(12) #define WLAN_STA_MAYBE_WPS BIT(13) -#define WLAN_STA_VHT BIT(14) #define WLAN_STA_NONERP BIT(31) #define IEEE_CMD_SET_WPA_PARAM 1 @@ -135,8 +134,6 @@ enum { RATEID_IDX_BG = 6, RATEID_IDX_G = 7, RATEID_IDX_B = 8, - RATEID_IDX_VHT_2SS = 9, - RATEID_IDX_VHT_1SS = 10, }; enum network_type { @@ -144,33 +141,20 @@ enum network_type { /* Sub-Element */ WIRELESS_11B = BIT(0), /* tx: cck only , rx: cck only, hw: cck */ WIRELESS_11G = BIT(1), /* tx: ofdm only, rx: ofdm & cck, hw: cck & ofdm */ - WIRELESS_11A = BIT(2), /* tx: ofdm only, rx: ofdm only, hw: ofdm only */ WIRELESS_11_24N = BIT(3), /* tx: MCS only, rx: MCS & cck, hw: MCS & cck */ - WIRELESS_11_5N = BIT(4), /* tx: MCS only, rx: MCS & ofdm, hw: ofdm only */ WIRELESS_AUTO = BIT(5), - WIRELESS_11AC = BIT(6), /* Combination */ /* Type for current wireless mode */ WIRELESS_11BG = (WIRELESS_11B|WIRELESS_11G), /* tx: cck & ofdm, rx: cck & ofdm & MCS, hw: cck & ofdm */ WIRELESS_11G_24N = (WIRELESS_11G|WIRELESS_11_24N), /* tx: ofdm & MCS, rx: ofdm & cck & MCS, hw: cck & ofdm */ - WIRELESS_11A_5N = (WIRELESS_11A|WIRELESS_11_5N), /* tx: ofdm & MCS, rx: ofdm & MCS, hw: ofdm only */ WIRELESS_11B_24N = (WIRELESS_11B|WIRELESS_11_24N), /* tx: ofdm & cck & MCS, rx: ofdm & cck & MCS, hw: ofdm & cck */ WIRELESS_11BG_24N = (WIRELESS_11B|WIRELESS_11G|WIRELESS_11_24N), /* tx: ofdm & cck & MCS, rx: ofdm & cck & MCS, hw: ofdm & cck */ - WIRELESS_11_24AC = (WIRELESS_11G|WIRELESS_11AC), - WIRELESS_11_5AC = (WIRELESS_11A|WIRELESS_11AC), - - - /* Type for registry default wireless mode */ - WIRELESS_11AGN = (WIRELESS_11A|WIRELESS_11G|WIRELESS_11_24N|WIRELESS_11_5N), /* tx: ofdm & MCS, rx: ofdm & MCS, hw: ofdm only */ - WIRELESS_11ABGN = (WIRELESS_11A|WIRELESS_11B|WIRELESS_11G|WIRELESS_11_24N|WIRELESS_11_5N), - WIRELESS_MODE_24G = (WIRELESS_11B|WIRELESS_11G|WIRELESS_11_24N|WIRELESS_11AC), - WIRELESS_MODE_MAX = (WIRELESS_11A|WIRELESS_11B|WIRELESS_11G|WIRELESS_11_24N|WIRELESS_11_5N|WIRELESS_11AC), }; #define SUPPORTED_24G_NETTYPE_MSK (WIRELESS_11B | WIRELESS_11G | WIRELESS_11_24N) -#define IsLegacyOnly(NetType) ((NetType) == ((NetType) & (WIRELESS_11BG|WIRELESS_11A))) +#define IsLegacyOnly(NetType) ((NetType) == ((NetType) & (WIRELESS_11BG))) #define IsSupported24G(NetType) ((NetType) & SUPPORTED_24G_NETTYPE_MSK ? true : false) @@ -182,11 +166,8 @@ enum network_type { #define IsSupportedRxHT(NetType) IsEnableHWOFDM(NetType) #define IsSupportedTxCCK(NetType) (((NetType) & (WIRELESS_11B)) ? true : false) -#define IsSupportedTxOFDM(NetType) (((NetType) & (WIRELESS_11G|WIRELESS_11A)) ? true : false) -#define IsSupportedHT(NetType) (((NetType) & (WIRELESS_11_24N|WIRELESS_11_5N)) ? true : false) - -#define IsSupportedVHT(NetType) (((NetType) & (WIRELESS_11AC)) ? true : false) - +#define IsSupportedTxOFDM(NetType) (((NetType) & (WIRELESS_11G) ? true : false) +#define IsSupportedHT(NetType) (((NetType) & (WIRELESS_11_24N)) ? true : false) struct ieee_param { u32 cmd; @@ -440,51 +421,10 @@ enum { MGN_MCS29, MGN_MCS30, MGN_MCS31, - MGN_VHT1SS_MCS0, - MGN_VHT1SS_MCS1, - MGN_VHT1SS_MCS2, - MGN_VHT1SS_MCS3, - MGN_VHT1SS_MCS4, - MGN_VHT1SS_MCS5, - MGN_VHT1SS_MCS6, - MGN_VHT1SS_MCS7, - MGN_VHT1SS_MCS8, - MGN_VHT1SS_MCS9, - MGN_VHT2SS_MCS0, - MGN_VHT2SS_MCS1, - MGN_VHT2SS_MCS2, - MGN_VHT2SS_MCS3, - MGN_VHT2SS_MCS4, - MGN_VHT2SS_MCS5, - MGN_VHT2SS_MCS6, - MGN_VHT2SS_MCS7, - MGN_VHT2SS_MCS8, - MGN_VHT2SS_MCS9, - MGN_VHT3SS_MCS0, - MGN_VHT3SS_MCS1, - MGN_VHT3SS_MCS2, - MGN_VHT3SS_MCS3, - MGN_VHT3SS_MCS4, - MGN_VHT3SS_MCS5, - MGN_VHT3SS_MCS6, - MGN_VHT3SS_MCS7, - MGN_VHT3SS_MCS8, - MGN_VHT3SS_MCS9, - MGN_VHT4SS_MCS0, - MGN_VHT4SS_MCS1, - MGN_VHT4SS_MCS2, - MGN_VHT4SS_MCS3, - MGN_VHT4SS_MCS4, - MGN_VHT4SS_MCS5, - MGN_VHT4SS_MCS6, - MGN_VHT4SS_MCS7, - MGN_VHT4SS_MCS8, - MGN_VHT4SS_MCS9, MGN_UNKNOWN }; #define IS_HT_RATE(_rate) (_rate >= MGN_MCS0 && _rate <= MGN_MCS31) -#define IS_VHT_RATE(_rate) (_rate >= MGN_VHT1SS_MCS0 && _rate <= MGN_VHT4SS_MCS9) #define IS_CCK_RATE(_rate) (MGN_1M == _rate || _rate == MGN_2M || _rate == MGN_5_5M || _rate == MGN_11M) #define IS_OFDM_RATE(_rate) (MGN_6M <= _rate && _rate <= MGN_54M && _rate != MGN_11M) @@ -641,7 +581,6 @@ enum { RTW_WLAN_CATEGORY_TDLS = 12, RTW_WLAN_CATEGORY_SELF_PROTECTED = 15, /* add for CONFIG_IEEE80211W, none 11w also can use */ RTW_WLAN_CATEGORY_WMM = 17, - RTW_WLAN_CATEGORY_VHT = 21, RTW_WLAN_CATEGORY_P2P = 0x7f,/* P2P action frames */ }; diff --git a/drivers/staging/rtl8723bs/include/osdep_intf.h b/drivers/staging/rtl8723bs/include/osdep_intf.h index 48c90f00cc2e..111e0179712a 100644 --- a/drivers/staging/rtl8723bs/include/osdep_intf.h +++ b/drivers/staging/rtl8723bs/include/osdep_intf.h @@ -66,7 +66,7 @@ void rtw_ips_pwr_down(struct adapter *padapter); int rtw_drv_register_netdev(struct adapter *padapter); void rtw_ndev_destructor(struct net_device *ndev); -int rtw_suspend_common(struct adapter *padapter); +void rtw_suspend_common(struct adapter *padapter); int rtw_resume_common(struct adapter *padapter); int netdev_open(struct net_device *pnetdev); diff --git a/drivers/staging/rtl8723bs/include/rtl8723b_spec.h b/drivers/staging/rtl8723bs/include/rtl8723b_spec.h index 999555476ebc..6816040a6aff 100644 --- a/drivers/staging/rtl8723bs/include/rtl8723b_spec.h +++ b/drivers/staging/rtl8723bs/include/rtl8723b_spec.h @@ -7,8 +7,6 @@ #ifndef __RTL8723B_SPEC_H__ #define __RTL8723B_SPEC_H__ -#include <autoconf.h> - #define HAL_NAV_UPPER_UNIT_8723B 128 /* micro-second */ /* */ diff --git a/drivers/staging/rtl8723bs/include/rtl8723b_xmit.h b/drivers/staging/rtl8723bs/include/rtl8723b_xmit.h index 56bdc14af47d..9dd329a5208a 100644 --- a/drivers/staging/rtl8723bs/include/rtl8723b_xmit.h +++ b/drivers/staging/rtl8723bs/include/rtl8723b_xmit.h @@ -402,27 +402,6 @@ struct txdesc_8723b { #define DESC8723B_RATEMCS13 0x19 #define DESC8723B_RATEMCS14 0x1a #define DESC8723B_RATEMCS15 0x1b -#define DESC8723B_RATEVHTSS1MCS0 0x2c -#define DESC8723B_RATEVHTSS1MCS1 0x2d -#define DESC8723B_RATEVHTSS1MCS2 0x2e -#define DESC8723B_RATEVHTSS1MCS3 0x2f -#define DESC8723B_RATEVHTSS1MCS4 0x30 -#define DESC8723B_RATEVHTSS1MCS5 0x31 -#define DESC8723B_RATEVHTSS1MCS6 0x32 -#define DESC8723B_RATEVHTSS1MCS7 0x33 -#define DESC8723B_RATEVHTSS1MCS8 0x34 -#define DESC8723B_RATEVHTSS1MCS9 0x35 -#define DESC8723B_RATEVHTSS2MCS0 0x36 -#define DESC8723B_RATEVHTSS2MCS1 0x37 -#define DESC8723B_RATEVHTSS2MCS2 0x38 -#define DESC8723B_RATEVHTSS2MCS3 0x39 -#define DESC8723B_RATEVHTSS2MCS4 0x3a -#define DESC8723B_RATEVHTSS2MCS5 0x3b -#define DESC8723B_RATEVHTSS2MCS6 0x3c -#define DESC8723B_RATEVHTSS2MCS7 0x3d -#define DESC8723B_RATEVHTSS2MCS8 0x3e -#define DESC8723B_RATEVHTSS2MCS9 0x3f - #define RX_HAL_IS_CCK_RATE_8723B(pDesc)\ (GET_RX_STATUS_DESC_RX_RATE_8723B(pDesc) == DESC8723B_RATE1M ||\ diff --git a/drivers/staging/rtl8723bs/include/rtw_ap.h b/drivers/staging/rtl8723bs/include/rtw_ap.h index 4a1ed9eff83a..7a735e691399 100644 --- a/drivers/staging/rtl8723bs/include/rtw_ap.h +++ b/drivers/staging/rtl8723bs/include/rtw_ap.h @@ -14,7 +14,7 @@ void update_beacon(struct adapter *padapter, u8 ie_id, u8 *oui, u8 tx); void add_RATid(struct adapter *padapter, struct sta_info *psta, u8 rssi_level); void expire_timeout_chk(struct adapter *padapter); void update_sta_info_apmode(struct adapter *padapter, struct sta_info *psta); -void start_bss_network(struct adapter *padapter, u8 *pbuf); +void start_bss_network(struct adapter *padapter); int rtw_check_beacon_data(struct adapter *padapter, u8 *pbuf, int len); void rtw_ap_restore_network(struct adapter *padapter); void rtw_set_macaddr_acl(struct adapter *padapter, int mode); diff --git a/drivers/staging/rtl8723bs/include/rtw_debug.h b/drivers/staging/rtl8723bs/include/rtw_debug.h index 23f4cb4711d4..7f96ff66915f 100644 --- a/drivers/staging/rtl8723bs/include/rtw_debug.h +++ b/drivers/staging/rtl8723bs/include/rtw_debug.h @@ -7,172 +7,8 @@ #ifndef __RTW_DEBUG_H__ #define __RTW_DEBUG_H__ -#include <linux/trace_seq.h> - -#define _drv_always_ 1 -#define _drv_emerg_ 2 -#define _drv_alert_ 3 -#define _drv_crit_ 4 -#define _drv_err_ 5 -#define _drv_warning_ 6 -#define _drv_notice_ 7 -#define _drv_info_ 8 -#define _drv_dump_ 9 -#define _drv_debug_ 10 - - -#define _module_rtl871x_xmit_c_ BIT(0) -#define _module_xmit_osdep_c_ BIT(1) -#define _module_rtl871x_recv_c_ BIT(2) -#define _module_recv_osdep_c_ BIT(3) -#define _module_rtl871x_mlme_c_ BIT(4) -#define _module_mlme_osdep_c_ BIT(5) -#define _module_rtl871x_sta_mgt_c_ BIT(6) -#define _module_rtl871x_cmd_c_ BIT(7) -#define _module_cmd_osdep_c_ BIT(8) -#define _module_rtl871x_io_c_ BIT(9) -#define _module_io_osdep_c_ BIT(10) -#define _module_os_intfs_c_ BIT(11) -#define _module_rtl871x_security_c_ BIT(12) -#define _module_rtl871x_eeprom_c_ BIT(13) -#define _module_hal_init_c_ BIT(14) -#define _module_hci_hal_init_c_ BIT(15) -#define _module_rtl871x_ioctl_c_ BIT(16) -#define _module_rtl871x_ioctl_set_c_ BIT(17) -#define _module_rtl871x_ioctl_query_c_ BIT(18) -#define _module_rtl871x_pwrctrl_c_ BIT(19) -#define _module_hci_intfs_c_ BIT(20) -#define _module_hci_ops_c_ BIT(21) -#define _module_osdep_service_c_ BIT(22) -#define _module_mp_ BIT(23) -#define _module_hci_ops_os_c_ BIT(24) -#define _module_rtl871x_ioctl_os_c BIT(25) -#define _module_rtl8712_cmd_c_ BIT(26) -/* define _module_efuse_ BIT(27) */ -#define _module_rtl8192c_xmit_c_ BIT(28) -#define _module_hal_xmit_c_ BIT(28) -#define _module_efuse_ BIT(29) -#define _module_rtl8712_recv_c_ BIT(30) -#define _module_rtl8712_led_c_ BIT(31) - -#undef _MODULE_DEFINE_ - -#if defined _RTW_XMIT_C_ - #define _MODULE_DEFINE_ _module_rtl871x_xmit_c_ -#elif defined _XMIT_OSDEP_C_ - #define _MODULE_DEFINE_ _module_xmit_osdep_c_ -#elif defined _RTW_RECV_C_ - #define _MODULE_DEFINE_ _module_rtl871x_recv_c_ -#elif defined _RECV_OSDEP_C_ - #define _MODULE_DEFINE_ _module_recv_osdep_c_ -#elif defined _RTW_MLME_C_ - #define _MODULE_DEFINE_ _module_rtl871x_mlme_c_ -#elif defined _MLME_OSDEP_C_ - #define _MODULE_DEFINE_ _module_mlme_osdep_c_ -#elif defined _RTW_MLME_EXT_C_ - #define _MODULE_DEFINE_ 1 -#elif defined _RTW_STA_MGT_C_ - #define _MODULE_DEFINE_ _module_rtl871x_sta_mgt_c_ -#elif defined _RTW_CMD_C_ - #define _MODULE_DEFINE_ _module_rtl871x_cmd_c_ -#elif defined _CMD_OSDEP_C_ - #define _MODULE_DEFINE_ _module_cmd_osdep_c_ -#elif defined _RTW_IO_C_ - #define _MODULE_DEFINE_ _module_rtl871x_io_c_ -#elif defined _IO_OSDEP_C_ - #define _MODULE_DEFINE_ _module_io_osdep_c_ -#elif defined _OS_INTFS_C_ - #define _MODULE_DEFINE_ _module_os_intfs_c_ -#elif defined _RTW_SECURITY_C_ - #define _MODULE_DEFINE_ _module_rtl871x_security_c_ -#elif defined _RTW_EEPROM_C_ - #define _MODULE_DEFINE_ _module_rtl871x_eeprom_c_ -#elif defined _HAL_INTF_C_ - #define _MODULE_DEFINE_ _module_hal_init_c_ -#elif (defined _HCI_HAL_INIT_C_) || (defined _SDIO_HALINIT_C_) - #define _MODULE_DEFINE_ _module_hci_hal_init_c_ -#elif defined _RTL871X_IOCTL_C_ - #define _MODULE_DEFINE_ _module_rtl871x_ioctl_c_ -#elif defined _RTL871X_IOCTL_SET_C_ - #define _MODULE_DEFINE_ _module_rtl871x_ioctl_set_c_ -#elif defined _RTL871X_IOCTL_QUERY_C_ - #define _MODULE_DEFINE_ _module_rtl871x_ioctl_query_c_ -#elif defined _RTL871X_PWRCTRL_C_ - #define _MODULE_DEFINE_ _module_rtl871x_pwrctrl_c_ -#elif defined _RTW_PWRCTRL_C_ - #define _MODULE_DEFINE_ 1 -#elif defined _HCI_INTF_C_ - #define _MODULE_DEFINE_ _module_hci_intfs_c_ -#elif defined _HCI_OPS_C_ - #define _MODULE_DEFINE_ _module_hci_ops_c_ -#elif defined _SDIO_OPS_C_ - #define _MODULE_DEFINE_ 1 -#elif defined _OSDEP_HCI_INTF_C_ - #define _MODULE_DEFINE_ _module_hci_intfs_c_ -#elif defined _OSDEP_SERVICE_C_ - #define _MODULE_DEFINE_ _module_osdep_service_c_ -#elif defined _HCI_OPS_OS_C_ - #define _MODULE_DEFINE_ _module_hci_ops_os_c_ -#elif defined _RTL871X_IOCTL_LINUX_C_ - #define _MODULE_DEFINE_ _module_rtl871x_ioctl_os_c -#elif defined _RTL8712_CMD_C_ - #define _MODULE_DEFINE_ _module_rtl8712_cmd_c_ -#elif defined _RTL8192C_XMIT_C_ - #define _MODULE_DEFINE_ 1 -#elif defined _RTL8723AS_XMIT_C_ - #define _MODULE_DEFINE_ 1 -#elif defined _RTL8712_RECV_C_ - #define _MODULE_DEFINE_ _module_rtl8712_recv_c_ -#elif defined _RTL8192CU_RECV_C_ - #define _MODULE_DEFINE_ _module_rtl8712_recv_c_ -#elif defined _RTL871X_MLME_EXT_C_ - #define _MODULE_DEFINE_ _module_mlme_osdep_c_ -#elif defined _RTW_EFUSE_C_ - #define _MODULE_DEFINE_ _module_efuse_ -#endif - -#undef _dbgdump - -#ifndef _RTL871X_DEBUG_C_ - extern u32 GlobalDebugLevel; - extern u64 GlobalDebugComponents; -#endif - -#define _dbgdump printk - -#define DRIVER_PREFIX "RTL8723BS: " - -#if defined(_dbgdump) - -/* without driver-defined prefix */ -#undef _DBG_871X_LEVEL -#define _DBG_871X_LEVEL(level, fmt, arg...) \ - do {\ - if (level <= GlobalDebugLevel) {\ - if (level <= _drv_err_ && level > _drv_always_) \ - _dbgdump("ERROR " fmt, ##arg);\ - else \ - _dbgdump(fmt, ##arg);\ - } \ - } while (0) - -#define RTW_DBGDUMP NULL /* 'stream' for _dbgdump */ - -/* dump message to selected 'stream' */ -#define DBG_871X_SEL(sel, fmt, arg...) \ - do { \ - if (sel == RTW_DBGDUMP) \ - _DBG_871X_LEVEL(_drv_always_, fmt, ##arg); \ - else \ - seq_printf(sel, fmt, ##arg); \ - } while (0) - -#endif /* defined(_dbgdump) */ - -void sd_f0_reg_dump(void *sel, struct adapter *adapter); - -void mac_reg_dump(void *sel, struct adapter *adapter); -void bb_reg_dump(void *sel, struct adapter *adapter); -void rf_reg_dump(void *sel, struct adapter *adapter); +void mac_reg_dump(struct adapter *adapter); +void bb_reg_dump(struct adapter *adapter); +void rf_reg_dump(struct adapter *adapter); #endif /* __RTW_DEBUG_H__ */ diff --git a/drivers/staging/rtl8723bs/include/rtw_ht.h b/drivers/staging/rtl8723bs/include/rtw_ht.h index e3f353fe1e47..1527d8be2d7a 100644 --- a/drivers/staging/rtl8723bs/include/rtw_ht.h +++ b/drivers/staging/rtl8723bs/include/rtw_ht.h @@ -42,10 +42,6 @@ enum { HT_AGG_SIZE_16K = 1, HT_AGG_SIZE_32K = 2, HT_AGG_SIZE_64K = 3, - VHT_AGG_SIZE_128K = 4, - VHT_AGG_SIZE_256K = 5, - VHT_AGG_SIZE_512K = 6, - VHT_AGG_SIZE_1024K = 7, }; enum { diff --git a/drivers/staging/rtl8723bs/include/rtw_io.h b/drivers/staging/rtl8723bs/include/rtw_io.h index fbb73e698e09..e98083a07a66 100644 --- a/drivers/staging/rtl8723bs/include/rtw_io.h +++ b/drivers/staging/rtl8723bs/include/rtw_io.h @@ -104,8 +104,6 @@ struct _io_ops { void (*_read_port_cancel)(struct intf_hdl *pintfhdl); void (*_write_port_cancel)(struct intf_hdl *pintfhdl); - - u8 (*_sd_f0_read8)(struct intf_hdl *pintfhdl, u32 addr); }; struct io_req { @@ -170,29 +168,15 @@ extern void unregister_intf_hdl(struct intf_hdl *pintfhdl); extern void _rtw_attrib_read(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem); extern void _rtw_attrib_write(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem); -extern u8 _rtw_read8(struct adapter *adapter, u32 addr); -extern u16 _rtw_read16(struct adapter *adapter, u32 addr); -extern u32 _rtw_read32(struct adapter *adapter, u32 addr); - -extern int _rtw_write8(struct adapter *adapter, u32 addr, u8 val); -extern int _rtw_write16(struct adapter *adapter, u32 addr, u16 val); -extern int _rtw_write32(struct adapter *adapter, u32 addr, u32 val); - -extern u8 _rtw_sd_f0_read8(struct adapter *adapter, u32 addr); - -extern u32 _rtw_write_port(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem); +extern u8 rtw_read8(struct adapter *adapter, u32 addr); +extern u16 rtw_read16(struct adapter *adapter, u32 addr); +extern u32 rtw_read32(struct adapter *adapter, u32 addr); -#define rtw_read8(adapter, addr) _rtw_read8((adapter), (addr)) -#define rtw_read16(adapter, addr) _rtw_read16((adapter), (addr)) -#define rtw_read32(adapter, addr) _rtw_read32((adapter), (addr)) +extern int rtw_write8(struct adapter *adapter, u32 addr, u8 val); +extern int rtw_write16(struct adapter *adapter, u32 addr, u16 val); +extern int rtw_write32(struct adapter *adapter, u32 addr, u32 val); -#define rtw_write8(adapter, addr, val) _rtw_write8((adapter), (addr), (val)) -#define rtw_write16(adapter, addr, val) _rtw_write16((adapter), (addr), (val)) -#define rtw_write32(adapter, addr, val) _rtw_write32((adapter), (addr), (val)) - -#define rtw_write_port(adapter, addr, cnt, mem) _rtw_write_port((adapter), (addr), (cnt), (mem)) - -#define rtw_sd_f0_read8(adapter, addr) _rtw_sd_f0_read8((adapter), (addr)) +extern u32 rtw_write_port(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem); extern void rtw_write_scsi(struct adapter *adapter, u32 cnt, u8 *pmem); @@ -236,18 +220,4 @@ extern void bus_sync_io(struct io_queue *pio_q); extern u32 _ioreq2rwmem(struct io_queue *pio_q); extern void dev_power_down(struct adapter *Adapter, u8 bpwrup); -#define PlatformEFIOWrite1Byte(_a, _b, _c) \ - rtw_write8(_a, _b, _c) -#define PlatformEFIOWrite2Byte(_a, _b, _c) \ - rtw_write16(_a, _b, _c) -#define PlatformEFIOWrite4Byte(_a, _b, _c) \ - rtw_write32(_a, _b, _c) - -#define PlatformEFIORead1Byte(_a, _b) \ - rtw_read8(_a, _b) -#define PlatformEFIORead2Byte(_a, _b) \ - rtw_read16(_a, _b) -#define PlatformEFIORead4Byte(_a, _b) \ - rtw_read32(_a, _b) - #endif /* _RTL8711_IO_H_ */ diff --git a/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h b/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h index 472818c5fd83..89b389d4c44b 100644 --- a/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h +++ b/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h @@ -195,47 +195,6 @@ enum { RT_CHANNEL_DOMAIN_2G_MAX, }; -enum { - RT_CHANNEL_DOMAIN_5G_NULL = 0x00, - RT_CHANNEL_DOMAIN_5G_ETSI1 = 0x01, /* Europe */ - RT_CHANNEL_DOMAIN_5G_ETSI2 = 0x02, /* Australia, New Zealand */ - RT_CHANNEL_DOMAIN_5G_ETSI3 = 0x03, /* Russia */ - RT_CHANNEL_DOMAIN_5G_FCC1 = 0x04, /* US */ - RT_CHANNEL_DOMAIN_5G_FCC2 = 0x05, /* FCC o/w DFS Channels */ - RT_CHANNEL_DOMAIN_5G_FCC3 = 0x06, /* India, Mexico */ - RT_CHANNEL_DOMAIN_5G_FCC4 = 0x07, /* Venezuela */ - RT_CHANNEL_DOMAIN_5G_FCC5 = 0x08, /* China */ - RT_CHANNEL_DOMAIN_5G_FCC6 = 0x09, /* Israel */ - RT_CHANNEL_DOMAIN_5G_FCC7_IC1 = 0x0A, /* US, Canada */ - RT_CHANNEL_DOMAIN_5G_KCC1 = 0x0B, /* Korea */ - RT_CHANNEL_DOMAIN_5G_MKK1 = 0x0C, /* Japan */ - RT_CHANNEL_DOMAIN_5G_MKK2 = 0x0D, /* Japan (W52, W53) */ - RT_CHANNEL_DOMAIN_5G_MKK3 = 0x0E, /* Japan (W56) */ - RT_CHANNEL_DOMAIN_5G_NCC1 = 0x0F, /* Taiwan */ - RT_CHANNEL_DOMAIN_5G_NCC2 = 0x10, /* Taiwan o/w DFS */ - RT_CHANNEL_DOMAIN_5G_NCC3 = 0x11, /* Taiwan w/o DFS, Band4 only */ - RT_CHANNEL_DOMAIN_5G_ETSI4 = 0x12, /* Europe w/o DFS, Band1 only */ - RT_CHANNEL_DOMAIN_5G_ETSI5 = 0x13, /* Australia, New Zealand(w/o Weather radar) */ - RT_CHANNEL_DOMAIN_5G_FCC8 = 0x14, /* Latin America */ - RT_CHANNEL_DOMAIN_5G_ETSI6 = 0x15, /* Israel, Bahrain, Egypt, India, China, Malaysia */ - RT_CHANNEL_DOMAIN_5G_ETSI7 = 0x16, /* China */ - RT_CHANNEL_DOMAIN_5G_ETSI8 = 0x17, /* Jordan */ - RT_CHANNEL_DOMAIN_5G_ETSI9 = 0x18, /* Lebanon */ - RT_CHANNEL_DOMAIN_5G_ETSI10 = 0x19, /* Qatar */ - RT_CHANNEL_DOMAIN_5G_ETSI11 = 0x1A, /* Russia */ - RT_CHANNEL_DOMAIN_5G_NCC4 = 0x1B, /* Taiwan, (w/o Weather radar) */ - RT_CHANNEL_DOMAIN_5G_ETSI12 = 0x1C, /* Indonesia */ - RT_CHANNEL_DOMAIN_5G_FCC9 = 0x1D, /* w/o Weather radar) */ - RT_CHANNEL_DOMAIN_5G_ETSI13 = 0x1E, /* w/o Weather radar) */ - RT_CHANNEL_DOMAIN_5G_FCC10 = 0x1F, /* Argentina (w/o Weather radar) */ - /* Add new channel plan above this line =============== */ - /* Driver Self Defined ===== */ - RT_CHANNEL_DOMAIN_5G_FCC = 0x20, - RT_CHANNEL_DOMAIN_5G_JAPAN_NO_DFS = 0x21, - RT_CHANNEL_DOMAIN_5G_FCC4_NO_DFS = 0x22, - RT_CHANNEL_DOMAIN_5G_MAX, -}; - #define rtw_is_channel_plan_valid(chplan) (chplan < RT_CHANNEL_DOMAIN_MAX || chplan == RT_CHANNEL_DOMAIN_REALTEK_DEFINE) struct rt_channel_plan { @@ -248,14 +207,8 @@ struct rt_channel_plan_2g { unsigned char Len; }; -struct rt_channel_plan_5g { - unsigned char Channel[MAX_CHANNEL_NUM_5G]; - unsigned char Len; -}; - struct rt_channel_plan_map { unsigned char Index2G; - unsigned char Index5G; }; enum { @@ -348,13 +301,13 @@ struct FW_Sta_Info { * When the driver scanned RTW_SCAN_NUM_OF_CH channels, it would switch back to AP's operating channel for * RTW_STAY_AP_CH_MILLISECOND * SURVEY_TO milliseconds. * Example: - * For chip supports 2.4G + 5GHz and AP mode is operating in channel 1, + * For chip supports 2.4G and AP mode is operating in channel 1, * RTW_SCAN_NUM_OF_CH is 8, RTW_STAY_AP_CH_MILLISECOND is 3 and SURVEY_TO is 100. * When it's STA mode gets set_scan command, * it would * 1. Doing the scan on channel 1.2.3.4.5.6.7.8 * 2. Back to channel 1 for 300 milliseconds - * 3. Go through doing site survey on channel 9.10.11.36.40.44.48.52 + * 3. Go through doing site survey on channel 9.10.11 * 4. Back to channel 1 for 300 milliseconds * 5. ... and so on, till survey done. */ @@ -411,7 +364,6 @@ struct rt_channel_info { }; int rtw_ch_set_search_ch(struct rt_channel_info *ch_set, const u32 ch); -bool rtw_mlme_band_check(struct adapter *adapter, const u32 ch); /* P2P_MAX_REG_CLASSES - Maximum number of regulatory classes */ #define P2P_MAX_REG_CLASSES 10 @@ -805,38 +757,6 @@ enum { #ifdef _RTW_MLME_EXT_C_ -static struct fwevent wlanevents[] = -{ - {0, rtw_dummy_event_callback}, /*0*/ - {0, NULL}, - {0, NULL}, - {0, NULL}, - {0, NULL}, - {0, NULL}, - {0, NULL}, - {0, NULL}, - {0, &rtw_survey_event_callback}, /*8*/ - {sizeof(struct surveydone_event), &rtw_surveydone_event_callback}, /*9*/ - - {0, &rtw_joinbss_event_callback}, /*10*/ - {sizeof(struct stassoc_event), &rtw_stassoc_event_callback}, - {sizeof(struct stadel_event), &rtw_stadel_event_callback}, - {0, &rtw_atimdone_event_callback}, - {0, rtw_dummy_event_callback}, - {0, NULL}, /*15*/ - {0, NULL}, - {0, NULL}, - {0, NULL}, - {0, rtw_fwdbg_event_callback}, - {0, NULL}, /*20*/ - {0, NULL}, - {0, NULL}, - {0, &rtw_cpwm_event_callback}, - {0, NULL}, - {0, &rtw_wmm_event_callback}, - -}; - #endif/* _RTL8192C_CMD_C_ */ #endif diff --git a/drivers/staging/rtl8723bs/include/rtw_mp.h b/drivers/staging/rtl8723bs/include/rtw_mp.h index 2788ad80b114..ea3abee325ef 100644 --- a/drivers/staging/rtl8723bs/include/rtw_mp.h +++ b/drivers/staging/rtl8723bs/include/rtw_mp.h @@ -348,7 +348,6 @@ void Hal_SetCarrierSuppressionTx(struct adapter *padapter, u8 bStart); void Hal_SetSingleToneTx(struct adapter *padapter, u8 bStart); void Hal_SetSingleCarrierTx(struct adapter *padapter, u8 bStart); void Hal_SetContinuousTx(struct adapter *padapter, u8 bStart); -void Hal_SetBandwidth(struct adapter *padapter); void Hal_SetDataRate(struct adapter *padapter); void Hal_SetChannel(struct adapter *padapter); diff --git a/drivers/staging/rtl8723bs/include/rtw_rf.h b/drivers/staging/rtl8723bs/include/rtw_rf.h index cb6beccd3d23..6c25707f4ec8 100644 --- a/drivers/staging/rtl8723bs/include/rtw_rf.h +++ b/drivers/staging/rtl8723bs/include/rtw_rf.h @@ -21,16 +21,13 @@ #define RTL8711_RF_MAX_SENS 6 #define RTL8711_RF_DEF_SENS 4 -/* */ -/* We now define the following channels as the max channels in each channel plan. */ -/* 2G, total 14 chnls */ -/* {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14} */ -/* 5G, total 24 chnls */ -/* {36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, - * 124, 128, 132, 136, 140, 149, 153, 157, 161, 165} */ +/* + * We now define the following channels as the max channels in each channel plan. + * 2G, total 14 chnls + * {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14} + */ #define MAX_CHANNEL_NUM_2G 14 -#define MAX_CHANNEL_NUM_5G 24 -#define MAX_CHANNEL_NUM 38/* 14+24 */ +#define MAX_CHANNEL_NUM 14 #define NUM_REGULATORYS 1 @@ -83,10 +80,6 @@ enum { enum channel_width { CHANNEL_WIDTH_20 = 0, CHANNEL_WIDTH_40 = 1, - CHANNEL_WIDTH_80 = 2, - CHANNEL_WIDTH_160 = 3, - CHANNEL_WIDTH_80_80 = 4, - CHANNEL_WIDTH_MAX = 5, }; /* Represent Extension Channel Offset in HT Capabilities */ @@ -99,17 +92,9 @@ enum extchnl_offset { }; enum { - VHT_DATA_SC_DONOT_CARE = 0, - VHT_DATA_SC_20_UPPER_OF_80MHZ = 1, - VHT_DATA_SC_20_LOWER_OF_80MHZ = 2, - VHT_DATA_SC_20_UPPERST_OF_80MHZ = 3, - VHT_DATA_SC_20_LOWEST_OF_80MHZ = 4, - VHT_DATA_SC_20_RECV1 = 5, - VHT_DATA_SC_20_RECV2 = 6, - VHT_DATA_SC_20_RECV3 = 7, - VHT_DATA_SC_20_RECV4 = 8, - VHT_DATA_SC_40_UPPER_OF_80MHZ = 9, - VHT_DATA_SC_40_LOWER_OF_80MHZ = 10, + HT_DATA_SC_DONOT_CARE = 0, + HT_DATA_SC_20_UPPER_OF_40MHZ = 1, + HT_DATA_SC_20_LOWER_OF_40MHZ = 2, }; /* 2007/11/15 MH Define different RF type. */ diff --git a/drivers/staging/rtl8723bs/include/rtw_security.h b/drivers/staging/rtl8723bs/include/rtw_security.h index 5c787e999aab..a68b73858462 100644 --- a/drivers/staging/rtl8723bs/include/rtw_security.h +++ b/drivers/staging/rtl8723bs/include/rtw_security.h @@ -7,6 +7,7 @@ #ifndef __RTW_SECURITY_H_ #define __RTW_SECURITY_H_ +#include <crypto/arc4.h> #define _NO_PRIVACY_ 0x0 #define _WEP40_ 0x1 @@ -127,6 +128,8 @@ struct security_priv { u8 wps_ie[MAX_WPS_IE_LEN];/* added in assoc req */ int wps_ie_len; + struct arc4_ctx xmit_arc4_ctx; + struct arc4_ctx recv_arc4_ctx; u8 binstallGrpkey; u8 binstallBIPkey; @@ -191,8 +194,6 @@ do {\ } \ } while (0) -#define _AES_IV_LEN_ 8 - #define SET_ICE_IV_LEN(iv_len, icv_len, encrypt)\ do {\ switch (encrypt)\ @@ -243,110 +244,11 @@ struct mic_data { u32 nBytesInM; /* # bytes in M */ }; -extern const u32 Te0[256]; -extern const u32 Te1[256]; -extern const u32 Te2[256]; -extern const u32 Te3[256]; -extern const u32 Te4[256]; -extern const u32 Td0[256]; -extern const u32 Td1[256]; -extern const u32 Td2[256]; -extern const u32 Td3[256]; -extern const u32 Td4[256]; -extern const u32 rcon[10]; -extern const u8 Td4s[256]; -extern const u8 rcons[10]; - -#define RCON(i) (rcons[(i)] << 24) - -static inline u32 rotr(u32 val, int bits) -{ - return (val >> bits) | (val << (32 - bits)); -} - -#define TE0(i) Te0[((i) >> 24) & 0xff] -#define TE1(i) rotr(Te0[((i) >> 16) & 0xff], 8) -#define TE2(i) rotr(Te0[((i) >> 8) & 0xff], 16) -#define TE3(i) rotr(Te0[(i) & 0xff], 24) -#define TE41(i) ((Te0[((i) >> 24) & 0xff] << 8) & 0xff000000) -#define TE42(i) (Te0[((i) >> 16) & 0xff] & 0x00ff0000) -#define TE43(i) (Te0[((i) >> 8) & 0xff] & 0x0000ff00) -#define TE44(i) ((Te0[(i) & 0xff] >> 8) & 0x000000ff) -#define TE421(i) ((Te0[((i) >> 16) & 0xff] << 8) & 0xff000000) -#define TE432(i) (Te0[((i) >> 8) & 0xff] & 0x00ff0000) -#define TE443(i) (Te0[(i) & 0xff] & 0x0000ff00) -#define TE414(i) ((Te0[((i) >> 24) & 0xff] >> 8) & 0x000000ff) -#define TE4(i) ((Te0[(i)] >> 8) & 0x000000ff) - -#define TD0(i) Td0[((i) >> 24) & 0xff] -#define TD1(i) rotr(Td0[((i) >> 16) & 0xff], 8) -#define TD2(i) rotr(Td0[((i) >> 8) & 0xff], 16) -#define TD3(i) rotr(Td0[(i) & 0xff], 24) -#define TD41(i) (Td4s[((i) >> 24) & 0xff] << 24) -#define TD42(i) (Td4s[((i) >> 16) & 0xff] << 16) -#define TD43(i) (Td4s[((i) >> 8) & 0xff] << 8) -#define TD44(i) (Td4s[(i) & 0xff]) -#define TD0_(i) Td0[(i) & 0xff] -#define TD1_(i) rotr(Td0[(i) & 0xff], 8) -#define TD2_(i) rotr(Td0[(i) & 0xff], 16) -#define TD3_(i) rotr(Td0[(i) & 0xff], 24) - -#define GETU32(pt) (((u32)(pt)[0] << 24) ^ ((u32)(pt)[1] << 16) ^ \ - ((u32)(pt)[2] << 8) ^ ((u32)(pt)[3])) - -#define PUTU32(ct, st) { \ -(ct)[0] = (u8)((st) >> 24); (ct)[1] = (u8)((st) >> 16); \ -(ct)[2] = (u8)((st) >> 8); (ct)[3] = (u8)(st); } - -#define WPA_GET_BE32(a) ((((u32) (a)[0]) << 24) | (((u32) (a)[1]) << 16) | \ - (((u32) (a)[2]) << 8) | ((u32) (a)[3])) - -#define WPA_PUT_LE16(a, val) \ - do { \ - (a)[1] = ((u16) (val)) >> 8; \ - (a)[0] = ((u16) (val)) & 0xff; \ - } while (0) - -#define WPA_PUT_BE32(a, val) \ - do { \ - (a)[0] = (u8) ((((u32) (val)) >> 24) & 0xff); \ - (a)[1] = (u8) ((((u32) (val)) >> 16) & 0xff); \ - (a)[2] = (u8) ((((u32) (val)) >> 8) & 0xff); \ - (a)[3] = (u8) (((u32) (val)) & 0xff); \ - } while (0) - -#define WPA_PUT_BE64(a, val) \ - do { \ - (a)[0] = (u8) (((u64) (val)) >> 56); \ - (a)[1] = (u8) (((u64) (val)) >> 48); \ - (a)[2] = (u8) (((u64) (val)) >> 40); \ - (a)[3] = (u8) (((u64) (val)) >> 32); \ - (a)[4] = (u8) (((u64) (val)) >> 24); \ - (a)[5] = (u8) (((u64) (val)) >> 16); \ - (a)[6] = (u8) (((u64) (val)) >> 8); \ - (a)[7] = (u8) (((u64) (val)) & 0xff); \ - } while (0) - /* ===== start - public domain SHA256 implementation ===== */ /* This is based on SHA256 implementation in LibTomCrypt that was released into * public domain by Tom St Denis. */ -/* Various logical functions */ -#define RORc(x, y) \ -(((((unsigned long) (x) & 0xFFFFFFFFUL) >> (unsigned long) ((y) & 31)) | \ - ((unsigned long) (x) << (unsigned long) (32 - ((y) & 31)))) & 0xFFFFFFFFUL) -#define Ch(x, y, z) (z ^ (x & (y ^ z))) -#define Maj(x, y, z) (((x | y) & z) | (x & y)) -#define S(x, n) RORc((x), (n)) -#define R(x, n) (((x)&0xFFFFFFFFUL)>>(n)) -#define Sigma0(x) (S(x, 2) ^ S(x, 13) ^ S(x, 22)) -#define Sigma1(x) (S(x, 6) ^ S(x, 11) ^ S(x, 25)) -#define Gamma0(x) (S(x, 7) ^ S(x, 18) ^ R(x, 3)) -#define Gamma1(x) (S(x, 17) ^ S(x, 19) ^ R(x, 10)) -#ifndef MIN -#define MIN(x, y) (((x) < (y)) ? (x) : (y)) -#endif int omac1_aes_128(u8 *key, u8 *data, size_t data_len, u8 *mac); void rtw_secmicsetkey(struct mic_data *pmicdata, u8 *key); void rtw_secmicappendbyte(struct mic_data *pmicdata, u8 b); diff --git a/drivers/staging/rtl8723bs/include/rtw_xmit.h b/drivers/staging/rtl8723bs/include/rtw_xmit.h index e45753d17313..676ead0372fa 100644 --- a/drivers/staging/rtl8723bs/include/rtw_xmit.h +++ b/drivers/staging/rtl8723bs/include/rtw_xmit.h @@ -234,7 +234,7 @@ enum { void rtw_sctx_init(struct submit_ctx *sctx, int timeout_ms); -int rtw_sctx_wait(struct submit_ctx *sctx, const char *msg); +int rtw_sctx_wait(struct submit_ctx *sctx); void rtw_sctx_done_err(struct submit_ctx **sctx, int status); void rtw_sctx_done(struct submit_ctx **sctx); diff --git a/drivers/staging/rtl8723bs/include/sdio_ops_linux.h b/drivers/staging/rtl8723bs/include/sdio_ops_linux.h index 16a03adbc2cf..18830dd18372 100644 --- a/drivers/staging/rtl8723bs/include/sdio_ops_linux.h +++ b/drivers/staging/rtl8723bs/include/sdio_ops_linux.h @@ -11,8 +11,6 @@ #define SDIO_ERR_VAL16 0xEAEA #define SDIO_ERR_VAL32 0xEAEAEAEA -u8 sd_f0_read8(struct intf_hdl *pintfhdl, u32 addr, s32 *err); - s32 _sd_cmd52_read(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *pdata); s32 _sd_cmd52_write(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *pdata); s32 sd_cmd52_read(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *pdata); diff --git a/drivers/staging/rtl8723bs/include/wifi.h b/drivers/staging/rtl8723bs/include/wifi.h index 036cf57c65a9..0bd7b662b972 100644 --- a/drivers/staging/rtl8723bs/include/wifi.h +++ b/drivers/staging/rtl8723bs/include/wifi.h @@ -234,7 +234,7 @@ static inline int IS_MCAST(unsigned char *da) return false; } -static inline unsigned char *get_ra(unsigned char *pframe) +static inline unsigned char *rtl8723bs_get_ra(unsigned char *pframe) { unsigned char *ra; ra = GetAddr1Ptr(pframe); @@ -336,7 +336,6 @@ static inline int IsFrameTypeCtrl(unsigned char *pframe) #define _PRE_ALLOCICVHDR_ 5 #define _PRE_ALLOCMICHDR_ 6 -#define _SIFSTIME_ ((priv->pmib->dot11BssType.net_work_type&WIRELESS_11A)?16:10) #define _ACKCTSLNG_ 14 /* 14 bytes long, including crclng */ #define _CRCLNG_ 4 diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c index 437859228371..fd747c8d920e 100644 --- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c +++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c @@ -77,7 +77,6 @@ static struct ieee80211_rate rtw_rates[] = { #define RTW_G_RATES_NUM 12 #define RTW_2G_CHANNELS_NUM 14 -#define RTW_5G_CHANNELS_NUM 37 static struct ieee80211_channel rtw_2ghz_channels[] = { CHAN2G(1, 2412, 0), @@ -203,8 +202,6 @@ rtw_cfg80211_default_mgmt_stypes[NUM_NL80211_IFTYPES] = { static int rtw_ieee80211_channel_to_frequency(int chan, int band) { - /* see 802.11 17.3.8.3.2 and Annex J - * there are overlapping channel numbers in 5GHz and 2GHz bands */ if (band == NL80211_BAND_2GHZ) { if (chan == 14) return 2484; @@ -229,7 +226,6 @@ struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wl size_t len, bssinf_len = 0; struct ieee80211_hdr *pwlanhdr; __le16 *fctrl; - u8 bc_addr[] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; struct wireless_dev *wdev = padapter->rtw_wdev; struct wiphy *wiphy = wdev->wiphy; @@ -310,7 +306,7 @@ struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wl /* pmlmeext->mgnt_seq++; */ if (pnetwork->network.Reserved[0] == 1) { /* WIFI_BEACON */ - memcpy(pwlanhdr->addr1, bc_addr, ETH_ALEN); + eth_broadcast_addr(pwlanhdr->addr1); SetFrameSubType(pbuf, WIFI_BEACON); } else { memcpy(pwlanhdr->addr1, myid(&(padapter->eeprompriv)), ETH_ALEN); @@ -960,7 +956,7 @@ static int cfg80211_rtw_add_key(struct wiphy *wiphy, struct net_device *ndev, memset(param, 0, param_len); param->cmd = IEEE_CMD_SET_ENCRYPTION; - memset(param->sta_addr, 0xff, ETH_ALEN); + eth_broadcast_addr(param->sta_addr); switch (params->cipher) { case IW_AUTH_CIPHER_NONE: @@ -1265,18 +1261,12 @@ void rtw_cfg80211_surveydone_event_callback(struct adapter *padapter) spin_lock_bh(&(pmlmepriv->scanned_queue.lock)); phead = get_list_head(queue); - plist = get_next(phead); - - while (1) + list_for_each(plist, phead) { - if (phead == plist) - break; - - pnetwork = container_of(plist, struct wlan_network, list); + pnetwork = list_entry(plist, struct wlan_network, list); /* report network only if the current channel set contains the channel to which this network belongs */ if (rtw_ch_set_search_ch(padapter->mlmeextpriv.channel_set, pnetwork->network.Configuration.DSConfig) >= 0 - && rtw_mlme_band_check(padapter, pnetwork->network.Configuration.DSConfig) == true && true == rtw_validate_ssid(&(pnetwork->network.Ssid)) ) { @@ -1284,8 +1274,6 @@ void rtw_cfg80211_surveydone_event_callback(struct adapter *padapter) rtw_cfg80211_inform_bss(padapter, pnetwork); } - plist = get_next(plist); - } spin_unlock_bh(&(pmlmepriv->scanned_queue.lock)); @@ -2460,7 +2448,7 @@ static int cfg80211_rtw_del_station(struct wiphy *wiphy, struct net_device *ndev struct station_del_parameters *params) { int ret = 0; - struct list_head *phead, *plist; + struct list_head *phead, *plist, *tmp; u8 updated = false; struct sta_info *psta = NULL; struct adapter *padapter = rtw_netdev_priv(ndev); @@ -2489,13 +2477,9 @@ static int cfg80211_rtw_del_station(struct wiphy *wiphy, struct net_device *ndev spin_lock_bh(&pstapriv->asoc_list_lock); phead = &pstapriv->asoc_list; - plist = get_next(phead); - /* check asoc_queue */ - while (phead != plist) { - psta = container_of(plist, struct sta_info, asoc_list); - - plist = get_next(plist); + list_for_each_safe(plist, tmp, phead) { + psta = list_entry(plist, struct sta_info, asoc_list); if (!memcmp((u8 *)mac, psta->hwaddr, ETH_ALEN)) { if (psta->dot8021xalg != 1 || psta->bpairwise_key_installed) { @@ -2598,7 +2582,7 @@ static int _cfg80211_rtw_mgmt_tx(struct adapter *padapter, u8 tx_ch, const u8 *b struct pkt_attrib *pattrib; unsigned char *pframe; int ret = _FAIL; - bool ack = true; + bool __maybe_unused ack = true; struct ieee80211_hdr *pwlanhdr; struct xmit_priv *pxmitpriv = &(padapter->xmitpriv); struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv); diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_linux.c b/drivers/staging/rtl8723bs/os_dep/ioctl_linux.c index 5088c3731b6d..f95000df8942 100644 --- a/drivers/staging/rtl8723bs/os_dep/ioctl_linux.c +++ b/drivers/staging/rtl8723bs/os_dep/ioctl_linux.c @@ -420,8 +420,10 @@ static int wpa_set_encryption(struct net_device *dev, struct ieee_param *param, wep_key_len = wep_key_len <= 5 ? 5 : 13; wep_total_len = wep_key_len + FIELD_OFFSET(struct ndis_802_11_wep, KeyMaterial); pwep = kzalloc(wep_total_len, GFP_KERNEL); - if (!pwep) + if (!pwep) { + ret = -ENOMEM; goto exit; + } pwep->KeyLength = wep_key_len; pwep->Length = wep_total_len; @@ -1052,15 +1054,9 @@ static int rtw_wx_set_wap(struct net_device *dev, authmode = padapter->securitypriv.ndisauthtype; spin_lock_bh(&queue->lock); phead = get_list_head(queue); - pmlmepriv->pscanned = get_next(phead); - - while (1) { - if (phead == pmlmepriv->pscanned) - break; - - pnetwork = container_of(pmlmepriv->pscanned, struct wlan_network, list); - - pmlmepriv->pscanned = get_next(pmlmepriv->pscanned); + list_for_each(pmlmepriv->pscanned, phead) { + pnetwork = list_entry(pmlmepriv->pscanned, + struct wlan_network, list); dst_bssid = pnetwork->network.MacAddress; @@ -1299,29 +1295,21 @@ static int rtw_wx_get_scan(struct net_device *dev, struct iw_request_info *a, spin_lock_bh(&(pmlmepriv->scanned_queue.lock)); phead = get_list_head(queue); - plist = get_next(phead); - - while (1) { - if (phead == plist) - break; - + list_for_each(plist, phead) { if ((stop - ev) < SCAN_ITEM_SIZE) { ret = -E2BIG; break; } - pnetwork = container_of(plist, struct wlan_network, list); + pnetwork = list_entry(plist, struct wlan_network, list); /* report network only if the current channel set contains the channel to which this network belongs */ if (rtw_ch_set_search_ch(padapter->mlmeextpriv.channel_set, pnetwork->network.Configuration.DSConfig) >= 0 - && rtw_mlme_band_check(padapter, pnetwork->network.Configuration.DSConfig) == true && true == rtw_validate_ssid(&(pnetwork->network.Ssid))) { ev = translate_scan(padapter, a, pnetwork, ev, stop); } - plist = get_next(plist); - } spin_unlock_bh(&(pmlmepriv->scanned_queue.lock)); @@ -1387,15 +1375,9 @@ static int rtw_wx_set_essid(struct net_device *dev, spin_lock_bh(&queue->lock); phead = get_list_head(queue); - pmlmepriv->pscanned = get_next(phead); - - while (1) { - if (phead == pmlmepriv->pscanned) - break; - - pnetwork = container_of(pmlmepriv->pscanned, struct wlan_network, list); - - pmlmepriv->pscanned = get_next(pmlmepriv->pscanned); + list_for_each(pmlmepriv->pscanned, phead) { + pnetwork = list_entry(pmlmepriv->pscanned, + struct wlan_network, list); dst_ssid = pnetwork->network.Ssid.Ssid; @@ -1934,7 +1916,7 @@ static int rtw_wx_set_enc_ext(struct net_device *dev, return -1; param->cmd = IEEE_CMD_SET_ENCRYPTION; - memset(param->sta_addr, 0xff, ETH_ALEN); + eth_broadcast_addr(param->sta_addr); switch (pext->alg) { @@ -2252,14 +2234,8 @@ static int rtw_get_ap_info(struct net_device *dev, spin_lock_bh(&(pmlmepriv->scanned_queue.lock)); phead = get_list_head(queue); - plist = get_next(phead); - - while (1) { - if (phead == plist) - break; - - - pnetwork = container_of(plist, struct wlan_network, list); + list_for_each(plist, phead) { + pnetwork = list_entry(plist, struct wlan_network, list); if (!mac_pton(data, bssid)) { spin_unlock_bh(&(pmlmepriv->scanned_queue.lock)); @@ -2282,8 +2258,6 @@ static int rtw_get_ap_info(struct net_device *dev, } } - plist = get_next(plist); - } spin_unlock_bh(&(pmlmepriv->scanned_queue.lock)); @@ -2600,10 +2574,9 @@ static int rtw_dbg_port(struct net_device *dev, case 0x12: /* set rx_stbc */ { struct registry_priv *pregpriv = &padapter->registrypriv; - /* 0: disable, bit(0):enable 2.4g, bit(1):enable 5g, 0x3: enable both 2.4g and 5g */ - /* default is set to enable 2.4GHZ for IOT issue with bufflao's AP at 5GHZ */ - if (extra_arg == 0 || extra_arg == 1 || - extra_arg == 2 || extra_arg == 3) + /* 0: disable, bit(0):enable 2.4g */ + /* default is set to enable 2.4GHZ */ + if (extra_arg == 0 || extra_arg == 1) pregpriv->rx_stbc = extra_arg; } break; @@ -2734,11 +2707,11 @@ static int rtw_dbg_port(struct net_device *dev, case 0xdd:/* registers dump , 0 for mac reg, 1 for bb reg, 2 for rf reg */ { if (extra_arg == 0) - mac_reg_dump(RTW_DBGDUMP, padapter); + mac_reg_dump(padapter); else if (extra_arg == 1) - bb_reg_dump(RTW_DBGDUMP, padapter); + bb_reg_dump(padapter); else if (extra_arg == 2) - rf_reg_dump(RTW_DBGDUMP, padapter); + rf_reg_dump(padapter); } break; diff --git a/drivers/staging/rtl8723bs/os_dep/mlme_linux.c b/drivers/staging/rtl8723bs/os_dep/mlme_linux.c index 0a16752f805b..a4560ba22db1 100644 --- a/drivers/staging/rtl8723bs/os_dep/mlme_linux.c +++ b/drivers/staging/rtl8723bs/os_dep/mlme_linux.c @@ -4,10 +4,6 @@ * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. * ******************************************************************************/ - - -#define _MLME_OSDEP_C_ - #include <drv_types.h> #include <rtw_debug.h> diff --git a/drivers/staging/rtl8723bs/os_dep/os_intfs.c b/drivers/staging/rtl8723bs/os_dep/os_intfs.c index 160f624612c7..648456b992bb 100644 --- a/drivers/staging/rtl8723bs/os_dep/os_intfs.c +++ b/drivers/staging/rtl8723bs/os_dep/os_intfs.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _OS_INTFS_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <hal_data.h> @@ -24,7 +22,7 @@ static int rtw_lbkmode;/* RTL8712_AIR_TRX; */ static int rtw_network_mode = Ndis802_11IBSS;/* Ndis802_11Infrastructure;infra, ad-hoc, auto */ /* struct ndis_802_11_ssid ssid; */ static int rtw_channel = 1;/* ad-hoc support requirement */ -static int rtw_wireless_mode = WIRELESS_MODE_MAX; +static int rtw_wireless_mode = WIRELESS_11BG_24N; static int rtw_vrtl_carrier_sense = AUTO_VCS; static int rtw_vcs_type = RTS_CTS;/* */ static int rtw_rts_thresh = 2347;/* */ @@ -67,10 +65,12 @@ static int rtw_uapsd_acvi_en; static int rtw_uapsd_acvo_en; int rtw_ht_enable = 1; -/* 0: 20 MHz, 1: 40 MHz, 2: 80 MHz, 3: 160MHz, 4: 80+80MHz */ -/* 2.4G use bit 0 ~ 3, 5G use bit 4 ~ 7 */ -/* 0x21 means enable 2.4G 40MHz & 5G 80MHz */ -static int rtw_bw_mode = 0x21; +/* + * 0: 20 MHz, 1: 40 MHz + * 2.4G use bit 0 ~ 3 + * 0x01 means enable 2.4G 40MHz + */ +static int rtw_bw_mode = 0x01; static int rtw_ampdu_enable = 1;/* for enable tx_ampdu ,0: disable, 0x1:enable (but wifi_spec should be 0), 0x2: force enable (don't care wifi_spec) */ static int rtw_rx_stbc = 1;/* 0: disable, 1:enable 2.4g */ static int rtw_ampdu_amsdu;/* 0: disabled, 1:enabled, 2:auto . There is an IOT issu with DLINK DIR-629 when the flag turn on */ @@ -289,7 +289,6 @@ static void loadparam(struct adapter *padapter, struct net_device *pnetdev) registry_par->RegPowerBase = 14; registry_par->TxBBSwing_2G = 0xFF; - registry_par->TxBBSwing_5G = 0xFF; registry_par->bEn_RFE = 1; registry_par->RFE_Type = 64; @@ -1152,14 +1151,13 @@ static void rtw_suspend_normal(struct adapter *padapter) padapter->intf_deinit(adapter_to_dvobj(padapter)); } -int rtw_suspend_common(struct adapter *padapter) +void rtw_suspend_common(struct adapter *padapter) { struct dvobj_priv *psdpriv = padapter->dvobj; struct debug_priv *pdbgpriv = &psdpriv->drv_dbg; struct pwrctrl_priv *pwrpriv = dvobj_to_pwrctl(psdpriv); struct mlme_priv *pmlmepriv = &padapter->mlmepriv; - int ret = 0; unsigned long start_time = jiffies; netdev_dbg(padapter->pnetdev, " suspend start\n"); @@ -1190,19 +1188,14 @@ int rtw_suspend_common(struct adapter *padapter) rtw_ps_deny_cancel(padapter, PS_DENY_SUSPEND); - if (check_fwstate(pmlmepriv, WIFI_STATION_STATE)) - rtw_suspend_normal(padapter); - else if (check_fwstate(pmlmepriv, WIFI_AP_STATE)) - rtw_suspend_normal(padapter); - else - rtw_suspend_normal(padapter); + rtw_suspend_normal(padapter); netdev_dbg(padapter->pnetdev, "rtw suspend success in %d ms\n", jiffies_to_msecs(jiffies - start_time)); exit: - return ret; + return; } static int rtw_resume_process_normal(struct adapter *padapter) @@ -1269,17 +1262,10 @@ int rtw_resume_common(struct adapter *padapter) int ret = 0; unsigned long start_time = jiffies; struct pwrctrl_priv *pwrpriv = adapter_to_pwrctl(padapter); - struct mlme_priv *pmlmepriv = &padapter->mlmepriv; netdev_dbg(padapter->pnetdev, "resume start\n"); - if (check_fwstate(pmlmepriv, WIFI_STATION_STATE)) { - rtw_resume_process_normal(padapter); - } else if (check_fwstate(pmlmepriv, WIFI_AP_STATE)) { - rtw_resume_process_normal(padapter); - } else { - rtw_resume_process_normal(padapter); - } + rtw_resume_process_normal(padapter); hal_btcoex_SuspendNotify(padapter, 0); diff --git a/drivers/staging/rtl8723bs/os_dep/osdep_service.c b/drivers/staging/rtl8723bs/os_dep/osdep_service.c index 9c6b1666df13..c58555a4012f 100644 --- a/drivers/staging/rtl8723bs/os_dep/osdep_service.c +++ b/drivers/staging/rtl8723bs/os_dep/osdep_service.c @@ -4,10 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * ******************************************************************************/ - - -#define _OSDEP_SERVICE_C_ - #include <drv_types.h> #include <rtw_debug.h> diff --git a/drivers/staging/rtl8723bs/os_dep/recv_linux.c b/drivers/staging/rtl8723bs/os_dep/recv_linux.c index cd51430d4618..88a69c7ca8f2 100644 --- a/drivers/staging/rtl8723bs/os_dep/recv_linux.c +++ b/drivers/staging/rtl8723bs/os_dep/recv_linux.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _RECV_OSDEP_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <linux/jiffies.h> diff --git a/drivers/staging/rtl8723bs/os_dep/sdio_intf.c b/drivers/staging/rtl8723bs/os_dep/sdio_intf.c index d2bf444117b8..490431484524 100644 --- a/drivers/staging/rtl8723bs/os_dep/sdio_intf.c +++ b/drivers/staging/rtl8723bs/os_dep/sdio_intf.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _HCI_INTF_C_ - #include <drv_types.h> #include <rtw_debug.h> #include <hal_btcoex.h> @@ -449,7 +447,9 @@ static int rtw_sdio_suspend(struct device *dev) return 0; } - return rtw_suspend_common(padapter); + rtw_suspend_common(padapter); + + return 0; } static int rtw_resume_process(struct adapter *padapter) diff --git a/drivers/staging/rtl8723bs/os_dep/sdio_ops_linux.c b/drivers/staging/rtl8723bs/os_dep/sdio_ops_linux.c index 5cedf775b6ef..bed930760656 100644 --- a/drivers/staging/rtl8723bs/os_dep/sdio_ops_linux.c +++ b/drivers/staging/rtl8723bs/os_dep/sdio_ops_linux.c @@ -26,34 +26,6 @@ inline void rtw_sdio_set_irq_thd(struct dvobj_priv *dvobj, void *thd_hdl) sdio_data->sys_sdio_irq_thd = thd_hdl; } -u8 sd_f0_read8(struct intf_hdl *pintfhdl, u32 addr, s32 *err) -{ - struct adapter *padapter; - struct dvobj_priv *psdiodev; - struct sdio_data *psdio; - - u8 v = 0; - struct sdio_func *func; - bool claim_needed; - - padapter = pintfhdl->padapter; - psdiodev = pintfhdl->pintf_dev; - psdio = &psdiodev->intf_data; - - if (padapter->bSurpriseRemoved) - return v; - - func = psdio->func; - claim_needed = rtw_sdio_claim_host_needed(func); - - if (claim_needed) - sdio_claim_host(func); - v = sdio_f0_readb(func, addr, err); - if (claim_needed) - sdio_release_host(func); - return v; -} - /* * Return: *0 Success diff --git a/drivers/staging/rtl8723bs/os_dep/wifi_regd.c b/drivers/staging/rtl8723bs/os_dep/wifi_regd.c index 0084589499b9..5eef1d68c6f0 100644 --- a/drivers/staging/rtl8723bs/os_dep/wifi_regd.c +++ b/drivers/staging/rtl8723bs/os_dep/wifi_regd.c @@ -44,10 +44,6 @@ static const struct ieee80211_regdomain rtw_regdom_rd = { static int rtw_ieee80211_channel_to_frequency(int chan, int band) { - /* see 802.11 17.3.8.3.2 and Annex J - * there are overlapping channel numbers in 5GHz and 2GHz bands - */ - /* NL80211_BAND_2GHZ */ if (chan == 14) return 2484; diff --git a/drivers/staging/rtl8723bs/os_dep/xmit_linux.c b/drivers/staging/rtl8723bs/os_dep/xmit_linux.c index 639408eaf4df..530e7a6c67c5 100644 --- a/drivers/staging/rtl8723bs/os_dep/xmit_linux.c +++ b/drivers/staging/rtl8723bs/os_dep/xmit_linux.c @@ -4,8 +4,6 @@ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved. * ******************************************************************************/ -#define _XMIT_OSDEP_C_ - #include <drv_types.h> #include <rtw_debug.h> @@ -139,13 +137,11 @@ static int rtw_mlcst2unicst(struct adapter *padapter, struct sk_buff *skb) spin_lock_bh(&pstapriv->asoc_list_lock); phead = &pstapriv->asoc_list; - plist = get_next(phead); - /* free sta asoc_queue */ - while (phead != plist) { + list_for_each(plist, phead) { int stainfo_offset; - psta = container_of(plist, struct sta_info, asoc_list); - plist = get_next(plist); + + psta = list_entry(plist, struct sta_info, asoc_list); stainfo_offset = rtw_stainfo_offset(pstapriv, psta); if (stainfo_offset_valid(stainfo_offset)) { |