summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/net/wireless/realtek/rtw89/core.c3
-rw-r--r--drivers/net/wireless/realtek/rtw89/core.h1
-rw-r--r--drivers/net/wireless/realtek/rtw89/rtw8852cu.c3
3 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/wireless/realtek/rtw89/core.c b/drivers/net/wireless/realtek/rtw89/core.c
index b87a72700b99..77a0e2582dbe 100644
--- a/drivers/net/wireless/realtek/rtw89/core.c
+++ b/drivers/net/wireless/realtek/rtw89/core.c
@@ -6418,6 +6418,9 @@ static int rtw89_core_set_supported_band(struct rtw89_dev *rtwdev)
u8 support_bands = rtwdev->chip->support_bands;
int ret;
+ if (test_bit(RTW89_QUIRK_DISABLE_2GHZ, rtwdev->quirks))
+ support_bands &= ~BIT(NL80211_BAND_2GHZ);
+
if (support_bands & BIT(NL80211_BAND_2GHZ)) {
sband = rtw89_core_sband_dup(rtwdev, &rtw89_sband_2ghz);
if (!sband)
diff --git a/drivers/net/wireless/realtek/rtw89/core.h b/drivers/net/wireless/realtek/rtw89/core.h
index 70cf6cbf4e8a..9d782cbfee70 100644
--- a/drivers/net/wireless/realtek/rtw89/core.h
+++ b/drivers/net/wireless/realtek/rtw89/core.h
@@ -6057,6 +6057,7 @@ enum rtw89_quirks {
RTW89_QUIRK_THERMAL_PROT_120C,
RTW89_QUIRK_THERMAL_PROT_110C,
RTW89_QUIRK_HW_INFO_SYSFS,
+ RTW89_QUIRK_DISABLE_2GHZ,
NUM_OF_RTW89_QUIRKS,
};
diff --git a/drivers/net/wireless/realtek/rtw89/rtw8852cu.c b/drivers/net/wireless/realtek/rtw89/rtw8852cu.c
index 51dd8fb05366..2dec9b845481 100644
--- a/drivers/net/wireless/realtek/rtw89/rtw8852cu.c
+++ b/drivers/net/wireless/realtek/rtw89/rtw8852cu.c
@@ -97,7 +97,8 @@ static const struct rtw89_driver_info rtw89_8852cu_valve_info = {
.variant = NULL,
.board = &rtw89_8852cu_valve_board,
.quirks = NULL,
- .dev_id_quirks = BIT(RTW89_QUIRK_HW_INFO_SYSFS),
+ .dev_id_quirks = BIT(RTW89_QUIRK_HW_INFO_SYSFS) |
+ BIT(RTW89_QUIRK_DISABLE_2GHZ),
.bus = {
.usb = &rtw8852c_usb_info,
},