Files
build/patch/kernel/archive/sunxi-5.18/patches.megous/rtw89-Skip-useless-dig-gain-and-igi-related-settings-for-8852C.patch
The-going 176c05d4b0 Sunxi 5.18 (#3908)
* sunxi-5.18: add new megous patches

* switch to v5.18.5: exclude a previously applied patch

* fix: tools/mk_format_patch: numbered=false by default

* sunxi-5.18: rebasing and extraction using the mk_format_patch script
2022-06-20 15:31:38 +02:00

68 lines
2.4 KiB
Diff

From c46e12638c86c1076cc9d4614816f0df30665625 Mon Sep 17 00:00:00 2001
From: Johnson Lin <johnson.lin@realtek.com>
Date: Fri, 8 Apr 2022 08:13:48 +0800
Subject: [PATCH 446/534] rtw89: Skip useless dig gain and igi related settings
for 8852C
Separated DIG RX gain, IGI configurations from not supportted HW using
"support_igi" capability flag.
Signed-off-by: Johnson Lin <johnson.lin@realtek.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20220408001353.17188-9-pkshih@realtek.com
---
drivers/net/wireless/realtek/rtw89/phy.c | 9 +++++++--
drivers/net/wireless/realtek/rtw89/rtw8852c.c | 1 +
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/drivers/net/wireless/realtek/rtw89/phy.c b/drivers/net/wireless/realtek/rtw89/phy.c
index c3d3fe29e..23cc4a566 100644
--- a/drivers/net/wireless/realtek/rtw89/phy.c
+++ b/drivers/net/wireless/realtek/rtw89/phy.c
@@ -2935,6 +2935,9 @@ static void rtw89_phy_dig_update_gain_para(struct rtw89_dev *rtwdev)
u32 tmp;
u8 i;
+ if (!rtwdev->hal.support_igi)
+ return;
+
tmp = rtw89_phy_read32_mask(rtwdev, R_PATH0_IB_PKPW,
B_PATH0_IB_PKPW_MSK);
dig->ib_pkpwr = sign_extend32(tmp >> DIG_GAIN_SHIFT, U8_MAX_BIT);
@@ -3189,6 +3192,9 @@ static void rtw89_phy_dig_config_igi(struct rtw89_dev *rtwdev)
{
struct rtw89_dig_info *dig = &rtwdev->dig;
+ if (!rtwdev->hal.support_igi)
+ return;
+
if (dig->force_gaincode_idx_en) {
rtw89_phy_dig_set_igi_cr(rtwdev, dig->force_gaincode);
rtw89_debug(rtwdev, RTW89_DBG_DIG,
@@ -3314,8 +3320,7 @@ void rtw89_phy_dig(struct rtw89_dev *rtwdev)
dig->igi_rssi, dig->dyn_igi_max, dig->dyn_igi_min,
dig->igi_fa_rssi);
- if (rtwdev->hal.support_igi)
- rtw89_phy_dig_config_igi(rtwdev);
+ rtw89_phy_dig_config_igi(rtwdev);
rtw89_phy_dig_dyn_pd_th(rtwdev, dig->igi_fa_rssi, dig->dyn_pd_th_en);
diff --git a/drivers/net/wireless/realtek/rtw89/rtw8852c.c b/drivers/net/wireless/realtek/rtw89/rtw8852c.c
index 9689fc5a6..ca254339e 100644
--- a/drivers/net/wireless/realtek/rtw89/rtw8852c.c
+++ b/drivers/net/wireless/realtek/rtw89/rtw8852c.c
@@ -598,6 +598,7 @@ const struct rtw89_chip_info rtw8852c_chip_info = {
.rf_base_addr = {0xe000, 0xf000},
.pwr_on_seq = NULL,
.pwr_off_seq = NULL,
+ .dig_table = NULL,
.hw_sec_hdr = true,
.sec_ctrl_efuse_size = 4,
.physical_efuse_size = 1216,
--
2.35.3