xref: /freebsd/sys/contrib/dev/rtw89/rtw8852bt_rfk_table.c (revision 6d67aabd63555ab62a2f2b7f52a75ef100a2fe75)
1*6d67aabdSBjoern A. Zeeb // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
2*6d67aabdSBjoern A. Zeeb /* Copyright(c) 2024 Realtek Corporation
3*6d67aabdSBjoern A. Zeeb  */
4*6d67aabdSBjoern A. Zeeb 
5*6d67aabdSBjoern A. Zeeb #include "rtw8852bt_rfk_table.h"
6*6d67aabdSBjoern A. Zeeb 
7*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_sys_defs[] = {
8*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12a8, 0x0000000f, 0x4),
9*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32a8, 0x0000000f, 0x4),
10*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12bc, 0x000ffff0, 0x5555),
11*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32bc, 0x000ffff0, 0x5555),
12*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0300, 0xff000000, 0x16),
13*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0304, 0x000000ff, 0x19),
14*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0314, 0xffff0000, 0x2041),
15*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0318, 0xffffffff, 0x2041),
16*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0318, 0xffffffff, 0x20012041),
17*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0020, 0x00006000, 0x3),
18*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0024, 0x00006000, 0x3),
19*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0704, 0xffff0000, 0x601e),
20*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x2704, 0xffff0000, 0x601e),
21*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0700, 0xf0000000, 0x4),
22*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x2700, 0xf0000000, 0x4),
23*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0650, 0x3c000000, 0x0),
24*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x2650, 0x3c000000, 0x0),
25*6d67aabdSBjoern A. Zeeb };
26*6d67aabdSBjoern A. Zeeb 
27*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_sys_defs);
28*6d67aabdSBjoern A. Zeeb 
29*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_sys_a_defs_2g[] = {
30*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x120c, 0x000000ff, 0x33),
31*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12c0, 0x0ff00000, 0x33),
32*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58f8, 0x40000000, 0x1),
33*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1e),
34*6d67aabdSBjoern A. Zeeb };
35*6d67aabdSBjoern A. Zeeb 
36*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_sys_a_defs_2g);
37*6d67aabdSBjoern A. Zeeb 
38*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_sys_a_defs_5g[] = {
39*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x120c, 0x000000ff, 0x44),
40*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x12c0, 0x0ff00000, 0x44),
41*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58f8, 0x40000000, 0x0),
42*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1d),
43*6d67aabdSBjoern A. Zeeb };
44*6d67aabdSBjoern A. Zeeb 
45*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_sys_a_defs_5g);
46*6d67aabdSBjoern A. Zeeb 
47*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_sys_b_defs_2g[] = {
48*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32c0, 0x0ff00000, 0x33),
49*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x320c, 0x000000ff, 0x33),
50*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78f8, 0x40000000, 0x1),
51*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1e),
52*6d67aabdSBjoern A. Zeeb };
53*6d67aabdSBjoern A. Zeeb 
54*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_sys_b_defs_2g);
55*6d67aabdSBjoern A. Zeeb 
56*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_sys_b_defs_5g[] = {
57*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x32c0, 0x0ff00000, 0x44),
58*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x320c, 0x000000ff, 0x44),
59*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78f8, 0x40000000, 0x0),
60*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1d),
61*6d67aabdSBjoern A. Zeeb };
62*6d67aabdSBjoern A. Zeeb 
63*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_sys_b_defs_5g);
64*6d67aabdSBjoern A. Zeeb 
65*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_init_txpwr_defs_a[] = {
66*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x566c, 0x00001000, 0x0),
67*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5800, 0xffffffff, 0x003f807f),
68*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, 0x0000007f, 0x40),
69*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, 0x0fffff00, 0x00040),
70*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5810, 0xffffffff, 0x59010000),
71*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0x01ffffff, 0x002d000),
72*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0xf8000000, 0x00),
73*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5818, 0xffffffff, 0x002c1800),
74*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x581c, 0x3fffffff, 0x1dc80280),
75*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5820, 0xffffffff, 0x00002080),
76*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, 0x10000000, 0x1),
77*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, 0x40000000, 0x1),
78*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5834, 0x3fffffff, 0x000115f2),
79*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5838, 0x7fffffff, 0x0000121),
80*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5854, 0x3fffffff, 0x000115f2),
81*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5858, 0x7fffffff, 0x0000121),
82*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5860, 0x80000000, 0x0),
83*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5864, 0x07ffffff, 0x00801ff),
84*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5898, 0xffffffff, 0x00000000),
85*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x589c, 0xffffffff, 0x00000000),
86*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58a4, 0x000000ff, 0x16),
87*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b0, 0xffffffff, 0x00000000),
88*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b4, 0x7fffffff, 0x0a002000),
89*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b8, 0x7fffffff, 0x00007628),
90*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58bc, 0x07ffffff, 0x7a7807f),
91*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58c0, 0xfffe0000, 0x003f),
92*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58c4, 0xffffffff, 0x0003ffff),
93*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58c8, 0x00ffffff, 0x000000),
94*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58c8, 0xf0000000, 0x0),
95*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58cc, 0xffffffff, 0x00000000),
96*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58d0, 0x07ffffff, 0x2008101),
97*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58d4, 0x000000ff, 0x00),
98*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58d4, 0x0003fe00, 0x0ff),
99*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58d4, 0x07fc0000, 0x100),
100*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58d8, 0xffffffff, 0x8008016c),
101*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58dc, 0x0001ffff, 0x0807f),
102*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58dc, 0xfff00000, 0xc00),
103*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58f0, 0x0003ffff, 0x001ff),
104*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58f4, 0x000fffff, 0x000),
105*6d67aabdSBjoern A. Zeeb };
106*6d67aabdSBjoern A. Zeeb 
107*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_init_txpwr_defs_a);
108*6d67aabdSBjoern A. Zeeb 
109*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_init_txpwr_defs_b[] = {
110*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x566c, 0x00001000, 0x0),
111*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7800, 0xffffffff, 0x003f807f),
112*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, 0x0000007f, 0x40),
113*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, 0x0fffff00, 0x00040),
114*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7810, 0xffffffff, 0x59010000),
115*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0x01ffffff, 0x002d000),
116*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0xf8000000, 0x00),
117*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7818, 0xffffffff, 0x002c1800),
118*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x781c, 0x3fffffff, 0x1dc80280),
119*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7820, 0xffffffff, 0x00002080),
120*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, 0x10000000, 0x1),
121*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, 0x40000000, 0x1),
122*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7834, 0x3fffffff, 0x000115f2),
123*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7838, 0x7fffffff, 0x0000121),
124*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7854, 0x3fffffff, 0x000115f2),
125*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7858, 0x7fffffff, 0x0000121),
126*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7860, 0x80000000, 0x0),
127*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7864, 0x07ffffff, 0x00801ff),
128*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7898, 0xffffffff, 0x00000000),
129*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x789c, 0xffffffff, 0x00000000),
130*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78a4, 0x000000ff, 0x16),
131*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78b0, 0xffffffff, 0x00000000),
132*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78b4, 0x7fffffff, 0x0a002000),
133*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78b8, 0x7fffffff, 0x00007628),
134*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78bc, 0x07ffffff, 0x7a7807f),
135*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78c0, 0xfffe0000, 0x003f),
136*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78c4, 0xffffffff, 0x0003ffff),
137*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78c8, 0x00ffffff, 0x000000),
138*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78c8, 0xf0000000, 0x0),
139*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78cc, 0xffffffff, 0x00000000),
140*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78d0, 0x07ffffff, 0x2008101),
141*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78d4, 0x000000ff, 0x00),
142*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78d4, 0x0003fe00, 0x0ff),
143*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78d4, 0x07fc0000, 0x100),
144*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78d8, 0xffffffff, 0x8008016c),
145*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78dc, 0x0001ffff, 0x0807f),
146*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78dc, 0xfff00000, 0xc00),
147*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78f0, 0x0003ffff, 0x001ff),
148*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78f4, 0x000fffff, 0x000),
149*6d67aabdSBjoern A. Zeeb };
150*6d67aabdSBjoern A. Zeeb 
151*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_init_txpwr_defs_b);
152*6d67aabdSBjoern A. Zeeb 
153*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_init_txpwr_he_tb_defs_a[] = {
154*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58a0, 0xffffffff, 0x000000fe),
155*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58e4, 0x0000007f, 0x1f),
156*6d67aabdSBjoern A. Zeeb };
157*6d67aabdSBjoern A. Zeeb 
158*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_init_txpwr_he_tb_defs_a);
159*6d67aabdSBjoern A. Zeeb 
160*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_init_txpwr_he_tb_defs_b[] = {
161*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78a0, 0xffffffff, 0x000000fe),
162*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78e4, 0x0000007f, 0x1f),
163*6d67aabdSBjoern A. Zeeb };
164*6d67aabdSBjoern A. Zeeb 
165*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_init_txpwr_he_tb_defs_b);
166*6d67aabdSBjoern A. Zeeb 
167*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_dck_defs_a[] = {
168*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x580c, 0x0fff0000, 0x000),
169*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0x003ff000, 0x0ef),
170*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0x18000000, 0x0),
171*6d67aabdSBjoern A. Zeeb };
172*6d67aabdSBjoern A. Zeeb 
173*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_dck_defs_a);
174*6d67aabdSBjoern A. Zeeb 
175*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_dck_defs_b[] = {
176*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x780c, 0x0fff0000, 0x000),
177*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0x003ff000, 0x0ef),
178*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0x18000000, 0x0),
179*6d67aabdSBjoern A. Zeeb };
180*6d67aabdSBjoern A. Zeeb 
181*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_dck_defs_b);
182*6d67aabdSBjoern A. Zeeb 
183*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_dac_gain_defs_a[] = {
184*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b0, 0x00000400, 0x1),
185*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b0, 0x00000fff, 0x000),
186*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x58b0, 0x00000800, 0x1),
187*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a00, 0xffffffff, 0x00000000),
188*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a04, 0xffffffff, 0x00000000),
189*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a08, 0xffffffff, 0x00000000),
190*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a0c, 0xffffffff, 0x00000000),
191*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a10, 0xffffffff, 0x00000000),
192*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a14, 0xffffffff, 0x00000000),
193*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a18, 0xffffffff, 0x00000000),
194*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a1c, 0xffffffff, 0x00000000),
195*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a20, 0xffffffff, 0x00000000),
196*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a24, 0xffffffff, 0x00000000),
197*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a28, 0xffffffff, 0x00000000),
198*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a2c, 0xffffffff, 0x00000000),
199*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a30, 0xffffffff, 0x00000000),
200*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a34, 0xffffffff, 0x00000000),
201*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a38, 0xffffffff, 0x00000000),
202*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a3c, 0xffffffff, 0x00000000),
203*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a40, 0xffffffff, 0x00000000),
204*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a44, 0xffffffff, 0x00000000),
205*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a48, 0xffffffff, 0x00000000),
206*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a4c, 0xffffffff, 0x00000000),
207*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a50, 0xffffffff, 0x00000000),
208*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a54, 0xffffffff, 0x00000000),
209*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a58, 0xffffffff, 0x00000000),
210*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a5c, 0xffffffff, 0x00000000),
211*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a60, 0xffffffff, 0x00000000),
212*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a64, 0xffffffff, 0x00000000),
213*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a68, 0xffffffff, 0x00000000),
214*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a6c, 0xffffffff, 0x00000000),
215*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a70, 0xffffffff, 0x00000000),
216*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a74, 0xffffffff, 0x00000000),
217*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a78, 0xffffffff, 0x00000000),
218*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a7c, 0xffffffff, 0x00000000),
219*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a80, 0xffffffff, 0x00000000),
220*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a84, 0xffffffff, 0x00000000),
221*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a88, 0xffffffff, 0x00000000),
222*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a8c, 0xffffffff, 0x00000000),
223*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a90, 0xffffffff, 0x00000000),
224*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a94, 0xffffffff, 0x00000000),
225*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a98, 0xffffffff, 0x00000000),
226*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5a9c, 0xffffffff, 0x00000000),
227*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5aa0, 0xffffffff, 0x00000000),
228*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5aa4, 0xffffffff, 0x00000000),
229*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5aa8, 0xffffffff, 0x00000000),
230*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5aac, 0xffffffff, 0x00000000),
231*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5ab0, 0xffffffff, 0x00000000),
232*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5ab4, 0xffffffff, 0x00000000),
233*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5ab8, 0xffffffff, 0x00000000),
234*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5abc, 0xffffffff, 0x00000000),
235*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5ac0, 0xffffffff, 0x00000000),
236*6d67aabdSBjoern A. Zeeb };
237*6d67aabdSBjoern A. Zeeb 
238*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_dac_gain_defs_a);
239*6d67aabdSBjoern A. Zeeb 
240*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_dac_gain_defs_b[] = {
241*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78b0, 0x00000fff, 0x000),
242*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x78b0, 0x00000800, 0x1),
243*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a00, 0xffffffff, 0x00000000),
244*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a04, 0xffffffff, 0x00000000),
245*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a08, 0xffffffff, 0x00000000),
246*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a0c, 0xffffffff, 0x00000000),
247*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a10, 0xffffffff, 0x00000000),
248*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a14, 0xffffffff, 0x00000000),
249*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a18, 0xffffffff, 0x00000000),
250*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a1c, 0xffffffff, 0x00000000),
251*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a20, 0xffffffff, 0x00000000),
252*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a24, 0xffffffff, 0x00000000),
253*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a28, 0xffffffff, 0x00000000),
254*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a2c, 0xffffffff, 0x00000000),
255*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a30, 0xffffffff, 0x00000000),
256*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a34, 0xffffffff, 0x00000000),
257*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a38, 0xffffffff, 0x00000000),
258*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a3c, 0xffffffff, 0x00000000),
259*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a40, 0xffffffff, 0x00000000),
260*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a44, 0xffffffff, 0x00000000),
261*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a48, 0xffffffff, 0x00000000),
262*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a4c, 0xffffffff, 0x00000000),
263*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a50, 0xffffffff, 0x00000000),
264*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a54, 0xffffffff, 0x00000000),
265*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a58, 0xffffffff, 0x00000000),
266*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a5c, 0xffffffff, 0x00000000),
267*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a60, 0xffffffff, 0x00000000),
268*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a64, 0xffffffff, 0x00000000),
269*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a68, 0xffffffff, 0x00000000),
270*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a6c, 0xffffffff, 0x00000000),
271*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a70, 0xffffffff, 0x00000000),
272*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a74, 0xffffffff, 0x00000000),
273*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a78, 0xffffffff, 0x00000000),
274*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a7c, 0xffffffff, 0x00000000),
275*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a80, 0xffffffff, 0x00000000),
276*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a84, 0xffffffff, 0x00000000),
277*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a88, 0xffffffff, 0x00000000),
278*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a8c, 0xffffffff, 0x00000000),
279*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a90, 0xffffffff, 0x00000000),
280*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a94, 0xffffffff, 0x00000000),
281*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a98, 0xffffffff, 0x00000000),
282*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7a9c, 0xffffffff, 0x00000000),
283*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7aa0, 0xffffffff, 0x00000000),
284*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7aa4, 0xffffffff, 0x00000000),
285*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7aa8, 0xffffffff, 0x00000000),
286*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7aac, 0xffffffff, 0x00000000),
287*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7ab0, 0xffffffff, 0x00000000),
288*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7ab4, 0xffffffff, 0x00000000),
289*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7ab8, 0xffffffff, 0x00000000),
290*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7abc, 0xffffffff, 0x00000000),
291*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7ac0, 0xffffffff, 0x00000000),
292*6d67aabdSBjoern A. Zeeb };
293*6d67aabdSBjoern A. Zeeb 
294*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_dac_gain_defs_b);
295*6d67aabdSBjoern A. Zeeb 
296*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_a_defs_2g[] = {
297*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5608, 0x07ffffff, 0x0801008),
298*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x560c, 0x07ffffff, 0x0201020),
299*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5610, 0x07ffffff, 0x0201008),
300*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5614, 0x07ffffff, 0x0804008),
301*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5618, 0x07ffffff, 0x0201008),
302*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x561c, 0x000001ff, 0x008),
303*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x561c, 0xffff0000, 0x0808),
304*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5620, 0xffffffff, 0x08081e28),
305*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5624, 0xffffffff, 0x08080808),
306*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5628, 0xffffffff, 0x08081e28),
307*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x562c, 0x0000ffff, 0x0808),
308*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x581c, 0x00100000, 0x1),
309*6d67aabdSBjoern A. Zeeb };
310*6d67aabdSBjoern A. Zeeb 
311*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_a_defs_2g);
312*6d67aabdSBjoern A. Zeeb 
313*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_a_defs_5g[] = {
314*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5608, 0x07ffffff, 0x0201008),
315*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x560c, 0x07ffffff, 0x0201019),
316*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5610, 0x07ffffff, 0x0201008),
317*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5614, 0x07ffffff, 0x0201008),
318*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5618, 0x07ffffff, 0x0201008),
319*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x561c, 0x000001ff, 0x008),
320*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x561c, 0xffff0000, 0x0808),
321*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5620, 0xffffffff, 0x08081808),
322*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5624, 0xffffffff, 0x08080808),
323*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5628, 0xffffffff, 0x08080808),
324*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x562c, 0x0000ffff, 0x0808),
325*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x581c, 0x00100000, 0x1),
326*6d67aabdSBjoern A. Zeeb };
327*6d67aabdSBjoern A. Zeeb 
328*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_a_defs_5g);
329*6d67aabdSBjoern A. Zeeb 
330*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_b_defs_2g[] = {
331*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7608, 0x07ffffff, 0x0801008),
332*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x760c, 0x07ffffff, 0x0201020),
333*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7610, 0x07ffffff, 0x0201008),
334*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7614, 0x07ffffff, 0x0804008),
335*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7618, 0x07ffffff, 0x0201008),
336*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x761c, 0x000001ff, 0x008),
337*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x761c, 0xffff0000, 0x0808),
338*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7620, 0xffffffff, 0x08081e28),
339*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7624, 0xffffffff, 0x08080808),
340*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7628, 0xffffffff, 0x08081e28),
341*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x762c, 0x0000ffff, 0x0808),
342*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x781c, 0x00100000, 0x1),
343*6d67aabdSBjoern A. Zeeb };
344*6d67aabdSBjoern A. Zeeb 
345*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_b_defs_2g);
346*6d67aabdSBjoern A. Zeeb 
347*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_b_defs_5g[] = {
348*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7608, 0x07ffffff, 0x0201008),
349*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x760c, 0x07ffffff, 0x0201019),
350*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7610, 0x07ffffff, 0x0201008),
351*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7614, 0x07ffffff, 0x0201008),
352*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7618, 0x07ffffff, 0x0201008),
353*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x761c, 0x000001ff, 0x008),
354*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x761c, 0xffff0000, 0x0808),
355*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7620, 0xffffffff, 0x08081808),
356*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7624, 0xffffffff, 0x08080808),
357*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7628, 0xffffffff, 0x08080808),
358*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x762c, 0x0000ffff, 0x0808),
359*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x781c, 0x00100000, 0x1),
360*6d67aabdSBjoern A. Zeeb };
361*6d67aabdSBjoern A. Zeeb 
362*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_b_defs_5g);
363*6d67aabdSBjoern A. Zeeb 
364*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_a_2g_all_defs[] = {
365*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1),
366*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721),
367*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101),
368*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x029f57c0),
369*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000077),
370*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000),
371*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x029f5bc0),
372*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000076),
373*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000),
374*6d67aabdSBjoern A. Zeeb };
375*6d67aabdSBjoern A. Zeeb 
376*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_a_2g_all_defs);
377*6d67aabdSBjoern A. Zeeb 
378*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_a_5g1_all_defs[] = {
379*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1),
380*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721),
381*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101),
382*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x007ff3d7),
383*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000068),
384*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000),
385*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000),
386*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000),
387*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000),
388*6d67aabdSBjoern A. Zeeb };
389*6d67aabdSBjoern A. Zeeb 
390*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_a_5g1_all_defs);
391*6d67aabdSBjoern A. Zeeb 
392*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_a_5g2_all_defs[] = {
393*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1),
394*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721),
395*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101),
396*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x00a003db),
397*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000065),
398*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000),
399*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000),
400*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000),
401*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000),
402*6d67aabdSBjoern A. Zeeb };
403*6d67aabdSBjoern A. Zeeb 
404*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_a_5g2_all_defs);
405*6d67aabdSBjoern A. Zeeb 
406*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_a_5g3_all_defs[] = {
407*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1),
408*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721),
409*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101),
410*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x01101be2),
411*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000065),
412*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000),
413*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000),
414*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000),
415*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000),
416*6d67aabdSBjoern A. Zeeb };
417*6d67aabdSBjoern A. Zeeb 
418*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_a_5g3_all_defs);
419*6d67aabdSBjoern A. Zeeb 
420*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_b_2g_all_defs[] = {
421*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1),
422*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721),
423*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101),
424*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x023f3fb9),
425*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000075),
426*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000),
427*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x01df3fb8),
428*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000074),
429*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000),
430*6d67aabdSBjoern A. Zeeb };
431*6d67aabdSBjoern A. Zeeb 
432*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_b_2g_all_defs);
433*6d67aabdSBjoern A. Zeeb 
434*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_b_5g1_all_defs[] = {
435*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1),
436*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721),
437*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101),
438*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x010017e0),
439*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000069),
440*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000),
441*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000),
442*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000),
443*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000),
444*6d67aabdSBjoern A. Zeeb };
445*6d67aabdSBjoern A. Zeeb 
446*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_b_5g1_all_defs);
447*6d67aabdSBjoern A. Zeeb 
448*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_b_5g2_all_defs[] = {
449*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1),
450*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721),
451*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101),
452*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x01201fe2),
453*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000066),
454*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000),
455*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000),
456*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000),
457*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000),
458*6d67aabdSBjoern A. Zeeb };
459*6d67aabdSBjoern A. Zeeb 
460*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_b_5g2_all_defs);
461*6d67aabdSBjoern A. Zeeb 
462*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_b_5g3_all_defs[] = {
463*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1),
464*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721),
465*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101),
466*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x01602fe5),
467*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000068),
468*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000),
469*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000),
470*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000),
471*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000),
472*6d67aabdSBjoern A. Zeeb };
473*6d67aabdSBjoern A. Zeeb 
474*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_b_5g3_all_defs);
475*6d67aabdSBjoern A. Zeeb 
476*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_defs_a[] = {
477*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0x00000800, 0x1),
478*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x581c, 0x20000000, 0x1),
479*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x5814, 0x20000000, 0x1),
480*6d67aabdSBjoern A. Zeeb };
481*6d67aabdSBjoern A. Zeeb 
482*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_defs_a);
483*6d67aabdSBjoern A. Zeeb 
484*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_defs_b[] = {
485*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0x00000800, 0x1),
486*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x781c, 0x20000000, 0x1),
487*6d67aabdSBjoern A. Zeeb 	RTW89_DECL_RFK_WM(0x7814, 0x20000000, 0x1),
488*6d67aabdSBjoern A. Zeeb };
489*6d67aabdSBjoern A. Zeeb 
490*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_defs_b);
491