]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
wifi: rtw88: Dump the HW features only for some chips
authorBitterblue Smith <rtl8821cerfe2@gmail.com>
Wed, 23 Oct 2024 14:02:05 +0000 (17:02 +0300)
committerPing-Ke Shih <pkshih@realtek.com>
Tue, 29 Oct 2024 03:54:42 +0000 (11:54 +0800)
RTL8821AU and RTL8812AU don't support this. They hit the "failed to read
hw feature report" error.

Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/8becd851-8760-4480-8e8c-c4869ce72507@gmail.com
drivers/net/wireless/realtek/rtw88/main.c
drivers/net/wireless/realtek/rtw88/main.h
drivers/net/wireless/realtek/rtw88/rtw8703b.c
drivers/net/wireless/realtek/rtw88/rtw8723d.c
drivers/net/wireless/realtek/rtw88/rtw8821c.c
drivers/net/wireless/realtek/rtw88/rtw8822b.c
drivers/net/wireless/realtek/rtw88/rtw8822c.c

index bbdef38c7e341c992c18c6e2d729d1d00acb985d..942266324ca42830e304667cc6fa0d9ce474c1b6 100644 (file)
@@ -1917,6 +1917,9 @@ static int rtw_dump_hw_feature(struct rtw_dev *rtwdev)
        u8 bw;
        int i;
 
+       if (!rtwdev->chip->hw_feature_report)
+               return 0;
+
        id = rtw_read8(rtwdev, REG_C2HEVT);
        if (id != C2H_HW_FEATURE_REPORT) {
                rtw_err(rtwdev, "failed to read hw feature report\n");
index a2bef559cfb83bdb388bb523401ef2d3453909a7..58c7c6a178a88efaa76aae6b1461ead4300ec477 100644 (file)
@@ -1200,6 +1200,7 @@ struct rtw_chip_info {
        const struct rtw_fwcd_segs *fwcd_segs;
 
        u8 usb_tx_agg_desc_num;
+       bool hw_feature_report;
 
        u8 default_1ss_tx_path;
 
index 77399b8dd8cd758dc587594957b5520d749704b8..01ac07ac68c86f69f00bbaaf8a6a09f1068d6abe 100644 (file)
@@ -1960,6 +1960,7 @@ const struct rtw_chip_info rtw8703b_hw_spec = {
        .max_power_index = 0x3f,
        .ampdu_density = IEEE80211_HT_MPDU_DENSITY_16,
        .usb_tx_agg_desc_num = 1, /* Not sure if this chip has USB interface */
+       .hw_feature_report = true,
 
        .path_div_supported = false,
        .ht_supported = true,
index 86a5e2497641fd992526c8abba13a66f8872960d..bf87c92087dad097115a5cf7120d93d8eef02e9e 100644 (file)
@@ -2131,6 +2131,7 @@ const struct rtw_chip_info rtw8723d_hw_spec = {
        .page_size = TX_PAGE_SIZE,
        .dig_min = 0x20,
        .usb_tx_agg_desc_num = 1,
+       .hw_feature_report = true,
        .ht_supported = true,
        .vht_supported = false,
        .lps_deep_mode_supported = 0,
index 66c79956e8e5980585eae5b3f601cc1e6fc96ce0..44ef2e246724884769a62b4c560fc52e2127f75c 100644 (file)
@@ -1968,6 +1968,7 @@ const struct rtw_chip_info rtw8821c_hw_spec = {
        .page_size = TX_PAGE_SIZE,
        .dig_min = 0x1c,
        .usb_tx_agg_desc_num = 3,
+       .hw_feature_report = true,
        .ht_supported = true,
        .vht_supported = true,
        .lps_deep_mode_supported = BIT(LPS_DEEP_MODE_LCLK),
index 24f76a36f23eb1fb220e82f0448dd097e786f383..9b7c383f37fe1d65029de6321dcaf95f3ff64c3c 100644 (file)
@@ -2509,6 +2509,7 @@ const struct rtw_chip_info rtw8822b_hw_spec = {
        .page_size = TX_PAGE_SIZE,
        .dig_min = 0x1c,
        .usb_tx_agg_desc_num = 3,
+       .hw_feature_report = true,
        .ht_supported = true,
        .vht_supported = true,
        .lps_deep_mode_supported = BIT(LPS_DEEP_MODE_LCLK),
index da74e66bda84b2e47c147900fdae708b28642ff9..063c65c269fe4739f74b7bac8158e480d7a8ade4 100644 (file)
@@ -5329,6 +5329,7 @@ const struct rtw_chip_info rtw8822c_hw_spec = {
        .page_size = TX_PAGE_SIZE,
        .dig_min = 0x20,
        .usb_tx_agg_desc_num = 3,
+       .hw_feature_report = true,
        .default_1ss_tx_path = BB_PATH_A,
        .path_div_supported = true,
        .ht_supported = true,