mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 10:31:46 +09:00
rtlwifi: rtl8192de: Fix phy-based version calculation
commitf1b00f4dabupstream. Commitd83579e2a5incorporated some changes from the vendor driver that made it newly important that the calculated hardware version correctly include the CHIP_92D bit, as all of the IS_92D_* macros were changed to depend on it. However, this bit was being unset for dual-mac, dual-phy devices. The vendor driver behavior was modified to not do this, but unfortunately this change was not picked up along with the others. This caused scanning in the 2.4GHz band to be broken, and possibly other bugs as well. This patch brings the version calculation logic in parity with the vendor driver in this regard, and in doing so fixes the regression. However, the version calculation code in general continues to be largely incoherent and messy, and needs to be cleaned up. Signed-off-by: Forest Bond <forest.bond@rapidrollout.com> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
6f87baecc2
commit
955441c479
@@ -3345,21 +3345,21 @@ void rtl92d_phy_config_macphymode_info(struct ieee80211_hw *hw)
|
||||
switch (rtlhal->macphymode) {
|
||||
case DUALMAC_SINGLEPHY:
|
||||
rtlphy->rf_type = RF_2T2R;
|
||||
rtlhal->version |= CHIP_92D_SINGLEPHY;
|
||||
rtlhal->version |= RF_TYPE_2T2R;
|
||||
rtlhal->bandset = BAND_ON_BOTH;
|
||||
rtlhal->current_bandtype = BAND_ON_2_4G;
|
||||
break;
|
||||
|
||||
case SINGLEMAC_SINGLEPHY:
|
||||
rtlphy->rf_type = RF_2T2R;
|
||||
rtlhal->version |= CHIP_92D_SINGLEPHY;
|
||||
rtlhal->version |= RF_TYPE_2T2R;
|
||||
rtlhal->bandset = BAND_ON_BOTH;
|
||||
rtlhal->current_bandtype = BAND_ON_2_4G;
|
||||
break;
|
||||
|
||||
case DUALMAC_DUALPHY:
|
||||
rtlphy->rf_type = RF_1T1R;
|
||||
rtlhal->version &= (~CHIP_92D_SINGLEPHY);
|
||||
rtlhal->version &= RF_TYPE_1T1R;
|
||||
/* Now we let MAC0 run on 5G band. */
|
||||
if (rtlhal->interfaceindex == 0) {
|
||||
rtlhal->bandset = BAND_ON_5G;
|
||||
|
||||
Reference in New Issue
Block a user