mirror of https://gitee.com/openkylin/linux.git
staging: rtl8723bs: Fix camel-case names in phy_get_tx_pwr_lmt().
Change camel-case names to snake-case names; to avoid variable name conflicts, rename table index variables to idx_*. Signed-off-by: Quytelda Kahja <quytelda@tamalin.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
cc2231a3bb
commit
717209ec61
|
@ -1612,211 +1612,221 @@ static s8 phy_GetChannelIndexOfTxPowerLimit(u8 Band, u8 Channel)
|
|||
return channelIndex;
|
||||
}
|
||||
|
||||
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)
|
||||
s8 phy_get_tx_pwr_lmt(struct adapter *adapter, u32 reg_pwr_tbl_sel,
|
||||
enum BAND_TYPE band_type, enum CHANNEL_WIDTH bandwidth,
|
||||
u8 rf_path, u8 data_rate, u8 channel)
|
||||
{
|
||||
s16 band = -1;
|
||||
s16 regulation = -1;
|
||||
s16 bandwidth = -1;
|
||||
s16 rateSection = -1;
|
||||
s16 channel = -1;
|
||||
s8 powerLimit = MAX_POWER_INDEX;
|
||||
struct hal_com_data *pHalData = GET_HAL_DATA(Adapter);
|
||||
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);
|
||||
|
||||
if (((Adapter->registrypriv.RegEnableTxPowerLimit == 2) &&
|
||||
(pHalData->EEPROMRegulatory != 1)) ||
|
||||
(Adapter->registrypriv.RegEnableTxPowerLimit == 0))
|
||||
if (((adapter->registrypriv.RegEnableTxPowerLimit == 2) &&
|
||||
(hal_data->EEPROMRegulatory != 1)) ||
|
||||
(adapter->registrypriv.RegEnableTxPowerLimit == 0))
|
||||
return MAX_POWER_INDEX;
|
||||
|
||||
switch (Adapter->registrypriv.RegPwrTblSel) {
|
||||
switch (adapter->registrypriv.RegPwrTblSel) {
|
||||
case 1:
|
||||
regulation = TXPWR_LMT_ETSI;
|
||||
idx_regulation = TXPWR_LMT_ETSI;
|
||||
break;
|
||||
case 2:
|
||||
regulation = TXPWR_LMT_MKK;
|
||||
idx_regulation = TXPWR_LMT_MKK;
|
||||
break;
|
||||
case 3:
|
||||
regulation = TXPWR_LMT_FCC;
|
||||
idx_regulation = TXPWR_LMT_FCC;
|
||||
break;
|
||||
case 4:
|
||||
regulation = TXPWR_LMT_WW;
|
||||
idx_regulation = TXPWR_LMT_WW;
|
||||
break;
|
||||
default:
|
||||
regulation = (Band == BAND_ON_2_4G) ?
|
||||
pHalData->Regulation2_4G :
|
||||
pHalData->Regulation5G;
|
||||
idx_regulation = (band_type == BAND_ON_2_4G) ?
|
||||
hal_data->Regulation2_4G :
|
||||
hal_data->Regulation5G;
|
||||
break;
|
||||
}
|
||||
|
||||
/* DBG_871X("pMgntInfo->RegPwrTblSel %d, final regulation %d\n", */
|
||||
/* Adapter->registrypriv.RegPwrTblSel, regulation); */
|
||||
/* adapter->registrypriv.RegPwrTblSel, idx_regulation); */
|
||||
|
||||
if (Band == BAND_ON_2_4G)
|
||||
band = 0;
|
||||
else if (Band == BAND_ON_5G)
|
||||
band = 1;
|
||||
if (band_type == BAND_ON_2_4G)
|
||||
idx_band = 0;
|
||||
else if (band_type == BAND_ON_5G)
|
||||
idx_band = 1;
|
||||
|
||||
if (Bandwidth == CHANNEL_WIDTH_20)
|
||||
bandwidth = 0;
|
||||
else if (Bandwidth == CHANNEL_WIDTH_40)
|
||||
bandwidth = 1;
|
||||
else if (Bandwidth == CHANNEL_WIDTH_80)
|
||||
bandwidth = 2;
|
||||
else if (Bandwidth == CHANNEL_WIDTH_160)
|
||||
bandwidth = 3;
|
||||
if (bandwidth == CHANNEL_WIDTH_20)
|
||||
idx_bandwidth = 0;
|
||||
else if (bandwidth == CHANNEL_WIDTH_40)
|
||||
idx_bandwidth = 1;
|
||||
else if (bandwidth == CHANNEL_WIDTH_80)
|
||||
idx_bandwidth = 2;
|
||||
else if (bandwidth == CHANNEL_WIDTH_160)
|
||||
idx_bandwidth = 3;
|
||||
|
||||
switch (DataRate) {
|
||||
switch (data_rate) {
|
||||
case MGN_1M: case MGN_2M: case MGN_5_5M: case MGN_11M:
|
||||
rateSection = 0;
|
||||
idx_rate_sctn = 0;
|
||||
break;
|
||||
|
||||
case MGN_6M: case MGN_9M: case MGN_12M: case MGN_18M:
|
||||
case MGN_24M: case MGN_36M: case MGN_48M: case MGN_54M:
|
||||
rateSection = 1;
|
||||
idx_rate_sctn = 1;
|
||||
break;
|
||||
|
||||
case MGN_MCS0: case MGN_MCS1: case MGN_MCS2: case MGN_MCS3:
|
||||
case MGN_MCS4: case MGN_MCS5: case MGN_MCS6: case MGN_MCS7:
|
||||
rateSection = 2;
|
||||
idx_rate_sctn = 2;
|
||||
break;
|
||||
|
||||
case MGN_MCS8: case MGN_MCS9: case MGN_MCS10: case MGN_MCS11:
|
||||
case MGN_MCS12: case MGN_MCS13: case MGN_MCS14: case MGN_MCS15:
|
||||
rateSection = 3;
|
||||
idx_rate_sctn = 3;
|
||||
break;
|
||||
|
||||
case MGN_MCS16: case MGN_MCS17: case MGN_MCS18: case MGN_MCS19:
|
||||
case MGN_MCS20: case MGN_MCS21: case MGN_MCS22: case MGN_MCS23:
|
||||
rateSection = 4;
|
||||
idx_rate_sctn = 4;
|
||||
break;
|
||||
|
||||
case MGN_MCS24: case MGN_MCS25: case MGN_MCS26: case MGN_MCS27:
|
||||
case MGN_MCS28: case MGN_MCS29: case MGN_MCS30: case MGN_MCS31:
|
||||
rateSection = 5;
|
||||
idx_rate_sctn = 5;
|
||||
break;
|
||||
|
||||
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:
|
||||
rateSection = 6;
|
||||
idx_rate_sctn = 6;
|
||||
break;
|
||||
|
||||
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:
|
||||
rateSection = 7;
|
||||
idx_rate_sctn = 7;
|
||||
break;
|
||||
|
||||
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:
|
||||
rateSection = 8;
|
||||
idx_rate_sctn = 8;
|
||||
break;
|
||||
|
||||
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:
|
||||
rateSection = 9;
|
||||
idx_rate_sctn = 9;
|
||||
break;
|
||||
|
||||
default:
|
||||
DBG_871X("Wrong rate 0x%x\n", DataRate);
|
||||
DBG_871X("Wrong rate 0x%x\n", data_rate);
|
||||
break;
|
||||
}
|
||||
|
||||
if (Band == BAND_ON_5G && rateSection == 0)
|
||||
if (band_type == BAND_ON_5G && idx_rate_sctn == 0)
|
||||
DBG_871X("Wrong rate 0x%x: No CCK in 5G Band\n", DataRate);
|
||||
|
||||
/* workaround for wrong index combination to obtain tx power limit, */
|
||||
/* OFDM only exists in BW 20M */
|
||||
if (rateSection == 1)
|
||||
bandwidth = 0;
|
||||
if (idx_rate_sctn == 1)
|
||||
idx_bandwidth = 0;
|
||||
|
||||
/* workaround for wrong index combination to obtain tx power limit, */
|
||||
/* CCK table will only be given in BW 20M */
|
||||
if (rateSection == 0)
|
||||
bandwidth = 0;
|
||||
if (idx_rate_sctn == 0)
|
||||
idx_bandwidth = 0;
|
||||
|
||||
/* workaround for wrong indxe combination to obtain tx power limit, */
|
||||
/* HT on 80M will reference to HT on 40M */
|
||||
if ((rateSection == 2 || rateSection == 3) &&
|
||||
Band == BAND_ON_5G && bandwidth == 2) {
|
||||
bandwidth = 1;
|
||||
if ((idx_rate_sctn == 2 || idx_rate_sctn == 3) &&
|
||||
band_type == BAND_ON_5G && idx_bandwidth == 2) {
|
||||
idx_bandwidth = 1;
|
||||
}
|
||||
|
||||
if (Band == BAND_ON_2_4G)
|
||||
if (band_type == BAND_ON_2_4G)
|
||||
channel = phy_GetChannelIndexOfTxPowerLimit(BAND_ON_2_4G,
|
||||
Channel);
|
||||
else if (Band == BAND_ON_5G)
|
||||
channel);
|
||||
else if (band_type == BAND_ON_5G)
|
||||
channel = phy_GetChannelIndexOfTxPowerLimit(BAND_ON_5G,
|
||||
Channel);
|
||||
else if (Band == BAND_ON_BOTH) {
|
||||
channel);
|
||||
else if (band_type == BAND_ON_BOTH) {
|
||||
/* BAND_ON_BOTH don't care temporarily */
|
||||
}
|
||||
|
||||
if (band == -1 || regulation == -1 || bandwidth == -1 ||
|
||||
rateSection == -1 || channel == -1) {
|
||||
if (idx_band == -1 || idx_regulation == -1 || idx_bandwidth == -1 ||
|
||||
idx_rate_sctn == -1 || idx_channel == -1) {
|
||||
/* DBG_871X("Wrong index value to access power limit table [band %d][regulation %d][bandwidth %d][rf_path %d][rate_section %d][chnlGroup %d]\n", */
|
||||
/* band, regulation, bandwidth, RfPath, */
|
||||
/* rateSection, channelGroup); */
|
||||
/* idx_band, idx_regulation, idx_bandwidth, rf_path, */
|
||||
/* idx_rate_sctn, channel); */
|
||||
|
||||
return MAX_POWER_INDEX;
|
||||
}
|
||||
|
||||
if (Band == BAND_ON_2_4G) {
|
||||
if (band_type == BAND_ON_2_4G) {
|
||||
s8 limits[10] = {0}; u8 i = 0;
|
||||
for (i = 0; i < MAX_REGULATION_NUM; i++)
|
||||
limits[i] = pHalData->TxPwrLimit_2_4G[i][bandwidth]
|
||||
[rateSection]
|
||||
[channel][RfPath];
|
||||
limits[i] = hal_data->TxPwrLimit_2_4G[i]
|
||||
[idx_bandwidth]
|
||||
[idx_rate_sctn]
|
||||
[idx_channel]
|
||||
[rf_path];
|
||||
|
||||
powerLimit = (regulation == TXPWR_LMT_WW) ?
|
||||
pwr_lmt = (idx_regulation == TXPWR_LMT_WW) ?
|
||||
phy_GetWorldWideLimit(limits) :
|
||||
pHalData->TxPwrLimit_2_4G[regulation][bandwidth]
|
||||
[rateSection][channel][RfPath];
|
||||
hal_data->TxPwrLimit_2_4G[idx_regulation]
|
||||
[idx_bandwidth]
|
||||
[idx_rate_sctn]
|
||||
[idx_channel]
|
||||
[rf_path];
|
||||
|
||||
} else if (Band == BAND_ON_5G) {
|
||||
} else if (band_type == BAND_ON_5G) {
|
||||
s8 limits[10] = {0}; u8 i = 0;
|
||||
for (i = 0; i < MAX_REGULATION_NUM; ++i)
|
||||
limits[i] = pHalData->TxPwrLimit_5G[i][bandwidth]
|
||||
[rateSection]
|
||||
[channel][RfPath];
|
||||
limits[i] = hal_data->TxPwrLimit_5G[i]
|
||||
[idx_bandwidth]
|
||||
[idx_rate_sctn]
|
||||
[idx_channel]
|
||||
[rf_path];
|
||||
|
||||
powerLimit = (regulation == TXPWR_LMT_WW) ?
|
||||
pwr_lmt = (idx_regulation == TXPWR_LMT_WW) ?
|
||||
phy_GetWorldWideLimit(limits) :
|
||||
pHalData->TxPwrLimit_5G[regulation][bandwidth]
|
||||
[rateSection][channel][RfPath];
|
||||
hal_data->TxPwrLimit_5G[idx_regulation]
|
||||
[idx_bandwidth]
|
||||
[idx_rate_sctn]
|
||||
[idx_channel]
|
||||
[rf_path];
|
||||
} else
|
||||
DBG_871X("No power limit table of the specified band\n");
|
||||
|
||||
/* combine 5G VHT & HT rate */
|
||||
/* 5G 20M and 40M HT and VHT can cross reference */
|
||||
/*
|
||||
if (Band == BAND_ON_5G && powerLimit == MAX_POWER_INDEX) {
|
||||
if (bandwidth == 0 || bandwidth == 1) {
|
||||
if (band_type == BAND_ON_5G && pwr_lmt == MAX_POWER_INDEX) {
|
||||
if (idx_bandwidth == 0 || idx_bandwidth == 1) {
|
||||
RT_TRACE(COMP_INIT, DBG_LOUD, ("No power limit table of the specified band %d, bandwidth %d, ratesection %d, rf path %d\n",
|
||||
band, bandwidth,
|
||||
rateSection, RfPath));
|
||||
if (rateSection == 2)
|
||||
powerLimit = pHalData->TxPwrLimit_5G[regulation][bandwidth][4][channelGroup][RfPath];
|
||||
else if (rateSection == 4)
|
||||
powerLimit = pHalData->TxPwrLimit_5G[regulation][bandwidth][2][channelGroup][RfPath];
|
||||
else if (rateSection == 3)
|
||||
powerLimit = pHalData->TxPwrLimit_5G[regulation][bandwidth][5][channelGroup][RfPath];
|
||||
else if (rateSection == 5)
|
||||
powerLimit = pHalData->TxPwrLimit_5G[regulation][bandwidth][3][channelGroup][RfPath];
|
||||
idx_band, idx_bandwidth,
|
||||
idx_rate_sctn, rf_path));
|
||||
if (idx_rate_sctn == 2)
|
||||
pwr_lmt = hal_data->TxPwrLimit_5G[idx_regulation][idx_bandwidth][4][idx_channel][rf_path];
|
||||
else if (idx_rate_sctn == 4)
|
||||
pwr_lmt = hal_data->TxPwrLimit_5G[idx_regulation][idx_bandwidth][2][idx_channel][rf_path];
|
||||
else if (idx_rate_sctn == 3)
|
||||
pwr_lmt = hal_data->TxPwrLimit_5G[idx_regulation][idx_bandwidth][5][idx_channel][rf_path];
|
||||
else if (idx_rate_sctn == 5)
|
||||
pwr_lmt = hal_data->TxPwrLimit_5G[idx_regulation][idx_bandwidth][3][idx_channel][rf_path];
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
/* DBG_871X("TxPwrLmt[Regulation %d][Band %d][BW %d][RFPath %d][Rate 0x%x][Chnl %d] = %d\n", */
|
||||
/* regulation, pHalData->CurrentBandType, Bandwidth, RfPath, DataRate, Channel, powerLimit); */
|
||||
return powerLimit;
|
||||
/* idx_regulation, hal_data->CurrentBandType, bandwidth, rf_path, data_rate, channel, pwr_lmt); */
|
||||
return pwr_lmt;
|
||||
}
|
||||
|
||||
static void phy_CrossReferenceHTAndVHTTxPowerLimit(struct adapter *padapter)
|
||||
|
|
Loading…
Reference in New Issue