Hi, On 5/20/21 11:29 AM, Fabio Aiuto wrote: > Hi all, > > I'm stick with removal of 5Ghz code from rtl8723bs wireless card driver > (in staging subsystem). > > I think that this task comprehend deletion of all code managing > 80Mhz bandwidth and upper bandwidth (160 and 80+80). For the latter > it's simple, there's quite no code (unused enums and obsolete comments). > > The former seems to be trickier, there are handlers like this: > > /* 3 Set Reg483 */ > SubChnlNum = phy_GetSecondaryChnl_8723B(Adapter); > rtw_write8(Adapter, REG_DATA_SC_8723B, SubChnlNum); > > phy_GetSecondaryChnl_8723B() contains code like: > > } else if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_40) { > if (pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_UPPER) > SCSettingOf20 = VHT_DATA_SC_20_UPPER_OF_80MHZ; > else if (pHalData->nCur40MhzPrimeSC == HAL_PRIME_CHNL_OFFSET_LOWER) > SCSettingOf20 = VHT_DATA_SC_20_LOWER_OF_80MHZ; > } > > so if we are on a 40M channel some settings involving 80M are made and > the whole is then written on card registers. I'm no wifi expert, so I was hoping someone else would respond... With that said I believe you should keep this else block, this part of the function seems to select the order of the bonded channels when bonding multiple 20MHz channels together. The "if (pHalData->CurrentChannelBW == CHANNEL_WIDTH_80) {}" part can be removed because on 2.4G only devices 80 MHz width is not supported, but the 40MHz bit should stay, the constants for the register bits may be named after the 80MHz option, but I believe these same register bits will impact the 40Mhz case too. It might be a good idea to rename the constants to VHT_DATA_SC_20_*_OF_40MHZ in a separate patch. Regards, Hans