mirror of
https://github.com/torvalds/linux.git
synced 2026-06-02 19:43:40 +02:00
wifi: rtw89: 8922a: correct register definition and merge IO for ctrl_nbtg_bt_tx()
ctrl_nbtg_bt_tx is used to control AGC settings under non-shared path condition, which is affected by BT TX. To speed up IO, merge continual bit mask into one IO. Also, correct a register definition. Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Signed-off-by: Kalle Valo <kvalo@kernel.org> Link: https://msgid.link/20240209065229.34515-9-pkshih@realtek.com
This commit is contained in:
parent
49ea98235a
commit
ef95df5986
|
|
@ -8077,14 +8077,16 @@
|
|||
#define R_S1_ADDCK 0x3E00
|
||||
#define B_S1_ADDCK_I GENMASK(9, 0)
|
||||
#define B_S1_ADDCK_Q GENMASK(19, 10)
|
||||
#define R_OP1DB_A 0x406B
|
||||
#define R_OP1DB_A 0x40B0
|
||||
#define B_OP1DB_A GENMASK(31, 24)
|
||||
#define R_OP1DB1_A 0x40BC
|
||||
#define B_TIA10_A GENMASK(15, 0)
|
||||
#define B_TIA1_A GENMASK(15, 8)
|
||||
#define B_TIA0_A GENMASK(7, 0)
|
||||
#define R_BKOFF_A 0x40E0
|
||||
#define B_BKOFF_IBADC_A GENMASK(23, 18)
|
||||
#define R_BACKOFF_A 0x40E4
|
||||
#define B_LNA_IBADC_A GENMASK(29, 18)
|
||||
#define B_BACKOFF_LNA_A GENMASK(29, 24)
|
||||
#define B_BACKOFF_IBADC_A GENMASK(23, 18)
|
||||
#define R_RXBY_WBADC_A 0x40F4
|
||||
|
|
@ -8140,11 +8142,13 @@
|
|||
#define R_LNA_OP 0x44B0
|
||||
#define B_LNA6 GENMASK(31, 24)
|
||||
#define R_LNA_TIA 0x44BC
|
||||
#define B_TIA10_B GENMASK(15, 0)
|
||||
#define B_TIA1_B GENMASK(15, 8)
|
||||
#define B_TIA0_B GENMASK(7, 0)
|
||||
#define R_BKOFF_B 0x44E0
|
||||
#define B_BKOFF_IBADC_B GENMASK(23, 18)
|
||||
#define R_BACKOFF_B 0x44E4
|
||||
#define B_LNA_IBADC_B GENMASK(29, 18)
|
||||
#define B_BACKOFF_LNA_B GENMASK(29, 24)
|
||||
#define B_BACKOFF_IBADC_B GENMASK(23, 18)
|
||||
#define R_RXBY_WBADC_B 0x44F4
|
||||
|
|
|
|||
|
|
@ -1526,11 +1526,8 @@ static void rtw8922a_ctrl_nbtg_bt_tx(struct rtw89_dev *rtwdev, bool en,
|
|||
0x0, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BT_SHARE_A, B_BT_TRK_OFF_A, 0x0, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_OP1DB_A, B_OP1DB_A, 0x80, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_OP1DB1_A, B_TIA0_A, 0x80, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_OP1DB1_A, B_TIA1_A, 0x80, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_A, B_BACKOFF_IBADC_A,
|
||||
0x34, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_A, B_BACKOFF_LNA_A, 0x0, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_OP1DB1_A, B_TIA10_A, 0x8080, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_A, B_LNA_IBADC_A, 0x34, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BKOFF_A, B_BKOFF_IBADC_A, 0x34, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_FORCE_FIR_B, B_FORCE_FIR_B, 0x3, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_RXBY_WBADC_B, B_RXBY_WBADC_B,
|
||||
|
|
@ -1539,11 +1536,8 @@ static void rtw8922a_ctrl_nbtg_bt_tx(struct rtw89_dev *rtwdev, bool en,
|
|||
0x0, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BT_SHARE_B, B_BT_TRK_OFF_B, 0x0, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_LNA_OP, B_LNA6, 0x80, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_LNA_TIA, B_TIA0_B, 0x80, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_LNA_TIA, B_TIA1_B, 0x80, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_B, B_BACKOFF_IBADC_B,
|
||||
0x34, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_B, B_BACKOFF_LNA_B, 0x0, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_LNA_TIA, B_TIA10_B, 0x8080, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_B, B_LNA_IBADC_B, 0x34, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BKOFF_B, B_BKOFF_IBADC_B, 0x34, phy_idx);
|
||||
} else {
|
||||
rtw89_phy_write32_idx(rtwdev, R_FORCE_FIR_A, B_FORCE_FIR_A, 0x0, phy_idx);
|
||||
|
|
@ -1553,12 +1547,8 @@ static void rtw8922a_ctrl_nbtg_bt_tx(struct rtw89_dev *rtwdev, bool en,
|
|||
0x1, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BT_SHARE_A, B_BT_TRK_OFF_A, 0x1, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_OP1DB_A, B_OP1DB_A, 0x1a, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_OP1DB1_A, B_TIA0_A, 0x2a, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_OP1DB1_A, B_TIA1_A, 0x2a, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_A, B_BACKOFF_IBADC_A,
|
||||
0x26, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_A, B_BACKOFF_LNA_A,
|
||||
0x1e, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_OP1DB1_A, B_TIA10_A, 0x2a2a, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_A, B_LNA_IBADC_A, 0x7a6, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BKOFF_A, B_BKOFF_IBADC_A, 0x26, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_FORCE_FIR_B, B_FORCE_FIR_B, 0x0, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_RXBY_WBADC_B, B_RXBY_WBADC_B,
|
||||
|
|
@ -1567,12 +1557,8 @@ static void rtw8922a_ctrl_nbtg_bt_tx(struct rtw89_dev *rtwdev, bool en,
|
|||
0x1, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BT_SHARE_B, B_BT_TRK_OFF_B, 0x1, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_LNA_OP, B_LNA6, 0x20, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_LNA_TIA, B_TIA0_B, 0x30, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_LNA_TIA, B_TIA1_B, 0x2a, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_B, B_BACKOFF_IBADC_B,
|
||||
0x26, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_B, B_BACKOFF_LNA_B,
|
||||
0x1e, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_LNA_TIA, B_TIA10_B, 0x2a30, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BACKOFF_B, B_LNA_IBADC_B, 0x7a6, phy_idx);
|
||||
rtw89_phy_write32_idx(rtwdev, R_BKOFF_B, B_BKOFF_IBADC_B, 0x26, phy_idx);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user