Skip to content

Commit 48fa9b6

Browse files
Ping-Ke ShihKalle Valo
authored andcommitted
wifi: rtw89: only reset BB/RF for existing WiFi 6 chips while starting up
The new WiFi 7 chips change the design, so no need to disable/enable BB/RF when core_start(). Keep the same logic for existing chips. Signed-off-by: Ping-Ke Shih <[email protected]> Signed-off-by: Kalle Valo <[email protected]> Link: https://msgid.link/[email protected]
1 parent 293f7bd commit 48fa9b6

File tree

2 files changed

+18
-4
lines changed

2 files changed

+18
-4
lines changed

drivers/net/wireless/realtek/rtw89/core.c

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3956,10 +3956,7 @@ int rtw89_core_start(struct rtw89_dev *rtwdev)
39563956
/* efuse process */
39573957

39583958
/* pre-config BB/RF, BB reset/RFC reset */
3959-
ret = rtw89_chip_disable_bb_rf(rtwdev);
3960-
if (ret)
3961-
return ret;
3962-
ret = rtw89_chip_enable_bb_rf(rtwdev);
3959+
ret = rtw89_chip_reset_bb_rf(rtwdev);
39633960
if (ret)
39643961
return ret;
39653962

drivers/net/wireless/realtek/rtw89/mac.h

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1108,6 +1108,23 @@ static inline int rtw89_chip_disable_bb_rf(struct rtw89_dev *rtwdev)
11081108
return chip->ops->disable_bb_rf(rtwdev);
11091109
}
11101110

1111+
static inline int rtw89_chip_reset_bb_rf(struct rtw89_dev *rtwdev)
1112+
{
1113+
int ret;
1114+
1115+
if (rtwdev->chip->chip_gen != RTW89_CHIP_AX)
1116+
return 0;
1117+
1118+
ret = rtw89_chip_disable_bb_rf(rtwdev);
1119+
if (ret)
1120+
return ret;
1121+
ret = rtw89_chip_enable_bb_rf(rtwdev);
1122+
if (ret)
1123+
return ret;
1124+
1125+
return 0;
1126+
}
1127+
11111128
u32 rtw89_mac_get_err_status(struct rtw89_dev *rtwdev);
11121129
int rtw89_mac_set_err_status(struct rtw89_dev *rtwdev, u32 err);
11131130
bool rtw89_mac_c2h_chk_atomic(struct rtw89_dev *rtwdev, u8 class, u8 func);

0 commit comments

Comments
 (0)