xref: /freebsd/sys/contrib/dev/rtw89/rtw8852b_rfk_table.c (revision e2340276fc734a1f0bd0d2cf16fcfba7936c9462)
1*e2340276SBjoern A. Zeeb // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
2*e2340276SBjoern A. Zeeb /* Copyright(c) 2019-2020  Realtek Corporation
3*e2340276SBjoern A. Zeeb  */
4*e2340276SBjoern A. Zeeb 
5*e2340276SBjoern A. Zeeb #include "rtw8852b_rfk_table.h"
6*e2340276SBjoern A. Zeeb 
7*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_afe_init_defs[] = {
8*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC0D4, 0xffffffff, 0x4486888c),
9*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC0D8, 0xffffffff, 0xc6ba10e0),
10*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc0dc, 0xffffffff, 0x30c52868),
11*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc0e0, 0xffffffff, 0x05008128),
12*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc0e4, 0xffffffff, 0x0000272b),
13*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC1D4, 0xffffffff, 0x4486888c),
14*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC1D8, 0xffffffff, 0xc6ba10e0),
15*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc1dc, 0xffffffff, 0x30c52868),
16*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc1e0, 0xffffffff, 0x05008128),
17*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc1e4, 0xffffffff, 0x0000272b),
18*e2340276SBjoern A. Zeeb };
19*e2340276SBjoern A. Zeeb 
20*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_afe_init_defs);
21*e2340276SBjoern A. Zeeb 
22*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_check_addc_defs_a[] = {
23*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f4, BIT(24), 0x0),
24*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f8, 0x80000000, 0x1),
25*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f0, 0xff0000, 0x1),
26*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f0, 0xf00, 0x2),
27*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f0, 0xf, 0x0),
28*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f0, 0xc0, 0x2),
29*e2340276SBjoern A. Zeeb };
30*e2340276SBjoern A. Zeeb 
31*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_check_addc_defs_a);
32*e2340276SBjoern A. Zeeb 
33*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_check_addc_defs_b[] = {
34*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f4, BIT(24), 0x0),
35*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f8, 0x80000000, 0x1),
36*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f0, 0xff0000, 0x1),
37*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f0, 0xf00, 0x2),
38*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f0, 0xf, 0x0),
39*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20f0, 0xc0, 0x3),
40*e2340276SBjoern A. Zeeb };
41*e2340276SBjoern A. Zeeb 
42*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_check_addc_defs_b);
43*e2340276SBjoern A. Zeeb 
44*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_check_dadc_en_defs_a[] = {
45*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x032C, BIT(30), 0x0),
46*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x030C, 0x0f000000, 0xf),
47*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x030C, 0x0f000000, 0x3),
48*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x032C, BIT(16), 0x0),
49*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12dc, BIT(0), 0x1),
50*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12e8, BIT(2), 0x1),
51*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WRF(RF_PATH_A, 0x8f, BIT(13), 0x1),
52*e2340276SBjoern A. Zeeb };
53*e2340276SBjoern A. Zeeb 
54*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_check_dadc_en_defs_a);
55*e2340276SBjoern A. Zeeb 
56*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_check_dadc_en_defs_b[] = {
57*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x032C, BIT(30), 0x0),
58*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x030C, 0x0f000000, 0xf),
59*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x030C, 0x0f000000, 0x3),
60*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x032C, BIT(16), 0x0),
61*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32dc, BIT(0), 0x1),
62*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32e8, BIT(2), 0x1),
63*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WRF(RF_PATH_B, 0x8f, BIT(13), 0x1),
64*e2340276SBjoern A. Zeeb };
65*e2340276SBjoern A. Zeeb 
66*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_check_dadc_en_defs_b);
67*e2340276SBjoern A. Zeeb 
68*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_check_dadc_dis_defs_a[] = {
69*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12dc, BIT(0), 0x0),
70*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12e8, BIT(2), 0x0),
71*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WRF(RF_PATH_A, 0x8f, BIT(13), 0x0),
72*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x032C, BIT(16), 0x1),
73*e2340276SBjoern A. Zeeb };
74*e2340276SBjoern A. Zeeb 
75*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_check_dadc_dis_defs_a);
76*e2340276SBjoern A. Zeeb 
77*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_check_dadc_dis_defs_b[] = {
78*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32dc, BIT(0), 0x0),
79*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32e8, BIT(2), 0x0),
80*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WRF(RF_PATH_B, 0x8f, BIT(13), 0x0),
81*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x032C, BIT(16), 0x1),
82*e2340276SBjoern A. Zeeb };
83*e2340276SBjoern A. Zeeb 
84*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_check_dadc_dis_defs_b);
85*e2340276SBjoern A. Zeeb 
86*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_dack_s0_1_defs[] = {
87*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12A0, BIT(15), 0x1),
88*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12A0, 0x00007000, 0x3),
89*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12B8, BIT(30), 0x1),
90*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x030C, BIT(28), 0x1),
91*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x032C, 0x80000000, 0x0),
92*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC0D8, BIT(16), 0x1),
93*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc0dc, 0x0c000000, 0x3),
94*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC004, BIT(30), 0x0),
95*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc024, BIT(30), 0x0),
96*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC004, 0x3ff00000, 0x30),
97*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC004, 0xc0000000, 0x0),
98*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC004, BIT(17), 0x1),
99*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc024, BIT(17), 0x1),
100*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc00c, BIT(2), 0x0),
101*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc02c, BIT(2), 0x0),
102*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC004, BIT(0), 0x1),
103*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc024, BIT(0), 0x1),
104*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_DELAY(1),
105*e2340276SBjoern A. Zeeb };
106*e2340276SBjoern A. Zeeb 
107*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_dack_s0_1_defs);
108*e2340276SBjoern A. Zeeb 
109*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_dack_s0_2_defs[] = {
110*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc0dc, 0x0c000000, 0x0),
111*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc00c, BIT(2), 0x1),
112*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc02c, BIT(2), 0x1),
113*e2340276SBjoern A. Zeeb };
114*e2340276SBjoern A. Zeeb 
115*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_dack_s0_2_defs);
116*e2340276SBjoern A. Zeeb 
117*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_dack_s0_3_defs[] = {
118*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC004, BIT(0), 0x0),
119*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc024, BIT(0), 0x0),
120*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC0D8, BIT(16), 0x0),
121*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12A0, BIT(15), 0x0),
122*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12A0, 0x00007000, 0x7),
123*e2340276SBjoern A. Zeeb };
124*e2340276SBjoern A. Zeeb 
125*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_dack_s0_3_defs);
126*e2340276SBjoern A. Zeeb 
127*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_dack_s1_1_defs[] = {
128*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32a0, BIT(15), 0x1),
129*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32a0, 0x7000, 0x3),
130*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32B8, BIT(30), 0x1),
131*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x030C, BIT(28), 0x1),
132*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x032C, 0x80000000, 0x0),
133*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC1D8, BIT(16), 0x1),
134*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc1dc, 0x0c000000, 0x3),
135*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc104, BIT(30), 0x0),
136*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc124, BIT(30), 0x0),
137*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc104, 0x3ff00000, 0x30),
138*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc104, 0xc0000000, 0x0),
139*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc104, BIT(17), 0x1),
140*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc124, BIT(17), 0x1),
141*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc10c, BIT(2), 0x0),
142*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc12c, BIT(2), 0x0),
143*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc104, BIT(0), 0x1),
144*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc124, BIT(0), 0x1),
145*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_DELAY(1),
146*e2340276SBjoern A. Zeeb };
147*e2340276SBjoern A. Zeeb 
148*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_dack_s1_1_defs);
149*e2340276SBjoern A. Zeeb 
150*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_dack_s1_2_defs[] = {
151*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc1dc, 0x0c000000, 0x0),
152*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc10c, BIT(2), 0x1),
153*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc12c, BIT(2), 0x1),
154*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_DELAY(1),
155*e2340276SBjoern A. Zeeb };
156*e2340276SBjoern A. Zeeb 
157*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_dack_s1_2_defs);
158*e2340276SBjoern A. Zeeb 
159*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_dack_s1_3_defs[] = {
160*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc104, BIT(0), 0x0),
161*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xc124, BIT(0), 0x0),
162*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0xC1D8, BIT(16), 0x0),
163*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32a0, BIT(15), 0x0),
164*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32a0, 0x7000, 0x7),
165*e2340276SBjoern A. Zeeb };
166*e2340276SBjoern A. Zeeb 
167*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_dack_s1_3_defs);
168*e2340276SBjoern A. Zeeb 
169*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_dpk_afe_defs[] = {
170*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20fc, 0xffff0000, 0x0303),
171*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12b8, BIT(30), 0x1),
172*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32b8, BIT(30), 0x1),
173*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x030c, 0xff000000, 0x13),
174*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x032c, 0xffff0000, 0x0041),
175*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12b8, BIT(28), 0x1),
176*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58c8, BIT(24), 0x1),
177*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78c8, BIT(24), 0x1),
178*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5864, 0xc0000000, 0x3),
179*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7864, 0xc0000000, 0x3),
180*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x2008, 0x01FFFFFF, 0x1ffffff),
181*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0c1c, BIT(2), 0x1),
182*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0700, BIT(27), 0x1),
183*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0c70, 0x000003FF, 0x3ff),
184*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0c60, 0x00000003, 0x3),
185*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0c6c, BIT(0), 0x1),
186*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58ac, BIT(27), 0x1),
187*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78ac, BIT(27), 0x1),
188*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0c3c, BIT(9), 0x1),
189*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x2344, BIT(31), 0x1),
190*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x4490, BIT(31), 0x1),
191*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12a0, 0x000ff000, 0xbf),
192*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32a0, 0x000f0000, 0xb),
193*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0700, 0x07000000, 0x5),
194*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20fc, 0xffff0000, 0x3333),
195*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, BIT(15), 0x1),
196*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5800, 0x0000ffff, 0x0000),
197*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, BIT(15), 0x1),
198*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7800, 0x0000ffff, 0x0000),
199*e2340276SBjoern A. Zeeb };
200*e2340276SBjoern A. Zeeb 
201*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_dpk_afe_defs);
202*e2340276SBjoern A. Zeeb 
203*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_dpk_afe_restore_defs[] = {
204*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20fc, 0xffff0000, 0x0303),
205*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12b8, BIT(30), 0x0),
206*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32b8, BIT(30), 0x0),
207*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5864, 0xc0000000, 0x0),
208*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7864, 0xc0000000, 0x0),
209*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x2008, 0x01FFFFFF, 0x0),
210*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0c1c, BIT(2), 0x0),
211*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0700, BIT(27), 0x0),
212*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0c70, 0x000003FF, 0x63),
213*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12a0, 0x000FF000, 0x00),
214*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32a0, 0x000FF000, 0x00),
215*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0700, 0x07000000, 0x0),
216*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5864, BIT(29), 0x0),
217*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7864, BIT(29), 0x0),
218*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x20fc, 0xffff0000, 0x0000),
219*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58c8, BIT(24), 0x0),
220*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78c8, BIT(24), 0x0),
221*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0c3c, BIT(9), 0x0),
222*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, BIT(15), 0x0),
223*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58e4, 0x18000000, 0x1),
224*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58e4, 0x18000000, 0x2),
225*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, BIT(15), 0x0),
226*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78e4, 0x18000000, 0x1),
227*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78e4, 0x18000000, 0x2),
228*e2340276SBjoern A. Zeeb };
229*e2340276SBjoern A. Zeeb 
230*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_dpk_afe_restore_defs);
231*e2340276SBjoern A. Zeeb 
232*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_dpk_kip_defs[] = {
233*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x8008, 0xffffffff, 0x00000000),
234*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x8088, 0xffffffff, 0x80000000),
235*e2340276SBjoern A. Zeeb };
236*e2340276SBjoern A. Zeeb 
237*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_dpk_kip_defs);
238*e2340276SBjoern A. Zeeb 
239*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_sys_defs[] = {
240*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12a8, 0x0000000f, 0x5),
241*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32a8, 0x0000000f, 0x5),
242*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12bc, 0x000ffff0, 0x5555),
243*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32bc, 0x000ffff0, 0x5555),
244*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0300, 0xff000000, 0x16),
245*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0304, 0x000000ff, 0x19),
246*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0314, 0xffff0000, 0x2041),
247*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0318, 0xffffffff, 0x2041),
248*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0318, 0xffffffff, 0x20012041),
249*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0020, 0x00006000, 0x3),
250*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0024, 0x00006000, 0x3),
251*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0704, 0xffff0000, 0x601e),
252*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x2704, 0xffff0000, 0x601e),
253*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0700, 0xf0000000, 0x4),
254*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x2700, 0xf0000000, 0x4),
255*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0650, 0x3c000000, 0x0),
256*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x2650, 0x3c000000, 0x0),
257*e2340276SBjoern A. Zeeb };
258*e2340276SBjoern A. Zeeb 
259*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_sys_defs);
260*e2340276SBjoern A. Zeeb 
261*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_sys_a_defs_2g[] = {
262*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x120c, 0x000000ff, 0x33),
263*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12c0, 0x0ff00000, 0x33),
264*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58f8, 0x40000000, 0x1),
265*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1e),
266*e2340276SBjoern A. Zeeb };
267*e2340276SBjoern A. Zeeb 
268*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_sys_a_defs_2g);
269*e2340276SBjoern A. Zeeb 
270*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_sys_a_defs_5g[] = {
271*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x120c, 0x000000ff, 0x44),
272*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12c0, 0x0ff00000, 0x44),
273*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58f8, 0x40000000, 0x0),
274*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1d),
275*e2340276SBjoern A. Zeeb };
276*e2340276SBjoern A. Zeeb 
277*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_sys_a_defs_5g);
278*e2340276SBjoern A. Zeeb 
279*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_sys_b_defs_2g[] = {
280*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32c0, 0x0ff00000, 0x33),
281*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x320c, 0x000000ff, 0x33),
282*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78f8, 0x40000000, 0x1),
283*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1e),
284*e2340276SBjoern A. Zeeb };
285*e2340276SBjoern A. Zeeb 
286*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_sys_b_defs_2g);
287*e2340276SBjoern A. Zeeb 
288*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_sys_b_defs_5g[] = {
289*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32c0, 0x0ff00000, 0x44),
290*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x320c, 0x000000ff, 0x44),
291*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78f8, 0x40000000, 0x0),
292*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1d),
293*e2340276SBjoern A. Zeeb };
294*e2340276SBjoern A. Zeeb 
295*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_sys_b_defs_5g);
296*e2340276SBjoern A. Zeeb 
297*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_init_txpwr_defs_a[] = {
298*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x566c, 0x00001000, 0x0),
299*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5800, 0xffffffff, 0x003f807f),
300*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, 0x0000007f, 0x40),
301*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, 0x0fffff00, 0x00040),
302*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5810, 0xffffffff, 0x59010000),
303*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0x01ffffff, 0x002d000),
304*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0xf8000000, 0x00),
305*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5818, 0xffffffff, 0x002c1800),
306*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x581c, 0x3fffffff, 0x1dc80280),
307*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5820, 0xffffffff, 0x00002080),
308*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, 0x10000000, 0x1),
309*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, 0x40000000, 0x1),
310*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5834, 0x3fffffff, 0x000115f2),
311*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5838, 0x7fffffff, 0x0000121),
312*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5854, 0x3fffffff, 0x000115f2),
313*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5858, 0x7fffffff, 0x0000121),
314*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5860, 0x80000000, 0x0),
315*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5864, 0x07ffffff, 0x00801ff),
316*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5898, 0xffffffff, 0x00000000),
317*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x589c, 0xffffffff, 0x00000000),
318*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58a4, 0x000000ff, 0x16),
319*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b0, 0xffffffff, 0x00000000),
320*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b4, 0x7fffffff, 0x0a002000),
321*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b8, 0x7fffffff, 0x00007628),
322*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58bc, 0x07ffffff, 0x7a7807f),
323*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58c0, 0xfffe0000, 0x003f),
324*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58c4, 0xffffffff, 0x0003ffff),
325*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58c8, 0x00ffffff, 0x000000),
326*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58c8, 0xf0000000, 0x0),
327*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58cc, 0xffffffff, 0x00000000),
328*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58d0, 0x07ffffff, 0x2008101),
329*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58d4, 0x000000ff, 0x00),
330*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58d4, 0x0003fe00, 0x0ff),
331*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58d4, 0x07fc0000, 0x100),
332*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58d8, 0xffffffff, 0x8008016c),
333*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58dc, 0x0001ffff, 0x0807f),
334*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58dc, 0xfff00000, 0x800),
335*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58f0, 0x0003ffff, 0x001ff),
336*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58f4, 0x000fffff, 0x000),
337*e2340276SBjoern A. Zeeb };
338*e2340276SBjoern A. Zeeb 
339*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_init_txpwr_defs_a);
340*e2340276SBjoern A. Zeeb 
341*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_init_txpwr_defs_b[] = {
342*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x566c, 0x00001000, 0x0),
343*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7800, 0xffffffff, 0x003f807f),
344*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, 0x0000007f, 0x40),
345*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, 0x0fffff00, 0x00040),
346*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7810, 0xffffffff, 0x59010000),
347*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0x01ffffff, 0x002d000),
348*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0xf8000000, 0x00),
349*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7818, 0xffffffff, 0x002c1800),
350*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x781c, 0x3fffffff, 0x1dc80280),
351*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7820, 0xffffffff, 0x00002080),
352*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, 0x10000000, 0x1),
353*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, 0x40000000, 0x1),
354*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7834, 0x3fffffff, 0x000115f2),
355*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7838, 0x7fffffff, 0x0000121),
356*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7854, 0x3fffffff, 0x000115f2),
357*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7858, 0x7fffffff, 0x0000121),
358*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7860, 0x80000000, 0x0),
359*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7864, 0x07ffffff, 0x00801ff),
360*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7898, 0xffffffff, 0x00000000),
361*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x789c, 0xffffffff, 0x00000000),
362*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78a4, 0x000000ff, 0x16),
363*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78b0, 0xffffffff, 0x00000000),
364*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78b4, 0x7fffffff, 0x0a002000),
365*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78b8, 0x7fffffff, 0x00007628),
366*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78bc, 0x07ffffff, 0x7a7807f),
367*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78c0, 0xfffe0000, 0x003f),
368*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78c4, 0xffffffff, 0x0003ffff),
369*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78c8, 0x00ffffff, 0x000000),
370*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78c8, 0xf0000000, 0x0),
371*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78cc, 0xffffffff, 0x00000000),
372*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78d0, 0x07ffffff, 0x2008101),
373*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78d4, 0x000000ff, 0x00),
374*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78d4, 0x0003fe00, 0x0ff),
375*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78d4, 0x07fc0000, 0x100),
376*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78d8, 0xffffffff, 0x8008016c),
377*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78dc, 0x0001ffff, 0x0807f),
378*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78dc, 0xfff00000, 0x800),
379*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78f0, 0x0003ffff, 0x001ff),
380*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78f4, 0x000fffff, 0x000),
381*e2340276SBjoern A. Zeeb };
382*e2340276SBjoern A. Zeeb 
383*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_init_txpwr_defs_b);
384*e2340276SBjoern A. Zeeb 
385*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_init_txpwr_he_tb_defs_a[] = {
386*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58a0, 0xffffffff, 0x000000fe),
387*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58e4, 0x0000007f, 0x1f),
388*e2340276SBjoern A. Zeeb };
389*e2340276SBjoern A. Zeeb 
390*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_init_txpwr_he_tb_defs_a);
391*e2340276SBjoern A. Zeeb 
392*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_init_txpwr_he_tb_defs_b[] = {
393*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78a0, 0xffffffff, 0x000000fe),
394*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78e4, 0x0000007f, 0x1f),
395*e2340276SBjoern A. Zeeb };
396*e2340276SBjoern A. Zeeb 
397*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_init_txpwr_he_tb_defs_b);
398*e2340276SBjoern A. Zeeb 
399*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_dck_defs_a[] = {
400*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, 0x0fff0000, 0x000),
401*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0x003ff000, 0x0ef),
402*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0x18000000, 0x0),
403*e2340276SBjoern A. Zeeb };
404*e2340276SBjoern A. Zeeb 
405*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_dck_defs_a);
406*e2340276SBjoern A. Zeeb 
407*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_dck_defs_b[] = {
408*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, 0x0fff0000, 0x000),
409*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0x003ff000, 0x0ef),
410*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0x18000000, 0x0),
411*e2340276SBjoern A. Zeeb };
412*e2340276SBjoern A. Zeeb 
413*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_dck_defs_b);
414*e2340276SBjoern A. Zeeb 
415*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_dac_gain_defs_a[] = {
416*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b0, 0x00000400, 0x1),
417*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b0, 0x00000fff, 0x000),
418*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b0, 0x00000800, 0x1),
419*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a00, 0xffffffff, 0x00000000),
420*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a04, 0xffffffff, 0x00000000),
421*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a08, 0xffffffff, 0x00000000),
422*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a0c, 0xffffffff, 0x00000000),
423*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a10, 0xffffffff, 0x00000000),
424*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a14, 0xffffffff, 0x00000000),
425*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a18, 0xffffffff, 0x00000000),
426*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a1c, 0xffffffff, 0x00000000),
427*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a20, 0xffffffff, 0x00000000),
428*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a24, 0xffffffff, 0x00000000),
429*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a28, 0xffffffff, 0x00000000),
430*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a2c, 0xffffffff, 0x00000000),
431*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a30, 0xffffffff, 0x00000000),
432*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a34, 0xffffffff, 0x00000000),
433*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a38, 0xffffffff, 0x00000000),
434*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a3c, 0xffffffff, 0x00000000),
435*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a40, 0xffffffff, 0x00000000),
436*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a44, 0xffffffff, 0x00000000),
437*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a48, 0xffffffff, 0x00000000),
438*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a4c, 0xffffffff, 0x00000000),
439*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a50, 0xffffffff, 0x00000000),
440*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a54, 0xffffffff, 0x00000000),
441*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a58, 0xffffffff, 0x00000000),
442*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a5c, 0xffffffff, 0x00000000),
443*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a60, 0xffffffff, 0x00000000),
444*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a64, 0xffffffff, 0x00000000),
445*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a68, 0xffffffff, 0x00000000),
446*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a6c, 0xffffffff, 0x00000000),
447*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a70, 0xffffffff, 0x00000000),
448*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a74, 0xffffffff, 0x00000000),
449*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a78, 0xffffffff, 0x00000000),
450*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a7c, 0xffffffff, 0x00000000),
451*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a80, 0xffffffff, 0x00000000),
452*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a84, 0xffffffff, 0x00000000),
453*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a88, 0xffffffff, 0x00000000),
454*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a8c, 0xffffffff, 0x00000000),
455*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a90, 0xffffffff, 0x00000000),
456*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a94, 0xffffffff, 0x00000000),
457*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a98, 0xffffffff, 0x00000000),
458*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a9c, 0xffffffff, 0x00000000),
459*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5aa0, 0xffffffff, 0x00000000),
460*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5aa4, 0xffffffff, 0x00000000),
461*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5aa8, 0xffffffff, 0x00000000),
462*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5aac, 0xffffffff, 0x00000000),
463*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5ab0, 0xffffffff, 0x00000000),
464*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5ab4, 0xffffffff, 0x00000000),
465*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5ab8, 0xffffffff, 0x00000000),
466*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5abc, 0xffffffff, 0x00000000),
467*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5ac0, 0xffffffff, 0x00000000),
468*e2340276SBjoern A. Zeeb };
469*e2340276SBjoern A. Zeeb 
470*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_dac_gain_defs_a);
471*e2340276SBjoern A. Zeeb 
472*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_dac_gain_defs_b[] = {
473*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78b0, 0x00000fff, 0x000),
474*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78b0, 0x00000800, 0x1),
475*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a00, 0xffffffff, 0x00000000),
476*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a04, 0xffffffff, 0x00000000),
477*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a08, 0xffffffff, 0x00000000),
478*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a0c, 0xffffffff, 0x00000000),
479*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a10, 0xffffffff, 0x00000000),
480*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a14, 0xffffffff, 0x00000000),
481*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a18, 0xffffffff, 0x00000000),
482*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a1c, 0xffffffff, 0x00000000),
483*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a20, 0xffffffff, 0x00000000),
484*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a24, 0xffffffff, 0x00000000),
485*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a28, 0xffffffff, 0x00000000),
486*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a2c, 0xffffffff, 0x00000000),
487*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a30, 0xffffffff, 0x00000000),
488*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a34, 0xffffffff, 0x00000000),
489*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a38, 0xffffffff, 0x00000000),
490*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a3c, 0xffffffff, 0x00000000),
491*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a40, 0xffffffff, 0x00000000),
492*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a44, 0xffffffff, 0x00000000),
493*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a48, 0xffffffff, 0x00000000),
494*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a4c, 0xffffffff, 0x00000000),
495*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a50, 0xffffffff, 0x00000000),
496*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a54, 0xffffffff, 0x00000000),
497*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a58, 0xffffffff, 0x00000000),
498*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a5c, 0xffffffff, 0x00000000),
499*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a60, 0xffffffff, 0x00000000),
500*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a64, 0xffffffff, 0x00000000),
501*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a68, 0xffffffff, 0x00000000),
502*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a6c, 0xffffffff, 0x00000000),
503*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a70, 0xffffffff, 0x00000000),
504*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a74, 0xffffffff, 0x00000000),
505*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a78, 0xffffffff, 0x00000000),
506*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a7c, 0xffffffff, 0x00000000),
507*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a80, 0xffffffff, 0x00000000),
508*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a84, 0xffffffff, 0x00000000),
509*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a88, 0xffffffff, 0x00000000),
510*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a8c, 0xffffffff, 0x00000000),
511*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a90, 0xffffffff, 0x00000000),
512*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a94, 0xffffffff, 0x00000000),
513*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a98, 0xffffffff, 0x00000000),
514*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a9c, 0xffffffff, 0x00000000),
515*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7aa0, 0xffffffff, 0x00000000),
516*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7aa4, 0xffffffff, 0x00000000),
517*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7aa8, 0xffffffff, 0x00000000),
518*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7aac, 0xffffffff, 0x00000000),
519*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7ab0, 0xffffffff, 0x00000000),
520*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7ab4, 0xffffffff, 0x00000000),
521*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7ab8, 0xffffffff, 0x00000000),
522*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7abc, 0xffffffff, 0x00000000),
523*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7ac0, 0xffffffff, 0x00000000),
524*e2340276SBjoern A. Zeeb };
525*e2340276SBjoern A. Zeeb 
526*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_dac_gain_defs_b);
527*e2340276SBjoern A. Zeeb 
528*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_slope_a_defs_2g[] = {
529*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5608, 0x07ffffff, 0x0801008),
530*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x560c, 0x07ffffff, 0x0201020),
531*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5610, 0x07ffffff, 0x0201008),
532*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5614, 0x07ffffff, 0x0804008),
533*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5618, 0x07ffffff, 0x0201008),
534*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x561c, 0x000001ff, 0x008),
535*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x561c, 0xffff0000, 0x0808),
536*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5620, 0xffffffff, 0x08081e28),
537*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5624, 0xffffffff, 0x08080808),
538*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5628, 0xffffffff, 0x08081e28),
539*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x562c, 0x0000ffff, 0x0808),
540*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x581c, 0x00100000, 0x1),
541*e2340276SBjoern A. Zeeb };
542*e2340276SBjoern A. Zeeb 
543*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_slope_a_defs_2g);
544*e2340276SBjoern A. Zeeb 
545*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_slope_a_defs_5g[] = {
546*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5608, 0x07ffffff, 0x0201008),
547*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x560c, 0x07ffffff, 0x0201020),
548*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5610, 0x07ffffff, 0x0201008),
549*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5614, 0x07ffffff, 0x0201008),
550*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5618, 0x07ffffff, 0x0201008),
551*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x561c, 0x000001ff, 0x008),
552*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x561c, 0xffff0000, 0x0808),
553*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5620, 0xffffffff, 0x08081e08),
554*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5624, 0xffffffff, 0x08080808),
555*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5628, 0xffffffff, 0x08080808),
556*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x562c, 0x0000ffff, 0x0808),
557*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x581c, 0x00100000, 0x1),
558*e2340276SBjoern A. Zeeb };
559*e2340276SBjoern A. Zeeb 
560*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_slope_a_defs_5g);
561*e2340276SBjoern A. Zeeb 
562*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_slope_b_defs_2g[] = {
563*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7608, 0x07ffffff, 0x0801008),
564*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x760c, 0x07ffffff, 0x0201020),
565*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7610, 0x07ffffff, 0x0201008),
566*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7614, 0x07ffffff, 0x0804008),
567*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7618, 0x07ffffff, 0x0201008),
568*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x761c, 0x000001ff, 0x008),
569*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x761c, 0xffff0000, 0x0808),
570*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7620, 0xffffffff, 0x08081e28),
571*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7624, 0xffffffff, 0x08080808),
572*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7628, 0xffffffff, 0x08081e28),
573*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x762c, 0x0000ffff, 0x0808),
574*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x781c, 0x00100000, 0x1),
575*e2340276SBjoern A. Zeeb };
576*e2340276SBjoern A. Zeeb 
577*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_slope_b_defs_2g);
578*e2340276SBjoern A. Zeeb 
579*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_slope_b_defs_5g[] = {
580*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7608, 0x07ffffff, 0x0201008),
581*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x760c, 0x07ffffff, 0x0201020),
582*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7610, 0x07ffffff, 0x0201008),
583*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7614, 0x07ffffff, 0x0201008),
584*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7618, 0x07ffffff, 0x0201008),
585*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x761c, 0x000001ff, 0x008),
586*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x761c, 0xffff0000, 0x0808),
587*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7620, 0xffffffff, 0x08081e08),
588*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7624, 0xffffffff, 0x08080808),
589*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7628, 0xffffffff, 0x08080808),
590*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x762c, 0x0000ffff, 0x0808),
591*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x781c, 0x00100000, 0x1),
592*e2340276SBjoern A. Zeeb };
593*e2340276SBjoern A. Zeeb 
594*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_slope_b_defs_5g);
595*e2340276SBjoern A. Zeeb 
596*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_a_2g_all_defs[] = {
597*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1),
598*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721),
599*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101),
600*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x01ef27af),
601*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000075),
602*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000),
603*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x017f13ae),
604*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x0000006e),
605*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000),
606*e2340276SBjoern A. Zeeb };
607*e2340276SBjoern A. Zeeb 
608*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_a_2g_all_defs);
609*e2340276SBjoern A. Zeeb 
610*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_a_2g_part_defs[] = {
611*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x01ef27af),
612*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000075),
613*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x017f13ae),
614*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x0000006e),
615*e2340276SBjoern A. Zeeb };
616*e2340276SBjoern A. Zeeb 
617*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_a_2g_part_defs);
618*e2340276SBjoern A. Zeeb 
619*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_a_5g1_all_defs[] = {
620*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1),
621*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721),
622*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101),
623*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x016037e7),
624*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x0000006f),
625*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000),
626*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000),
627*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000),
628*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000),
629*e2340276SBjoern A. Zeeb };
630*e2340276SBjoern A. Zeeb 
631*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_a_5g1_all_defs);
632*e2340276SBjoern A. Zeeb 
633*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_a_5g1_part_defs[] = {
634*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x016037e7),
635*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x0000006f),
636*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000),
637*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000),
638*e2340276SBjoern A. Zeeb };
639*e2340276SBjoern A. Zeeb 
640*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_a_5g1_part_defs);
641*e2340276SBjoern A. Zeeb 
642*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_a_5g2_all_defs[] = {
643*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1),
644*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721),
645*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101),
646*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x01f053f1),
647*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000070),
648*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000),
649*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000),
650*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000),
651*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000),
652*e2340276SBjoern A. Zeeb };
653*e2340276SBjoern A. Zeeb 
654*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_a_5g2_all_defs);
655*e2340276SBjoern A. Zeeb 
656*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_a_5g2_part_defs[] = {
657*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x01f053f1),
658*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000070),
659*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000),
660*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000),
661*e2340276SBjoern A. Zeeb };
662*e2340276SBjoern A. Zeeb 
663*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_a_5g2_part_defs);
664*e2340276SBjoern A. Zeeb 
665*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_a_5g3_all_defs[] = {
666*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1),
667*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721),
668*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101),
669*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x01c047ee),
670*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000070),
671*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000),
672*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000),
673*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000),
674*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000),
675*e2340276SBjoern A. Zeeb };
676*e2340276SBjoern A. Zeeb 
677*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_a_5g3_all_defs);
678*e2340276SBjoern A. Zeeb 
679*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_a_5g3_part_defs[] = {
680*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x01c047ee),
681*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000070),
682*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000),
683*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000),
684*e2340276SBjoern A. Zeeb };
685*e2340276SBjoern A. Zeeb 
686*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_a_5g3_part_defs);
687*e2340276SBjoern A. Zeeb 
688*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_b_2g_all_defs[] = {
689*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1),
690*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721),
691*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101),
692*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x01ff2bb5),
693*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000078),
694*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000),
695*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x018f2bb0),
696*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000072),
697*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000),
698*e2340276SBjoern A. Zeeb };
699*e2340276SBjoern A. Zeeb 
700*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_b_2g_all_defs);
701*e2340276SBjoern A. Zeeb 
702*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_b_2g_part_defs[] = {
703*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x01ff2bb5),
704*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000078),
705*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x018f2bb0),
706*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000072),
707*e2340276SBjoern A. Zeeb };
708*e2340276SBjoern A. Zeeb 
709*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_b_2g_part_defs);
710*e2340276SBjoern A. Zeeb 
711*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_b_5g1_all_defs[] = {
712*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1),
713*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721),
714*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101),
715*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x009003da),
716*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000069),
717*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000),
718*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000),
719*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000),
720*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000),
721*e2340276SBjoern A. Zeeb };
722*e2340276SBjoern A. Zeeb 
723*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_b_5g1_all_defs);
724*e2340276SBjoern A. Zeeb 
725*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_b_5g1_part_defs[] = {
726*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x009003da),
727*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000069),
728*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000),
729*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000),
730*e2340276SBjoern A. Zeeb };
731*e2340276SBjoern A. Zeeb 
732*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_b_5g1_part_defs);
733*e2340276SBjoern A. Zeeb 
734*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_b_5g2_all_defs[] = {
735*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1),
736*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721),
737*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101),
738*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x013027e6),
739*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000069),
740*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000),
741*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000),
742*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000),
743*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000),
744*e2340276SBjoern A. Zeeb };
745*e2340276SBjoern A. Zeeb 
746*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_b_5g2_all_defs);
747*e2340276SBjoern A. Zeeb 
748*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_b_5g2_part_defs[] = {
749*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x013027e6),
750*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000069),
751*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000),
752*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000),
753*e2340276SBjoern A. Zeeb };
754*e2340276SBjoern A. Zeeb 
755*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_b_5g2_part_defs);
756*e2340276SBjoern A. Zeeb 
757*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_b_5g3_all_defs[] = {
758*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1),
759*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721),
760*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101),
761*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x009003da),
762*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000069),
763*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000),
764*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000),
765*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000),
766*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000),
767*e2340276SBjoern A. Zeeb };
768*e2340276SBjoern A. Zeeb 
769*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_b_5g3_all_defs);
770*e2340276SBjoern A. Zeeb 
771*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_align_b_5g3_part_defs[] = {
772*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x009003da),
773*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000069),
774*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000),
775*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000),
776*e2340276SBjoern A. Zeeb };
777*e2340276SBjoern A. Zeeb 
778*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_align_b_5g3_part_defs);
779*e2340276SBjoern A. Zeeb 
780*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_slope_defs_a[] = {
781*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0x00000800, 0x1),
782*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x581c, 0x20000000, 0x1),
783*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0x20000000, 0x1),
784*e2340276SBjoern A. Zeeb };
785*e2340276SBjoern A. Zeeb 
786*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_slope_defs_a);
787*e2340276SBjoern A. Zeeb 
788*e2340276SBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852b_tssi_slope_defs_b[] = {
789*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0x00000800, 0x1),
790*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x781c, 0x20000000, 0x1),
791*e2340276SBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0x20000000, 0x1),
792*e2340276SBjoern A. Zeeb };
793*e2340276SBjoern A. Zeeb 
794*e2340276SBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852b_tssi_slope_defs_b);
795