summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/realtek/rtw89/wow.c
diff options
context:
space:
mode:
authorPing-Ke Shih <pkshih@realtek.com>2023-09-01 09:39:53 +0200
committerKalle Valo <kvalo@kernel.org>2023-09-07 07:57:16 +0200
commita712eef681ed998ca5d036a82df38c7efcd4416b (patch)
treee2303927f922a69b80043ba3a810a1350db137b1 /drivers/net/wireless/realtek/rtw89/wow.c
parentwifi: rtw89: fw: add checking type for variant type of firmware (diff)
downloadlinux-a712eef681ed998ca5d036a82df38c7efcd4416b.tar.xz
linux-a712eef681ed998ca5d036a82df38c7efcd4416b.zip
wifi: rtw89: fw: propagate an argument include_bb for BB MCU firmware
Though WiFi 7 chips need BB MCU firmware, we don't download it in probe stage. Instead, only bring interface up under normal operation or WoWLAN mode. So, add an argument to assist download flow to setup download settings properly. Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Signed-off-by: Kalle Valo <kvalo@kernel.org> Link: https://lore.kernel.org/r/20230901073956.54203-6-pkshih@realtek.com
Diffstat (limited to '')
-rw-r--r--drivers/net/wireless/realtek/rtw89/wow.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/wireless/realtek/rtw89/wow.c b/drivers/net/wireless/realtek/rtw89/wow.c
index aa9efca04025..660bf2ece927 100644
--- a/drivers/net/wireless/realtek/rtw89/wow.c
+++ b/drivers/net/wireless/realtek/rtw89/wow.c
@@ -488,6 +488,8 @@ static int rtw89_wow_swap_fw(struct rtw89_dev *rtwdev, bool wow)
struct rtw89_wow_param *rtw_wow = &rtwdev->wow;
struct ieee80211_vif *wow_vif = rtw_wow->wow_vif;
struct rtw89_vif *rtwvif = (struct rtw89_vif *)wow_vif->drv_priv;
+ const struct rtw89_chip_info *chip = rtwdev->chip;
+ bool include_bb = !!chip->bbmcu_nr;
struct ieee80211_sta *wow_sta;
struct rtw89_sta *rtwsta = NULL;
bool is_conn = true;
@@ -501,7 +503,7 @@ static int rtw89_wow_swap_fw(struct rtw89_dev *rtwdev, bool wow)
else
is_conn = false;
- ret = rtw89_fw_download(rtwdev, fw_type);
+ ret = rtw89_fw_download(rtwdev, fw_type, include_bb);
if (ret) {
rtw89_warn(rtwdev, "download fw failed\n");
return ret;