staging: rtl8723bs: refactor to reduce indents
Reduce the number of indents in rtw_wlan_util.c file by refactoring the code. Moved the part of code that rearranged ac paramaters in the function WMMOnAssocResp to a separate function named sort_wmm_ac_params. It takes both the array of ac params and their indexes as arguments and sorts them. Has return type void. Moved the part of code that checked IE for realtek vendor in the function check_assoc_AP to a separate function named get_realtek_assoc_AP_vender. It takes a struct ndis_80211_var_ie * as an argument and returns u32 realtek vendor. Signed-off-by: Shreyansh Chouhan <chouhan.shreyansh630@gmail.com> Link: https://lore.kernel.org/r/20210524135105.5550-2-chouhan.shreyansh630@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
f57e6d91a8
commit
3c8c577fd2
|
@ -777,6 +777,32 @@ int WMM_param_handler(struct adapter *padapter, struct ndis_80211_var_ie *pIE)
|
||||||
return true;
|
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)
|
void WMMOnAssocRsp(struct adapter *padapter)
|
||||||
{
|
{
|
||||||
u8 ACI, ACM, AIFS, ECWMin, ECWMax, aSifsTime;
|
u8 ACI, ACM, AIFS, ECWMin, ECWMax, aSifsTime;
|
||||||
|
@ -873,35 +899,8 @@ void WMMOnAssocRsp(struct adapter *padapter)
|
||||||
|
|
||||||
inx[0] = 0; inx[1] = 1; inx[2] = 2; inx[3] = 3;
|
inx[0] = 0; inx[1] = 1; inx[2] = 2; inx[3] = 3;
|
||||||
|
|
||||||
if (pregpriv->wifi_spec == 1) {
|
if (pregpriv->wifi_spec == 1)
|
||||||
u32 j, tmp, change_inx = false;
|
sort_wmm_ac_params(inx, edca);
|
||||||
|
|
||||||
/* 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;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for (i = 0; i < 4; i++)
|
for (i = 0; i < 4; i++)
|
||||||
pxmitpriv->wmm_para_seq[i] = inx[i];
|
pxmitpriv->wmm_para_seq[i] = inx[i];
|
||||||
|
@ -1496,29 +1495,8 @@ void set_sta_rate(struct adapter *padapter, struct sta_info *psta)
|
||||||
Update_RA_Entry(padapter, psta);
|
Update_RA_Entry(padapter, psta);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned char check_assoc_AP(u8 *pframe, uint len)
|
static u32 get_realtek_assoc_AP_vender(struct ndis_80211_var_ie *pIE)
|
||||||
{
|
{
|
||||||
unsigned int i;
|
|
||||||
struct ndis_80211_var_ie *pIE;
|
|
||||||
|
|
||||||
for (i = sizeof(struct ndis_802_11_fix_ie); i < len;) {
|
|
||||||
pIE = (struct ndis_80211_var_ie *)(pframe + i);
|
|
||||||
|
|
||||||
switch (pIE->ElementID) {
|
|
||||||
case WLAN_EID_VENDOR_SPECIFIC:
|
|
||||||
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))) {
|
|
||||||
return HT_IOT_PEER_BROADCOM;
|
|
||||||
} else if (!memcmp(pIE->data, MARVELL_OUI, 3)) {
|
|
||||||
return HT_IOT_PEER_MARVELL;
|
|
||||||
} else if (!memcmp(pIE->data, RALINK_OUI, 3)) {
|
|
||||||
return HT_IOT_PEER_RALINK;
|
|
||||||
} 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;
|
u32 Vender = HT_IOT_PEER_REALTEK;
|
||||||
|
|
||||||
if (pIE->Length >= 5) {
|
if (pIE->Length >= 5) {
|
||||||
|
@ -1542,6 +1520,32 @@ unsigned char check_assoc_AP(u8 *pframe, uint len)
|
||||||
}
|
}
|
||||||
|
|
||||||
return Vender;
|
return Vender;
|
||||||
|
}
|
||||||
|
|
||||||
|
unsigned char check_assoc_AP(u8 *pframe, uint len)
|
||||||
|
{
|
||||||
|
unsigned int i;
|
||||||
|
struct ndis_80211_var_ie *pIE;
|
||||||
|
|
||||||
|
for (i = sizeof(struct ndis_802_11_fix_ie); i < len;) {
|
||||||
|
pIE = (struct ndis_80211_var_ie *)(pframe + i);
|
||||||
|
|
||||||
|
switch (pIE->ElementID) {
|
||||||
|
case WLAN_EID_VENDOR_SPECIFIC:
|
||||||
|
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))) {
|
||||||
|
return HT_IOT_PEER_BROADCOM;
|
||||||
|
} else if (!memcmp(pIE->data, MARVELL_OUI, 3)) {
|
||||||
|
return HT_IOT_PEER_MARVELL;
|
||||||
|
} else if (!memcmp(pIE->data, RALINK_OUI, 3)) {
|
||||||
|
return HT_IOT_PEER_RALINK;
|
||||||
|
} else if (!memcmp(pIE->data, CISCO_OUI, 3)) {
|
||||||
|
return HT_IOT_PEER_CISCO;
|
||||||
|
} else if (!memcmp(pIE->data, REALTEK_OUI, 3)) {
|
||||||
|
return get_realtek_assoc_AP_vender(pIE);
|
||||||
} else if (!memcmp(pIE->data, AIRGOCAP_OUI, 3)) {
|
} else if (!memcmp(pIE->data, AIRGOCAP_OUI, 3)) {
|
||||||
return HT_IOT_PEER_AIRGO;
|
return HT_IOT_PEER_AIRGO;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue