From: Zong-Zhe Yang <kevin_yang@xxxxxxxxxxx> If a chip is configured to support mac80211 chanctx ops, we avoid using older FW that does not support HW scan to make mac80211 stack handle scanning as expected. Signed-off-by: Zong-Zhe Yang <kevin_yang@xxxxxxxxxxx> Signed-off-by: Ping-Ke Shih <pkshih@xxxxxxxxxxx> --- drivers/net/wireless/realtek/rtw89/fw.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/net/wireless/realtek/rtw89/fw.c b/drivers/net/wireless/realtek/rtw89/fw.c index 0e12629f789c3..a47451dc9d81d 100644 --- a/drivers/net/wireless/realtek/rtw89/fw.c +++ b/drivers/net/wireless/realtek/rtw89/fw.c @@ -250,6 +250,7 @@ static void rtw89_fw_recognize_features(struct rtw89_dev *rtwdev) int rtw89_fw_recognize(struct rtw89_dev *rtwdev) { + const struct rtw89_chip_info *chip = rtwdev->chip; int ret; ret = __rtw89_fw_recognize(rtwdev, RTW89_FW_NORMAL); @@ -261,6 +262,13 @@ int rtw89_fw_recognize(struct rtw89_dev *rtwdev) rtw89_fw_recognize_features(rtwdev); + if (chip->support_chanctx_num != 0 && + !RTW89_CHK_FW_FEATURE(SCAN_OFFLOAD, &rtwdev->fw)) { + rtw89_err(rtwdev, + "require newer FW to support HW scan for chanctx\n"); + return -ENOENT; + } + return 0; } -- 2.25.1