mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 05:36:47 +00:00
linux: wifi: rtw88: drop patch included in 6.12.31
Signed-off-by: Matthias Reichl <hias@horus.com>
This commit is contained in:
parent
c2ad439b7a
commit
34fc4e2098
@ -1,73 +0,0 @@
|
||||
From 14482a0c7b998d383feccecea57ec4b5725dfbd8 Mon Sep 17 00:00:00 2001
|
||||
From: Bitterblue Smith <rtl8821cerfe2@gmail.com>
|
||||
Date: Sun, 26 Jan 2025 16:03:11 +0200
|
||||
Subject: [PATCH 42/43] wifi: rtw88: Don't use static local variable in
|
||||
rtw8822b_set_tx_power_index_by_rate
|
||||
|
||||
Some users want to plug two identical USB devices at the same time.
|
||||
This static variable could theoretically cause them to use incorrect
|
||||
TX power values.
|
||||
|
||||
Move the variable to the caller and pass a pointer to it to
|
||||
rtw8822b_set_tx_power_index_by_rate().
|
||||
|
||||
Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
|
||||
Acked-by: Ping-Ke Shih <pkshih@realtek.com>
|
||||
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
|
||||
Link: https://patch.msgid.link/8a60f581-0ab5-4d98-a97d-dd83b605008f@gmail.com
|
||||
---
|
||||
drivers/net/wireless/realtek/rtw88/rtw8822b.c | 14 ++++++++------
|
||||
1 file changed, 8 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822b.c b/drivers/net/wireless/realtek/rtw88/rtw8822b.c
|
||||
index 7f03903ddf4b..23a29019752d 100644
|
||||
--- a/drivers/net/wireless/realtek/rtw88/rtw8822b.c
|
||||
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822b.c
|
||||
@@ -935,11 +935,11 @@ static void query_phy_status(struct rtw_dev *rtwdev, u8 *phy_status,
|
||||
}
|
||||
|
||||
static void
|
||||
-rtw8822b_set_tx_power_index_by_rate(struct rtw_dev *rtwdev, u8 path, u8 rs)
|
||||
+rtw8822b_set_tx_power_index_by_rate(struct rtw_dev *rtwdev, u8 path,
|
||||
+ u8 rs, u32 *phy_pwr_idx)
|
||||
{
|
||||
struct rtw_hal *hal = &rtwdev->hal;
|
||||
static const u32 offset_txagc[2] = {0x1d00, 0x1d80};
|
||||
- static u32 phy_pwr_idx;
|
||||
u8 rate, rate_idx, pwr_index, shift;
|
||||
int j;
|
||||
|
||||
@@ -947,12 +947,12 @@ rtw8822b_set_tx_power_index_by_rate(struct rtw_dev *rtwdev, u8 path, u8 rs)
|
||||
rate = rtw_rate_section[rs][j];
|
||||
pwr_index = hal->tx_pwr_tbl[path][rate];
|
||||
shift = rate & 0x3;
|
||||
- phy_pwr_idx |= ((u32)pwr_index << (shift * 8));
|
||||
+ *phy_pwr_idx |= ((u32)pwr_index << (shift * 8));
|
||||
if (shift == 0x3) {
|
||||
rate_idx = rate & 0xfc;
|
||||
rtw_write32(rtwdev, offset_txagc[path] + rate_idx,
|
||||
- phy_pwr_idx);
|
||||
- phy_pwr_idx = 0;
|
||||
+ *phy_pwr_idx);
|
||||
+ *phy_pwr_idx = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -960,11 +960,13 @@ rtw8822b_set_tx_power_index_by_rate(struct rtw_dev *rtwdev, u8 path, u8 rs)
|
||||
static void rtw8822b_set_tx_power_index(struct rtw_dev *rtwdev)
|
||||
{
|
||||
struct rtw_hal *hal = &rtwdev->hal;
|
||||
+ u32 phy_pwr_idx = 0;
|
||||
int rs, path;
|
||||
|
||||
for (path = 0; path < hal->rf_path_num; path++) {
|
||||
for (rs = 0; rs < RTW_RATE_SECTION_MAX; rs++)
|
||||
- rtw8822b_set_tx_power_index_by_rate(rtwdev, path, rs);
|
||||
+ rtw8822b_set_tx_power_index_by_rate(rtwdev, path, rs,
|
||||
+ &phy_pwr_idx);
|
||||
}
|
||||
}
|
||||
|
||||
--
|
||||
2.43.0
|
||||
|
Loading…
x
Reference in New Issue
Block a user