mirror of
https://github.com/openwrt/openwrt.git
synced 2025-01-04 04:54:18 +00:00
36f6d6ddcd
Backport support for RTL8812AU/RTL8821AU USB adapters Manually backported patch: 045-v6.13-wifi-rtw88-Enable-the-new-RTL8821AU-RTL8812AU-driver Patches from 046 to 051 are pending. Signed-off-by: Marty Jones <mj8263788@gmail.com> Link: https://github.com/openwrt/openwrt/pull/17079 [Move BPAUTO_WANT_DEV_COREDUMP to original patch] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
94 lines
3.3 KiB
Diff
94 lines
3.3 KiB
Diff
From 87341ca1eac9a3bac23bd41f6e24f3c93b77452f Mon Sep 17 00:00:00 2001
|
|
From: Bitterblue Smith <rtl8821cerfe2@gmail.com>
|
|
Date: Wed, 23 Oct 2024 17:02:05 +0300
|
|
Subject: [PATCH] wifi: rtw88: Dump the HW features only for some chips
|
|
|
|
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 | 3 +++
|
|
drivers/net/wireless/realtek/rtw88/main.h | 1 +
|
|
drivers/net/wireless/realtek/rtw88/rtw8703b.c | 1 +
|
|
drivers/net/wireless/realtek/rtw88/rtw8723d.c | 1 +
|
|
drivers/net/wireless/realtek/rtw88/rtw8821c.c | 1 +
|
|
drivers/net/wireless/realtek/rtw88/rtw8822b.c | 1 +
|
|
drivers/net/wireless/realtek/rtw88/rtw8822c.c | 1 +
|
|
7 files changed, 9 insertions(+)
|
|
|
|
--- a/drivers/net/wireless/realtek/rtw88/main.c
|
|
+++ b/drivers/net/wireless/realtek/rtw88/main.c
|
|
@@ -1917,6 +1917,9 @@ static int rtw_dump_hw_feature(struct rt
|
|
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");
|
|
--- a/drivers/net/wireless/realtek/rtw88/main.h
|
|
+++ b/drivers/net/wireless/realtek/rtw88/main.h
|
|
@@ -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;
|
|
|
|
--- a/drivers/net/wireless/realtek/rtw88/rtw8703b.c
|
|
+++ b/drivers/net/wireless/realtek/rtw88/rtw8703b.c
|
|
@@ -1960,6 +1960,7 @@ const struct rtw_chip_info rtw8703b_hw_s
|
|
.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,
|
|
--- a/drivers/net/wireless/realtek/rtw88/rtw8723d.c
|
|
+++ b/drivers/net/wireless/realtek/rtw88/rtw8723d.c
|
|
@@ -2131,6 +2131,7 @@ const struct rtw_chip_info rtw8723d_hw_s
|
|
.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,
|
|
--- a/drivers/net/wireless/realtek/rtw88/rtw8821c.c
|
|
+++ b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
|
|
@@ -1968,6 +1968,7 @@ const struct rtw_chip_info rtw8821c_hw_s
|
|
.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),
|
|
--- a/drivers/net/wireless/realtek/rtw88/rtw8822b.c
|
|
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822b.c
|
|
@@ -2509,6 +2509,7 @@ const struct rtw_chip_info rtw8822b_hw_s
|
|
.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),
|
|
--- a/drivers/net/wireless/realtek/rtw88/rtw8822c.c
|
|
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822c.c
|
|
@@ -5329,6 +5329,7 @@ const struct rtw_chip_info rtw8822c_hw_s
|
|
.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,
|