diff options
Diffstat (limited to 'drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c')
| -rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c | 227 | 
1 files changed, 104 insertions, 123 deletions
diff --git a/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c b/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c index 1ca4e25c143..1cdf5a271c9 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c +++ b/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c @@ -43,8 +43,8 @@  #define GET_UNDECORATED_AVERAGE_RSSI(_priv)	\  	((RTLPRIV(_priv))->mac80211.opmode == \  			     NL80211_IFTYPE_ADHOC) ?	\ -	((RTLPRIV(_priv))->dm.entry_min_undecoratedsmoothed_pwdb) : \ -	((RTLPRIV(_priv))->dm.undecorated_smoothed_pwdb) +	((RTLPRIV(_priv))->dm.entry_min_undec_sm_pwdb) : \ +	((RTLPRIV(_priv))->dm.undec_sm_pwdb)  static const u32 ofdmswing_table[OFDM_TABLE_SIZE] = {  	0x7f8001fe, @@ -167,18 +167,18 @@ static void rtl92c_dm_diginit(struct ieee80211_hw *hw)  	dm_digtable->dig_ext_port_stage = DIG_EXT_PORT_STAGE_MAX;  	dm_digtable->cur_igvalue = 0x20;  	dm_digtable->pre_igvalue = 0x0; -	dm_digtable->cursta_connectstate = DIG_STA_DISCONNECT; -	dm_digtable->presta_connectstate = DIG_STA_DISCONNECT; -	dm_digtable->curmultista_connectstate = DIG_MULTISTA_DISCONNECT; +	dm_digtable->cursta_cstate = DIG_STA_DISCONNECT; +	dm_digtable->presta_cstate = DIG_STA_DISCONNECT; +	dm_digtable->curmultista_cstate = DIG_MULTISTA_DISCONNECT;  	dm_digtable->rssi_lowthresh = DM_DIG_THRESH_LOW;  	dm_digtable->rssi_highthresh = DM_DIG_THRESH_HIGH;  	dm_digtable->fa_lowthresh = DM_FALSEALARM_THRESH_LOW;  	dm_digtable->fa_highthresh = DM_FALSEALARM_THRESH_HIGH;  	dm_digtable->rx_gain_range_max = DM_DIG_MAX;  	dm_digtable->rx_gain_range_min = DM_DIG_MIN; -	dm_digtable->backoff_val = DM_DIG_BACKOFF_DEFAULT; -	dm_digtable->backoff_val_range_max = DM_DIG_BACKOFF_MAX; -	dm_digtable->backoff_val_range_min = DM_DIG_BACKOFF_MIN; +	dm_digtable->back_val = DM_DIG_BACKOFF_DEFAULT; +	dm_digtable->back_range_max = DM_DIG_BACKOFF_MAX; +	dm_digtable->back_range_min = DM_DIG_BACKOFF_MIN;  	dm_digtable->pre_cck_pd_state = CCK_PD_STAGE_MAX;  	dm_digtable->cur_cck_pd_state = CCK_PD_STAGE_MAX;  } @@ -189,22 +189,21 @@ static u8 rtl92c_dm_initial_gain_min_pwdb(struct ieee80211_hw *hw)  	struct dig_t *dm_digtable = &rtlpriv->dm_digtable;  	long rssi_val_min = 0; -	if ((dm_digtable->curmultista_connectstate == DIG_MULTISTA_CONNECT) && -	    (dm_digtable->cursta_connectstate == DIG_STA_CONNECT)) { -		if (rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb != 0) +	if ((dm_digtable->curmultista_cstate == DIG_MULTISTA_CONNECT) && +	    (dm_digtable->cursta_cstate == DIG_STA_CONNECT)) { +		if (rtlpriv->dm.entry_min_undec_sm_pwdb != 0)  			rssi_val_min = -			    (rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb > -			     rtlpriv->dm.undecorated_smoothed_pwdb) ? -			    rtlpriv->dm.undecorated_smoothed_pwdb : -			    rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; +			    (rtlpriv->dm.entry_min_undec_sm_pwdb > +			     rtlpriv->dm.undec_sm_pwdb) ? +			    rtlpriv->dm.undec_sm_pwdb : +			    rtlpriv->dm.entry_min_undec_sm_pwdb;  		else -			rssi_val_min = rtlpriv->dm.undecorated_smoothed_pwdb; -	} else if (dm_digtable->cursta_connectstate == DIG_STA_CONNECT || -		   dm_digtable->cursta_connectstate == DIG_STA_BEFORE_CONNECT) { -		rssi_val_min = rtlpriv->dm.undecorated_smoothed_pwdb; -	} else if (dm_digtable->curmultista_connectstate == -		   DIG_MULTISTA_CONNECT) { -		rssi_val_min = rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; +			rssi_val_min = rtlpriv->dm.undec_sm_pwdb; +	} else if (dm_digtable->cursta_cstate == DIG_STA_CONNECT || +		   dm_digtable->cursta_cstate == DIG_STA_BEFORE_CONNECT) { +		rssi_val_min = rtlpriv->dm.undec_sm_pwdb; +	} else if (dm_digtable->curmultista_cstate == DIG_MULTISTA_CONNECT) { +		rssi_val_min = rtlpriv->dm.entry_min_undec_sm_pwdb;  	}  	return (u8) rssi_val_min; @@ -286,37 +285,33 @@ static void rtl92c_dm_ctrl_initgain_by_fa(struct ieee80211_hw *hw)  static void rtl92c_dm_ctrl_initgain_by_rssi(struct ieee80211_hw *hw)  {  	struct rtl_priv *rtlpriv = rtl_priv(hw); -	struct dig_t *dm_digtable = &rtlpriv->dm_digtable; +	struct dig_t *digtable = &rtlpriv->dm_digtable; -	if (rtlpriv->falsealm_cnt.cnt_all > dm_digtable->fa_highthresh) { -		if ((dm_digtable->backoff_val - 2) < -		    dm_digtable->backoff_val_range_min) -			dm_digtable->backoff_val = -			    dm_digtable->backoff_val_range_min; +	if (rtlpriv->falsealm_cnt.cnt_all > digtable->fa_highthresh) { +		if ((digtable->back_val - 2) < digtable->back_range_min) +			digtable->back_val = digtable->back_range_min;  		else -			dm_digtable->backoff_val -= 2; -	} else if (rtlpriv->falsealm_cnt.cnt_all < dm_digtable->fa_lowthresh) { -		if ((dm_digtable->backoff_val + 2) > -		    dm_digtable->backoff_val_range_max) -			dm_digtable->backoff_val = -			    dm_digtable->backoff_val_range_max; +			digtable->back_val -= 2; +	} else if (rtlpriv->falsealm_cnt.cnt_all < digtable->fa_lowthresh) { +		if ((digtable->back_val + 2) > digtable->back_range_max) +			digtable->back_val = digtable->back_range_max;  		else -			dm_digtable->backoff_val += 2; +			digtable->back_val += 2;  	} -	if ((dm_digtable->rssi_val_min + 10 - dm_digtable->backoff_val) > -	    dm_digtable->rx_gain_range_max) -		dm_digtable->cur_igvalue = dm_digtable->rx_gain_range_max; -	else if ((dm_digtable->rssi_val_min + 10 - -		  dm_digtable->backoff_val) < dm_digtable->rx_gain_range_min) -		dm_digtable->cur_igvalue = dm_digtable->rx_gain_range_min; +	if ((digtable->rssi_val_min + 10 - digtable->back_val) > +	    digtable->rx_gain_range_max) +		digtable->cur_igvalue = digtable->rx_gain_range_max; +	else if ((digtable->rssi_val_min + 10 - +		  digtable->back_val) < digtable->rx_gain_range_min) +		digtable->cur_igvalue = digtable->rx_gain_range_min;  	else -		dm_digtable->cur_igvalue = dm_digtable->rssi_val_min + 10 - -		    dm_digtable->backoff_val; +		digtable->cur_igvalue = digtable->rssi_val_min + 10 - +		    digtable->back_val;  	RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, -		 "rssi_val_min = %x backoff_val %x\n", -		 dm_digtable->rssi_val_min, dm_digtable->backoff_val); +		 "rssi_val_min = %x back_val %x\n", +		 digtable->rssi_val_min, digtable->back_val);  	rtl92c_dm_write_dig(hw);  } @@ -327,14 +322,14 @@ static void rtl92c_dm_initial_gain_multi_sta(struct ieee80211_hw *hw)  	struct rtl_priv *rtlpriv = rtl_priv(hw);  	struct dig_t *dm_digtable = &rtlpriv->dm_digtable;  	struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); -	long rssi_strength = rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; +	long rssi_strength = rtlpriv->dm.entry_min_undec_sm_pwdb;  	bool multi_sta = false;  	if (mac->opmode == NL80211_IFTYPE_ADHOC)  		multi_sta = true;  	if (!multi_sta || -	    dm_digtable->cursta_connectstate != DIG_STA_DISCONNECT) { +	    dm_digtable->cursta_cstate != DIG_STA_DISCONNECT) {  		initialized = false;  		dm_digtable->dig_ext_port_stage = DIG_EXT_PORT_STAGE_MAX;  		return; @@ -345,7 +340,7 @@ static void rtl92c_dm_initial_gain_multi_sta(struct ieee80211_hw *hw)  		rtl92c_dm_write_dig(hw);  	} -	if (dm_digtable->curmultista_connectstate == DIG_MULTISTA_CONNECT) { +	if (dm_digtable->curmultista_cstate == DIG_MULTISTA_CONNECT) {  		if ((rssi_strength < dm_digtable->rssi_lowthresh) &&  		    (dm_digtable->dig_ext_port_stage != DIG_EXT_PORT_STAGE_1)) { @@ -367,8 +362,8 @@ static void rtl92c_dm_initial_gain_multi_sta(struct ieee80211_hw *hw)  	}  	RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, -		 "curmultista_connectstate = %x dig_ext_port_stage %x\n", -		 dm_digtable->curmultista_connectstate, +		 "curmultista_cstate = %x dig_ext_port_stage %x\n", +		 dm_digtable->curmultista_cstate,  		 dm_digtable->dig_ext_port_stage);  } @@ -378,15 +373,14 @@ static void rtl92c_dm_initial_gain_sta(struct ieee80211_hw *hw)  	struct dig_t *dm_digtable = &rtlpriv->dm_digtable;  	RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, -		 "presta_connectstate = %x, cursta_connectstate = %x\n", -		 dm_digtable->presta_connectstate, -		 dm_digtable->cursta_connectstate); +		 "presta_cstate = %x, cursta_cstate = %x\n", +		 dm_digtable->presta_cstate, dm_digtable->cursta_cstate); -	if (dm_digtable->presta_connectstate == dm_digtable->cursta_connectstate -	    || dm_digtable->cursta_connectstate == DIG_STA_BEFORE_CONNECT -	    || dm_digtable->cursta_connectstate == DIG_STA_CONNECT) { +	if (dm_digtable->presta_cstate == dm_digtable->cursta_cstate || +	    dm_digtable->cursta_cstate == DIG_STA_BEFORE_CONNECT || +	    dm_digtable->cursta_cstate == DIG_STA_CONNECT) { -		if (dm_digtable->cursta_connectstate != DIG_STA_DISCONNECT) { +		if (dm_digtable->cursta_cstate != DIG_STA_DISCONNECT) {  			dm_digtable->rssi_val_min =  			    rtl92c_dm_initial_gain_min_pwdb(hw);  			rtl92c_dm_ctrl_initgain_by_rssi(hw); @@ -394,7 +388,7 @@ static void rtl92c_dm_initial_gain_sta(struct ieee80211_hw *hw)  	} else {  		dm_digtable->rssi_val_min = 0;  		dm_digtable->dig_ext_port_stage = DIG_EXT_PORT_STAGE_MAX; -		dm_digtable->backoff_val = DM_DIG_BACKOFF_DEFAULT; +		dm_digtable->back_val = DM_DIG_BACKOFF_DEFAULT;  		dm_digtable->cur_igvalue = 0x20;  		dm_digtable->pre_igvalue = 0;  		rtl92c_dm_write_dig(hw); @@ -407,7 +401,7 @@ static void rtl92c_dm_cck_packet_detection_thresh(struct ieee80211_hw *hw)  	struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw));  	struct dig_t *dm_digtable = &rtlpriv->dm_digtable; -	if (dm_digtable->cursta_connectstate == DIG_STA_CONNECT) { +	if (dm_digtable->cursta_cstate == DIG_STA_CONNECT) {  		dm_digtable->rssi_val_min = rtl92c_dm_initial_gain_min_pwdb(hw);  		if (dm_digtable->pre_cck_pd_state == CCK_PD_STAGE_LowRssi) { @@ -484,15 +478,15 @@ static void rtl92c_dm_ctrl_initgain_by_twoport(struct ieee80211_hw *hw)  		return;  	if (mac->link_state >= MAC80211_LINKED) -		dm_digtable->cursta_connectstate = DIG_STA_CONNECT; +		dm_digtable->cursta_cstate = DIG_STA_CONNECT;  	else -		dm_digtable->cursta_connectstate = DIG_STA_DISCONNECT; +		dm_digtable->cursta_cstate = DIG_STA_DISCONNECT;  	rtl92c_dm_initial_gain_sta(hw);  	rtl92c_dm_initial_gain_multi_sta(hw);  	rtl92c_dm_cck_packet_detection_thresh(hw); -	dm_digtable->presta_connectstate = dm_digtable->cursta_connectstate; +	dm_digtable->presta_cstate = dm_digtable->cursta_cstate;  } @@ -526,9 +520,9 @@ void rtl92c_dm_write_dig(struct ieee80211_hw *hw)  	struct dig_t *dm_digtable = &rtlpriv->dm_digtable;  	RT_TRACE(rtlpriv, COMP_DIG, DBG_LOUD, -		 "cur_igvalue = 0x%x, pre_igvalue = 0x%x, backoff_val = %d\n", +		 "cur_igvalue = 0x%x, pre_igvalue = 0x%x, back_val = %d\n",  		 dm_digtable->cur_igvalue, dm_digtable->pre_igvalue, -		 dm_digtable->backoff_val); +		 dm_digtable->back_val);  	dm_digtable->cur_igvalue += 2;  	if (dm_digtable->cur_igvalue > 0x3f) @@ -555,20 +549,18 @@ static void rtl92c_dm_pwdb_monitor(struct ieee80211_hw *hw)  	return;  	if (tmpentry_max_pwdb != 0) { -		rtlpriv->dm.entry_max_undecoratedsmoothed_pwdb = -		    tmpentry_max_pwdb; +		rtlpriv->dm.entry_max_undec_sm_pwdb = tmpentry_max_pwdb;  	} else { -		rtlpriv->dm.entry_max_undecoratedsmoothed_pwdb = 0; +		rtlpriv->dm.entry_max_undec_sm_pwdb = 0;  	}  	if (tmpentry_min_pwdb != 0xff) { -		rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb = -		    tmpentry_min_pwdb; +		rtlpriv->dm.entry_min_undec_sm_pwdb = tmpentry_min_pwdb;  	} else { -		rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb = 0; +		rtlpriv->dm.entry_min_undec_sm_pwdb = 0;  	} -	h2c_parameter[2] = (u8) (rtlpriv->dm.undecorated_smoothed_pwdb & 0xFF); +	h2c_parameter[2] = (u8) (rtlpriv->dm.undec_sm_pwdb & 0xFF);  	h2c_parameter[0] = 0;  	rtl92c_fill_h2c_cmd(hw, H2C_RSSI_REPORT, 3, h2c_parameter); @@ -1160,7 +1152,7 @@ static void rtl92c_dm_refresh_rate_adaptive_mask(struct ieee80211_hw *hw)  	struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw));  	struct rtl_mac *mac = rtl_mac(rtl_priv(hw));  	struct rate_adaptive *p_ra = &(rtlpriv->ra); -	u32 low_rssithresh_for_ra, high_rssithresh_for_ra; +	u32 low_rssi_thresh, high_rssi_thresh;  	struct ieee80211_sta *sta = NULL;  	if (is_hal_stop(rtlhal)) { @@ -1179,35 +1171,33 @@ static void rtl92c_dm_refresh_rate_adaptive_mask(struct ieee80211_hw *hw)  	    mac->opmode == NL80211_IFTYPE_STATION) {  		switch (p_ra->pre_ratr_state) {  		case DM_RATR_STA_HIGH: -			high_rssithresh_for_ra = 50; -			low_rssithresh_for_ra = 20; +			high_rssi_thresh = 50; +			low_rssi_thresh = 20;  			break;  		case DM_RATR_STA_MIDDLE: -			high_rssithresh_for_ra = 55; -			low_rssithresh_for_ra = 20; +			high_rssi_thresh = 55; +			low_rssi_thresh = 20;  			break;  		case DM_RATR_STA_LOW: -			high_rssithresh_for_ra = 50; -			low_rssithresh_for_ra = 25; +			high_rssi_thresh = 50; +			low_rssi_thresh = 25;  			break;  		default: -			high_rssithresh_for_ra = 50; -			low_rssithresh_for_ra = 20; +			high_rssi_thresh = 50; +			low_rssi_thresh = 20;  			break;  		} -		if (rtlpriv->dm.undecorated_smoothed_pwdb > -		    (long)high_rssithresh_for_ra) +		if (rtlpriv->dm.undec_sm_pwdb > (long)high_rssi_thresh)  			p_ra->ratr_state = DM_RATR_STA_HIGH; -		else if (rtlpriv->dm.undecorated_smoothed_pwdb > -			 (long)low_rssithresh_for_ra) +		else if (rtlpriv->dm.undec_sm_pwdb > (long)low_rssi_thresh)  			p_ra->ratr_state = DM_RATR_STA_MIDDLE;  		else  			p_ra->ratr_state = DM_RATR_STA_LOW;  		if (p_ra->pre_ratr_state != p_ra->ratr_state) {  			RT_TRACE(rtlpriv, COMP_RATE, DBG_LOUD, "RSSI = %ld\n", -				 rtlpriv->dm.undecorated_smoothed_pwdb); +				 rtlpriv->dm.undec_sm_pwdb);  			RT_TRACE(rtlpriv, COMP_RATE, DBG_LOUD,  				 "RSSI_LEVEL = %d\n", p_ra->ratr_state);  			RT_TRACE(rtlpriv, COMP_RATE, DBG_LOUD, @@ -1315,7 +1305,7 @@ static void rtl92c_dm_dynamic_bb_powersaving(struct ieee80211_hw *hw)  	struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw));  	if (((mac->link_state == MAC80211_NOLINK)) && -	    (rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb == 0)) { +	    (rtlpriv->dm.entry_min_undec_sm_pwdb == 0)) {  		dm_pstable->rssi_val_min = 0;  		RT_TRACE(rtlpriv, DBG_LOUD, DBG_LOUD, "Not connected to any\n");  	} @@ -1323,20 +1313,19 @@ static void rtl92c_dm_dynamic_bb_powersaving(struct ieee80211_hw *hw)  	if (mac->link_state == MAC80211_LINKED) {  		if (mac->opmode == NL80211_IFTYPE_ADHOC) {  			dm_pstable->rssi_val_min = -			    rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; +			    rtlpriv->dm.entry_min_undec_sm_pwdb;  			RT_TRACE(rtlpriv, DBG_LOUD, DBG_LOUD,  				 "AP Client PWDB = 0x%lx\n",  				 dm_pstable->rssi_val_min);  		} else { -			dm_pstable->rssi_val_min = -			    rtlpriv->dm.undecorated_smoothed_pwdb; +			dm_pstable->rssi_val_min = rtlpriv->dm.undec_sm_pwdb;  			RT_TRACE(rtlpriv, DBG_LOUD, DBG_LOUD,  				 "STA Default Port PWDB = 0x%lx\n",  				 dm_pstable->rssi_val_min);  		}  	} else {  		dm_pstable->rssi_val_min = -		    rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; +		    rtlpriv->dm.entry_min_undec_sm_pwdb;  		RT_TRACE(rtlpriv, DBG_LOUD, DBG_LOUD,  			 "AP Ext Port PWDB = 0x%lx\n", @@ -1368,7 +1357,7 @@ void rtl92c_dm_dynamic_txpower(struct ieee80211_hw *hw)  	struct rtl_priv *rtlpriv = rtl_priv(hw);  	struct rtl_phy *rtlphy = &(rtlpriv->phy);  	struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); -	long undecorated_smoothed_pwdb; +	long undec_sm_pwdb;  	if (!rtlpriv->dm.dynamic_txpower_enable)  		return; @@ -1379,7 +1368,7 @@ void rtl92c_dm_dynamic_txpower(struct ieee80211_hw *hw)  	}  	if ((mac->link_state < MAC80211_LINKED) && -	    (rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb == 0)) { +	    (rtlpriv->dm.entry_min_undec_sm_pwdb == 0)) {  		RT_TRACE(rtlpriv, COMP_POWER, DBG_TRACE,  			 "Not connected to any\n"); @@ -1391,41 +1380,35 @@ void rtl92c_dm_dynamic_txpower(struct ieee80211_hw *hw)  	if (mac->link_state >= MAC80211_LINKED) {  		if (mac->opmode == NL80211_IFTYPE_ADHOC) { -			undecorated_smoothed_pwdb = -			    rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; +			undec_sm_pwdb = rtlpriv->dm.entry_min_undec_sm_pwdb;  			RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD,  				 "AP Client PWDB = 0x%lx\n", -				 undecorated_smoothed_pwdb); +				 undec_sm_pwdb);  		} else { -			undecorated_smoothed_pwdb = -			    rtlpriv->dm.undecorated_smoothed_pwdb; +			undec_sm_pwdb = rtlpriv->dm.undec_sm_pwdb;  			RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD,  				 "STA Default Port PWDB = 0x%lx\n", -				 undecorated_smoothed_pwdb); +				 undec_sm_pwdb);  		}  	} else { -		undecorated_smoothed_pwdb = -		    rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; +		undec_sm_pwdb = rtlpriv->dm.entry_min_undec_sm_pwdb;  		RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD,  			 "AP Ext Port PWDB = 0x%lx\n", -			 undecorated_smoothed_pwdb); +			 undec_sm_pwdb);  	} -	if (undecorated_smoothed_pwdb >= TX_POWER_NEAR_FIELD_THRESH_LVL2) { +	if (undec_sm_pwdb >= TX_POWER_NEAR_FIELD_THRESH_LVL2) {  		rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_LEVEL1;  		RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD,  			 "TXHIGHPWRLEVEL_LEVEL1 (TxPwr=0x0)\n"); -	} else if ((undecorated_smoothed_pwdb < -		    (TX_POWER_NEAR_FIELD_THRESH_LVL2 - 3)) && -		   (undecorated_smoothed_pwdb >= -		    TX_POWER_NEAR_FIELD_THRESH_LVL1)) { +	} else if ((undec_sm_pwdb < (TX_POWER_NEAR_FIELD_THRESH_LVL2 - 3)) && +		   (undec_sm_pwdb >= TX_POWER_NEAR_FIELD_THRESH_LVL1)) {  		rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_LEVEL1;  		RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD,  			 "TXHIGHPWRLEVEL_LEVEL1 (TxPwr=0x10)\n"); -	} else if (undecorated_smoothed_pwdb < -		   (TX_POWER_NEAR_FIELD_THRESH_LVL1 - 5)) { +	} else if (undec_sm_pwdb < (TX_POWER_NEAR_FIELD_THRESH_LVL1 - 5)) {  		rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_NORMAL;  		RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD,  			 "TXHIGHPWRLEVEL_NORMAL\n"); @@ -1473,48 +1456,46 @@ u8 rtl92c_bt_rssi_state_change(struct ieee80211_hw *hw)  {  	struct rtl_priv *rtlpriv = rtl_priv(hw);  	struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); -	long undecorated_smoothed_pwdb; +	long undec_sm_pwdb;  	u8 curr_bt_rssi_state = 0x00;  	if (rtlpriv->mac80211.link_state == MAC80211_LINKED) { -		undecorated_smoothed_pwdb = -				 GET_UNDECORATED_AVERAGE_RSSI(rtlpriv); +		undec_sm_pwdb = GET_UNDECORATED_AVERAGE_RSSI(rtlpriv);  	} else { -		if (rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb == 0) -			undecorated_smoothed_pwdb = 100; +		if (rtlpriv->dm.entry_min_undec_sm_pwdb == 0) +			undec_sm_pwdb = 100;  		else -			undecorated_smoothed_pwdb = -				rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; +			undec_sm_pwdb = rtlpriv->dm.entry_min_undec_sm_pwdb;  	}  	/* Check RSSI to determine HighPower/NormalPower state for  	 * BT coexistence. */ -	if (undecorated_smoothed_pwdb >= 67) +	if (undec_sm_pwdb >= 67)  		curr_bt_rssi_state &= (~BT_RSSI_STATE_NORMAL_POWER); -	else if (undecorated_smoothed_pwdb < 62) +	else if (undec_sm_pwdb < 62)  		curr_bt_rssi_state |= BT_RSSI_STATE_NORMAL_POWER;  	/* Check RSSI to determine AMPDU setting for BT coexistence. */ -	if (undecorated_smoothed_pwdb >= 40) +	if (undec_sm_pwdb >= 40)  		curr_bt_rssi_state &= (~BT_RSSI_STATE_AMDPU_OFF); -	else if (undecorated_smoothed_pwdb <= 32) +	else if (undec_sm_pwdb <= 32)  		curr_bt_rssi_state |= BT_RSSI_STATE_AMDPU_OFF;  	/* Marked RSSI state. It will be used to determine BT coexistence  	 * setting later. */ -	if (undecorated_smoothed_pwdb < 35) +	if (undec_sm_pwdb < 35)  		curr_bt_rssi_state |=  BT_RSSI_STATE_SPECIAL_LOW;  	else  		curr_bt_rssi_state &= (~BT_RSSI_STATE_SPECIAL_LOW);  	/* Set Tx Power according to BT status. */ -	if (undecorated_smoothed_pwdb >= 30) +	if (undec_sm_pwdb >= 30)  		curr_bt_rssi_state |=  BT_RSSI_STATE_TXPOWER_LOW; -	else if (undecorated_smoothed_pwdb < 25) +	else if (undec_sm_pwdb < 25)  		curr_bt_rssi_state &= (~BT_RSSI_STATE_TXPOWER_LOW);  	/* Check BT state related to BT_Idle in B/G mode. */ -	if (undecorated_smoothed_pwdb < 15) +	if (undec_sm_pwdb < 15)  		curr_bt_rssi_state |=  BT_RSSI_STATE_BG_EDCA_LOW;  	else  		curr_bt_rssi_state &= (~BT_RSSI_STATE_BG_EDCA_LOW);  |