]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
wifi: rtw89: add default quirks as features to chip_info
authorPing-Ke Shih <pkshih@realtek.com>
Mon, 29 Dec 2025 03:09:22 +0000 (11:09 +0800)
committerPing-Ke Shih <pkshih@realtek.com>
Wed, 31 Dec 2025 08:23:36 +0000 (16:23 +0800)
The coming chip will support thermal protection by default, so add default
quirks to chip_info.

Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/20251229030926.27004-9-pkshih@realtek.com
drivers/net/wireless/realtek/rtw89/core.c
drivers/net/wireless/realtek/rtw89/core.h
drivers/net/wireless/realtek/rtw89/rtw8851b.c
drivers/net/wireless/realtek/rtw89/rtw8852a.c
drivers/net/wireless/realtek/rtw89/rtw8852b.c
drivers/net/wireless/realtek/rtw89/rtw8852bt.c
drivers/net/wireless/realtek/rtw89/rtw8852c.c
drivers/net/wireless/realtek/rtw89/rtw8922a.c

index 78cbfd6677e1270b7fc91192c0a2a150db10c136..e713422ebd7c43a9c854fb965c40fefacf821429 100644 (file)
@@ -5924,6 +5924,9 @@ int rtw89_core_init(struct rtw89_dev *rtwdev)
        struct rtw89_btc *btc = &rtwdev->btc;
        u8 band;
 
+       bitmap_or(rtwdev->quirks, rtwdev->quirks, &rtwdev->chip->default_quirks,
+                 NUM_OF_RTW89_QUIRKS);
+
        INIT_LIST_HEAD(&rtwdev->ba_list);
        INIT_LIST_HEAD(&rtwdev->forbid_ba_list);
        INIT_LIST_HEAD(&rtwdev->rtwvifs_list);
index 6e39894990bf8574e833e6738ecf3e98a50b15b6..93b633d39e471266d42dcaf1edf2739a3a4162ab 100644 (file)
@@ -4559,6 +4559,7 @@ struct rtw89_chip_info {
        const struct rtw89_edcca_regs *edcca_regs;
        const struct wiphy_wowlan_support *wowlan_stub;
        const struct rtw89_xtal_info *xtal_info;
+       unsigned long default_quirks; /* bitmap of rtw89_quirks */
 };
 
 struct rtw89_chip_variant {
index e3933946d1cac00fe58b0eb63bc0bc70ac6e278f..e06e7075173537155e64628bafe88c2d36fb4b17 100644 (file)
@@ -2715,6 +2715,7 @@ const struct rtw89_chip_info rtw8851b_chip_info = {
        .wowlan_stub            = &rtw_wowlan_stub_8851b,
 #endif
        .xtal_info              = &rtw8851b_xtal_info,
+       .default_quirks         = 0,
 };
 EXPORT_SYMBOL(rtw8851b_chip_info);
 
index 46f5e9c50222a3e577c9da71856ac6a1dc213caf..bb12982afef794a2b670fc4dc4fbb42734939122 100644 (file)
@@ -2400,6 +2400,7 @@ const struct rtw89_chip_info rtw8852a_chip_info = {
        .wowlan_stub            = &rtw_wowlan_stub_8852a,
 #endif
        .xtal_info              = &rtw8852a_xtal_info,
+       .default_quirks         = 0,
 };
 EXPORT_SYMBOL(rtw8852a_chip_info);
 
index f813ec9242eb4f156b084333506dc2ba28453ca8..0f18555e619b037b012c6e49d2f8575f017dd8a6 100644 (file)
@@ -1029,6 +1029,7 @@ const struct rtw89_chip_info rtw8852b_chip_info = {
        .wowlan_stub            = &rtw_wowlan_stub_8852b,
 #endif
        .xtal_info              = NULL,
+       .default_quirks         = 0,
 };
 EXPORT_SYMBOL(rtw8852b_chip_info);
 
index 534ac137b43fb72fd10b8aebc700246872e47b42..7b637483e9b4aecdfa82c51938b90009ad1e5fa7 100644 (file)
@@ -886,6 +886,7 @@ const struct rtw89_chip_info rtw8852bt_chip_info = {
        .wowlan_stub            = &rtw_wowlan_stub_8852bt,
 #endif
        .xtal_info              = NULL,
+       .default_quirks         = 0,
 };
 EXPORT_SYMBOL(rtw8852bt_chip_info);
 
index c20c732d2f6aeaa3d3556c08ee6b1730dbe52005..a82bbe3ec901b492ae82cba12f344782e9d909ca 100644 (file)
@@ -3245,6 +3245,7 @@ const struct rtw89_chip_info rtw8852c_chip_info = {
        .wowlan_stub            = &rtw_wowlan_stub_8852c,
 #endif
        .xtal_info              = NULL,
+       .default_quirks         = 0,
 };
 EXPORT_SYMBOL(rtw8852c_chip_info);
 
index 795c00d65d5ed436979a45513e3a2da08be98ff5..041ffec9a327efe7a884c5b412a14c91a14dd063 100644 (file)
@@ -3011,6 +3011,7 @@ const struct rtw89_chip_info rtw8922a_chip_info = {
        .wowlan_stub            = &rtw_wowlan_stub_8922a,
 #endif
        .xtal_info              = NULL,
+       .default_quirks         = 0,
 };
 EXPORT_SYMBOL(rtw8922a_chip_info);