1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2 /* Copyright(c) 2019-2020  Realtek Corporation
3  */
4 
5 #ifndef __RTW89_REG_H__
6 #define __RTW89_REG_H__
7 
8 #define R_AX_SYS_WL_EFUSE_CTRL 0x000A
9 #define B_AX_AUTOLOAD_SUS BIT(5)
10 
11 #define R_AX_SYS_ISO_CTRL 0x0000
12 #define B_AX_PWC_EV2EF_MASK GENMASK(15, 14)
13 #define B_AX_PWC_EV2EF_B15 BIT(15)
14 #define B_AX_PWC_EV2EF_B14 BIT(14)
15 #define B_AX_ISO_EB2CORE BIT(8)
16 
17 #define R_AX_SYS_FUNC_EN 0x0002
18 #define B_AX_FEN_BB_GLB_RSTN BIT(1)
19 #define B_AX_FEN_BBRSTB BIT(0)
20 
21 #define R_AX_SYS_PW_CTRL 0x0004
22 #define B_AX_XTAL_OFF_A_DIE BIT(22)
23 #define B_AX_DIS_WLBT_PDNSUSEN_SOPC BIT(18)
24 #define B_AX_RDY_SYSPWR BIT(17)
25 #define B_AX_EN_WLON BIT(16)
26 #define B_AX_APDM_HPDN BIT(15)
27 #define B_AX_PSUS_OFF_CAPC_EN BIT(14)
28 #define B_AX_AFSM_PCIE_SUS_EN BIT(12)
29 #define B_AX_AFSM_WLSUS_EN BIT(11)
30 #define B_AX_APFM_SWLPS BIT(10)
31 #define B_AX_APFM_OFFMAC BIT(9)
32 #define B_AX_APFN_ONMAC BIT(8)
33 
34 #define R_AX_SYS_CLK_CTRL 0x0008
35 #define B_AX_CPU_CLK_EN BIT(14)
36 
37 #define R_AX_SYS_SWR_CTRL1 0x0010
38 #define B_AX_SYM_CTRL_SPS_PWMFREQ BIT(10)
39 
40 #define R_AX_SYS_ADIE_PAD_PWR_CTRL 0x0018
41 #define B_AX_SYM_PADPDN_WL_PTA_1P3 BIT(6)
42 #define B_AX_SYM_PADPDN_WL_RFC_1P3 BIT(5)
43 
44 #define R_AX_RSV_CTRL 0x001C
45 #define B_AX_R_DIS_PRST BIT(6)
46 #define B_AX_WLOCK_1C_BIT6 BIT(5)
47 
48 #define R_AX_AFE_LDO_CTRL 0x0020
49 #define B_AX_AON_OFF_PC_EN BIT(23)
50 
51 #define R_AX_EFUSE_CTRL_1 0x0038
52 #define B_AX_EF_PGPD_MASK GENMASK(30, 28)
53 #define B_AX_EF_RDT BIT(27)
54 #define B_AX_EF_VDDQST_MASK GENMASK(26, 24)
55 #define B_AX_EF_PGTS_MASK GENMASK(23, 20)
56 #define B_AX_EF_PD_DIS BIT(11)
57 #define B_AX_EF_POR BIT(10)
58 #define B_AX_EF_CELL_SEL_MASK GENMASK(9, 8)
59 
60 #define R_AX_EFUSE_CTRL 0x0030
61 #define B_AX_EF_MODE_SEL_MASK GENMASK(31, 30)
62 #define B_AX_EF_RDY BIT(29)
63 #define B_AX_EF_COMP_RESULT BIT(28)
64 #define B_AX_EF_ADDR_MASK GENMASK(26, 16)
65 #define B_AX_EF_DATA_MASK GENMASK(15, 0)
66 
67 #define R_AX_EFUSE_CTRL_1_V1 0x0038
68 #define B_AX_EF_ENT BIT(31)
69 #define B_AX_EF_BURST BIT(19)
70 #define B_AX_EF_TEST_SEL_MASK GENMASK(18, 16)
71 #define B_AX_EF_TROW_EN BIT(15)
72 #define B_AX_EF_ERR_FLAG BIT(14)
73 #define B_AX_EF_DSB_EN BIT(11)
74 #define B_AX_PCIE_CALIB_EN_V1 BIT(12)
75 #define B_AX_WDT_WAKE_PCIE_EN BIT(10)
76 #define B_AX_WDT_WAKE_USB_EN BIT(9)
77 
78 #define R_AX_GPIO_MUXCFG 0x0040
79 #define B_AX_BOOT_MODE BIT(19)
80 #define B_AX_WL_EECS_EXT_32K_SEL BIT(18)
81 #define B_AX_WL_SEC_BONDING_OPT_STS BIT(17)
82 #define B_AX_SECSIC_SEL BIT(16)
83 #define B_AX_ENHTP BIT(14)
84 #define B_AX_BT_AOD_GPIO3 BIT(13)
85 #define B_AX_ENSIC BIT(12)
86 #define B_AX_SIC_SWRST BIT(11)
87 #define B_AX_PO_WIFI_PTA_PINS BIT(10)
88 #define B_AX_PO_BT_PTA_PINS BIT(9)
89 #define B_AX_ENUARTTX BIT(8)
90 #define B_AX_BTMODE_MASK GENMASK(7, 6)
91 #define MAC_AX_BT_MODE_0_3 0
92 #define MAC_AX_BT_MODE_2 2
93 #define MAC_AX_RTK_MODE 0
94 #define MAC_AX_CSR_MODE 1
95 #define B_AX_ENBT BIT(5)
96 #define B_AX_EROM_EN BIT(4)
97 #define B_AX_ENUARTRX BIT(2)
98 #define B_AX_GPIOSEL_MASK GENMASK(1, 0)
99 
100 #define R_AX_DBG_CTRL 0x0058
101 #define B_AX_DBG_SEL1_4BIT GENMASK(31, 30)
102 #define B_AX_DBG_SEL1_16BIT BIT(27)
103 #define B_AX_DBG_SEL1 GENMASK(23, 16)
104 #define B_AX_DBG_SEL0_4BIT GENMASK(15, 14)
105 #define B_AX_DBG_SEL0_16BIT BIT(11)
106 #define B_AX_DBG_SEL0 GENMASK(7, 0)
107 
108 #define R_AX_SYS_SDIO_CTRL 0x0070
109 #define B_AX_PCIE_DIS_L2_CTRL_LDO_HCI BIT(15)
110 #define B_AX_PCIE_DIS_WLSUS_AFT_PDN BIT(14)
111 #define B_AX_PCIE_FORCE_PWR_NGAT BIT(13)
112 #define B_AX_PCIE_CALIB_EN_V1 BIT(12)
113 #define B_AX_PCIE_AUXCLK_GATE BIT(11)
114 #define B_AX_LTE_MUX_CTRL_PATH BIT(26)
115 
116 #define R_AX_HCI_OPT_CTRL 0x0074
117 #define BIT_WAKE_CTRL BIT(5)
118 
119 #define R_AX_HCI_BG_CTRL 0x0078
120 #define B_AX_IBX_EN_VALUE BIT(15)
121 #define B_AX_IB_EN_VALUE BIT(14)
122 #define B_AX_FORCED_IB_EN BIT(4)
123 #define B_AX_EN_REGBG BIT(3)
124 #define B_AX_R_AX_BG_LPF BIT(2)
125 #define B_AX_R_AX_BG GENMASK(1, 0)
126 
127 #define R_AX_HCI_LDO_CTRL 0x007A
128 #define B_AX_R_AX_VADJ_MASK GENMASK(3, 0)
129 
130 #define R_AX_PLATFORM_ENABLE 0x0088
131 #define B_AX_AXIDMA_EN BIT(3)
132 #define B_AX_WCPU_EN BIT(1)
133 #define B_AX_PLATFORM_EN BIT(0)
134 
135 #define R_AX_WLLPS_CTRL 0x0090
136 #define B_AX_DIS_WLBT_LPSEN_LOPC BIT(1)
137 #define SW_LPS_OPTION 0x0001A0B2
138 
139 #define R_AX_SCOREBOARD  0x00AC
140 #define B_AX_TOGGLE BIT(31)
141 #define B_MAC_AX_SB_FW_MASK GENMASK(30, 24)
142 #define B_MAC_AX_SB_DRV_MASK GENMASK(23, 0)
143 #define B_MAC_AX_BTGS1_NOTIFY BIT(0)
144 #define MAC_AX_NOTIFY_TP_MAJOR 0x81
145 #define MAC_AX_NOTIFY_PWR_MAJOR 0x80
146 
147 #define R_AX_DBG_PORT_SEL 0x00C0
148 #define B_AX_DEBUG_ST_MASK GENMASK(31, 0)
149 
150 #define R_AX_PMC_DBG_CTRL2 0x00CC
151 #define B_AX_SYSON_DIS_PMCR_AX_WRMSK BIT(2)
152 
153 #define R_AX_PCIE_MIO_INTF 0x00E4
154 #define B_AX_PCIE_MIO_ADDR_PAGE_V1_MASK GENMASK(20, 16)
155 #define B_AX_PCIE_MIO_BYIOREG BIT(13)
156 #define B_AX_PCIE_MIO_RE BIT(12)
157 #define B_AX_PCIE_MIO_WE_MASK GENMASK(11, 8)
158 #define MIO_WRITE_BYTE_ALL 0xF
159 #define B_AX_PCIE_MIO_ADDR_MASK GENMASK(7, 0)
160 #define MIO_ADDR_PAGE_MASK GENMASK(12, 8)
161 
162 #define R_AX_PCIE_MIO_INTD 0x00E8
163 #define B_AX_PCIE_MIO_DATA_MASK GENMASK(31, 0)
164 
165 #define R_AX_SYS_CFG1 0x00F0
166 #define B_AX_CHIP_VER_MASK GENMASK(15, 12)
167 
168 #define R_AX_SYS_STATUS1 0x00F4
169 #define B_AX_SEL_0XC0_MASK GENMASK(17, 16)
170 #define B_AX_PAD_HCI_SEL_V2_MASK GENMASK(5, 3)
171 #define MAC_AX_HCI_SEL_SDIO_UART 0
172 #define MAC_AX_HCI_SEL_MULTI_USB 1
173 #define MAC_AX_HCI_SEL_PCIE_UART 2
174 #define MAC_AX_HCI_SEL_PCIE_USB 3
175 #define MAC_AX_HCI_SEL_MULTI_SDIO 4
176 
177 #define R_AX_HALT_H2C_CTRL 0x0160
178 #define R_AX_HALT_H2C 0x0168
179 #define B_AX_HALT_H2C_TRIGGER BIT(0)
180 #define R_AX_HALT_C2H_CTRL 0x0164
181 #define R_AX_HALT_C2H 0x016C
182 
183 #define R_AX_WCPU_FW_CTRL 0x01E0
184 #define B_AX_WCPU_FWDL_STS_MASK GENMASK(7, 5)
185 #define B_AX_FWDL_PATH_RDY BIT(2)
186 #define B_AX_H2C_PATH_RDY BIT(1)
187 #define B_AX_WCPU_FWDL_EN BIT(0)
188 
189 #define R_AX_RPWM 0x01E4
190 #define R_AX_PCIE_HRPWM 0x10C0
191 #define PS_RPWM_TOGGLE BIT(15)
192 #define PS_RPWM_ACK BIT(14)
193 #define PS_RPWM_SEQ_NUM GENMASK(13, 12)
194 #define PS_RPWM_NOTIFY_WAKE BIT(8)
195 #define PS_RPWM_STATE 0x7
196 #define RPWM_SEQ_NUM_MAX 3
197 #define PS_CPWM_SEQ_NUM GENMASK(13, 12)
198 #define PS_CPWM_RSP_SEQ_NUM GENMASK(9, 8)
199 #define PS_CPWM_STATE GENMASK(2, 0)
200 #define CPWM_SEQ_NUM_MAX 3
201 
202 #define R_AX_BOOT_REASON 0x01E6
203 #define B_AX_BOOT_REASON_MASK GENMASK(2, 0)
204 
205 #define R_AX_LDM 0x01E8
206 #define B_AX_EN_32K BIT(31)
207 
208 #define R_AX_UDM0 0x01F0
209 #define R_AX_UDM1 0x01F4
210 #define R_AX_UDM2 0x01F8
211 #define R_AX_UDM3 0x01FC
212 
213 #define R_AX_SPS_DIG_ON_CTRL0 0x0200
214 #define B_AX_VREFPFM_L_MASK GENMASK(25, 22)
215 #define B_AX_REG_ZCDC_H_MASK GENMASK(18, 17)
216 #define B_AX_OCP_L1_MASK GENMASK(15, 13)
217 #define B_AX_VOL_L1_MASK GENMASK(3, 0)
218 
219 #define R_AX_LDO_AON_CTRL0 0x0218
220 #define B_AX_PD_REGU_L BIT(16)
221 
222 #define R_AX_WLAN_XTAL_SI_CTRL 0x0270
223 #define B_AX_WL_XTAL_SI_CMD_POLL BIT(31)
224 #define B_AX_BT_XTAL_SI_ERR_FLAG BIT(30)
225 #define B_AX_WL_XTAL_GNT BIT(29)
226 #define B_AX_BT_XTAL_GNT BIT(28)
227 #define B_AX_WL_XTAL_SI_MODE_MASK GENMASK(25, 24)
228 #define XTAL_SI_NORMAL_WRITE 0x00
229 #define XTAL_SI_NORMAL_READ 0x01
230 #define B_AX_WL_XTAL_SI_BITMASK_MASK GENMASK(23, 16)
231 #define B_AX_WL_XTAL_SI_DATA_MASK GENMASK(15, 8)
232 #define B_AX_WL_XTAL_SI_ADDR_MASK GENMASK(7, 0)
233 
234 #define R_AX_XTAL_ON_CTRL0 0x0280
235 #define B_AX_XTAL_SC_LPS BIT(31)
236 #define B_AX_XTAL_SC_XO_MASK GENMASK(23, 17)
237 #define B_AX_XTAL_SC_XI_MASK GENMASK(16, 10)
238 #define B_AX_XTAL_SC_MASK GENMASK(6, 0)
239 
240 #define R_AX_GPIO0_7_FUNC_SEL 0x02D0
241 
242 #define R_AX_EECS_EESK_FUNC_SEL 0x02D8
243 #define B_AX_PINMUX_EESK_FUNC_SEL_MASK GENMASK(7, 4)
244 
245 #define R_AX_LED1_FUNC_SEL 0x02DC
246 #define B_AX_PINMUX_EESK_FUNC_SEL_V1_MASK GENMASK(27, 24)
247 #define PINMUX_EESK_FUNC_SEL_BT_LOG 0x1
248 
249 #define R_AX_GPIO0_15_EECS_EESK_LED1_PULL_LOW_EN 0x02E4
250 #define B_AX_LED1_PULL_LOW_EN BIT(18)
251 #define B_AX_EESK_PULL_LOW_EN BIT(17)
252 #define B_AX_EECS_PULL_LOW_EN BIT(16)
253 
254 #define R_AX_WLRF_CTRL 0x02F0
255 #define B_AX_AFC_AFEDIG BIT(17)
256 #define B_AX_WLRF1_CTRL_7 BIT(15)
257 #define B_AX_WLRF1_CTRL_1 BIT(9)
258 #define B_AX_WLRF_CTRL_7 BIT(7)
259 #define B_AX_WLRF_CTRL_1 BIT(1)
260 
261 #define R_AX_IC_PWR_STATE 0x03F0
262 #define B_AX_WHOLE_SYS_PWR_STE_MASK GENMASK(25, 16)
263 #define B_AX_WLMAC_PWR_STE_MASK GENMASK(9, 8)
264 #define B_AX_UART_HCISYS_PWR_STE_MASK GENMASK(7, 6)
265 #define B_AX_SDIO_HCISYS_PWR_STE_MASK GENMASK(5, 4)
266 #define B_AX_USB_HCISYS_PWR_STE_MASK GENMASK(3, 2)
267 #define B_AX_PCIE_HCISYS_PWR_STE_MASK GENMASK(1, 0)
268 
269 #define R_AX_SPS_DIG_OFF_CTRL0 0x0400
270 #define B_AX_C3_L1_MASK GENMASK(5, 4)
271 #define B_AX_C1_L1_MASK GENMASK(1, 0)
272 
273 #define R_AX_AFE_OFF_CTRL1 0x0444
274 #define B_AX_S1_LDO_VSEL_F_MASK GENMASK(25, 24)
275 #define B_AX_S1_LDO2PWRCUT_F BIT(23)
276 #define B_AX_S0_LDO_VSEL_F_MASK GENMASK(22, 21)
277 
278 #define R_AX_FILTER_MODEL_ADDR 0x0C04
279 
280 #define R_AX_HAXI_INIT_CFG1 0x1000
281 #define B_AX_WD_ITVL_IDLE_V1_MASK GENMASK(31, 28)
282 #define B_AX_WD_ITVL_ACT_V1_MASK GENMASK(27, 24)
283 #define B_AX_DMA_MODE_MASK GENMASK(19, 18)
284 #define DMA_MOD_PCIE_1B 0x0
285 #define DMA_MOD_PCIE_4B 0x1
286 #define DMA_MOD_USB 0x2
287 #define DMA_MOD_SDIO 0x3
288 #define B_AX_STOP_AXI_MST BIT(17)
289 #define B_AX_HAXI_RST_KEEP_REG BIT(16)
290 #define B_AX_RXHCI_EN_V1 BIT(15)
291 #define B_AX_RXBD_MODE_V1 BIT(14)
292 #define B_AX_HAXI_MAX_RXDMA_MASK GENMASK(9, 8)
293 #define B_AX_TXHCI_EN_V1 BIT(7)
294 #define B_AX_FLUSH_AXI_MST BIT(4)
295 #define B_AX_RST_BDRAM BIT(3)
296 #define B_AX_HAXI_MAX_TXDMA_MASK GENMASK(1, 0)
297 
298 #define R_AX_HAXI_DMA_STOP1 0x1010
299 #define B_AX_STOP_WPDMA BIT(19)
300 #define B_AX_STOP_CH12 BIT(18)
301 #define B_AX_STOP_CH9 BIT(17)
302 #define B_AX_STOP_CH8 BIT(16)
303 #define B_AX_STOP_ACH7 BIT(15)
304 #define B_AX_STOP_ACH6 BIT(14)
305 #define B_AX_STOP_ACH5 BIT(13)
306 #define B_AX_STOP_ACH4 BIT(12)
307 #define B_AX_STOP_ACH3 BIT(11)
308 #define B_AX_STOP_ACH2 BIT(10)
309 #define B_AX_STOP_ACH1 BIT(9)
310 #define B_AX_STOP_ACH0 BIT(8)
311 
312 #define R_AX_HAXI_DMA_BUSY1 0x101C
313 #define B_AX_HAXIIO_BUSY BIT(20)
314 #define B_AX_WPDMA_BUSY BIT(19)
315 #define B_AX_CH12_BUSY BIT(18)
316 #define B_AX_CH9_BUSY BIT(17)
317 #define B_AX_CH8_BUSY BIT(16)
318 #define B_AX_ACH7_BUSY BIT(15)
319 #define B_AX_ACH6_BUSY BIT(14)
320 #define B_AX_ACH5_BUSY BIT(13)
321 #define B_AX_ACH4_BUSY BIT(12)
322 #define B_AX_ACH3_BUSY BIT(11)
323 #define B_AX_ACH2_BUSY BIT(10)
324 #define B_AX_ACH1_BUSY BIT(9)
325 #define B_AX_ACH0_BUSY BIT(8)
326 
327 #define R_AX_PCIE_DBG_CTRL 0x11C0
328 #define B_AX_DBG_DUMMY_MASK GENMASK(23, 16)
329 #define B_AX_PCIE_DBG_SEL_MASK GENMASK(15, 13)
330 #define B_AX_MRD_TIMEOUT_EN BIT(10)
331 #define B_AX_ASFF_FULL_NO_STK BIT(1)
332 #define B_AX_EN_STUCK_DBG BIT(0)
333 
334 #define R_AX_HAXI_DMA_STOP2 0x11C0
335 #define B_AX_STOP_CH11 BIT(1)
336 #define B_AX_STOP_CH10 BIT(0)
337 
338 #define R_AX_HAXI_DMA_BUSY2 0x11C8
339 #define B_AX_CH11_BUSY BIT(1)
340 #define B_AX_CH10_BUSY BIT(0)
341 
342 #define R_AX_HAXI_DMA_BUSY3 0x1208
343 #define B_AX_RPQ_BUSY BIT(1)
344 #define B_AX_RXQ_BUSY BIT(0)
345 
346 #define R_AX_LTR_DEC_CTRL 0x1600
347 #define B_AX_LTR_IDX_DRV_VLD BIT(16)
348 #define B_AX_LTR_CURR_IDX_DRV_MASK GENMASK(15, 14)
349 #define B_AX_LTR_IDX_FW_VLD BIT(13)
350 #define B_AX_LTR_CURR_IDX_FW_MASK GENMASK(12, 11)
351 #define B_AX_LTR_IDX_HW_VLD BIT(10)
352 #define B_AX_LTR_CURR_IDX_HW_MASK GENMASK(9, 8)
353 #define B_AX_LTR_REQ_DRV BIT(7)
354 #define B_AX_LTR_IDX_DRV_MASK GENMASK(6, 5)
355 #define PCIE_LTR_IDX_IDLE 3
356 #define B_AX_LTR_DRV_DEC_EN BIT(4)
357 #define B_AX_LTR_FW_DEC_EN BIT(3)
358 #define B_AX_LTR_HW_DEC_EN BIT(2)
359 #define B_AX_LTR_SPACE_IDX_V1_MASK GENMASK(1, 0)
360 #define LTR_EN_BITS (B_AX_LTR_HW_DEC_EN | B_AX_LTR_FW_DEC_EN | B_AX_LTR_DRV_DEC_EN)
361 
362 #define R_AX_LTR_LATENCY_IDX0 0x1604
363 #define R_AX_LTR_LATENCY_IDX1 0x1608
364 #define R_AX_LTR_LATENCY_IDX2 0x160C
365 #define R_AX_LTR_LATENCY_IDX3 0x1610
366 
367 #define R_AX_HCI_FC_CTRL_V1 0x1700
368 #define R_AX_CH_PAGE_CTRL_V1 0x1704
369 
370 #define R_AX_ACH0_PAGE_CTRL_V1 0x1710
371 #define R_AX_ACH1_PAGE_CTRL_V1 0x1714
372 #define R_AX_ACH2_PAGE_CTRL_V1 0x1718
373 #define R_AX_ACH3_PAGE_CTRL_V1 0x171C
374 #define R_AX_ACH4_PAGE_CTRL_V1 0x1720
375 #define R_AX_ACH5_PAGE_CTRL_V1 0x1724
376 #define R_AX_ACH6_PAGE_CTRL_V1 0x1728
377 #define R_AX_ACH7_PAGE_CTRL_V1 0x172C
378 #define R_AX_CH8_PAGE_CTRL_V1 0x1730
379 #define R_AX_CH9_PAGE_CTRL_V1 0x1734
380 #define R_AX_CH10_PAGE_CTRL_V1 0x1738
381 #define R_AX_CH11_PAGE_CTRL_V1 0x173C
382 
383 #define R_AX_ACH0_PAGE_INFO_V1 0x1750
384 #define R_AX_ACH1_PAGE_INFO_V1 0x1754
385 #define R_AX_ACH2_PAGE_INFO_V1 0x1758
386 #define R_AX_ACH3_PAGE_INFO_V1 0x175C
387 #define R_AX_ACH4_PAGE_INFO_V1 0x1760
388 #define R_AX_ACH5_PAGE_INFO_V1 0x1764
389 #define R_AX_ACH6_PAGE_INFO_V1 0x1768
390 #define R_AX_ACH7_PAGE_INFO_V1 0x176C
391 #define R_AX_CH8_PAGE_INFO_V1 0x1770
392 #define R_AX_CH9_PAGE_INFO_V1 0x1774
393 #define R_AX_CH10_PAGE_INFO_V1 0x1778
394 #define R_AX_CH11_PAGE_INFO_V1 0x177C
395 #define R_AX_CH12_PAGE_INFO_V1 0x1780
396 
397 #define R_AX_PUB_PAGE_INFO3_V1 0x178C
398 #define R_AX_PUB_PAGE_CTRL1_V1 0x1790
399 #define R_AX_PUB_PAGE_CTRL2_V1 0x1794
400 #define R_AX_PUB_PAGE_INFO1_V1 0x1798
401 #define R_AX_PUB_PAGE_INFO2_V1 0x179C
402 #define R_AX_WP_PAGE_CTRL1_V1 0x17A0
403 #define R_AX_WP_PAGE_CTRL2_V1 0x17A4
404 #define R_AX_WP_PAGE_INFO1_V1 0x17A8
405 
406 #define R_AX_H2CREG_DATA0_V1 0x7140
407 #define R_AX_H2CREG_DATA1_V1 0x7144
408 #define R_AX_H2CREG_DATA2_V1 0x7148
409 #define R_AX_H2CREG_DATA3_V1 0x714C
410 #define R_AX_C2HREG_DATA0_V1 0x7150
411 #define R_AX_C2HREG_DATA1_V1 0x7154
412 #define R_AX_C2HREG_DATA2_V1 0x7158
413 #define R_AX_C2HREG_DATA3_V1 0x715C
414 #define R_AX_H2CREG_CTRL_V1 0x7160
415 #define R_AX_C2HREG_CTRL_V1 0x7164
416 
417 #define R_AX_HCI_FUNC_EN_V1 0x7880
418 
419 #define R_AX_PHYREG_SET 0x8040
420 #define PHYREG_SET_ALL_CYCLE 0x8
421 #define PHYREG_SET_XYN_CYCLE 0xE
422 
423 #define R_AX_HD0IMR 0x8110
424 #define B_AX_WDT_PTFM_INT_EN BIT(5)
425 #define B_AX_CPWM_INT_EN BIT(2)
426 #define B_AX_GT3_INT_EN BIT(1)
427 #define B_AX_C2H_INT_EN BIT(0)
428 #define R_AX_HD0ISR 0x8114
429 #define B_AX_C2H_INT BIT(0)
430 
431 #define R_AX_H2CREG_DATA0 0x8140
432 #define R_AX_H2CREG_DATA1 0x8144
433 #define R_AX_H2CREG_DATA2 0x8148
434 #define R_AX_H2CREG_DATA3 0x814C
435 #define R_AX_C2HREG_DATA0 0x8150
436 #define R_AX_C2HREG_DATA1 0x8154
437 #define R_AX_C2HREG_DATA2 0x8158
438 #define R_AX_C2HREG_DATA3 0x815C
439 #define R_AX_H2CREG_CTRL 0x8160
440 #define B_AX_H2CREG_TRIGGER BIT(0)
441 #define R_AX_C2HREG_CTRL 0x8164
442 #define B_AX_C2HREG_TRIGGER BIT(0)
443 #define R_AX_CPWM 0x8170
444 
445 #define R_AX_HCI_FUNC_EN 0x8380
446 #define B_AX_HCI_RXDMA_EN BIT(1)
447 #define B_AX_HCI_TXDMA_EN BIT(0)
448 
449 #define R_AX_BOOT_DBG 0x83F0
450 
451 #define R_AX_DMAC_FUNC_EN 0x8400
452 #define B_AX_DMAC_CRPRT BIT(31)
453 #define B_AX_MAC_FUNC_EN BIT(30)
454 #define B_AX_DMAC_FUNC_EN BIT(29)
455 #define B_AX_MPDU_PROC_EN BIT(28)
456 #define B_AX_WD_RLS_EN BIT(27)
457 #define B_AX_DLE_WDE_EN BIT(26)
458 #define B_AX_TXPKT_CTRL_EN BIT(25)
459 #define B_AX_STA_SCH_EN BIT(24)
460 #define B_AX_DLE_PLE_EN BIT(23)
461 #define B_AX_PKT_BUF_EN BIT(22)
462 #define B_AX_DMAC_TBL_EN BIT(21)
463 #define B_AX_PKT_IN_EN BIT(20)
464 #define B_AX_DLE_CPUIO_EN BIT(19)
465 #define B_AX_DISPATCHER_EN BIT(18)
466 #define B_AX_BBRPT_EN BIT(17)
467 #define B_AX_MAC_SEC_EN BIT(16)
468 #define B_AX_DMACREG_GCKEN BIT(15)
469 #define B_AX_MAC_UN_EN BIT(15)
470 #define B_AX_H_AXIDMA_EN BIT(14)
471 
472 #define R_AX_DMAC_CLK_EN 0x8404
473 #define B_AX_WD_RLS_CLK_EN BIT(27)
474 #define B_AX_DLE_WDE_CLK_EN BIT(26)
475 #define B_AX_TXPKT_CTRL_CLK_EN BIT(25)
476 #define B_AX_STA_SCH_CLK_EN BIT(24)
477 #define B_AX_DLE_PLE_CLK_EN BIT(23)
478 #define B_AX_PKT_IN_CLK_EN BIT(20)
479 #define B_AX_DLE_CPUIO_CLK_EN BIT(19)
480 #define B_AX_DISPATCHER_CLK_EN BIT(18)
481 #define B_AX_BBRPT_CLK_EN BIT(17)
482 #define B_AX_MAC_SEC_CLK_EN BIT(16)
483 
484 #define PCI_LTR_IDLE_TIMER_1US 0
485 #define PCI_LTR_IDLE_TIMER_10US 1
486 #define PCI_LTR_IDLE_TIMER_100US 2
487 #define PCI_LTR_IDLE_TIMER_200US 3
488 #define PCI_LTR_IDLE_TIMER_400US 4
489 #define PCI_LTR_IDLE_TIMER_800US 5
490 #define PCI_LTR_IDLE_TIMER_1_6MS 6
491 #define PCI_LTR_IDLE_TIMER_3_2MS 7
492 #define PCI_LTR_IDLE_TIMER_R_ERR 0xFD
493 #define PCI_LTR_IDLE_TIMER_DEF 0xFE
494 #define PCI_LTR_IDLE_TIMER_IGNORE 0xFF
495 
496 #define PCI_LTR_SPC_10US 0
497 #define PCI_LTR_SPC_100US 1
498 #define PCI_LTR_SPC_500US 2
499 #define PCI_LTR_SPC_1MS 3
500 #define PCI_LTR_SPC_R_ERR 0xFD
501 #define PCI_LTR_SPC_DEF 0xFE
502 #define PCI_LTR_SPC_IGNORE 0xFF
503 
504 #define R_AX_LTR_CTRL_0 0x8410
505 #define B_AX_LTR_SPACE_IDX_MASK GENMASK(13, 12)
506 #define B_AX_LTR_IDLE_TIMER_IDX_MASK GENMASK(10, 8)
507 #define B_AX_LTR_WD_NOEMP_CHK BIT(6)
508 #define B_AX_APP_LTR_ACT BIT(5)
509 #define B_AX_APP_LTR_IDLE BIT(4)
510 #define B_AX_LTR_EN BIT(1)
511 #define B_AX_LTR_WD_NOEMP_CHK_V1 BIT(1)
512 #define B_AX_LTR_HW_EN BIT(0)
513 
514 #define R_AX_LTR_CTRL_1 0x8414
515 #define B_AX_LTR_RX1_TH_MASK GENMASK(27, 16)
516 #define B_AX_LTR_RX0_TH_MASK GENMASK(11, 0)
517 
518 #define R_AX_LTR_IDLE_LATENCY 0x8418
519 
520 #define R_AX_LTR_ACTIVE_LATENCY 0x841C
521 
522 #define R_AX_SER_DBG_INFO 0x8424
523 #define B_AX_L0_TO_L1_EVENT_MASK GENMASK(31, 28)
524 
525 #define R_AX_DLE_EMPTY0 0x8430
526 #define B_AX_PLE_EMPTY_QTA_DMAC_CPUIO BIT(26)
527 #define B_AX_PLE_EMPTY_QTA_DMAC_MPDU_TX BIT(25)
528 #define B_AX_PLE_EMPTY_QTA_DMAC_WLAN_CPU BIT(24)
529 #define B_AX_PLE_EMPTY_QTA_DMAC_H2C BIT(23)
530 #define B_AX_PLE_EMPTY_QTA_DMAC_B1_TXPL BIT(22)
531 #define B_AX_PLE_EMPTY_QTA_DMAC_B0_TXPL BIT(21)
532 #define B_AX_WDE_EMPTY_QTA_DMAC_CPUIO BIT(20)
533 #define B_AX_WDE_EMPTY_QTA_DMAC_PKTIN BIT(19)
534 #define B_AX_WDE_EMPTY_QTA_DMAC_DATA_CPU BIT(18)
535 #define B_AX_WDE_EMPTY_QTA_DMAC_WLAN_CPU BIT(17)
536 #define B_AX_WDE_EMPTY_QTA_DMAC_HIF BIT(16)
537 #define B_AX_WDE_EMPTY_QUE_DMAC_PKTIN BIT(10)
538 #define B_AX_PLE_EMPTY_QUE_DMAC_SEC_TX BIT(9)
539 #define B_AX_PLE_EMPTY_QUE_DMAC_MPDU_TX BIT(8)
540 #define B_AX_WDE_EMPTY_QUE_OTHERS BIT(7)
541 #define B_AX_WDE_EMPTY_QUE_CMAC0_WMM1 BIT(4)
542 #define B_AX_WDE_EMPTY_QUE_CMAC0_WMM0 BIT(3)
543 #define B_AX_WDE_EMPTY_QUE_CMAC1_MBH BIT(2)
544 #define B_AX_WDE_EMPTY_QUE_CMAC0_MBH BIT(1)
545 #define B_AX_WDE_EMPTY_QUE_CMAC0_ALL_AC BIT(0)
546 
547 #define R_AX_DLE_EMPTY1 0x8434
548 #define B_AX_PLE_EMPTY_QTA_DMAC_WDRLS BIT(20)
549 #define B_AX_PLE_EMPTY_QTA_CMAC1_DMA_BBRPT BIT(19)
550 #define B_AX_PLE_EMPTY_QTA_CMAC1_DMA_RX BIT(18)
551 #define B_AX_PLE_EMPTY_QTA_CMAC0_DMA_RX BIT(17)
552 #define B_AX_PLE_EMPTY_QTA_DMAC_C2H BIT(16)
553 #define B_AX_PLE_EMPTY_QUE_DMAC_PLRLS BIT(5)
554 #define B_AX_PLE_EMPTY_QUE_DMAC_CPUIO BIT(4)
555 #define B_AX_PLE_EMPTY_QUE_DMAC_SEC_RX BIT(3)
556 #define B_AX_PLE_EMPTY_QUE_DMAC_MPDU_RX BIT(2)
557 #define B_AX_PLE_EMPTY_QUE_DMAC_HDP BIT(1)
558 #define B_AX_WDE_EMPTY_QUE_DMAC_WDRLS BIT(0)
559 
560 #define R_AX_DMAC_ERR_IMR 0x8520
561 #define B_AX_DLE_CPUIO_ERR_INT_EN BIT(10)
562 #define B_AX_APB_BRIDGE_ERR_INT_EN BIT(9)
563 #define B_AX_DISPATCH_ERR_INT_EN BIT(8)
564 #define B_AX_PKTIN_ERR_INT_EN BIT(7)
565 #define B_AX_PLE_DLE_ERR_INT_EN BIT(6)
566 #define B_AX_TXPKTCTRL_ERR_INT_EN BIT(5)
567 #define B_AX_WDE_DLE_ERR_INT_EN BIT(4)
568 #define B_AX_STA_SCHEDULER_ERR_INT_EN BIT(3)
569 #define B_AX_MPDU_ERR_INT_EN BIT(2)
570 #define B_AX_WSEC_ERR_INT_EN BIT(1)
571 #define B_AX_WDRLS_ERR_INT_EN BIT(0)
572 #define DMAC_ERR_IMR_EN GENMASK(31, 0)
573 #define DMAC_ERR_IMR_DIS 0
574 
575 #define R_AX_DMAC_ERR_ISR 0x8524
576 #define B_AX_HAXIDMA_ERR_FLAG BIT(14)
577 #define B_AX_PAXIDMA_ERR_FLAG BIT(13)
578 #define B_AX_HCI_BUF_ERR_FLAG BIT(12)
579 #define B_AX_BBRPT_ERR_FLAG BIT(11)
580 #define B_AX_DLE_CPUIO_ERR_FLAG BIT(10)
581 #define B_AX_APB_BRIDGE_ERR_FLAG BIT(9)
582 #define B_AX_DISPATCH_ERR_FLAG BIT(8)
583 #define B_AX_PKTIN_ERR_FLAG BIT(7)
584 #define B_AX_PLE_DLE_ERR_FLAG BIT(6)
585 #define B_AX_TXPKTCTRL_ERR_FLAG BIT(5)
586 #define B_AX_WDE_DLE_ERR_FLAG BIT(4)
587 #define B_AX_STA_SCHEDULER_ERR_FLAG BIT(3)
588 #define B_AX_MPDU_ERR_FLAG BIT(2)
589 #define B_AX_WSEC_ERR_FLAG BIT(1)
590 #define B_AX_WDRLS_ERR_FLAG BIT(0)
591 
592 #define R_AX_DISPATCHER_GLOBAL_SETTING_0 0x8800
593 #define B_AX_PL_PAGE_128B_SEL BIT(9)
594 #define B_AX_WD_PAGE_64B_SEL BIT(8)
595 #define R_AX_OTHER_DISPATCHER_ERR_ISR 0x8804
596 #define R_AX_HOST_DISPATCHER_ERR_ISR 0x8808
597 #define R_AX_CPU_DISPATCHER_ERR_ISR 0x880C
598 #define R_AX_TX_ADDRESS_INFO_MODE_SETTING 0x8810
599 #define B_AX_HOST_ADDR_INFO_8B_SEL BIT(0)
600 
601 #define R_AX_HOST_DISPATCHER_ERR_IMR 0x8850
602 #define B_AX_HDT_RX_WRITE_UNDERFLOW_INT_EN BIT(31)
603 #define B_AX_HDT_RX_WRITE_OVERFLOW_INT_EN BIT(30)
604 #define B_AX_HDT_CHKSUM_FSM_ERR_INT_EN BIT(29)
605 #define B_AX_HDT_SHIFT_DMA_CFG_ERR_INT_EN BIT(28)
606 #define B_AX_HDT_DMA_PROCESS_ERR_INT_EN BIT(27)
607 #define B_AX_HDT_TOTAL_LEN_ERR_INT_EN BIT(26)
608 #define B_AX_HDT_SHIFT_EN_ERR_INT_EN BIT(25)
609 #define B_AX_HDT_RXAGG_CFG_ERR_INT_EN BIT(24)
610 #define B_AX_HDT_OUTPUT_ERR_INT_EN BIT(21)
611 #define B_AX_HDT_RES_ERR_INT_EN BIT(20)
612 #define B_AX_HDT_BURST_NUM_ERR_INT_EN BIT(19)
613 #define B_AX_HDT_NULLPKT_ERR_INT_EN BIT(18)
614 #define B_AX_HDT_FLOW_CTRL_ERR_INT_EN BIT(17)
615 #define B_AX_HDT_PLD_CMD_UNDERFLOW_INT_EN BIT(16)
616 #define B_AX_HDT_PLD_CMD_OVERLOW_INT_EN BIT(15)
617 #define B_AX_HDT_TX_WRITE_UNDERFLOW_INT_EN BIT(14)
618 #define B_AX_HDT_TX_WRITE_OVERFLOW_INT_EN BIT(13)
619 #define B_AX_HDT_TCP_CHK_ERR_INT_EN BIT(12)
620 #define B_AX_HDT_TXPKTSIZE_ERR_INT_EN BIT(11)
621 #define B_AX_HDT_PRE_COST_ERR_INT_EN BIT(10)
622 #define B_AX_HDT_WD_CHK_ERR_INT_EN BIT(9)
623 #define B_AX_HDT_CHANNEL_DMA_ERR_INT_EN BIT(8)
624 #define B_AX_HDT_OFFSET_UNMATCH_INT_EN BIT(7)
625 #define B_AX_HDT_PAYLOAD_UNDERFLOW_INT_EN BIT(6)
626 #define B_AX_HDT_PAYLOAD_OVERFLOW_INT_EN BIT(5)
627 #define B_AX_HDT_PERMU_UNDERFLOW_INT_EN BIT(4)
628 #define B_AX_HDT_PERMU_OVERFLOW_INT_EN BIT(3)
629 #define B_AX_HDT_PKT_FAIL_DBG_INT_EN BIT(2)
630 #define B_AX_HDT_CHANNEL_ID_ERR_INT_EN BIT(1)
631 #define B_AX_HDT_CHANNEL_DIFF_ERR_INT_EN BIT(0)
632 #define B_AX_HOST_DISP_IMR_CLR (B_AX_HDT_CHANNEL_DIFF_ERR_INT_EN | \
633 				B_AX_HDT_CHANNEL_ID_ERR_INT_EN | \
634 				B_AX_HDT_PKT_FAIL_DBG_INT_EN | \
635 				B_AX_HDT_PERMU_OVERFLOW_INT_EN | \
636 				B_AX_HDT_PERMU_UNDERFLOW_INT_EN | \
637 				B_AX_HDT_PAYLOAD_OVERFLOW_INT_EN | \
638 				B_AX_HDT_PAYLOAD_UNDERFLOW_INT_EN | \
639 				B_AX_HDT_OFFSET_UNMATCH_INT_EN | \
640 				B_AX_HDT_CHANNEL_DMA_ERR_INT_EN | \
641 				B_AX_HDT_WD_CHK_ERR_INT_EN | \
642 				B_AX_HDT_PRE_COST_ERR_INT_EN | \
643 				B_AX_HDT_TXPKTSIZE_ERR_INT_EN | \
644 				B_AX_HDT_TCP_CHK_ERR_INT_EN | \
645 				B_AX_HDT_TX_WRITE_OVERFLOW_INT_EN | \
646 				B_AX_HDT_TX_WRITE_UNDERFLOW_INT_EN | \
647 				B_AX_HDT_PLD_CMD_OVERLOW_INT_EN | \
648 				B_AX_HDT_PLD_CMD_UNDERFLOW_INT_EN | \
649 				B_AX_HDT_FLOW_CTRL_ERR_INT_EN | \
650 				B_AX_HDT_NULLPKT_ERR_INT_EN | \
651 				B_AX_HDT_BURST_NUM_ERR_INT_EN | \
652 				B_AX_HDT_RXAGG_CFG_ERR_INT_EN | \
653 				B_AX_HDT_SHIFT_EN_ERR_INT_EN | \
654 				B_AX_HDT_TOTAL_LEN_ERR_INT_EN | \
655 				B_AX_HDT_DMA_PROCESS_ERR_INT_EN | \
656 				B_AX_HDT_SHIFT_DMA_CFG_ERR_INT_EN | \
657 				B_AX_HDT_CHKSUM_FSM_ERR_INT_EN | \
658 				B_AX_HDT_RX_WRITE_OVERFLOW_INT_EN | \
659 				B_AX_HDT_RX_WRITE_UNDERFLOW_INT_EN)
660 #define B_AX_HOST_DISP_IMR_SET (B_AX_HDT_CHANNEL_DIFF_ERR_INT_EN | \
661 				B_AX_HDT_PAYLOAD_OVERFLOW_INT_EN | \
662 				B_AX_HDT_PAYLOAD_UNDERFLOW_INT_EN | \
663 				B_AX_HDT_CHANNEL_DMA_ERR_INT_EN | \
664 				B_AX_HDT_TOTAL_LEN_ERR_INT_EN | \
665 				B_AX_HDT_DMA_PROCESS_ERR_INT_EN)
666 
667 #define B_AX_HR_WRFF_UNDERFLOW_ERR_INT_EN BIT(31)
668 #define B_AX_HR_WRFF_OVERFLOW_ERR_INT_EN BIT(30)
669 #define B_AX_HR_CHKSUM_FSM_ERR_INT_EN BIT(29)
670 #define B_AX_HR_SHIFT_DMA_CFG_ERR_INT_EN BIT(28)
671 #define B_AX_HR_DMA_PROCESS_ERR_INT_EN BIT(27)
672 #define B_AX_HR_TOTAL_LEN_UNDER_ERR_INT_EN BIT(26)
673 #define B_AX_HR_SHIFT_EN_ERR_INT_EN BIT(25)
674 #define B_AX_HR_AGG_CFG_ERR_INT_EN BIT(24)
675 #define B_AX_HR_DMA_RD_CNT_DEQ_ERR_INT_EN BIT(23)
676 #define B_AX_HR_PLD_LEN_ZERO_ERR_INT_EN BIT(22)
677 #define B_AX_HT_ILL_CH_ERR_INT_EN BIT(20)
678 #define B_AX_HT_ADDR_INFO_LEN_ERR_INT_EN BIT(18)
679 #define B_AX_HT_WD_LEN_OVER_ERR_INT_EN BIT(17)
680 #define B_AX_HT_PLD_CMD_UNDERFLOW_ERR_INT_EN BIT(16)
681 #define B_AX_HT_PLD_CMD_OVERFLOW_ERR_INT_EN BIT(15)
682 #define B_AX_HT_WRFF_UNDERFLOW_ERR_INT_EN BIT(14)
683 #define B_AX_HT_WRFF_OVERFLOW_ERR_INT_EN BIT(13)
684 #define B_AX_HT_CHKSUM_FSM_ERR_INT_EN BIT(12)
685 #define B_AX_HT_TXPKTSIZE_ERR_INT_EN BIT(11)
686 #define B_AX_HT_PRE_SUB_ERR_INT_EN BIT(10)
687 #define B_AX_HT_WD_CHKSUM_ERR_INT_EN BIT(9)
688 #define B_AX_HT_CHANNEL_DMA_ERR_INT_EN BIT(8)
689 #define B_AX_HT_OFFSET_UNMATCH_ERR_INT_EN BIT(7)
690 #define B_AX_HT_PAYLOAD_UNDER_ERR_INT_EN BIT(6)
691 #define B_AX_HT_PAYLOAD_OVER_ERR_INT_EN BIT(5)
692 #define B_AX_HT_PERMU_FF_UNDERFLOW_ERR_INT_EN BIT(4)
693 #define B_AX_HT_PERMU_FF_OVERFLOW_ERR_INT_EN BIT(3)
694 #define B_AX_HT_PKT_FAIL_ERR_INT_EN BIT(2)
695 #define B_AX_HT_CH_ID_ERR_INT_EN BIT(1)
696 #define B_AX_HT_EP_CH_DIFF_ERR_INT_EN BIT(0)
697 #define B_AX_HOST_DISP_IMR_CLR_V1 (B_AX_HT_EP_CH_DIFF_ERR_INT_EN | \
698 				   B_AX_HT_CH_ID_ERR_INT_EN | \
699 				   B_AX_HT_PKT_FAIL_ERR_INT_EN | \
700 				   B_AX_HT_PERMU_FF_OVERFLOW_ERR_INT_EN | \
701 				   B_AX_HT_PERMU_FF_UNDERFLOW_ERR_INT_EN | \
702 				   B_AX_HT_PAYLOAD_OVER_ERR_INT_EN | \
703 				   B_AX_HT_PAYLOAD_UNDER_ERR_INT_EN | \
704 				   B_AX_HT_OFFSET_UNMATCH_ERR_INT_EN | \
705 				   B_AX_HT_CHANNEL_DMA_ERR_INT_EN | \
706 				   B_AX_HT_WD_CHKSUM_ERR_INT_EN | \
707 				   B_AX_HT_PRE_SUB_ERR_INT_EN | \
708 				   B_AX_HT_TXPKTSIZE_ERR_INT_EN | \
709 				   B_AX_HT_CHKSUM_FSM_ERR_INT_EN | \
710 				   B_AX_HT_WRFF_OVERFLOW_ERR_INT_EN | \
711 				   B_AX_HT_WRFF_UNDERFLOW_ERR_INT_EN | \
712 				   B_AX_HT_PLD_CMD_OVERFLOW_ERR_INT_EN | \
713 				   B_AX_HT_PLD_CMD_UNDERFLOW_ERR_INT_EN | \
714 				   B_AX_HT_WD_LEN_OVER_ERR_INT_EN | \
715 				   B_AX_HT_ADDR_INFO_LEN_ERR_INT_EN | \
716 				   B_AX_HT_ILL_CH_ERR_INT_EN | \
717 				   B_AX_HR_PLD_LEN_ZERO_ERR_INT_EN | \
718 				   B_AX_HR_DMA_RD_CNT_DEQ_ERR_INT_EN | \
719 				   B_AX_HR_AGG_CFG_ERR_INT_EN | \
720 				   B_AX_HR_SHIFT_EN_ERR_INT_EN | \
721 				   B_AX_HR_TOTAL_LEN_UNDER_ERR_INT_EN | \
722 				   B_AX_HR_DMA_PROCESS_ERR_INT_EN | \
723 				   B_AX_HR_SHIFT_DMA_CFG_ERR_INT_EN | \
724 				   B_AX_HR_CHKSUM_FSM_ERR_INT_EN | \
725 				   B_AX_HR_WRFF_OVERFLOW_ERR_INT_EN | \
726 				   B_AX_HR_WRFF_UNDERFLOW_ERR_INT_EN)
727 #define B_AX_HOST_DISP_IMR_SET_V1 (B_AX_HT_PAYLOAD_OVER_ERR_INT_EN | \
728 				   B_AX_HT_PAYLOAD_UNDER_ERR_INT_EN | \
729 				   B_AX_HT_ILL_CH_ERR_INT_EN | \
730 				   B_AX_HR_TOTAL_LEN_UNDER_ERR_INT_EN | \
731 				   B_AX_HR_DMA_PROCESS_ERR_INT_EN)
732 
733 #define R_AX_CPU_DISPATCHER_ERR_IMR 0x8854
734 #define B_AX_CPU_RX_WRITE_UNDERFLOW_INT_EN BIT(31)
735 #define B_AX_CPU_RX_WRITE_OVERFLOW_INT_EN BIT(30)
736 #define B_AX_CPU_CHKSUM_FSM_ERR_INT_EN BIT(29)
737 #define B_AX_CPU_SHIFT_DMA_CFG_ERR_INT_EN BIT(28)
738 #define B_AX_CPU_DMA_PROCESS_ERR_INT_EN BIT(27)
739 #define B_AX_CPU_TOTAL_LEN_ERR_INT_EN BIT(26)
740 #define B_AX_CPU_SHIFT_EN_ERR_INT_EN BIT(25)
741 #define B_AX_CPU_RXAGG_CFG_ERR_INT_EN BIT(24)
742 #define B_AX_CPU_OUTPUT_ERR_INT_EN BIT(20)
743 #define B_AX_CPU_RESP_ERR_INT_EN BIT(19)
744 #define B_AX_CPU_BURST_NUM_ERR_INT_EN BIT(18)
745 #define B_AX_CPU_NULLPKT_ERR_INT_EN BIT(17)
746 #define B_AX_CPU_FLOW_CTRL_ERR_INT_EN BIT(16)
747 #define B_AX_CPU_F2P_SEQ_ERR_INT_EN BIT(15)
748 #define B_AX_CPU_F2P_QSEL_ERR_INT_EN BIT(14)
749 #define B_AX_CPU_PLD_CMD_UNDERFLOW_INT_EN BIT(13)
750 #define B_AX_CPU_PLD_CMD_OVERLOW_INT_EN BIT(12)
751 #define B_AX_CPU_PRE_COST_ERR_INT_EN BIT(11)
752 #define B_AX_CPU_WD_CHK_ERR_INT_EN BIT(10)
753 #define B_AX_CPU_CHANNEL_DMA_ERR_INT_EN BIT(9)
754 #define B_AX_CPU_OFFSET_UNMATCH_INT_EN BIT(8)
755 #define B_AX_CPU_PAYLOAD_CHKSUM_ERR_INT_EN BIT(7)
756 #define B_AX_CPU_PAYLOAD_UNDERFLOW_INT_EN BIT(6)
757 #define B_AX_CPU_PAYLOAD_OVERFLOW_INT_EN BIT(5)
758 #define B_AX_CPU_PERMU_UNDERFLOW_INT_EN BIT(4)
759 #define B_AX_CPU_PERMU_OVERFLOW_INT_EN BIT(3)
760 #define B_AX_CPU_CHANNEL_ID_ERR_INT_EN BIT(2)
761 #define B_AX_CPU_PKT_FAIL_DBG_INT_EN BIT(1)
762 #define B_AX_CPU_CHANNEL_DIFF_ERR_INT_EN BIT(0)
763 #define B_AX_CPU_DISP_IMR_CLR (B_AX_CPU_CHANNEL_DIFF_ERR_INT_EN | \
764 			       B_AX_CPU_PKT_FAIL_DBG_INT_EN | \
765 			       B_AX_CPU_CHANNEL_ID_ERR_INT_EN | \
766 			       B_AX_CPU_PERMU_OVERFLOW_INT_EN | \
767 			       B_AX_CPU_PERMU_UNDERFLOW_INT_EN | \
768 			       B_AX_CPU_PAYLOAD_OVERFLOW_INT_EN | \
769 			       B_AX_CPU_PAYLOAD_UNDERFLOW_INT_EN | \
770 			       B_AX_CPU_PAYLOAD_CHKSUM_ERR_INT_EN | \
771 			       B_AX_CPU_OFFSET_UNMATCH_INT_EN | \
772 			       B_AX_CPU_CHANNEL_DMA_ERR_INT_EN | \
773 			       B_AX_CPU_WD_CHK_ERR_INT_EN | \
774 			       B_AX_CPU_PRE_COST_ERR_INT_EN | \
775 			       B_AX_CPU_PLD_CMD_OVERLOW_INT_EN | \
776 			       B_AX_CPU_PLD_CMD_UNDERFLOW_INT_EN | \
777 			       B_AX_CPU_F2P_QSEL_ERR_INT_EN | \
778 			       B_AX_CPU_F2P_SEQ_ERR_INT_EN | \
779 			       B_AX_CPU_FLOW_CTRL_ERR_INT_EN | \
780 			       B_AX_CPU_NULLPKT_ERR_INT_EN | \
781 			       B_AX_CPU_BURST_NUM_ERR_INT_EN | \
782 			       B_AX_CPU_RXAGG_CFG_ERR_INT_EN | \
783 			       B_AX_CPU_SHIFT_EN_ERR_INT_EN | \
784 			       B_AX_CPU_TOTAL_LEN_ERR_INT_EN | \
785 			       B_AX_CPU_DMA_PROCESS_ERR_INT_EN | \
786 			       B_AX_CPU_SHIFT_DMA_CFG_ERR_INT_EN | \
787 			       B_AX_CPU_CHKSUM_FSM_ERR_INT_EN | \
788 			       B_AX_CPU_RX_WRITE_OVERFLOW_INT_EN | \
789 			       B_AX_CPU_RX_WRITE_UNDERFLOW_INT_EN)
790 #define B_AX_CPU_DISP_IMR_SET (B_AX_CPU_PKT_FAIL_DBG_INT_EN | \
791 			       B_AX_CPU_PAYLOAD_OVERFLOW_INT_EN | \
792 			       B_AX_CPU_PAYLOAD_UNDERFLOW_INT_EN | \
793 			       B_AX_CPU_TOTAL_LEN_ERR_INT_EN)
794 
795 #define B_AX_CR_PLD_LEN_ERR_INT_EN BIT(30)
796 #define B_AX_CR_WRFF_UNDERFLOW_ERR_INT_EN BIT(29)
797 #define B_AX_CR_WRFF_OVERFLOW_ERR_INT_EN BIT(28)
798 #define B_AX_CR_SHIFT_DMA_CFG_ERR_INT_EN BIT(27)
799 #define B_AX_CR_DMA_PROCESS_ERR_INT_EN BIT(26)
800 #define B_AX_CR_TOTAL_LEN_UNDER_ERR_INT_EN BIT(25)
801 #define B_AX_CR_SHIFT_EN_ERR_INT_EN BIT(24)
802 #define B_AX_REUSE_FIFO_B_UNDER_ERR_INT_EN BIT(22)
803 #define B_AX_REUSE_FIFO_B_OVER_ERR_INT_EN BIT(21)
804 #define B_AX_REUSE_FIFO_A_UNDER_ERR_INT_EN BIT(20)
805 #define B_AX_REUSE_FIFO_A_OVER_ERR_INT_EN BIT(19)
806 #define B_AX_CT_ADDR_INFO_LEN_MISS_ERR_INT_EN BIT(17)
807 #define B_AX_CT_WD_LEN_OVER_ERR_INT_EN BIT(16)
808 #define B_AX_CT_F2P_SEQ_ERR_INT_EN BIT(15)
809 #define B_AX_CT_F2P_QSEL_ERR_INT_EN BIT(14)
810 #define B_AX_CT_PLD_CMD_UNDERFLOW_ERR_INT_EN BIT(13)
811 #define B_AX_CT_PLD_CMD_OVERFLOW_ERR_INT_EN BIT(12)
812 #define B_AX_CT_PRE_SUB_ERR_INT_EN BIT(11)
813 #define B_AX_CT_WD_CHKSUM_ERR_INT_EN BIT(10)
814 #define B_AX_CT_CHANNEL_DMA_ERR_INT_EN BIT(9)
815 #define B_AX_CT_OFFSET_UNMATCH_ERR_INT_EN BIT(8)
816 #define B_AX_CT_PAYLOAD_CHKSUM_ERR_INT_EN BIT(7)
817 #define B_AX_CT_PAYLOAD_UNDER_ERR_INT_EN BIT(6)
818 #define B_AX_CT_PAYLOAD_OVER_ERR_INT_EN BIT(5)
819 #define B_AX_CT_PERMU_FF_UNDERFLOW_ERR_INT_EN BIT(4)
820 #define B_AX_CT_PERMU_FF_OVERFLOW_ERR_INT_EN BIT(3)
821 #define B_AX_CT_CH_ID_ERR_INT_EN BIT(2)
822 #define B_AX_CT_EP_CH_DIFF_ERR_INT_EN BIT(0)
823 #define B_AX_CPU_DISP_IMR_CLR_V1 (B_AX_CT_EP_CH_DIFF_ERR_INT_EN | \
824 				  B_AX_CT_CH_ID_ERR_INT_EN | \
825 				  B_AX_CT_PERMU_FF_OVERFLOW_ERR_INT_EN | \
826 				  B_AX_CT_PERMU_FF_UNDERFLOW_ERR_INT_EN | \
827 				  B_AX_CT_PAYLOAD_OVER_ERR_INT_EN | \
828 				  B_AX_CT_PAYLOAD_UNDER_ERR_INT_EN | \
829 				  B_AX_CT_PAYLOAD_CHKSUM_ERR_INT_EN | \
830 				  B_AX_CT_OFFSET_UNMATCH_ERR_INT_EN | \
831 				  B_AX_CT_CHANNEL_DMA_ERR_INT_EN | \
832 				  B_AX_CT_WD_CHKSUM_ERR_INT_EN | \
833 				  B_AX_CT_PRE_SUB_ERR_INT_EN | \
834 				  B_AX_CT_PLD_CMD_OVERFLOW_ERR_INT_EN | \
835 				  B_AX_CT_PLD_CMD_UNDERFLOW_ERR_INT_EN | \
836 				  B_AX_CT_F2P_QSEL_ERR_INT_EN | \
837 				  B_AX_CT_F2P_SEQ_ERR_INT_EN | \
838 				  B_AX_CT_WD_LEN_OVER_ERR_INT_EN | \
839 				  B_AX_CT_ADDR_INFO_LEN_MISS_ERR_INT_EN | \
840 				  B_AX_REUSE_FIFO_A_OVER_ERR_INT_EN | \
841 				  B_AX_REUSE_FIFO_A_UNDER_ERR_INT_EN | \
842 				  B_AX_REUSE_FIFO_B_OVER_ERR_INT_EN | \
843 				  B_AX_REUSE_FIFO_B_UNDER_ERR_INT_EN | \
844 				  B_AX_CR_SHIFT_EN_ERR_INT_EN | \
845 				  B_AX_CR_TOTAL_LEN_UNDER_ERR_INT_EN | \
846 				  B_AX_CR_DMA_PROCESS_ERR_INT_EN | \
847 				  B_AX_CR_SHIFT_DMA_CFG_ERR_INT_EN | \
848 				  B_AX_CR_WRFF_OVERFLOW_ERR_INT_EN | \
849 				  B_AX_CR_WRFF_UNDERFLOW_ERR_INT_EN | \
850 				  B_AX_CR_PLD_LEN_ERR_INT_EN)
851 #define B_AX_CPU_DISP_IMR_SET_V1 (B_AX_CT_PAYLOAD_OVER_ERR_INT_EN | \
852 				  B_AX_CT_PAYLOAD_UNDER_ERR_INT_EN | \
853 				  B_AX_CR_TOTAL_LEN_UNDER_ERR_INT_EN | \
854 				  B_AX_CR_DMA_PROCESS_ERR_INT_EN | \
855 				  B_AX_CR_WRFF_OVERFLOW_ERR_INT_EN | \
856 				  B_AX_CR_WRFF_UNDERFLOW_ERR_INT_EN)
857 
858 #define R_AX_OTHER_DISPATCHER_ERR_IMR 0x8858
859 #define B_AX_OTHER_STF_WROQT_UNDERFLOW_INT_EN BIT(29)
860 #define B_AX_OTHER_STF_WROQT_OVERFLOW_INT_EN BIT(28)
861 #define B_AX_OTHER_STF_WRFF_UNDERFLOW_INT_EN BIT(27)
862 #define B_AX_OTHER_STF_WRFF_OVERFLOW_INT_EN BIT(26)
863 #define B_AX_OTHER_STF_CMD_UNDERFLOW_INT_EN BIT(25)
864 #define B_AX_OTHER_STF_CMD_OVERFLOW_INT_EN BIT(24)
865 #define B_AX_HOST_ADDR_INFO_LEN_ZERO_ERR_INT_EN BIT(17)
866 #define B_AX_CPU_ADDR_INFO_LEN_ZERO_ERR_INT_EN BIT(16)
867 #define B_AX_PLE_OUTPUT_ERR_INT_EN BIT(12)
868 #define B_AX_PLE_RESP_ERR_INT_EN BIT(11)
869 #define B_AX_PLE_BURST_NUM_ERR_INT_EN BIT(10)
870 #define B_AX_PLE_NULL_PKT_ERR_INT_EN BIT(9)
871 #define B_AX_PLE_FLOW_CTRL_ERR_INT_EN BIT(8)
872 #define B_AX_WDE_OUTPUT_ERR_INT_EN BIT(4)
873 #define B_AX_WDE_RESP_ERR_INT_EN BIT(3)
874 #define B_AX_WDE_BURST_NUM_ERR_INT_EN BIT(2)
875 #define B_AX_WDE_NULL_PKT_ERR_INT_EN BIT(1)
876 #define B_AX_WDE_FLOW_CTRL_ERR_INT_EN BIT(0)
877 #define B_AX_OTHER_DISP_IMR_CLR (B_AX_OTHER_STF_WROQT_UNDERFLOW_INT_EN | \
878 				 B_AX_OTHER_STF_WROQT_OVERFLOW_INT_EN | \
879 				 B_AX_OTHER_STF_WRFF_UNDERFLOW_INT_EN | \
880 				 B_AX_OTHER_STF_WRFF_OVERFLOW_INT_EN | \
881 				 B_AX_OTHER_STF_CMD_UNDERFLOW_INT_EN | \
882 				 B_AX_OTHER_STF_CMD_OVERFLOW_INT_EN | \
883 				 B_AX_HOST_ADDR_INFO_LEN_ZERO_ERR_INT_EN | \
884 				 B_AX_CPU_ADDR_INFO_LEN_ZERO_ERR_INT_EN | \
885 				 B_AX_PLE_OUTPUT_ERR_INT_EN | \
886 				 B_AX_PLE_RESP_ERR_INT_EN | \
887 				 B_AX_PLE_BURST_NUM_ERR_INT_EN | \
888 				 B_AX_PLE_NULL_PKT_ERR_INT_EN | \
889 				 B_AX_PLE_FLOW_CTRL_ERR_INT_EN | \
890 				 B_AX_WDE_OUTPUT_ERR_INT_EN | \
891 				 B_AX_WDE_RESP_ERR_INT_EN | \
892 				 B_AX_WDE_BURST_NUM_ERR_INT_EN | \
893 				 B_AX_WDE_NULL_PKT_ERR_INT_EN | \
894 				 B_AX_WDE_FLOW_CTRL_ERR_INT_EN)
895 
896 #define B_AX_REUSE_SIZE_ERR_INT_EN BIT(31)
897 #define B_AX_REUSE_EN_ERR_INT_EN BIT(30)
898 #define B_AX_STF_OQT_UNDERFLOW_ERR_INT_EN BIT(29)
899 #define B_AX_STF_OQT_OVERFLOW_ERR_INT_EN BIT(28)
900 #define B_AX_STF_WRFF_UNDERFLOW_ERR_INT_EN BIT(27)
901 #define B_AX_STF_WRFF_OVERFLOW_ERR_INT_EN BIT(26)
902 #define B_AX_STF_CMD_UNDERFLOW_ERR_INT_EN BIT(25)
903 #define B_AX_STF_CMD_OVERFLOW_ERR_INT_EN BIT(24)
904 #define B_AX_REUSE_SIZE_ZERO_ERR_INT_EN BIT(23)
905 #define B_AX_REUSE_PKT_CNT_ERR_INT_EN BIT(22)
906 #define B_AX_CDT_PTR_TIMEOUT_ERR_INT_EN BIT(21)
907 #define B_AX_CDT_HCI_TIMEOUT_ERR_INT_EN BIT(20)
908 #define B_AX_HDT_PTR_TIMEOUT_ERR_INT_EN BIT(19)
909 #define B_AX_HDT_HCI_TIMEOUT_ERR_INT_EN BIT(18)
910 #define B_AX_CDT_ADDR_INFO_LEN_ERR_INT_EN BIT(17)
911 #define B_AX_HDT_ADDR_INFO_LEN_ERR_INT_EN BIT(16)
912 #define B_AX_CDR_DMA_TIMEOUT_ERR_INT_EN BIT(15)
913 #define B_AX_CDR_RX_TIMEOUT_ERR_INT_EN BIT(14)
914 #define B_AX_PLE_RESPOSE_ERR_INT_EN BIT(11)
915 #define B_AX_HDR_DMA_TIMEOUT_ERR_INT_EN BIT(7)
916 #define B_AX_HDR_RX_TIMEOUT_ERR_INT_EN BIT(6)
917 #define B_AX_WDE_RESPONSE_ERR_INT_EN BIT(3)
918 #define B_AX_OTHER_DISP_IMR_CLR_V1 (B_AX_CT_EP_CH_DIFF_ERR_INT_EN | \
919 				    B_AX_WDE_FLOW_CTRL_ERR_INT_EN | \
920 				    B_AX_WDE_NULL_PKT_ERR_INT_EN | \
921 				    B_AX_WDE_BURST_NUM_ERR_INT_EN | \
922 				    B_AX_WDE_RESPONSE_ERR_INT_EN | \
923 				    B_AX_WDE_OUTPUT_ERR_INT_EN | \
924 				    B_AX_HDR_RX_TIMEOUT_ERR_INT_EN | \
925 				    B_AX_HDR_DMA_TIMEOUT_ERR_INT_EN | \
926 				    B_AX_PLE_FLOW_CTRL_ERR_INT_EN | \
927 				    B_AX_PLE_NULL_PKT_ERR_INT_EN | \
928 				    B_AX_PLE_BURST_NUM_ERR_INT_EN | \
929 				    B_AX_PLE_RESPOSE_ERR_INT_EN | \
930 				    B_AX_PLE_OUTPUT_ERR_INT_EN | \
931 				    B_AX_CDR_RX_TIMEOUT_ERR_INT_EN | \
932 				    B_AX_CDR_DMA_TIMEOUT_ERR_INT_EN | \
933 				    B_AX_HDT_ADDR_INFO_LEN_ERR_INT_EN | \
934 				    B_AX_CDT_ADDR_INFO_LEN_ERR_INT_EN | \
935 				    B_AX_HDT_HCI_TIMEOUT_ERR_INT_EN | \
936 				    B_AX_HDT_PTR_TIMEOUT_ERR_INT_EN | \
937 				    B_AX_CDT_HCI_TIMEOUT_ERR_INT_EN | \
938 				    B_AX_CDT_PTR_TIMEOUT_ERR_INT_EN | \
939 				    B_AX_REUSE_PKT_CNT_ERR_INT_EN | \
940 				    B_AX_REUSE_SIZE_ZERO_ERR_INT_EN | \
941 				    B_AX_STF_CMD_OVERFLOW_ERR_INT_EN | \
942 				    B_AX_STF_CMD_UNDERFLOW_ERR_INT_EN | \
943 				    B_AX_STF_WRFF_OVERFLOW_ERR_INT_EN | \
944 				    B_AX_STF_WRFF_UNDERFLOW_ERR_INT_EN | \
945 				    B_AX_STF_OQT_OVERFLOW_ERR_INT_EN | \
946 				    B_AX_STF_OQT_UNDERFLOW_ERR_INT_EN | \
947 				    B_AX_REUSE_EN_ERR_INT_EN | \
948 				    B_AX_REUSE_SIZE_ERR_INT_EN)
949 #define B_AX_OTHER_DISP_IMR_SET_V1 (B_AX_CDR_RX_TIMEOUT_ERR_INT_EN | \
950 				    B_AX_CDR_DMA_TIMEOUT_ERR_INT_EN | \
951 				    B_AX_HDT_HCI_TIMEOUT_ERR_INT_EN | \
952 				    B_AX_HDT_PTR_TIMEOUT_ERR_INT_EN | \
953 				    B_AX_CDT_HCI_TIMEOUT_ERR_INT_EN | \
954 				    B_AX_CDT_PTR_TIMEOUT_ERR_INT_EN | \
955 				    B_AX_STF_OQT_OVERFLOW_ERR_INT_EN | \
956 				    B_AX_STF_OQT_UNDERFLOW_ERR_INT_EN)
957 
958 #define R_AX_DISPATCHER_DBG_PORT 0x8860
959 #define B_AX_DISPATCHER_DBG_SEL_MASK GENMASK(11, 8)
960 #define B_AX_DISPATCHER_INTN_SEL_MASK GENMASK(7, 4)
961 #define B_AX_DISPATCHER_CH_SEL_MASK GENMASK(3, 0)
962 
963 #define R_AX_RX_FUNCTION_STOP 0x8920
964 #define B_AX_HDR_RX_STOP BIT(0)
965 
966 #define R_AX_HCI_FC_CTRL 0x8A00
967 #define B_AX_HCI_FC_CH12_FULL_COND_MASK GENMASK(11, 10)
968 #define B_AX_HCI_FC_WP_CH811_FULL_COND_MASK GENMASK(9, 8)
969 #define B_AX_HCI_FC_WP_CH07_FULL_COND_MASK GENMASK(7, 6)
970 #define B_AX_HCI_FC_WD_FULL_COND_MASK GENMASK(5, 4)
971 #define B_AX_HCI_FC_CH12_EN BIT(3)
972 #define B_AX_HCI_FC_MODE_MASK GENMASK(2, 1)
973 #define B_AX_HCI_FC_EN BIT(0)
974 
975 #define R_AX_CH_PAGE_CTRL 0x8A04
976 #define B_AX_PREC_PAGE_CH12_MASK GENMASK(24, 16)
977 #define B_AX_PREC_PAGE_CH011_MASK GENMASK(8, 0)
978 
979 #define B_AX_MAX_PG_MASK GENMASK(28, 16)
980 #define B_AX_MIN_PG_MASK GENMASK(12, 0)
981 #define B_AX_GRP BIT(31)
982 #define R_AX_ACH0_PAGE_CTRL 0x8A10
983 #define R_AX_ACH1_PAGE_CTRL 0x8A14
984 #define R_AX_ACH2_PAGE_CTRL 0x8A18
985 #define R_AX_ACH3_PAGE_CTRL 0x8A1C
986 #define R_AX_ACH4_PAGE_CTRL 0x8A20
987 #define R_AX_ACH5_PAGE_CTRL 0x8A24
988 #define R_AX_ACH6_PAGE_CTRL 0x8A28
989 #define R_AX_ACH7_PAGE_CTRL 0x8A2C
990 #define R_AX_CH8_PAGE_CTRL 0x8A30
991 #define R_AX_CH9_PAGE_CTRL 0x8A34
992 #define R_AX_CH10_PAGE_CTRL 0x8A38
993 #define R_AX_CH11_PAGE_CTRL 0x8A3C
994 
995 #define B_AX_AVAL_PG_MASK GENMASK(27, 16)
996 #define B_AX_USE_PG_MASK GENMASK(12, 0)
997 #define R_AX_ACH0_PAGE_INFO 0x8A50
998 #define R_AX_ACH1_PAGE_INFO 0x8A54
999 #define R_AX_ACH2_PAGE_INFO 0x8A58
1000 #define R_AX_ACH3_PAGE_INFO 0x8A5C
1001 #define R_AX_ACH4_PAGE_INFO 0x8A60
1002 #define R_AX_ACH5_PAGE_INFO 0x8A64
1003 #define R_AX_ACH6_PAGE_INFO 0x8A68
1004 #define R_AX_ACH7_PAGE_INFO 0x8A6C
1005 #define R_AX_CH8_PAGE_INFO 0x8A70
1006 #define R_AX_CH9_PAGE_INFO 0x8A74
1007 #define R_AX_CH10_PAGE_INFO 0x8A78
1008 #define R_AX_CH11_PAGE_INFO 0x8A7C
1009 #define R_AX_CH12_PAGE_INFO 0x8A80
1010 
1011 #define R_AX_PUB_PAGE_INFO3 0x8A8C
1012 #define B_AX_G1_AVAL_PG_MASK GENMASK(28, 16)
1013 #define B_AX_G0_AVAL_PG_MASK GENMASK(12, 0)
1014 
1015 #define R_AX_PUB_PAGE_CTRL1 0x8A90
1016 #define B_AX_PUBPG_G1_MASK GENMASK(28, 16)
1017 #define B_AX_PUBPG_G0_MASK GENMASK(12, 0)
1018 
1019 #define R_AX_PUB_PAGE_CTRL2 0x8A94
1020 #define B_AX_PUBPG_ALL_MASK GENMASK(12, 0)
1021 
1022 #define R_AX_PUB_PAGE_INFO1 0x8A98
1023 #define B_AX_G1_USE_PG_MASK GENMASK(28, 16)
1024 #define B_AX_G0_USE_PG_MASK GENMASK(12, 0)
1025 
1026 #define R_AX_PUB_PAGE_INFO2 0x8A9C
1027 #define B_AX_PUB_AVAL_PG_MASK GENMASK(12, 0)
1028 
1029 #define R_AX_WP_PAGE_CTRL1 0x8AA0
1030 #define B_AX_PREC_PAGE_WP_CH811_MASK GENMASK(24, 16)
1031 #define B_AX_PREC_PAGE_WP_CH07_MASK GENMASK(8, 0)
1032 
1033 #define R_AX_WP_PAGE_CTRL2 0x8AA4
1034 #define B_AX_WP_THRD_MASK GENMASK(12, 0)
1035 
1036 #define R_AX_WP_PAGE_INFO1 0x8AA8
1037 #define B_AX_WP_AVAL_PG_MASK GENMASK(28, 16)
1038 
1039 #define R_AX_WDE_PKTBUF_CFG 0x8C08
1040 #define B_AX_WDE_START_BOUND_MASK GENMASK(13, 8)
1041 #define B_AX_WDE_PAGE_SEL_MASK GENMASK(1, 0)
1042 #define B_AX_WDE_FREE_PAGE_NUM_MASK GENMASK(28, 16)
1043 
1044 #define R_AX_WDE_ERRFLAG_MSG 0x8C30
1045 #define B_AX_WDE_ERR_FLAG_MSG_MASK GENMASK(31, 0)
1046 
1047 #define R_AX_WDE_ERR_FLAG_CFG_NUM1 0x8C34
1048 #define B_AX_WDE_ERR_FLAG_NUM1_VLD BIT(31)
1049 #define B_AX_WDE_ERR_FLAG_NUM1_MSTIDX_MASK GENMASK(27, 24)
1050 #define B_AX_WDE_ERR_FLAG_NUM1_ISRIDX_MASK GENMASK(20, 16)
1051 #define B_AX_WDE_DATCHN_FRZTMR_MODE BIT(2)
1052 #define B_AX_WDE_QUEMGN_FRZTMR_MODE BIT(1)
1053 #define B_AX_WDE_BUFMGN_FRZTMR_MODE BIT(0)
1054 
1055 #define R_AX_WDE_ERR_IMR 0x8C38
1056 #define B_AX_WDE_DATCHN_RRDY_ERR_INT_EN BIT(27)
1057 #define B_AX_WDE_DATCHN_FRZTO_ERR_INT_EN BIT(26)
1058 #define B_AX_WDE_DATCHN_NULLPG_ERR_INT_EN BIT(25)
1059 #define B_AX_WDE_DATCHN_ARBT_ERR_INT_EN BIT(24)
1060 #define B_AX_WDE_QUEMGN_FRZTO_ERR_INT_EN BIT(19)
1061 #define B_AX_WDE_NXTPKTLL_AD_ERR_INT_EN BIT(18)
1062 #define B_AX_WDE_PREPKTLLT_AD_ERR_INT_EN BIT(17)
1063 #define B_AX_WDE_ENQ_PKTCNT_NVAL_ERR_INT_EN BIT(16)
1064 #define B_AX_WDE_ENQ_PKTCNT_OVRF_ERR_INT_EN BIT(15)
1065 #define B_AX_WDE_QUE_SRCQUEID_ERR_INT_EN BIT(14)
1066 #define B_AX_WDE_QUE_DSTQUEID_ERR_INT_EN BIT(13)
1067 #define B_AX_WDE_QUE_CMDTYPE_ERR_INT_EN BIT(12)
1068 #define B_AX_WDE_BUFMGN_FRZTO_ERR_INT_EN BIT(7)
1069 #define B_AX_WDE_GETNPG_PGOFST_ERR_INT_EN BIT(6)
1070 #define B_AX_WDE_GETNPG_STRPG_ERR_INT_EN BIT(5)
1071 #define B_AX_WDE_BUFREQ_SRCHTAILPG_ERR_INT_EN BIT(4)
1072 #define B_AX_WDE_BUFRTN_SIZE_ERR_INT_EN BIT(3)
1073 #define B_AX_WDE_BUFRTN_INVLD_PKTID_ERR_INT_EN BIT(2)
1074 #define B_AX_WDE_BUFREQ_UNAVAL_ERR_INT_EN BIT(1)
1075 #define B_AX_WDE_BUFREQ_QTAID_ERR_INT_EN BIT(0)
1076 #define B_AX_WDE_IMR_CLR (B_AX_WDE_BUFREQ_QTAID_ERR_INT_EN | \
1077 			  B_AX_WDE_BUFREQ_UNAVAL_ERR_INT_EN | \
1078 			  B_AX_WDE_BUFRTN_INVLD_PKTID_ERR_INT_EN | \
1079 			  B_AX_WDE_BUFRTN_SIZE_ERR_INT_EN | \
1080 			  B_AX_WDE_BUFREQ_SRCHTAILPG_ERR_INT_EN | \
1081 			  B_AX_WDE_GETNPG_STRPG_ERR_INT_EN | \
1082 			  B_AX_WDE_GETNPG_PGOFST_ERR_INT_EN | \
1083 			  B_AX_WDE_BUFMGN_FRZTO_ERR_INT_EN | \
1084 			  B_AX_WDE_QUE_CMDTYPE_ERR_INT_EN | \
1085 			  B_AX_WDE_QUE_DSTQUEID_ERR_INT_EN | \
1086 			  B_AX_WDE_QUE_SRCQUEID_ERR_INT_EN | \
1087 			  B_AX_WDE_ENQ_PKTCNT_OVRF_ERR_INT_EN | \
1088 			  B_AX_WDE_ENQ_PKTCNT_NVAL_ERR_INT_EN | \
1089 			  B_AX_WDE_PREPKTLLT_AD_ERR_INT_EN | \
1090 			  B_AX_WDE_NXTPKTLL_AD_ERR_INT_EN | \
1091 			  B_AX_WDE_QUEMGN_FRZTO_ERR_INT_EN | \
1092 			  B_AX_WDE_DATCHN_ARBT_ERR_INT_EN | \
1093 			  B_AX_WDE_DATCHN_NULLPG_ERR_INT_EN | \
1094 			  B_AX_WDE_DATCHN_FRZTO_ERR_INT_EN)
1095 #define B_AX_WDE_IMR_SET (B_AX_WDE_BUFREQ_QTAID_ERR_INT_EN | \
1096 			  B_AX_WDE_BUFREQ_UNAVAL_ERR_INT_EN | \
1097 			  B_AX_WDE_BUFRTN_INVLD_PKTID_ERR_INT_EN | \
1098 			  B_AX_WDE_BUFRTN_SIZE_ERR_INT_EN | \
1099 			  B_AX_WDE_BUFREQ_SRCHTAILPG_ERR_INT_EN | \
1100 			  B_AX_WDE_GETNPG_STRPG_ERR_INT_EN | \
1101 			  B_AX_WDE_GETNPG_PGOFST_ERR_INT_EN | \
1102 			  B_AX_WDE_BUFMGN_FRZTO_ERR_INT_EN | \
1103 			  B_AX_WDE_QUE_CMDTYPE_ERR_INT_EN | \
1104 			  B_AX_WDE_QUE_DSTQUEID_ERR_INT_EN | \
1105 			  B_AX_WDE_QUE_SRCQUEID_ERR_INT_EN | \
1106 			  B_AX_WDE_ENQ_PKTCNT_OVRF_ERR_INT_EN | \
1107 			  B_AX_WDE_ENQ_PKTCNT_NVAL_ERR_INT_EN | \
1108 			  B_AX_WDE_PREPKTLLT_AD_ERR_INT_EN | \
1109 			  B_AX_WDE_NXTPKTLL_AD_ERR_INT_EN | \
1110 			  B_AX_WDE_QUEMGN_FRZTO_ERR_INT_EN | \
1111 			  B_AX_WDE_DATCHN_ARBT_ERR_INT_EN | \
1112 			  B_AX_WDE_DATCHN_NULLPG_ERR_INT_EN | \
1113 			  B_AX_WDE_DATCHN_FRZTO_ERR_INT_EN)
1114 
1115 #define B_AX_WDE_DATCHN_CAMREQ_ERR_INT_EN BIT(29)
1116 #define B_AX_WDE_DATCHN_ADRERR_ERR_INT_EN BIT(28)
1117 #define B_AX_WDE_DATCHN_RRDY_ERR_INT_EN BIT(27)
1118 #define B_AX_WDE_DATCHN_FRZTO_ERR_INT_EN BIT(26)
1119 #define B_AX_WDE_DATCHN_NULLPG_ERR_INT_EN BIT(25)
1120 #define B_AX_WDE_DATCHN_ARBT_ERR_INT_EN BIT(24)
1121 #define B_AX_WDE_QUEMGN_FRZTO_ERR_INT_EN BIT(19)
1122 #define B_AX_WDE_NXTPKTLL_AD_ERR_INT_EN BIT(18)
1123 #define B_AX_WDE_PREPKTLLT_AD_ERR_INT_EN BIT(17)
1124 #define B_AX_WDE_ENQ_PKTCNT_NVAL_ERR_INT_EN BIT(16)
1125 #define B_AX_WDE_ENQ_PKTCNT_OVRF_ERR_INT_EN BIT(15)
1126 #define B_AX_WDE_QUE_SRCQUEID_ERR_INT_EN BIT(14)
1127 #define B_AX_WDE_BUFMGN_FRZTO_ERR_INT_EN_V1 BIT(9)
1128 #define B_AX_WDE_GETNPG_PGOFST_ERR_INT_EN_V1 BIT(8)
1129 #define B_AX_WDE_GETNPG_STRPG_ERR_INT_EN_V1 BIT(7)
1130 #define B_AX_WDE_BUFREQ_SRCHTAILPG_ERR_INT_EN_V1 BIT(6)
1131 #define B_AX_WDE_BUFRTN_SIZE_ERR_INT_EN_V1 BIT(5)
1132 #define B_AX_WDE_BUFRTN_INVLD_PKTID_ERR_INT_EN_V1 BIT(4)
1133 #define B_AX_WDE_BUFREQ_UNAVAL_ERR_INT_EN_V1 BIT(3)
1134 #define B_AX_WDE_BUFREQ_SIZELMT_INT_EN BIT(2)
1135 #define B_AX_WDE_BUFREQ_SIZE0_INT_EN BIT(1)
1136 #define B_AX_WDE_IMR_CLR_V1 (B_AX_WDE_BUFREQ_QTAID_ERR_INT_EN | \
1137 			     B_AX_WDE_BUFREQ_SIZE0_INT_EN | \
1138 			     B_AX_WDE_BUFREQ_SIZELMT_INT_EN | \
1139 			     B_AX_WDE_BUFREQ_UNAVAL_ERR_INT_EN_V1 | \
1140 			     B_AX_WDE_BUFRTN_INVLD_PKTID_ERR_INT_EN_V1 | \
1141 			     B_AX_WDE_BUFRTN_SIZE_ERR_INT_EN_V1 | \
1142 			     B_AX_WDE_BUFREQ_SRCHTAILPG_ERR_INT_EN_V1 | \
1143 			     B_AX_WDE_GETNPG_STRPG_ERR_INT_EN_V1 | \
1144 			     B_AX_WDE_GETNPG_PGOFST_ERR_INT_EN_V1 | \
1145 			     B_AX_WDE_BUFMGN_FRZTO_ERR_INT_EN_V1 | \
1146 			     B_AX_WDE_QUE_CMDTYPE_ERR_INT_EN | \
1147 			     B_AX_WDE_QUE_DSTQUEID_ERR_INT_EN | \
1148 			     B_AX_WDE_QUE_SRCQUEID_ERR_INT_EN | \
1149 			     B_AX_WDE_ENQ_PKTCNT_OVRF_ERR_INT_EN | \
1150 			     B_AX_WDE_ENQ_PKTCNT_NVAL_ERR_INT_EN | \
1151 			     B_AX_WDE_PREPKTLLT_AD_ERR_INT_EN | \
1152 			     B_AX_WDE_NXTPKTLL_AD_ERR_INT_EN | \
1153 			     B_AX_WDE_QUEMGN_FRZTO_ERR_INT_EN | \
1154 			     B_AX_WDE_DATCHN_ARBT_ERR_INT_EN | \
1155 			     B_AX_WDE_DATCHN_NULLPG_ERR_INT_EN | \
1156 			     B_AX_WDE_DATCHN_FRZTO_ERR_INT_EN | \
1157 			     B_AX_WDE_DATCHN_RRDY_ERR_INT_EN | \
1158 			     B_AX_WDE_DATCHN_ADRERR_ERR_INT_EN | \
1159 			     B_AX_WDE_DATCHN_CAMREQ_ERR_INT_EN)
1160 #define B_AX_WDE_IMR_SET_V1 (B_AX_WDE_BUFREQ_QTAID_ERR_INT_EN | \
1161 			     B_AX_WDE_BUFREQ_SIZE0_INT_EN | \
1162 			     B_AX_WDE_BUFREQ_SIZELMT_INT_EN | \
1163 			     B_AX_WDE_BUFREQ_UNAVAL_ERR_INT_EN_V1 | \
1164 			     B_AX_WDE_BUFRTN_INVLD_PKTID_ERR_INT_EN_V1 | \
1165 			     B_AX_WDE_BUFRTN_SIZE_ERR_INT_EN_V1 | \
1166 			     B_AX_WDE_BUFREQ_SRCHTAILPG_ERR_INT_EN_V1 | \
1167 			     B_AX_WDE_GETNPG_STRPG_ERR_INT_EN_V1 | \
1168 			     B_AX_WDE_GETNPG_PGOFST_ERR_INT_EN_V1 | \
1169 			     B_AX_WDE_BUFMGN_FRZTO_ERR_INT_EN_V1 | \
1170 			     B_AX_WDE_QUE_CMDTYPE_ERR_INT_EN | \
1171 			     B_AX_WDE_QUE_DSTQUEID_ERR_INT_EN | \
1172 			     B_AX_WDE_QUE_SRCQUEID_ERR_INT_EN | \
1173 			     B_AX_WDE_ENQ_PKTCNT_OVRF_ERR_INT_EN | \
1174 			     B_AX_WDE_ENQ_PKTCNT_NVAL_ERR_INT_EN | \
1175 			     B_AX_WDE_PREPKTLLT_AD_ERR_INT_EN | \
1176 			     B_AX_WDE_NXTPKTLL_AD_ERR_INT_EN | \
1177 			     B_AX_WDE_QUEMGN_FRZTO_ERR_INT_EN | \
1178 			     B_AX_WDE_DATCHN_ARBT_ERR_INT_EN | \
1179 			     B_AX_WDE_DATCHN_NULLPG_ERR_INT_EN | \
1180 			     B_AX_WDE_DATCHN_FRZTO_ERR_INT_EN | \
1181 			     B_AX_WDE_DATCHN_RRDY_ERR_INT_EN | \
1182 			     B_AX_WDE_DATCHN_ADRERR_ERR_INT_EN | \
1183 			     B_AX_WDE_DATCHN_CAMREQ_ERR_INT_EN)
1184 
1185 #define R_AX_WDE_ERR_ISR 0x8C3C
1186 #define B_AX_WDE_DATCHN_RRDY_ERR BIT(27)
1187 #define B_AX_WDE_DATCHN_FRZTO_ERR BIT(26)
1188 #define B_AX_WDE_DATCHN_NULLPG_ERR BIT(25)
1189 #define B_AX_WDE_DATCHN_ARBT_ERR BIT(24)
1190 #define B_AX_WDE_QUEMGN_FRZTO_ERR BIT(19)
1191 #define B_AX_WDE_NXTPKTLL_AD_ERR BIT(18)
1192 #define B_AX_WDE_PREPKTLLT_AD_ERR BIT(17)
1193 #define B_AX_WDE_ENQ_PKTCNT_NVAL_ERR BIT(16)
1194 #define B_AX_WDE_ENQ_PKTCNT_OVRF_ERR BIT(15)
1195 #define B_AX_WDE_QUE_SRCQUEID_ERR BIT(14)
1196 #define B_AX_WDE_QUE_DSTQUEID_ERR BIT(13)
1197 #define B_AX_WDE_QUE_CMDTYPE_ERR BIT(12)
1198 #define B_AX_WDE_BUFMGN_FRZTO_ERR BIT(7)
1199 #define B_AX_WDE_GETNPG_PGOFST_ERR BIT(6)
1200 #define B_AX_WDE_GETNPG_STRPG_ERR BIT(5)
1201 #define B_AX_WDE_BUFREQ_SRCHTAILPG_ERR BIT(4)
1202 #define B_AX_WDE_BUFRTN_SIZE_ERR BIT(3)
1203 #define B_AX_WDE_BUFRTN_INVLD_PKTID_ERR BIT(2)
1204 #define B_AX_WDE_BUFREQ_UNAVAL_ERR BIT(1)
1205 #define B_AX_WDE_BUFREQ_QTAID_ERR BIT(0)
1206 
1207 #define B_AX_WDE_MAX_SIZE_MASK GENMASK(27, 16)
1208 #define B_AX_WDE_MIN_SIZE_MASK GENMASK(11, 0)
1209 #define R_AX_WDE_QTA0_CFG 0x8C40
1210 #define R_AX_WDE_QTA1_CFG 0x8C44
1211 #define R_AX_WDE_QTA2_CFG 0x8C48
1212 #define R_AX_WDE_QTA3_CFG 0x8C4C
1213 #define R_AX_WDE_QTA4_CFG 0x8C50
1214 
1215 #define B_AX_DLE_PUB_PGNUM GENMASK(12, 0)
1216 #define B_AX_DLE_FREE_HEADPG GENMASK(11, 0)
1217 #define B_AX_DLE_FREE_TAILPG GENMASK(27, 16)
1218 #define B_AX_DLE_USE_PGNUM GENMASK(27, 16)
1219 #define B_AX_DLE_RSV_PGNUM GENMASK(11, 0)
1220 #define B_AX_DLE_QEMPTY_GRP GENMASK(31, 0)
1221 
1222 #define R_AX_WDE_INI_STATUS 0x8D00
1223 #define B_AX_WDE_Q_MGN_INI_RDY BIT(1)
1224 #define B_AX_WDE_BUF_MGN_INI_RDY BIT(0)
1225 #define WDE_MGN_INI_RDY (B_AX_WDE_Q_MGN_INI_RDY | B_AX_WDE_BUF_MGN_INI_RDY)
1226 #define R_AX_WDE_DBG_FUN_INTF_CTL 0x8D10
1227 #define B_AX_WDE_DFI_ACTIVE BIT(31)
1228 #define B_AX_WDE_DFI_TRGSEL_MASK GENMASK(19, 16)
1229 #define B_AX_WDE_DFI_ADDR_MASK GENMASK(15, 0)
1230 #define R_AX_WDE_DBG_FUN_INTF_DATA 0x8D14
1231 #define B_AX_WDE_DFI_DATA_MASK GENMASK(31, 0)
1232 
1233 #define R_AX_PLE_PKTBUF_CFG 0x9008
1234 #define B_AX_PLE_START_BOUND_MASK GENMASK(13, 8)
1235 #define B_AX_PLE_PAGE_SEL_MASK GENMASK(1, 0)
1236 #define B_AX_PLE_FREE_PAGE_NUM_MASK GENMASK(28, 16)
1237 
1238 #define R_AX_PLE_DBGERR_LOCKEN 0x9020
1239 #define B_AX_PLE_LOCKEN_DLEPIF07 BIT(7)
1240 #define B_AX_PLE_LOCKEN_DLEPIF06 BIT(6)
1241 #define B_AX_PLE_LOCKEN_DLEPIF05 BIT(5)
1242 #define B_AX_PLE_LOCKEN_DLEPIF04 BIT(4)
1243 #define B_AX_PLE_LOCKEN_DLEPIF03 BIT(3)
1244 #define B_AX_PLE_LOCKEN_DLEPIF02 BIT(2)
1245 #define B_AX_PLE_LOCKEN_DLEPIF01 BIT(1)
1246 #define B_AX_PLE_LOCKEN_DLEPIF00 BIT(0)
1247 
1248 #define R_AX_PLE_DBGERR_STS 0x9024
1249 #define B_AX_PLE_LOCKON_DLEPIF07 BIT(7)
1250 #define B_AX_PLE_LOCKON_DLEPIF06 BIT(6)
1251 #define B_AX_PLE_LOCKON_DLEPIF05 BIT(5)
1252 #define B_AX_PLE_LOCKON_DLEPIF04 BIT(4)
1253 #define B_AX_PLE_LOCKON_DLEPIF03 BIT(3)
1254 #define B_AX_PLE_LOCKON_DLEPIF02 BIT(2)
1255 #define B_AX_PLE_LOCKON_DLEPIF01 BIT(1)
1256 #define B_AX_PLE_LOCKON_DLEPIF00 BIT(0)
1257 
1258 #define R_AX_PLE_ERR_FLAG_CFG_NUM1 0x9034
1259 #define B_AX_PLE_ERR_FLAG_NUM1_VLD BIT(31)
1260 #define B_AX_PLE_ERR_FLAG_NUM1_MSTIDX_MASK GENMASK(27, 24)
1261 #define B_AX_PLE_ERR_FLAG_NUM1_ISRIDX_MASK GENMASK(20, 16)
1262 #define B_AX_PLE_DATCHN_FRZTMR_MODE BIT(2)
1263 #define B_AX_PLE_QUEMGN_FRZTMR_MODE BIT(1)
1264 #define B_AX_PLE_BUFMGN_FRZTMR_MODE BIT(0)
1265 
1266 #define R_AX_PLE_ERRFLAG_MSG 0x9030
1267 #define B_AX_PLE_ERR_FLAG_MSG_MASK GENMASK(31, 0)
1268 #define B_AX_PLE_DATCHN_CAMREQ_ERR_INT_EN BIT(29)
1269 #define B_AX_PLE_DATCHN_ADRERR_ERR_INT_EN BIT(28)
1270 #define B_AX_PLE_BUFMGN_FRZTO_ERR_INT_EN_V1 BIT(9)
1271 #define B_AX_PLE_GETNPG_PGOFST_ERR_INT_EN_V1 BIT(8)
1272 #define B_AX_PLE_GETNPG_STRPG_ERR_INT_EN_V1 BIT(7)
1273 #define B_AX_PLE_BUFREQ_SRCHTAILPG_ERR_INT_EN_V1 BIT(6)
1274 #define B_AX_PLE_BUFRTN_SIZE_ERR_INT_EN_V1 BIT(5)
1275 #define B_AX_PLE_BUFRTN_INVLD_PKTID_ERR_INT_EN_V1 BIT(4)
1276 #define B_AX_PLE_BUFREQ_UNAVAL_ERR_INT_EN_V1 BIT(3)
1277 #define B_AX_PLE_BUFREQ_SIZELMT_INT_EN BIT(2)
1278 #define B_AX_PLE_BUFREQ_SIZE0_INT_EN BIT(1)
1279 #define B_AX_PLE_DATCHN_CAMREQ_ERR BIT(29)
1280 #define B_AX_PLE_DATCHN_ADRERR_ERR BIT(28)
1281 #define B_AX_PLE_BUFMGN_FRZTO_ERR_V1 BIT(9)
1282 #define B_AX_PLE_GETNPG_PGOFST_ERR_V1 BIT(8)
1283 #define B_AX_PLE_GETNPG_STRPG_ERR_V1 BIT(7)
1284 #define B_AX_PLE_BUFREQ_SRCHTAILPG_ERR_V1 BIT(6)
1285 #define B_AX_PLE_BUFRTN_SIZE_ERR_V1 BIT(5)
1286 #define B_AX_PLE_BUFRTN_INVLD_PKTID_ERR_V1 BIT(4)
1287 #define B_AX_PLE_BUFREQ_UNAVAL_ERR_V1 BIT(3)
1288 #define B_AX_PLE_BUFREQ_SIZELMT_ERR BIT(2)
1289 #define B_AX_PLE_BUFREQ_SIZE0_ERR BIT(1)
1290 
1291 #define R_AX_PLE_ERR_IMR 0x9038
1292 #define B_AX_PLE_DATCHN_RRDY_ERR_INT_EN BIT(27)
1293 #define B_AX_PLE_DATCHN_FRZTO_ERR_INT_EN BIT(26)
1294 #define B_AX_PLE_DATCHN_NULLPG_ERR_INT_EN BIT(25)
1295 #define B_AX_PLE_DATCHN_ARBT_ERR_INT_EN BIT(24)
1296 #define B_AX_PLE_QUEMGN_FRZTO_ERR_INT_EN BIT(19)
1297 #define B_AX_PLE_NXTPKTLL_AD_ERR_INT_EN BIT(18)
1298 #define B_AX_PLE_PREPKTLLT_AD_ERR_INT_EN BIT(17)
1299 #define B_AX_PLE_ENQ_PKTCNT_NVAL_ERR_INT_EN BIT(16)
1300 #define B_AX_PLE_ENQ_PKTCNT_OVRF_ERR_INT_EN BIT(15)
1301 #define B_AX_PLE_QUE_SRCQUEID_ERR_INT_EN BIT(14)
1302 #define B_AX_PLE_QUE_DSTQUEID_ERR_INT_EN BIT(13)
1303 #define B_AX_PLE_QUE_CMDTYPE_ERR_INT_EN BIT(12)
1304 #define B_AX_PLE_BUFMGN_FRZTO_ERR_INT_EN BIT(7)
1305 #define B_AX_PLE_GETNPG_PGOFST_ERR_INT_EN BIT(6)
1306 #define B_AX_PLE_GETNPG_STRPG_ERR_INT_EN BIT(5)
1307 #define B_AX_PLE_BUFREQ_SRCHTAILPG_ERR_INT_EN BIT(4)
1308 #define B_AX_PLE_BUFRTN_SIZE_ERR_INT_EN BIT(3)
1309 #define B_AX_PLE_BUFRTN_INVLD_PKTID_ERR_INT_EN BIT(2)
1310 #define B_AX_PLE_BUFREQ_UNAVAL_ERR_INT_EN BIT(1)
1311 #define B_AX_PLE_BUFREQ_QTAID_ERR_INT_EN BIT(0)
1312 #define B_AX_PLE_IMR_CLR (B_AX_PLE_BUFREQ_QTAID_ERR_INT_EN | \
1313 			  B_AX_PLE_BUFREQ_UNAVAL_ERR_INT_EN | \
1314 			  B_AX_PLE_BUFRTN_INVLD_PKTID_ERR_INT_EN | \
1315 			  B_AX_PLE_BUFRTN_SIZE_ERR_INT_EN | \
1316 			  B_AX_PLE_BUFREQ_SRCHTAILPG_ERR_INT_EN | \
1317 			  B_AX_PLE_GETNPG_STRPG_ERR_INT_EN | \
1318 			  B_AX_PLE_GETNPG_PGOFST_ERR_INT_EN | \
1319 			  B_AX_PLE_BUFMGN_FRZTO_ERR_INT_EN | \
1320 			  B_AX_PLE_QUE_CMDTYPE_ERR_INT_EN | \
1321 			  B_AX_PLE_QUE_DSTQUEID_ERR_INT_EN | \
1322 			  B_AX_PLE_QUE_SRCQUEID_ERR_INT_EN | \
1323 			  B_AX_PLE_ENQ_PKTCNT_OVRF_ERR_INT_EN | \
1324 			  B_AX_PLE_ENQ_PKTCNT_NVAL_ERR_INT_EN | \
1325 			  B_AX_PLE_PREPKTLLT_AD_ERR_INT_EN | \
1326 			  B_AX_PLE_NXTPKTLL_AD_ERR_INT_EN | \
1327 			  B_AX_PLE_QUEMGN_FRZTO_ERR_INT_EN | \
1328 			  B_AX_PLE_DATCHN_ARBT_ERR_INT_EN | \
1329 			  B_AX_PLE_DATCHN_NULLPG_ERR_INT_EN | \
1330 			  B_AX_PLE_DATCHN_FRZTO_ERR_INT_EN)
1331 #define B_AX_PLE_IMR_SET (B_AX_PLE_BUFREQ_QTAID_ERR_INT_EN | \
1332 			  B_AX_PLE_BUFREQ_UNAVAL_ERR_INT_EN | \
1333 			  B_AX_PLE_BUFRTN_INVLD_PKTID_ERR_INT_EN | \
1334 			  B_AX_PLE_BUFRTN_SIZE_ERR_INT_EN | \
1335 			  B_AX_PLE_BUFREQ_SRCHTAILPG_ERR_INT_EN | \
1336 			  B_AX_PLE_GETNPG_PGOFST_ERR_INT_EN | \
1337 			  B_AX_PLE_BUFMGN_FRZTO_ERR_INT_EN | \
1338 			  B_AX_PLE_QUE_CMDTYPE_ERR_INT_EN | \
1339 			  B_AX_PLE_QUE_DSTQUEID_ERR_INT_EN | \
1340 			  B_AX_PLE_QUE_SRCQUEID_ERR_INT_EN | \
1341 			  B_AX_PLE_ENQ_PKTCNT_OVRF_ERR_INT_EN | \
1342 			  B_AX_PLE_ENQ_PKTCNT_NVAL_ERR_INT_EN | \
1343 			  B_AX_PLE_PREPKTLLT_AD_ERR_INT_EN | \
1344 			  B_AX_PLE_NXTPKTLL_AD_ERR_INT_EN | \
1345 			  B_AX_PLE_QUEMGN_FRZTO_ERR_INT_EN | \
1346 			  B_AX_PLE_DATCHN_ARBT_ERR_INT_EN | \
1347 			  B_AX_PLE_DATCHN_NULLPG_ERR_INT_EN | \
1348 			  B_AX_PLE_DATCHN_FRZTO_ERR_INT_EN)
1349 
1350 #define B_AX_PLE_DATCHN_CAMREQ_ERR_INT_EN BIT(29)
1351 #define B_AX_PLE_DATCHN_ADRERR_ERR_INT_EN BIT(28)
1352 #define B_AX_PLE_BUFMGN_FRZTO_ERR_INT_EN_V1 BIT(9)
1353 #define B_AX_PLE_GETNPG_PGOFST_ERR_INT_EN_V1 BIT(8)
1354 #define B_AX_PLE_GETNPG_STRPG_ERR_INT_EN_V1 BIT(7)
1355 #define B_AX_PLE_BUFREQ_SRCHTAILPG_ERR_INT_EN_V1 BIT(6)
1356 #define B_AX_PLE_BUFRTN_SIZE_ERR_INT_EN_V1 BIT(5)
1357 #define B_AX_PLE_BUFRTN_INVLD_PKTID_ERR_INT_EN_V1 BIT(4)
1358 #define B_AX_PLE_BUFREQ_UNAVAL_ERR_INT_EN_V1 BIT(3)
1359 #define B_AX_PLE_BUFREQ_SIZELMT_INT_EN BIT(2)
1360 #define B_AX_PLE_BUFREQ_SIZE0_INT_EN BIT(1)
1361 #define B_AX_PLE_IMR_CLR_V1 (B_AX_PLE_BUFREQ_QTAID_ERR_INT_EN | \
1362 			     B_AX_PLE_BUFREQ_SIZE0_INT_EN | \
1363 			     B_AX_PLE_BUFREQ_SIZELMT_INT_EN | \
1364 			     B_AX_PLE_BUFREQ_UNAVAL_ERR_INT_EN_V1 | \
1365 			     B_AX_PLE_BUFRTN_INVLD_PKTID_ERR_INT_EN_V1 | \
1366 			     B_AX_PLE_BUFRTN_SIZE_ERR_INT_EN_V1 | \
1367 			     B_AX_PLE_BUFREQ_SRCHTAILPG_ERR_INT_EN_V1 | \
1368 			     B_AX_PLE_GETNPG_STRPG_ERR_INT_EN_V1 | \
1369 			     B_AX_PLE_GETNPG_PGOFST_ERR_INT_EN_V1 | \
1370 			     B_AX_PLE_BUFMGN_FRZTO_ERR_INT_EN_V1 | \
1371 			     B_AX_PLE_QUE_CMDTYPE_ERR_INT_EN | \
1372 			     B_AX_PLE_QUE_DSTQUEID_ERR_INT_EN | \
1373 			     B_AX_PLE_QUE_SRCQUEID_ERR_INT_EN | \
1374 			     B_AX_PLE_ENQ_PKTCNT_OVRF_ERR_INT_EN | \
1375 			     B_AX_PLE_ENQ_PKTCNT_NVAL_ERR_INT_EN | \
1376 			     B_AX_PLE_PREPKTLLT_AD_ERR_INT_EN | \
1377 			     B_AX_PLE_NXTPKTLL_AD_ERR_INT_EN | \
1378 			     B_AX_PLE_QUEMGN_FRZTO_ERR_INT_EN | \
1379 			     B_AX_PLE_DATCHN_ARBT_ERR_INT_EN | \
1380 			     B_AX_PLE_DATCHN_NULLPG_ERR_INT_EN | \
1381 			     B_AX_PLE_DATCHN_FRZTO_ERR_INT_EN | \
1382 			     B_AX_PLE_DATCHN_RRDY_ERR_INT_EN | \
1383 			     B_AX_PLE_DATCHN_ADRERR_ERR_INT_EN | \
1384 			     B_AX_PLE_DATCHN_CAMREQ_ERR_INT_EN)
1385 #define B_AX_PLE_IMR_SET_V1 (B_AX_PLE_BUFREQ_QTAID_ERR_INT_EN | \
1386 			     B_AX_PLE_BUFREQ_SIZE0_INT_EN | \
1387 			     B_AX_PLE_BUFREQ_SIZELMT_INT_EN | \
1388 			     B_AX_PLE_BUFREQ_UNAVAL_ERR_INT_EN_V1 | \
1389 			     B_AX_PLE_BUFRTN_INVLD_PKTID_ERR_INT_EN_V1 | \
1390 			     B_AX_PLE_BUFRTN_SIZE_ERR_INT_EN_V1 | \
1391 			     B_AX_PLE_BUFREQ_SRCHTAILPG_ERR_INT_EN_V1 | \
1392 			     B_AX_PLE_GETNPG_STRPG_ERR_INT_EN_V1 | \
1393 			     B_AX_PLE_GETNPG_PGOFST_ERR_INT_EN_V1 | \
1394 			     B_AX_PLE_BUFMGN_FRZTO_ERR_INT_EN_V1 | \
1395 			     B_AX_PLE_QUE_CMDTYPE_ERR_INT_EN | \
1396 			     B_AX_PLE_QUE_DSTQUEID_ERR_INT_EN | \
1397 			     B_AX_PLE_QUE_SRCQUEID_ERR_INT_EN | \
1398 			     B_AX_PLE_ENQ_PKTCNT_OVRF_ERR_INT_EN | \
1399 			     B_AX_PLE_ENQ_PKTCNT_NVAL_ERR_INT_EN | \
1400 			     B_AX_PLE_PREPKTLLT_AD_ERR_INT_EN | \
1401 			     B_AX_PLE_NXTPKTLL_AD_ERR_INT_EN | \
1402 			     B_AX_PLE_QUEMGN_FRZTO_ERR_INT_EN | \
1403 			     B_AX_PLE_DATCHN_ARBT_ERR_INT_EN | \
1404 			     B_AX_PLE_DATCHN_NULLPG_ERR_INT_EN | \
1405 			     B_AX_PLE_DATCHN_FRZTO_ERR_INT_EN | \
1406 			     B_AX_PLE_DATCHN_RRDY_ERR_INT_EN | \
1407 			     B_AX_PLE_DATCHN_ADRERR_ERR_INT_EN | \
1408 			     B_AX_PLE_DATCHN_CAMREQ_ERR_INT_EN)
1409 
1410 #define R_AX_PLE_ERR_FLAG_ISR 0x903C
1411 #define B_AX_PLE_MAX_SIZE_MASK GENMASK(27, 16)
1412 #define B_AX_PLE_MIN_SIZE_MASK GENMASK(11, 0)
1413 #define R_AX_PLE_QTA0_CFG 0x9040
1414 #define R_AX_PLE_QTA1_CFG 0x9044
1415 #define R_AX_PLE_QTA2_CFG 0x9048
1416 #define R_AX_PLE_QTA3_CFG 0x904C
1417 #define R_AX_PLE_QTA4_CFG 0x9050
1418 #define R_AX_PLE_QTA5_CFG 0x9054
1419 #define R_AX_PLE_QTA6_CFG 0x9058
1420 #define B_AX_PLE_Q6_MAX_SIZE_MASK GENMASK(27, 16)
1421 #define B_AX_PLE_Q6_MIN_SIZE_MASK GENMASK(11, 0)
1422 #define R_AX_PLE_QTA7_CFG 0x905C
1423 #define R_AX_PLE_QTA8_CFG 0x9060
1424 #define R_AX_PLE_QTA9_CFG 0x9064
1425 #define R_AX_PLE_QTA10_CFG 0x9068
1426 #define R_AX_PLE_QTA11_CFG 0x906C
1427 
1428 #define R_AX_PLE_INI_STATUS 0x9100
1429 #define B_AX_PLE_Q_MGN_INI_RDY BIT(1)
1430 #define B_AX_PLE_BUF_MGN_INI_RDY BIT(0)
1431 #define PLE_MGN_INI_RDY (B_AX_PLE_Q_MGN_INI_RDY | B_AX_PLE_BUF_MGN_INI_RDY)
1432 #define R_AX_PLE_DBG_FUN_INTF_CTL 0x9110
1433 #define B_AX_PLE_DFI_ACTIVE BIT(31)
1434 #define B_AX_PLE_DFI_TRGSEL_MASK GENMASK(19, 16)
1435 #define B_AX_PLE_DFI_ADDR_MASK GENMASK(15, 0)
1436 #define R_AX_PLE_DBG_FUN_INTF_DATA 0x9114
1437 #define B_AX_PLE_DFI_DATA_MASK GENMASK(31, 0)
1438 
1439 #define R_AX_WDRLS_CFG 0x9408
1440 #define B_AX_RLSRPT_BUFREQ_TO_MASK GENMASK(15, 8)
1441 #define B_AX_WDRLS_MODE_MASK GENMASK(1, 0)
1442 
1443 #define R_AX_RLSRPT0_CFG0 0x9410
1444 #define B_AX_RLSRPT0_FLTR_MAP_MASK GENMASK(27, 24)
1445 #define B_AX_RLSRPT0_PKTTYPE_MASK GENMASK(19, 16)
1446 #define B_AX_RLSRPT0_PID_MASK GENMASK(10, 8)
1447 #define B_AX_RLSRPT0_QID_MASK GENMASK(5, 0)
1448 
1449 #define R_AX_RLSRPT0_CFG1 0x9414
1450 #define B_AX_RLSRPT0_TO_MASK GENMASK(23, 16)
1451 #define B_AX_RLSRPT0_AGGNUM_MASK GENMASK(7, 0)
1452 
1453 #define R_AX_WDRLS_ERR_IMR 0x9430
1454 #define B_AX_WDRLS_RPT1_FRZTO_ERR_INT_EN BIT(13)
1455 #define B_AX_WDRLS_RPT1_AGGNUM0_ERR_INT_EN BIT(12)
1456 #define B_AX_WDRLS_RPT0_FRZTO_ERR_INT_EN BIT(9)
1457 #define B_AX_WDRLS_RPT0_AGGNUM0_ERR_INT_EN BIT(8)
1458 #define B_AX_WDRLS_PLEBREQ_PKTID_ISNULL_ERR_INT_EN BIT(5)
1459 #define B_AX_WDRLS_PLEBREQ_TO_ERR_INT_EN BIT(4)
1460 #define B_AX_WDRLS_CTL_FRZTO_ERR_INT_EN BIT(2)
1461 #define B_AX_WDRLS_CTL_PLPKTID_ISNULL_ERR_INT_EN BIT(1)
1462 #define B_AX_WDRLS_CTL_WDPKTID_ISNULL_ERR_INT_EN BIT(0)
1463 #define B_AX_WDRLS_IMR_EN_CLR (B_AX_WDRLS_CTL_WDPKTID_ISNULL_ERR_INT_EN | \
1464 			       B_AX_WDRLS_CTL_PLPKTID_ISNULL_ERR_INT_EN | \
1465 			       B_AX_WDRLS_CTL_FRZTO_ERR_INT_EN | \
1466 			       B_AX_WDRLS_PLEBREQ_TO_ERR_INT_EN | \
1467 			       B_AX_WDRLS_PLEBREQ_PKTID_ISNULL_ERR_INT_EN | \
1468 			       B_AX_WDRLS_RPT0_AGGNUM0_ERR_INT_EN | \
1469 			       B_AX_WDRLS_RPT0_FRZTO_ERR_INT_EN | \
1470 			       B_AX_WDRLS_RPT1_AGGNUM0_ERR_INT_EN | \
1471 			       B_AX_WDRLS_RPT1_FRZTO_ERR_INT_EN)
1472 #define B_AX_WDRLS_IMR_SET (B_AX_WDRLS_CTL_WDPKTID_ISNULL_ERR_INT_EN | \
1473 			    B_AX_WDRLS_CTL_PLPKTID_ISNULL_ERR_INT_EN | \
1474 			    B_AX_WDRLS_CTL_FRZTO_ERR_INT_EN | \
1475 			    B_AX_WDRLS_PLEBREQ_PKTID_ISNULL_ERR_INT_EN | \
1476 			    B_AX_WDRLS_RPT0_AGGNUM0_ERR_INT_EN | \
1477 			    B_AX_WDRLS_RPT0_FRZTO_ERR_INT_EN | \
1478 			    B_AX_WDRLS_RPT1_AGGNUM0_ERR_INT_EN | \
1479 			    B_AX_WDRLS_RPT1_FRZTO_ERR_INT_EN)
1480 #define B_AX_WDRLS_IMR_SET_V1 (B_AX_WDRLS_CTL_WDPKTID_ISNULL_ERR_INT_EN | \
1481 			      B_AX_WDRLS_CTL_PLPKTID_ISNULL_ERR_INT_EN | \
1482 			      B_AX_WDRLS_CTL_FRZTO_ERR_INT_EN | \
1483 			      B_AX_WDRLS_PLEBREQ_TO_ERR_INT_EN | \
1484 			      B_AX_WDRLS_PLEBREQ_PKTID_ISNULL_ERR_INT_EN | \
1485 			      B_AX_WDRLS_RPT0_AGGNUM0_ERR_INT_EN | \
1486 			      B_AX_WDRLS_RPT0_FRZTO_ERR_INT_EN | \
1487 			      B_AX_WDRLS_RPT1_AGGNUM0_ERR_INT_EN | \
1488 			      B_AX_WDRLS_RPT1_FRZTO_ERR_INT_EN)
1489 
1490 #define R_AX_WDRLS_ERR_ISR 0x9434
1491 
1492 #define R_AX_BBRPT_COM_ERR_IMR 0x9608
1493 #define B_AX_BBRPT_COM_HANG_EN BIT(1)
1494 #define B_AX_BBRPT_COM_NULL_PLPKTID_ERR_INT_EN BIT(0)
1495 
1496 #define R_AX_BBRPT_COM_ERR_IMR_ISR 0x960C
1497 #define B_AX_BBRPT_COM_NULL_PLPKTID_ERR BIT(16)
1498 #define B_AX_BBRPT_COM_NULL_PLPKTID_ERR_INT_EN BIT(0)
1499 
1500 #define R_AX_BBRPT_COM_ERR_ISR 0x960C
1501 #define B_AX_BBRPT_COM_NULL_PLPKTID_ERR_INT_V1 BIT(0)
1502 
1503 #define R_AX_BBRPT_CHINFO_ERR_ISR 0x962C
1504 #define B_AX_BBPRT_CHIF_TO_ERR_V1 BIT(7)
1505 #define B_AX_BBPRT_CHIF_NULL_ERR_V1 BIT(6)
1506 #define B_AX_BBPRT_CHIF_LEFT2_ERR_V1 BIT(5)
1507 #define B_AX_BBPRT_CHIF_LEFT1_ERR_V1 BIT(4)
1508 #define B_AX_BBPRT_CHIF_HDRL_ERR_V1 BIT(3)
1509 #define B_AX_BBPRT_CHIF_BOVF_ERR_V1 BIT(2)
1510 #define B_AX_BBPRT_CHIF_OVF_ERR_V1 BIT(1)
1511 #define B_AX_BBPRT_CHIF_BB_TO_ERR_V1 BIT(0)
1512 
1513 #define R_AX_BBRPT_CHINFO_ERR_IMR 0x9628
1514 #define B_AX_BBPRT_CHIF_TO_ERR_INT_EN BIT(7)
1515 #define B_AX_BBPRT_CHIF_NULL_ERR_INT_EN BIT(6)
1516 #define B_AX_BBPRT_CHIF_LEFT2_ERR_INT_EN BIT(5)
1517 #define B_AX_BBPRT_CHIF_LEFT1_ERR_INT_EN BIT(4)
1518 #define B_AX_BBPRT_CHIF_HDRL_ERR_INT_EN BIT(3)
1519 #define B_AX_BBPRT_CHIF_BOVF_ERR_INT_EN BIT(2)
1520 #define B_AX_BBPRT_CHIF_OVF_ERR_INT_EN BIT(1)
1521 #define B_AX_BBPRT_CHIF_BB_TO_ERR_INT_EN BIT(0)
1522 #define R_AX_BBRPT_CHINFO_IMR_SET_V1 (B_AX_BBPRT_CHIF_BB_TO_ERR_INT_EN | \
1523 				      B_AX_BBPRT_CHIF_OVF_ERR_INT_EN | \
1524 				      B_AX_BBPRT_CHIF_BOVF_ERR_INT_EN | \
1525 				      B_AX_BBPRT_CHIF_HDRL_ERR_INT_EN | \
1526 				      B_AX_BBPRT_CHIF_LEFT1_ERR_INT_EN | \
1527 				      B_AX_BBPRT_CHIF_LEFT2_ERR_INT_EN | \
1528 				      B_AX_BBPRT_CHIF_NULL_ERR_INT_EN | \
1529 				      B_AX_BBPRT_CHIF_TO_ERR_INT_EN)
1530 
1531 #define R_AX_BBRPT_CHINFO_ERR_IMR_ISR 0x962C
1532 #define B_AX_BBPRT_CHIF_TO_ERR BIT(23)
1533 #define B_AX_BBPRT_CHIF_NULL_ERR BIT(22)
1534 #define B_AX_BBPRT_CHIF_LEFT2_ERR BIT(21)
1535 #define B_AX_BBPRT_CHIF_LEFT1_ERR BIT(20)
1536 #define B_AX_BBPRT_CHIF_HDRL_ERR BIT(19)
1537 #define B_AX_BBPRT_CHIF_BOVF_ERR BIT(18)
1538 #define B_AX_BBPRT_CHIF_OVF_ERR BIT(17)
1539 #define B_AX_BBPRT_CHIF_BB_TO_ERR BIT(16)
1540 #define B_AX_BBPRT_CHIF_TO_ERR_INT_EN BIT(7)
1541 #define B_AX_BBPRT_CHIF_NULL_ERR_INT_EN BIT(6)
1542 #define B_AX_BBPRT_CHIF_LEFT2_ERR_INT_EN BIT(5)
1543 #define B_AX_BBPRT_CHIF_LEFT1_ERR_INT_EN BIT(4)
1544 #define B_AX_BBPRT_CHIF_HDRL_ERR_INT_EN BIT(3)
1545 #define B_AX_BBPRT_CHIF_BOVF_ERR_INT_EN BIT(2)
1546 #define B_AX_BBPRT_CHIF_OVF_ERR_INT_EN BIT(1)
1547 #define B_AX_BBPRT_CHIF_BB_TO_ERR_INT_EN BIT(0)
1548 #define B_AX_BBRPT_CHINFO_IMR_CLR (B_AX_BBPRT_CHIF_BB_TO_ERR_INT_EN | \
1549 				   B_AX_BBPRT_CHIF_OVF_ERR_INT_EN | \
1550 				   B_AX_BBPRT_CHIF_BOVF_ERR_INT_EN | \
1551 				   B_AX_BBPRT_CHIF_HDRL_ERR_INT_EN | \
1552 				   B_AX_BBPRT_CHIF_LEFT1_ERR_INT_EN | \
1553 				   B_AX_BBPRT_CHIF_LEFT2_ERR_INT_EN | \
1554 				   B_AX_BBPRT_CHIF_NULL_ERR_INT_EN | \
1555 				   B_AX_BBPRT_CHIF_TO_ERR_INT_EN)
1556 
1557 #define R_AX_BBRPT_DFS_ERR_IMR 0x9638
1558 #define B_AX_BBRPT_DFS_TO_ERR_INT_EN BIT(0)
1559 
1560 #define R_AX_BBRPT_DFS_ERR_IMR_ISR 0x963C
1561 #define B_AX_BBRPT_DFS_TO_ERR BIT(16)
1562 #define B_AX_BBRPT_DFS_TO_ERR_INT_EN BIT(0)
1563 
1564 #define R_AX_BBRPT_DFS_ERR_ISR 0x963C
1565 #define B_AX_BBRPT_DFS_TO_ERR_V1 BIT(0)
1566 
1567 #define R_AX_LA_ERRFLAG 0x966C
1568 #define B_AX_LA_ISR_DATA_LOSS_ERR BIT(16)
1569 #define B_AX_LA_IMR_DATA_LOSS_ERR BIT(0)
1570 
1571 #define R_AX_WD_BUF_REQ 0x9800
1572 #define R_AX_PL_BUF_REQ 0x9820
1573 #define B_AX_WD_BUF_REQ_EXEC BIT(31)
1574 #define B_AX_WD_BUF_REQ_QUOTA_ID_MASK GENMASK(23, 16)
1575 #define B_AX_WD_BUF_REQ_LEN_MASK GENMASK(15, 0)
1576 
1577 #define R_AX_WD_BUF_STATUS 0x9804
1578 #define R_AX_PL_BUF_STATUS 0x9824
1579 #define B_AX_WD_BUF_STAT_DONE BIT(31)
1580 #define B_AX_WD_BUF_STAT_PKTID_MASK GENMASK(11, 0)
1581 
1582 #define R_AX_WD_CPUQ_OP_0 0x9810
1583 #define R_AX_PL_CPUQ_OP_0 0x9830
1584 #define B_AX_WD_CPUQ_OP_EXEC BIT(31)
1585 #define B_AX_CPUQ_OP_CMD_TYPE_MASK GENMASK(27, 24)
1586 #define B_AX_CPUQ_OP_MACID_MASK GENMASK(23, 16)
1587 #define B_AX_CPUQ_OP_PKTNUM_MASK GENMASK(7, 0)
1588 
1589 #define R_AX_WD_CPUQ_OP_1 0x9814
1590 #define R_AX_PL_CPUQ_OP_1 0x9834
1591 #define B_AX_CPUQ_OP_SRC_PID_MASK GENMASK(24, 22)
1592 #define B_AX_CPUQ_OP_SRC_QID_MASK GENMASK(21, 16)
1593 #define B_AX_CPUQ_OP_DST_PID_MASK GENMASK(8, 6)
1594 #define B_AX_CPUQ_OP_DST_QID_MASK GENMASK(5, 0)
1595 
1596 #define R_AX_WD_CPUQ_OP_2 0x9818
1597 #define R_AX_PL_CPUQ_OP_2 0x9838
1598 #define B_AX_WD_CPUQ_OP_STRT_PKTID_MASK GENMASK(27, 16)
1599 #define B_AX_WD_CPUQ_OP_END_PKTID_MASK GENMASK(11, 0)
1600 
1601 #define R_AX_WD_CPUQ_OP_STATUS 0x981C
1602 #define R_AX_PL_CPUQ_OP_STATUS 0x983C
1603 #define B_AX_WD_CPUQ_OP_STAT_DONE BIT(31)
1604 #define B_AX_WD_CPUQ_OP_PKTID_MASK GENMASK(11, 0)
1605 
1606 #define R_AX_CPUIO_ERR_IMR 0x9840
1607 #define B_AX_PLEQUE_OP_ERR_INT_EN BIT(12)
1608 #define B_AX_PLEBUF_OP_ERR_INT_EN BIT(8)
1609 #define B_AX_WDEQUE_OP_ERR_INT_EN BIT(4)
1610 #define B_AX_WDEBUF_OP_ERR_INT_EN BIT(0)
1611 #define B_AX_CPUIO_IMR_CLR (B_AX_WDEBUF_OP_ERR_INT_EN | \
1612 			    B_AX_WDEQUE_OP_ERR_INT_EN | \
1613 			    B_AX_PLEBUF_OP_ERR_INT_EN | \
1614 			    B_AX_PLEQUE_OP_ERR_INT_EN)
1615 #define B_AX_CPUIO_IMR_SET (B_AX_WDEBUF_OP_ERR_INT_EN | \
1616 			    B_AX_WDEQUE_OP_ERR_INT_EN | \
1617 			    B_AX_PLEBUF_OP_ERR_INT_EN | \
1618 			    B_AX_PLEQUE_OP_ERR_INT_EN)
1619 
1620 #define R_AX_CPUIO_ERR_ISR 0x9844
1621 
1622 #define R_AX_SEC_ERR_IMR_ISR 0x991C
1623 
1624 #define R_AX_PKTIN_SETTING 0x9A00
1625 #define B_AX_WD_ADDR_INFO_LENGTH BIT(1)
1626 
1627 #define R_AX_PKTIN_ERR_IMR 0x9A20
1628 #define B_AX_PKTIN_GETPKTID_ERR_INT_EN BIT(0)
1629 
1630 #define R_AX_PKTIN_ERR_ISR 0x9A24
1631 
1632 #define R_AX_MPDU_TX_ERR_ISR 0x9BF0
1633 #define R_AX_MPDU_TX_ERR_IMR 0x9BF4
1634 #define B_AX_TX_KSRCH_ERR_EN BIT(9)
1635 #define B_AX_TX_NW_TYPE_ERR_EN BIT(8)
1636 #define B_AX_TX_LLC_PRE_ERR_EN BIT(7)
1637 #define B_AX_TX_ETH_TYPE_ERR_EN BIT(6)
1638 #define B_AX_TX_HDR3_SIZE_ERR_INT_EN BIT(5)
1639 #define B_AX_TX_OFFSET_ERR_INT_EN BIT(4)
1640 #define B_AX_TX_MPDU_SIZE_ZERO_INT_EN BIT(3)
1641 #define B_AX_TX_NXT_ERRPKTID_INT_EN BIT(2)
1642 #define B_AX_TX_GET_ERRPKTID_INT_EN BIT(1)
1643 #define B_AX_MPDU_TX_IMR_SET_V1 (B_AX_TX_GET_ERRPKTID_INT_EN | \
1644 				 B_AX_TX_NXT_ERRPKTID_INT_EN | \
1645 				 B_AX_TX_MPDU_SIZE_ZERO_INT_EN | \
1646 				 B_AX_TX_HDR3_SIZE_ERR_INT_EN | \
1647 				 B_AX_TX_ETH_TYPE_ERR_EN | \
1648 				 B_AX_TX_NW_TYPE_ERR_EN | \
1649 				 B_AX_TX_KSRCH_ERR_EN)
1650 
1651 #define R_AX_MPDU_PROC 0x9C00
1652 #define B_AX_A_ICV_ERR BIT(1)
1653 #define B_AX_APPEND_FCS BIT(0)
1654 
1655 #define R_AX_ACTION_FWD0 0x9C04
1656 #define TRXCFG_MPDU_PROC_ACT_FRWD 0x02A95A95
1657 
1658 #define R_AX_ACTION_FWD1 0x9C08
1659 
1660 #define R_AX_TF_FWD 0x9C14
1661 #define TRXCFG_MPDU_PROC_TF_FRWD 0x0000AA55
1662 
1663 #define R_AX_HW_RPT_FWD 0x9C18
1664 #define B_AX_FWD_PPDU_STAT_MASK GENMASK(1, 0)
1665 #define RTW89_PRPT_DEST_HOST 1
1666 #define RTW89_PRPT_DEST_WLCPU 2
1667 
1668 #define R_AX_CUT_AMSDU_CTRL 0x9C40
1669 #define TRXCFG_MPDU_PROC_CUT_CTRL	0x010E05F0
1670 
1671 #define R_AX_WOW_CTRL 0x9C50
1672 #define B_AX_WOW_WOWEN BIT(1)
1673 
1674 #define R_AX_MPDU_RX_ERR_ISR 0x9CF0
1675 #define R_AX_MPDU_RX_ERR_IMR 0x9CF4
1676 #define B_AX_RPT_ERR_INT_EN BIT(3)
1677 #define B_AX_MHDRLEN_ERR_INT_EN BIT(1)
1678 #define B_AX_GETPKTID_ERR_INT_EN BIT(0)
1679 #define B_AX_MPDU_RX_IMR_SET_V1 B_AX_RPT_ERR_INT_EN
1680 
1681 #define R_AX_SEC_ENG_CTRL 0x9D00
1682 #define B_AX_SEC_DBG_PORT_FIELD_MASK GENMASK(19, 16)
1683 #define B_AX_TX_PARTIAL_MODE BIT(11)
1684 #define B_AX_CLK_EN_CGCMP BIT(10)
1685 #define B_AX_CLK_EN_WAPI BIT(9)
1686 #define B_AX_CLK_EN_WEP_TKIP BIT(8)
1687 #define B_AX_BMC_MGNT_DEC BIT(5)
1688 #define B_AX_UC_MGNT_DEC BIT(4)
1689 #define B_AX_MC_DEC BIT(3)
1690 #define B_AX_BC_DEC BIT(2)
1691 #define B_AX_SEC_RX_DEC BIT(1)
1692 #define B_AX_SEC_TX_ENC BIT(0)
1693 
1694 #define R_AX_SEC_MPDU_PROC 0x9D04
1695 #define B_AX_APPEND_ICV BIT(1)
1696 #define B_AX_APPEND_MIC BIT(0)
1697 
1698 #define R_AX_SEC_CAM_ACCESS 0x9D10
1699 #define R_AX_SEC_CAM_RDATA 0x9D14
1700 #define R_AX_SEC_CAM_WDATA 0x9D18
1701 
1702 #define R_AX_SEC_DEBUG 0x9D1C
1703 #define B_AX_IMR_ERROR BIT(3)
1704 
1705 #define R_AX_SEC_DEBUG1 0x9D1C
1706 #define B_AX_TX_TIMEOUT_SEL_MASK GENMASK(31, 30)
1707 #define AX_TX_TO_VAL  0x2
1708 
1709 #define R_AX_SEC_TX_DEBUG 0x9D20
1710 #define R_AX_SEC_RX_DEBUG 0x9D24
1711 #define R_AX_SEC_TRX_PKT_CNT 0x9D28
1712 
1713 #define R_AX_SEC_DEBUG2 0x9D28
1714 #define B_AX_DBG_READ_SH 2
1715 #define B_AX_DBG_READ_MSK 0x3fffffff
1716 
1717 #define R_AX_SEC_TRX_BLK_CNT 0x9D2C
1718 
1719 #define R_AX_SEC_ERROR_FLAG_IMR 0x9D2C
1720 #define B_AX_RX_HANG_IMR BIT(1)
1721 #define B_AX_TX_HANG_IMR BIT(0)
1722 
1723 #define R_AX_SEC_ERROR_FLAG 0x9D30
1724 #define B_AX_RX_HANG_ERROR_V1 BIT(1)
1725 #define B_AX_TX_HANG_ERROR_V1 BIT(0)
1726 
1727 #define R_AX_SS_CTRL 0x9E10
1728 #define B_AX_SS_INIT_DONE_1 BIT(31)
1729 #define B_AX_SS_WARM_INIT_FLG BIT(29)
1730 #define B_AX_SS_NONEMPTY_SS2FINFO_EN BIT(28)
1731 #define B_AX_SS_EN BIT(0)
1732 
1733 #define R_AX_SS2FINFO_PATH 0x9E50
1734 #define B_AX_SS_UL_REL BIT(31)
1735 #define B_AX_SS_REL_QUEUE_MASK GENMASK(29, 24)
1736 #define B_AX_SS_REL_PORT_MASK GENMASK(18, 16)
1737 #define B_AX_SS_DEST_QUEUE_MASK GENMASK(13, 8)
1738 #define SS2F_PATH_WLCPU 0x0A
1739 #define B_AX_SS_DEST_PORT_MASK GENMASK(2, 0)
1740 
1741 #define R_AX_SS_MACID_PAUSE_0 0x9EB0
1742 #define B_AX_SS_MACID31_0_PAUSE_SH 0
1743 #define B_AX_SS_MACID31_0_PAUSE_MASK GENMASK(31, 0)
1744 
1745 #define R_AX_SS_MACID_PAUSE_1 0x9EB4
1746 #define B_AX_SS_MACID63_32_PAUSE_SH 0
1747 #define B_AX_SS_MACID63_32_PAUSE_MASK GENMASK(31, 0)
1748 
1749 #define R_AX_SS_MACID_PAUSE_2 0x9EB8
1750 #define B_AX_SS_MACID95_64_PAUSE_SH 0
1751 #define B_AX_SS_MACID95_64_PAUSE_MASK GENMASK(31, 0)
1752 
1753 #define R_AX_SS_MACID_PAUSE_3 0x9EBC
1754 #define B_AX_SS_MACID127_96_PAUSE_SH 0
1755 #define B_AX_SS_MACID127_96_PAUSE_MASK GENMASK(31, 0)
1756 
1757 #define R_AX_STA_SCHEDULER_ERR_IMR 0x9EF0
1758 #define B_AX_PLE_B_PKTID_ERR_INT_EN BIT(2)
1759 #define B_AX_RPT_HANG_TIMEOUT_INT_EN BIT(1)
1760 #define B_AX_SEARCH_HANG_TIMEOUT_INT_EN BIT(0)
1761 #define B_AX_STA_SCHEDULER_IMR_SET (B_AX_SEARCH_HANG_TIMEOUT_INT_EN | \
1762 				    B_AX_RPT_HANG_TIMEOUT_INT_EN | \
1763 				    B_AX_PLE_B_PKTID_ERR_INT_EN)
1764 
1765 #define R_AX_STA_SCHEDULER_ERR_ISR 0x9EF4
1766 
1767 #define R_AX_TXPKTCTL_ERR_IMR_ISR 0x9F1C
1768 #define B_AX_TXPKTCTL_CMDPSR_FRZTO_ERR BIT(25)
1769 #define B_AX_TXPKTCTL_CMDPSR_CMDTYPE_ERR BIT(24)
1770 #define B_AX_TXPKTCTL_USRCTL_RLSBMPLEN_ERR BIT(19)
1771 #define B_AX_TXPKTCTL_USRCTL_RDNRLSCMD_ERR BIT(18)
1772 #define B_AX_TXPKTCTL_USRCTL_NOINIT_ERR BIT(17)
1773 #define B_AX_TXPKTCTL_USRCTL_REINIT_ERR BIT(16)
1774 #define B_AX_TXPKTCTL_CMDPSR_FRZTO_ERR_INT_EN BIT(9)
1775 #define B_AX_TXPKTCTL_CMDPSR_CMDTYPE_ERR_INT_EN BIT(8)
1776 #define B_AX_TXPKTCTL_USRCTL_RLSBMPLEN_ERR_INT_EN BIT(3)
1777 #define B_AX_TXPKTCTL_USRCTL_RDNRLSCMD_ERR_INT_EN BIT(2)
1778 #define B_AX_TXPKTCTL_USRCTL_NOINIT_ERR_INT_EN BIT(1)
1779 #define B_AX_TXPKTCTL_USRCTL_REINIT_ERR_INT_EN BIT(0)
1780 #define B_AX_TXPKTCTL_IMR_B0_CLR (B_AX_TXPKTCTL_USRCTL_REINIT_ERR_INT_EN | \
1781 				  B_AX_TXPKTCTL_USRCTL_NOINIT_ERR_INT_EN | \
1782 				  B_AX_TXPKTCTL_USRCTL_RDNRLSCMD_ERR_INT_EN | \
1783 				  B_AX_TXPKTCTL_USRCTL_RLSBMPLEN_ERR_INT_EN | \
1784 				  B_AX_TXPKTCTL_CMDPSR_CMDTYPE_ERR_INT_EN | \
1785 				  B_AX_TXPKTCTL_CMDPSR_FRZTO_ERR_INT_EN)
1786 #define B_AX_TXPKTCTL_IMR_B1_CLR (B_AX_TXPKTCTL_USRCTL_REINIT_ERR_INT_EN | \
1787 				  B_AX_TXPKTCTL_USRCTL_NOINIT_ERR_INT_EN | \
1788 				  B_AX_TXPKTCTL_USRCTL_RDNRLSCMD_ERR_INT_EN | \
1789 				  B_AX_TXPKTCTL_USRCTL_RLSBMPLEN_ERR_INT_EN | \
1790 				  B_AX_TXPKTCTL_CMDPSR_CMDTYPE_ERR_INT_EN | \
1791 				  B_AX_TXPKTCTL_CMDPSR_FRZTO_ERR_INT_EN)
1792 #define B_AX_TXPKTCTL_IMR_B0_SET (B_AX_TXPKTCTL_USRCTL_REINIT_ERR_INT_EN | \
1793 				  B_AX_TXPKTCTL_CMDPSR_CMDTYPE_ERR_INT_EN)
1794 #define B_AX_TXPKTCTL_IMR_B1_SET (B_AX_TXPKTCTL_USRCTL_REINIT_ERR_INT_EN | \
1795 				  B_AX_TXPKTCTL_USRCTL_NOINIT_ERR_INT_EN | \
1796 				  B_AX_TXPKTCTL_CMDPSR_CMDTYPE_ERR_INT_EN | \
1797 				  B_AX_TXPKTCTL_CMDPSR_FRZTO_ERR_INT_EN)
1798 
1799 #define R_AX_TXPKTCTL_ERR_IMR_ISR_B1 0x9F2C
1800 #define B_AX_TXPKTCTL_CMDPSR_FRZTO_ERR_INT_EN BIT(9)
1801 #define B_AX_TXPKTCTL_USRCTL_RLSBMPLEN_ERR_INT_EN BIT(3)
1802 #define B_AX_TXPKTCTL_USRCTL_RDNRLSCMD_ERR_INT_EN BIT(2)
1803 #define B_AX_TXPKTCTL_USRCTL_NOINIT_ERR_INT_EN BIT(1)
1804 
1805 #define R_AX_DBG_FUN_INTF_CTL 0x9F30
1806 #define B_AX_DFI_ACTIVE BIT(31)
1807 #define B_AX_DFI_TRGSEL_MASK GENMASK(19, 16)
1808 #define B_AX_DFI_ADDR_MASK GENMASK(15, 0)
1809 #define R_AX_DBG_FUN_INTF_DATA 0x9F34
1810 #define B_AX_DFI_DATA_MASK GENMASK(31, 0)
1811 
1812 #define R_AX_TXPKTCTL_B0_PRELD_CFG0 0x9F48
1813 #define B_AX_B0_PRELD_FEN BIT(31)
1814 #define B_AX_B0_PRELD_USEMAXSZ_MASK GENMASK(25, 16)
1815 #define PRELD_B0_ENT_NUM 10
1816 #define PRELD_AMSDU_SIZE 52
1817 #define B_AX_B0_PRELD_CAM_G1ENTNUM_MASK GENMASK(12, 8)
1818 #define B_AX_B0_PRELD_CAM_G0ENTNUM_MASK GENMASK(4, 0)
1819 
1820 #define R_AX_TXPKTCTL_B0_PRELD_CFG1 0x9F4C
1821 #define B_AX_B0_PRELD_NXT_TXENDWIN_MASK GENMASK(11, 8)
1822 #define PRELD_NEXT_WND 1
1823 #define B_AX_B0_PRELD_NXT_RSVMINSZ_MASK GENMASK(7, 0)
1824 
1825 #define R_AX_TXPKTCTL_B0_ERRFLAG_IMR 0x9F78
1826 #define B_AX_B0_IMR_ERR_PRELD_ENTNUMCFG BIT(21)
1827 #define B_AX_B0_IMR_ERR_PRELD_RLSPKTSZERR BIT(20)
1828 #define B_AX_B0_IMR_ERR_MPDUIF_DATAERR BIT(18)
1829 #define B_AX_B0_IMR_ERR_MPDUINFO_RECFG BIT(16)
1830 #define B_AX_B0_IMR_ERR_CMDPSR_TBLSZ BIT(11)
1831 #define B_AX_B0_IMR_ERR_CMDPSR_FRZTO BIT(10)
1832 #define B_AX_B0_IMR_ERR_CMDPSR_CMDTYPE BIT(9)
1833 #define B_AX_B0_IMR_ERR_CMDPSR_1STCMDERR BIT(8)
1834 #define B_AX_B0_IMR_ERR_USRCTL_RLSBMPLEN BIT(3)
1835 #define B_AX_B0_IMR_ERR_USRCTL_RDNRLSCMD BIT(2)
1836 #define B_AX_B0_IMR_ERR_USRCTL_NOINIT BIT(1)
1837 #define B_AX_B0_IMR_ERR_USRCTL_REINIT BIT(0)
1838 #define B_AX_TXPKTCTL_IMR_B0_CLR_V1 (B_AX_B0_IMR_ERR_USRCTL_REINIT | \
1839 				     B_AX_B0_IMR_ERR_USRCTL_NOINIT | \
1840 				     B_AX_B0_IMR_ERR_USRCTL_RDNRLSCMD | \
1841 				     B_AX_B0_IMR_ERR_USRCTL_RLSBMPLEN | \
1842 				     B_AX_B0_IMR_ERR_CMDPSR_1STCMDERR | \
1843 				     B_AX_B0_IMR_ERR_CMDPSR_CMDTYPE | \
1844 				     B_AX_B0_IMR_ERR_CMDPSR_FRZTO | \
1845 				     B_AX_B0_IMR_ERR_CMDPSR_TBLSZ | \
1846 				     B_AX_B0_IMR_ERR_MPDUINFO_RECFG | \
1847 				     B_AX_B0_IMR_ERR_MPDUIF_DATAERR | \
1848 				     B_AX_B0_IMR_ERR_PRELD_RLSPKTSZERR | \
1849 				     B_AX_B0_IMR_ERR_PRELD_ENTNUMCFG)
1850 #define B_AX_TXPKTCTL_IMR_B0_SET_V1 (B_AX_B0_IMR_ERR_USRCTL_REINIT | \
1851 				     B_AX_B0_IMR_ERR_USRCTL_NOINIT | \
1852 				     B_AX_B0_IMR_ERR_CMDPSR_1STCMDERR | \
1853 				     B_AX_B0_IMR_ERR_CMDPSR_CMDTYPE | \
1854 				     B_AX_B0_IMR_ERR_CMDPSR_FRZTO | \
1855 				     B_AX_B0_IMR_ERR_CMDPSR_TBLSZ | \
1856 				     B_AX_B0_IMR_ERR_MPDUINFO_RECFG | \
1857 				     B_AX_B0_IMR_ERR_MPDUIF_DATAERR | \
1858 				     B_AX_B0_IMR_ERR_PRELD_RLSPKTSZERR | \
1859 				     B_AX_B0_IMR_ERR_PRELD_ENTNUMCFG)
1860 
1861 #define R_AX_TXPKTCTL_B0_ERRFLAG_ISR 0x9F7C
1862 #define B_AX_B0_ISR_ERR_PRELD_EVT3 BIT(23)
1863 #define B_AX_B0_ISR_ERR_PRELD_EVT2 BIT(22)
1864 #define B_AX_B0_ISR_ERR_PRELD_ENTNUMCFG BIT(21)
1865 #define B_AX_B0_ISR_ERR_PRELD_RLSPKTSZERR BIT(20)
1866 #define B_AX_B0_ISR_ERR_MPDUIF_ERR1 BIT(19)
1867 #define B_AX_B0_ISR_ERR_MPDUIF_DATAERR BIT(18)
1868 #define B_AX_B0_ISR_ERR_MPDUINFO_ERR1 BIT(17)
1869 #define B_AX_B0_ISR_ERR_MPDUINFO_RECFG BIT(16)
1870 #define B_AX_B0_ISR_ERR_CMDPSR_TBLSZ BIT(11)
1871 #define B_AX_B0_ISR_ERR_CMDPSR_FRZTO BIT(10)
1872 #define B_AX_B0_ISR_ERR_CMDPSR_CMDTYPE BIT(9)
1873 #define B_AX_B0_ISR_ERR_CMDPSR_1STCMDERR BIT(8)
1874 #define B_AX_B0_ISR_ERR_USRCTL_EVT7 BIT(7)
1875 #define B_AX_B0_ISR_ERR_USRCTL_EVT6 BIT(6)
1876 #define B_AX_B0_ISR_ERR_USRCTL_EVT5 BIT(5)
1877 #define B_AX_B0_ISR_ERR_USRCTL_EVT4 BIT(4)
1878 #define B_AX_B0_ISR_ERR_USRCTL_RLSBMPLEN BIT(3)
1879 #define B_AX_B0_ISR_ERR_USRCTL_RDNRLSCMD BIT(2)
1880 #define B_AX_B0_ISR_ERR_USRCTL_NOINIT BIT(1)
1881 #define B_AX_B0_ISR_ERR_USRCTL_REINIT BIT(0)
1882 
1883 #define R_AX_TXPKTCTL_B1_PRELD_CFG0 0x9F88
1884 #define B_AX_B1_PRELD_FEN BIT(31)
1885 #define B_AX_B1_PRELD_USEMAXSZ_MASK GENMASK(25, 16)
1886 #define PRELD_B1_ENT_NUM 4
1887 #define B_AX_B1_PRELD_CAM_G1ENTNUM_MASK GENMASK(12, 8)
1888 #define B_AX_B1_PRELD_CAM_G0ENTNUM_MASK GENMASK(4, 0)
1889 
1890 #define R_AX_TXPKTCTL_B1_PRELD_CFG1 0x9F8C
1891 #define B_AX_B1_PRELD_NXT_TXENDWIN_MASK GENMASK(11, 8)
1892 #define B_AX_B1_PRELD_NXT_RSVMINSZ_MASK GENMASK(7, 0)
1893 
1894 #define R_AX_TXPKTCTL_B1_ERRFLAG_IMR 0x9FB8
1895 #define B_AX_B1_IMR_ERR_PRELD_ENTNUMCFG BIT(21)
1896 #define B_AX_B1_IMR_ERR_PRELD_RLSPKTSZERR BIT(20)
1897 #define B_AX_B1_IMR_ERR_MPDUIF_DATAERR BIT(18)
1898 #define B_AX_B1_IMR_ERR_MPDUINFO_RECFG BIT(16)
1899 #define B_AX_B1_IMR_ERR_CMDPSR_TBLSZ BIT(11)
1900 #define B_AX_B1_IMR_ERR_CMDPSR_FRZTO BIT(10)
1901 #define B_AX_B1_IMR_ERR_CMDPSR_CMDTYPE BIT(9)
1902 #define B_AX_B1_IMR_ERR_CMDPSR_1STCMDERR BIT(8)
1903 #define B_AX_B1_IMR_ERR_USRCTL_RLSBMPLEN BIT(3)
1904 #define B_AX_B1_IMR_ERR_USRCTL_RDNRLSCMD BIT(2)
1905 #define B_AX_B1_IMR_ERR_USRCTL_NOINIT BIT(1)
1906 #define B_AX_B1_IMR_ERR_USRCTL_REINIT BIT(0)
1907 #define B_AX_TXPKTCTL_IMR_B1_CLR_V1 (B_AX_B1_IMR_ERR_USRCTL_REINIT | \
1908 				     B_AX_B1_IMR_ERR_USRCTL_NOINIT | \
1909 				     B_AX_B1_IMR_ERR_USRCTL_RDNRLSCMD | \
1910 				     B_AX_B1_IMR_ERR_USRCTL_RLSBMPLEN | \
1911 				     B_AX_B1_IMR_ERR_CMDPSR_1STCMDERR | \
1912 				     B_AX_B1_IMR_ERR_CMDPSR_CMDTYPE | \
1913 				     B_AX_B1_IMR_ERR_CMDPSR_FRZTO | \
1914 				     B_AX_B1_IMR_ERR_CMDPSR_TBLSZ | \
1915 				     B_AX_B1_IMR_ERR_MPDUINFO_RECFG | \
1916 				     B_AX_B1_IMR_ERR_MPDUIF_DATAERR | \
1917 				     B_AX_B1_IMR_ERR_PRELD_RLSPKTSZERR | \
1918 				     B_AX_B1_IMR_ERR_PRELD_ENTNUMCFG)
1919 #define B_AX_TXPKTCTL_IMR_B1_SET_V1 (B_AX_B1_IMR_ERR_USRCTL_REINIT | \
1920 				     B_AX_B1_IMR_ERR_USRCTL_NOINIT | \
1921 				     B_AX_B1_IMR_ERR_CMDPSR_1STCMDERR | \
1922 				     B_AX_B1_IMR_ERR_CMDPSR_CMDTYPE | \
1923 				     B_AX_B1_IMR_ERR_CMDPSR_FRZTO | \
1924 				     B_AX_B1_IMR_ERR_CMDPSR_TBLSZ | \
1925 				     B_AX_B1_IMR_ERR_MPDUINFO_RECFG | \
1926 				     B_AX_B1_IMR_ERR_MPDUIF_DATAERR | \
1927 				     B_AX_B1_IMR_ERR_PRELD_RLSPKTSZERR | \
1928 				     B_AX_B1_IMR_ERR_PRELD_ENTNUMCFG)
1929 
1930 #define R_AX_TXPKTCTL_B1_ERRFLAG_ISR 0x9FBC
1931 #define B_AX_B1_ISR_ERR_PRELD_EVT3 BIT(23)
1932 #define B_AX_B1_ISR_ERR_PRELD_EVT2 BIT(22)
1933 #define B_AX_B1_ISR_ERR_PRELD_ENTNUMCFG BIT(21)
1934 #define B_AX_B1_ISR_ERR_PRELD_RLSPKTSZERR BIT(20)
1935 #define B_AX_B1_ISR_ERR_MPDUIF_ERR1 BIT(19)
1936 #define B_AX_B1_ISR_ERR_MPDUIF_DATAERR BIT(18)
1937 #define B_AX_B1_ISR_ERR_MPDUINFO_ERR1 BIT(17)
1938 #define B_AX_B1_ISR_ERR_MPDUINFO_RECFG BIT(16)
1939 #define B_AX_B1_ISR_ERR_CMDPSR_TBLSZ BIT(11)
1940 #define B_AX_B1_ISR_ERR_CMDPSR_FRZTO BIT(10)
1941 #define B_AX_B1_ISR_ERR_CMDPSR_CMDTYPE BIT(9)
1942 #define B_AX_B1_ISR_ERR_CMDPSR_1STCMDERR BIT(8)
1943 #define B_AX_B1_ISR_ERR_USRCTL_EVT7 BIT(7)
1944 #define B_AX_B1_ISR_ERR_USRCTL_EVT6 BIT(6)
1945 #define B_AX_B1_ISR_ERR_USRCTL_EVT5 BIT(5)
1946 #define B_AX_B1_ISR_ERR_USRCTL_EVT4 BIT(4)
1947 #define B_AX_B1_ISR_ERR_USRCTL_RLSBMPLEN BIT(3)
1948 #define B_AX_B1_ISR_ERR_USRCTL_RDNRLSCMD BIT(2)
1949 #define B_AX_B1_ISR_ERR_USRCTL_NOINIT BIT(1)
1950 #define B_AX_B1_ISR_ERR_USRCTL_REINIT BIT(0)
1951 
1952 #define R_AX_AFE_CTRL1 0x0024
1953 
1954 #define B_AX_R_SYM_WLCMAC1_P4_PC_EN BIT(4)
1955 #define B_AX_R_SYM_WLCMAC1_P3_PC_EN BIT(3)
1956 #define B_AX_R_SYM_WLCMAC1_P2_PC_EN BIT(2)
1957 #define B_AX_R_SYM_WLCMAC1_P1_PC_EN BIT(1)
1958 #define B_AX_R_SYM_WLCMAC1_PC_EN BIT(0)
1959 
1960 #define R_AX_SYS_ISO_CTRL_EXTEND 0x0080
1961 #define B_AX_CMAC1_FEN BIT(30)
1962 #define B_AX_R_SYM_FEN_WLBBGLB_1 BIT(17)
1963 #define B_AX_R_SYM_FEN_WLBBFUN_1 BIT(16)
1964 #define B_AX_R_SYM_ISO_CMAC12PP BIT(5)
1965 
1966 #define R_AX_CMAC_REG_START 0xC000
1967 
1968 #define R_AX_CMAC_FUNC_EN 0xC000
1969 #define R_AX_CMAC_FUNC_EN_C1 0xE000
1970 #define B_AX_CMAC_CRPRT BIT(31)
1971 #define B_AX_CMAC_EN BIT(30)
1972 #define B_AX_CMAC_TXEN BIT(29)
1973 #define B_AX_CMAC_RXEN BIT(28)
1974 #define B_AX_FORCE_CMACREG_GCKEN BIT(15)
1975 #define B_AX_PHYINTF_EN BIT(5)
1976 #define B_AX_CMAC_DMA_EN BIT(4)
1977 #define B_AX_PTCLTOP_EN BIT(3)
1978 #define B_AX_SCHEDULER_EN BIT(2)
1979 #define B_AX_TMAC_EN BIT(1)
1980 #define B_AX_RMAC_EN BIT(0)
1981 
1982 #define R_AX_CK_EN 0xC004
1983 #define R_AX_CK_EN_C1 0xE004
1984 #define B_AX_CMAC_ALLCKEN GENMASK(31, 0)
1985 #define B_AX_CMAC_CKEN BIT(30)
1986 #define B_AX_PHYINTF_CKEN BIT(5)
1987 #define B_AX_CMAC_DMA_CKEN BIT(4)
1988 #define B_AX_PTCLTOP_CKEN BIT(3)
1989 #define B_AX_SCHEDULER_CKEN BIT(2)
1990 #define B_AX_TMAC_CKEN BIT(1)
1991 #define B_AX_RMAC_CKEN BIT(0)
1992 
1993 #define R_AX_WMAC_RFMOD 0xC010
1994 #define R_AX_WMAC_RFMOD_C1 0xE010
1995 #define B_AX_WMAC_RFMOD_MASK GENMASK(1, 0)
1996 #define AX_WMAC_RFMOD_20M 0
1997 #define AX_WMAC_RFMOD_40M 1
1998 #define AX_WMAC_RFMOD_80M 2
1999 #define AX_WMAC_RFMOD_160M 3
2000 
2001 #define R_AX_GID_POSITION0 0xC070
2002 #define R_AX_GID_POSITION0_C1 0xE070
2003 #define R_AX_GID_POSITION1 0xC074
2004 #define R_AX_GID_POSITION1_C1 0xE074
2005 #define R_AX_GID_POSITION2 0xC078
2006 #define R_AX_GID_POSITION2_C1 0xE078
2007 #define R_AX_GID_POSITION3 0xC07C
2008 #define R_AX_GID_POSITION3_C1 0xE07C
2009 #define R_AX_GID_POSITION_EN0 0xC080
2010 #define R_AX_GID_POSITION_EN0_C1 0xE080
2011 #define R_AX_GID_POSITION_EN1 0xC084
2012 #define R_AX_GID_POSITION_EN1_C1 0xE084
2013 
2014 #define R_AX_TX_SUB_CARRIER_VALUE 0xC088
2015 #define R_AX_TX_SUB_CARRIER_VALUE_C1 0xE088
2016 #define B_AX_TXSC_80M_MASK GENMASK(11, 8)
2017 #define B_AX_TXSC_40M_MASK GENMASK(7, 4)
2018 #define B_AX_TXSC_20M_MASK GENMASK(3, 0)
2019 
2020 #define R_AX_PTCL_RRSR1 0xC090
2021 #define R_AX_PTCL_RRSR1_C1 0xE090
2022 #define B_AX_RRSR_RATE_EN_MASK GENMASK(11, 8)
2023 #define RRSR_OFDM_CCK_EN 3
2024 #define B_AX_RSC_MASK GENMASK(7, 6)
2025 #define B_AX_RRSR_CCK_MASK GENMASK(3, 0)
2026 
2027 #define R_AX_CMAC_ERR_IMR 0xC160
2028 #define R_AX_CMAC_ERR_IMR_C1 0xE160
2029 #define B_AX_WMAC_TX_ERR_IND_EN BIT(7)
2030 #define B_AX_WMAC_RX_ERR_IND_EN BIT(6)
2031 #define B_AX_TXPWR_CTRL_ERR_IND_EN BIT(5)
2032 #define B_AX_PHYINTF_ERR_IND_EN BIT(4)
2033 #define B_AX_DMA_TOP_ERR_IND_EN BIT(3)
2034 #define B_AX_PTCL_TOP_ERR_IND_EN BIT(1)
2035 #define B_AX_SCHEDULE_TOP_ERR_IND_EN BIT(0)
2036 #define CMAC0_ERR_IMR_EN GENMASK(31, 0)
2037 #define CMAC1_ERR_IMR_EN GENMASK(31, 0)
2038 #define CMAC0_ERR_IMR_DIS 0
2039 #define CMAC1_ERR_IMR_DIS 0
2040 
2041 #define R_AX_CMAC_ERR_ISR 0xC164
2042 #define R_AX_CMAC_ERR_ISR_C1 0xE164
2043 #define B_AX_WMAC_TX_ERR_IND BIT(7)
2044 #define B_AX_WMAC_RX_ERR_IND BIT(6)
2045 #define B_AX_TXPWR_CTRL_ERR_IND BIT(5)
2046 #define B_AX_PHYINTF_ERR_IND BIT(4)
2047 #define B_AX_DMA_TOP_ERR_IND BIT(3)
2048 #define B_AX_PTCL_TOP_ERR_IND BIT(1)
2049 #define B_AX_SCHEDULE_TOP_ERR_IND BIT(0)
2050 
2051 #define R_AX_PORT0_TSF_SYNC 0xC2A0
2052 #define R_AX_PORT0_TSF_SYNC_C1 0xE2A0
2053 #define R_AX_PORT1_TSF_SYNC 0xC2A4
2054 #define R_AX_PORT1_TSF_SYNC_C1 0xE2A4
2055 #define R_AX_PORT2_TSF_SYNC 0xC2A8
2056 #define R_AX_PORT2_TSF_SYNC_C1 0xE2A8
2057 #define R_AX_PORT3_TSF_SYNC 0xC2AC
2058 #define R_AX_PORT3_TSF_SYNC_C1 0xE2AC
2059 #define R_AX_PORT4_TSF_SYNC 0xC2B0
2060 #define R_AX_PORT4_TSF_SYNC_C1 0xE2B0
2061 #define B_AX_SYNC_NOW BIT(30)
2062 #define B_AX_SYNC_ONCE BIT(29)
2063 #define B_AX_SYNC_AUTO BIT(28)
2064 #define B_AX_SYNC_PORT_SRC GENMASK(26, 24)
2065 #define B_AX_SYNC_PORT_OFFSET_SIGN BIT(18)
2066 #define B_AX_SYNC_PORT_OFFSET_VAL GENMASK(17, 0)
2067 
2068 #define R_AX_MACID_SLEEP_0 0xC2C0
2069 #define R_AX_MACID_SLEEP_0_C1 0xE2C0
2070 #define B_AX_MACID31_0_SLEEP_SH 0
2071 #define B_AX_MACID31_0_SLEEP_MASK GENMASK(31, 0)
2072 
2073 #define R_AX_MACID_SLEEP_1 0xC2C4
2074 #define R_AX_MACID_SLEEP_1_C1 0xE2C4
2075 #define B_AX_MACID63_32_SLEEP_SH 0
2076 #define B_AX_MACID63_32_SLEEP_MASK GENMASK(31, 0)
2077 
2078 #define R_AX_MACID_SLEEP_2 0xC2C8
2079 #define R_AX_MACID_SLEEP_2_C1 0xE2C8
2080 #define B_AX_MACID95_64_SLEEP_SH 0
2081 #define B_AX_MACID95_64_SLEEP_MASK GENMASK(31, 0)
2082 
2083 #define R_AX_MACID_SLEEP_3 0xC2CC
2084 #define R_AX_MACID_SLEEP_3_C1 0xE2CC
2085 #define B_AX_MACID127_96_SLEEP_SH 0
2086 #define B_AX_MACID127_96_SLEEP_MASK GENMASK(31, 0)
2087 
2088 #define SCH_PREBKF_24US 0x18
2089 #define R_AX_PREBKF_CFG_0 0xC338
2090 #define R_AX_PREBKF_CFG_0_C1 0xE338
2091 #define B_AX_PREBKF_TIME_MASK GENMASK(4, 0)
2092 
2093 #define R_AX_PREBKF_CFG_1 0xC33C
2094 #define R_AX_PREBKF_CFG_1_C1 0xE33C
2095 #define B_AX_SIFS_TIMEOUT_TB_AGGR_MASK GENMASK(30, 24)
2096 #define B_AX_SIFS_PREBKF_MASK GENMASK(23, 16)
2097 #define B_AX_SIFS_TIMEOUT_T2_MASK GENMASK(14, 8)
2098 #define B_AX_SIFS_MACTXEN_T1_MASK GENMASK(6, 0)
2099 #define SIFS_MACTXEN_T1 0x47
2100 #define SIFS_MACTXEN_T1_V1 0x41
2101 
2102 #define R_AX_CCA_CFG_0 0xC340
2103 #define R_AX_CCA_CFG_0_C1 0xE340
2104 #define B_AX_BTCCA_BRK_TXOP_EN BIT(9)
2105 #define B_AX_BTCCA_EN BIT(5)
2106 #define B_AX_EDCCA_EN BIT(4)
2107 #define B_AX_SEC80_EN BIT(3)
2108 #define B_AX_SEC40_EN BIT(2)
2109 #define B_AX_SEC20_EN BIT(1)
2110 #define B_AX_CCA_EN BIT(0)
2111 
2112 #define R_AX_CTN_TXEN 0xC348
2113 #define R_AX_CTN_TXEN_C1 0xE348
2114 #define B_AX_CTN_TXEN_TWT_1 BIT(15)
2115 #define B_AX_CTN_TXEN_TWT_0 BIT(14)
2116 #define B_AX_CTN_TXEN_ULQ BIT(13)
2117 #define B_AX_CTN_TXEN_BCNQ BIT(12)
2118 #define B_AX_CTN_TXEN_HGQ BIT(11)
2119 #define B_AX_CTN_TXEN_CPUMGQ BIT(10)
2120 #define B_AX_CTN_TXEN_MGQ1 BIT(9)
2121 #define B_AX_CTN_TXEN_MGQ BIT(8)
2122 #define B_AX_CTN_TXEN_VO_1 BIT(7)
2123 #define B_AX_CTN_TXEN_VI_1 BIT(6)
2124 #define B_AX_CTN_TXEN_BK_1 BIT(5)
2125 #define B_AX_CTN_TXEN_BE_1 BIT(4)
2126 #define B_AX_CTN_TXEN_VO_0 BIT(3)
2127 #define B_AX_CTN_TXEN_VI_0 BIT(2)
2128 #define B_AX_CTN_TXEN_BK_0 BIT(1)
2129 #define B_AX_CTN_TXEN_BE_0 BIT(0)
2130 #define B_AX_CTN_TXEN_ALL_MASK GENMASK(15, 0)
2131 
2132 #define R_AX_MUEDCA_BE_PARAM_0 0xC350
2133 #define R_AX_MUEDCA_BE_PARAM_0_C1 0xE350
2134 #define B_AX_MUEDCA_BE_PARAM_0_TIMER_MASK GENMASK(31, 16)
2135 #define B_AX_MUEDCA_BE_PARAM_0_CW_MASK GENMASK(15, 8)
2136 #define B_AX_MUEDCA_BE_PARAM_0_AIFS_MASK GENMASK(7, 0)
2137 
2138 #define R_AX_MUEDCA_BK_PARAM_0 0xC354
2139 #define R_AX_MUEDCA_BK_PARAM_0_C1 0xE354
2140 #define R_AX_MUEDCA_VI_PARAM_0 0xC358
2141 #define R_AX_MUEDCA_VI_PARAM_0_C1 0xE358
2142 #define R_AX_MUEDCA_VO_PARAM_0 0xC35C
2143 #define R_AX_MUEDCA_VO_PARAM_0_C1 0xE35C
2144 
2145 #define R_AX_MUEDCA_EN 0xC370
2146 #define R_AX_MUEDCA_EN_C1 0xE370
2147 #define B_AX_MUEDCA_WMM_SEL BIT(8)
2148 #define B_AX_SET_MUEDCATIMER_TF_0 BIT(4)
2149 #define B_AX_MUEDCA_EN_0 BIT(0)
2150 
2151 #define R_AX_CCA_CONTROL 0xC390
2152 #define R_AX_CCA_CONTROL_C1 0xE390
2153 #define B_AX_TB_CHK_TX_NAV BIT(31)
2154 #define B_AX_TB_CHK_BASIC_NAV BIT(30)
2155 #define B_AX_TB_CHK_BTCCA BIT(29)
2156 #define B_AX_TB_CHK_EDCCA BIT(28)
2157 #define B_AX_TB_CHK_CCA_S80 BIT(27)
2158 #define B_AX_TB_CHK_CCA_S40 BIT(26)
2159 #define B_AX_TB_CHK_CCA_S20 BIT(25)
2160 #define B_AX_TB_CHK_CCA_P20 BIT(24)
2161 #define B_AX_SIFS_CHK_BTCCA BIT(21)
2162 #define B_AX_SIFS_CHK_EDCCA BIT(20)
2163 #define B_AX_SIFS_CHK_CCA_S80 BIT(19)
2164 #define B_AX_SIFS_CHK_CCA_S40 BIT(18)
2165 #define B_AX_SIFS_CHK_CCA_S20 BIT(17)
2166 #define B_AX_SIFS_CHK_CCA_P20 BIT(16)
2167 #define B_AX_CTN_CHK_TXNAV BIT(8)
2168 #define B_AX_CTN_CHK_INTRA_NAV BIT(7)
2169 #define B_AX_CTN_CHK_BASIC_NAV BIT(6)
2170 #define B_AX_CTN_CHK_BTCCA BIT(5)
2171 #define B_AX_CTN_CHK_EDCCA BIT(4)
2172 #define B_AX_CTN_CHK_CCA_S80 BIT(3)
2173 #define B_AX_CTN_CHK_CCA_S40 BIT(2)
2174 #define B_AX_CTN_CHK_CCA_S20 BIT(1)
2175 #define B_AX_CTN_CHK_CCA_P20 BIT(0)
2176 
2177 #define R_AX_CTN_DRV_TXEN 0xC398
2178 #define R_AX_CTN_DRV_TXEN_C1 0xE398
2179 #define B_AX_CTN_TXEN_TWT_3 BIT(17)
2180 #define B_AX_CTN_TXEN_TWT_2 BIT(16)
2181 #define B_AX_CTN_TXEN_ALL_MASK_V1 GENMASK(17, 0)
2182 
2183 #define R_AX_SCHEDULE_ERR_IMR 0xC3E8
2184 #define R_AX_SCHEDULE_ERR_IMR_C1 0xE3E8
2185 #define B_AX_SORT_NON_IDLE_ERR_INT_EN BIT(1)
2186 
2187 #define R_AX_SCHEDULE_ERR_ISR 0xC3EC
2188 #define R_AX_SCHEDULE_ERR_ISR_C1 0xE3EC
2189 
2190 #define R_AX_SCH_DBG_SEL 0xC3F4
2191 #define R_AX_SCH_DBG_SEL_C1 0xE3F4
2192 #define B_AX_SCH_DBG_EN BIT(16)
2193 #define B_AX_SCH_CFG_CMD_SEL GENMASK(15, 8)
2194 #define B_AX_SCH_DBG_SEL_MASK GENMASK(7, 0)
2195 
2196 #define R_AX_SCH_DBG 0xC3F8
2197 #define R_AX_SCH_DBG_C1 0xE3F8
2198 #define B_AX_SCHEDULER_DBG_MASK GENMASK(31, 0)
2199 
2200 #define R_AX_SCH_EXT_CTRL 0xC3FC
2201 #define R_AX_SCH_EXT_CTRL_C1 0xE3FC
2202 #define B_AX_PORT_RST_TSF_ADV BIT(1)
2203 
2204 #define R_AX_PORT_CFG_P0 0xC400
2205 #define R_AX_PORT_CFG_P1 0xC440
2206 #define R_AX_PORT_CFG_P2 0xC480
2207 #define R_AX_PORT_CFG_P3 0xC4C0
2208 #define R_AX_PORT_CFG_P4 0xC500
2209 #define B_AX_BRK_SETUP BIT(16)
2210 #define B_AX_TBTT_UPD_SHIFT_SEL BIT(15)
2211 #define B_AX_BCN_DROP_ALLOW BIT(14)
2212 #define B_AX_TBTT_PROHIB_EN BIT(13)
2213 #define B_AX_BCNTX_EN BIT(12)
2214 #define B_AX_NET_TYPE_MASK GENMASK(11, 10)
2215 #define B_AX_BCN_FORCETX_EN BIT(9)
2216 #define B_AX_TXBCN_BTCCA_EN BIT(8)
2217 #define B_AX_BCNERR_CNT_EN BIT(7)
2218 #define B_AX_BCN_AGRES BIT(6)
2219 #define B_AX_TSFTR_RST BIT(5)
2220 #define B_AX_RX_BSSID_FIT_EN BIT(4)
2221 #define B_AX_TSF_UDT_EN BIT(3)
2222 #define B_AX_PORT_FUNC_EN BIT(2)
2223 #define B_AX_TXBCN_RPT_EN BIT(1)
2224 #define B_AX_RXBCN_RPT_EN BIT(0)
2225 
2226 #define R_AX_TBTT_PROHIB_P0 0xC404
2227 #define R_AX_TBTT_PROHIB_P1 0xC444
2228 #define R_AX_TBTT_PROHIB_P2 0xC484
2229 #define R_AX_TBTT_PROHIB_P3 0xC4C4
2230 #define R_AX_TBTT_PROHIB_P4 0xC504
2231 #define B_AX_TBTT_HOLD_MASK GENMASK(27, 16)
2232 #define B_AX_TBTT_SETUP_MASK GENMASK(7, 0)
2233 
2234 #define R_AX_BCN_AREA_P0 0xC408
2235 #define R_AX_BCN_AREA_P1 0xC448
2236 #define R_AX_BCN_AREA_P2 0xC488
2237 #define R_AX_BCN_AREA_P3 0xC4C8
2238 #define R_AX_BCN_AREA_P4 0xC508
2239 #define B_AX_BCN_MSK_AREA_MASK GENMASK(27, 16)
2240 #define B_AX_BCN_CTN_AREA_MASK GENMASK(11, 0)
2241 
2242 #define R_AX_BCNERLYINT_CFG_P0 0xC40C
2243 #define R_AX_BCNERLYINT_CFG_P1 0xC44C
2244 #define R_AX_BCNERLYINT_CFG_P2 0xC48C
2245 #define R_AX_BCNERLYINT_CFG_P3 0xC4CC
2246 #define R_AX_BCNERLYINT_CFG_P4 0xC50C
2247 #define B_AX_BCNERLY_MASK GENMASK(11, 0)
2248 
2249 #define R_AX_TBTTERLYINT_CFG_P0 0xC40E
2250 #define R_AX_TBTTERLYINT_CFG_P1 0xC44E
2251 #define R_AX_TBTTERLYINT_CFG_P2 0xC48E
2252 #define R_AX_TBTTERLYINT_CFG_P3 0xC4CE
2253 #define R_AX_TBTTERLYINT_CFG_P4 0xC50E
2254 #define B_AX_TBTTERLY_MASK GENMASK(11, 0)
2255 
2256 #define R_AX_TBTT_AGG_P0 0xC412
2257 #define R_AX_TBTT_AGG_P1 0xC452
2258 #define R_AX_TBTT_AGG_P2 0xC492
2259 #define R_AX_TBTT_AGG_P3 0xC4D2
2260 #define R_AX_TBTT_AGG_P4 0xC512
2261 #define B_AX_TBTT_AGG_NUM_MASK GENMASK(15, 8)
2262 
2263 #define R_AX_BCN_SPACE_CFG_P0 0xC414
2264 #define R_AX_BCN_SPACE_CFG_P1 0xC454
2265 #define R_AX_BCN_SPACE_CFG_P2 0xC494
2266 #define R_AX_BCN_SPACE_CFG_P3 0xC4D4
2267 #define R_AX_BCN_SPACE_CFG_P4 0xC514
2268 #define B_AX_SUB_BCN_SPACE_MASK GENMASK(23, 16)
2269 #define B_AX_BCN_SPACE_MASK GENMASK(15, 0)
2270 
2271 #define R_AX_BCN_FORCETX_P0 0xC418
2272 #define R_AX_BCN_FORCETX_P1 0xC458
2273 #define R_AX_BCN_FORCETX_P2 0xC498
2274 #define R_AX_BCN_FORCETX_P3 0xC4D8
2275 #define R_AX_BCN_FORCETX_P4 0xC518
2276 #define B_AX_FORCE_BCN_CURRCNT_MASK GENMASK(23, 16)
2277 #define B_AX_FORCE_BCN_NUM_MASK GENMASK(15, 0)
2278 #define B_AX_BCN_MAX_ERR_MASK GENMASK(7, 0)
2279 
2280 #define R_AX_BCN_ERR_CNT_P0 0xC420
2281 #define R_AX_BCN_ERR_CNT_P1 0xC460
2282 #define R_AX_BCN_ERR_CNT_P2 0xC4A0
2283 #define R_AX_BCN_ERR_CNT_P3 0xC4E0
2284 #define R_AX_BCN_ERR_CNT_P4 0xC520
2285 #define B_AX_BCN_ERR_CNT_SUM_MASK GENMASK(31, 24)
2286 #define B_AX_BCN_ERR_CNT_NAV_MASK GENMASK(23, 16)
2287 #define B_AX_BCN_ERR_CNT_EDCCA_MASK GENMASK(15, 0)
2288 #define B_AX_BCN_ERR_CNT_CCA_MASK GENMASK(7, 0)
2289 
2290 #define R_AX_BCN_ERR_FLAG_P0 0xC424
2291 #define R_AX_BCN_ERR_FLAG_P1 0xC464
2292 #define R_AX_BCN_ERR_FLAG_P2 0xC4A4
2293 #define R_AX_BCN_ERR_FLAG_P3 0xC4E4
2294 #define R_AX_BCN_ERR_FLAG_P4 0xC524
2295 #define B_AX_BCN_ERR_FLAG_OTHERS BIT(6)
2296 #define B_AX_BCN_ERR_FLAG_MAC BIT(5)
2297 #define B_AX_BCN_ERR_FLAG_TXON BIT(4)
2298 #define B_AX_BCN_ERR_FLAG_SRCHEND BIT(3)
2299 #define B_AX_BCN_ERR_FLAG_INVALID BIT(2)
2300 #define B_AX_BCN_ERR_FLAG_CMP BIT(1)
2301 #define B_AX_BCN_ERR_FLAG_LOCK BIT(0)
2302 
2303 #define R_AX_DTIM_CTRL_P0 0xC426
2304 #define R_AX_DTIM_CTRL_P1 0xC466
2305 #define R_AX_DTIM_CTRL_P2 0xC4A6
2306 #define R_AX_DTIM_CTRL_P3 0xC4E6
2307 #define R_AX_DTIM_CTRL_P4 0xC526
2308 #define B_AX_DTIM_NUM_MASK GENMASK(15, 8)
2309 #define B_AX_DTIM_CURRCNT_MASK GENMASK(7, 0)
2310 
2311 #define R_AX_TBTT_SHIFT_P0 0xC428
2312 #define R_AX_TBTT_SHIFT_P1 0xC468
2313 #define R_AX_TBTT_SHIFT_P2 0xC4A8
2314 #define R_AX_TBTT_SHIFT_P3 0xC4E8
2315 #define R_AX_TBTT_SHIFT_P4 0xC528
2316 #define B_AX_TBTT_SHIFT_OFST_MASK GENMASK(11, 0)
2317 #define B_AX_TBTT_SHIFT_OFST_SIGN BIT(11)
2318 #define B_AX_TBTT_SHIFT_OFST_MAG GENMASK(10, 0)
2319 
2320 #define R_AX_BCN_CNT_TMR_P0 0xC434
2321 #define R_AX_BCN_CNT_TMR_P1 0xC474
2322 #define R_AX_BCN_CNT_TMR_P2 0xC4B4
2323 #define R_AX_BCN_CNT_TMR_P3 0xC4F4
2324 #define R_AX_BCN_CNT_TMR_P4 0xC534
2325 #define B_AX_BCN_CNT_TMR_MASK GENMASK(31, 0)
2326 
2327 #define R_AX_TSFTR_LOW_P0 0xC438
2328 #define R_AX_TSFTR_LOW_P1 0xC478
2329 #define R_AX_TSFTR_LOW_P2 0xC4B8
2330 #define R_AX_TSFTR_LOW_P3 0xC4F8
2331 #define R_AX_TSFTR_LOW_P4 0xC538
2332 #define B_AX_TSFTR_LOW_MASK GENMASK(31, 0)
2333 
2334 #define R_AX_TSFTR_HIGH_P0 0xC43C
2335 #define R_AX_TSFTR_HIGH_P1 0xC47C
2336 #define R_AX_TSFTR_HIGH_P2 0xC4BC
2337 #define R_AX_TSFTR_HIGH_P3 0xC4FC
2338 #define R_AX_TSFTR_HIGH_P4 0xC53C
2339 #define B_AX_TSFTR_HIGH_MASK GENMASK(31, 0)
2340 
2341 #define R_AX_MBSSID_CTRL 0xC568
2342 #define R_AX_MBSSID_CTRL_C1 0xE568
2343 #define B_AX_P0MB_ALL_MASK GENMASK(23, 1)
2344 #define B_AX_P0MB_NUM_MASK GENMASK(19, 16)
2345 #define B_AX_P0MB15_EN BIT(15)
2346 #define B_AX_P0MB14_EN BIT(14)
2347 #define B_AX_P0MB13_EN BIT(13)
2348 #define B_AX_P0MB12_EN BIT(12)
2349 #define B_AX_P0MB11_EN BIT(11)
2350 #define B_AX_P0MB10_EN BIT(10)
2351 #define B_AX_P0MB9_EN BIT(9)
2352 #define B_AX_P0MB8_EN BIT(8)
2353 #define B_AX_P0MB7_EN BIT(7)
2354 #define B_AX_P0MB6_EN BIT(6)
2355 #define B_AX_P0MB5_EN BIT(5)
2356 #define B_AX_P0MB4_EN BIT(4)
2357 #define B_AX_P0MB3_EN BIT(3)
2358 #define B_AX_P0MB2_EN BIT(2)
2359 #define B_AX_P0MB1_EN BIT(1)
2360 
2361 #define R_AX_P0MB_HGQ_WINDOW_CFG_0 0xC590
2362 #define R_AX_P0MB_HGQ_WINDOW_CFG_0_C1 0xE590
2363 #define R_AX_PORT_HGQ_WINDOW_CFG 0xC5A0
2364 #define R_AX_PORT_HGQ_WINDOW_CFG_C1 0xE5A0
2365 
2366 #define R_AX_PTCL_COMMON_SETTING_0 0xC600
2367 #define R_AX_PTCL_COMMON_SETTING_0_C1 0xE600
2368 #define B_AX_PCIE_MODE_MASK GENMASK(15, 14)
2369 #define B_AX_CPUMGQ_LIFETIME_EN BIT(8)
2370 #define B_AX_MGQ_LIFETIME_EN BIT(7)
2371 #define B_AX_LIFETIME_EN BIT(6)
2372 #define B_AX_PTCL_TRIGGER_SS_EN_UL BIT(4)
2373 #define B_AX_PTCL_TRIGGER_SS_EN_1 BIT(3)
2374 #define B_AX_PTCL_TRIGGER_SS_EN_0 BIT(2)
2375 #define B_AX_CMAC_TX_MODE_1 BIT(1)
2376 #define B_AX_CMAC_TX_MODE_0 BIT(0)
2377 
2378 #define R_AX_AMPDU_AGG_LIMIT 0xC610
2379 #define B_AX_AMPDU_MAX_TIME_MASK GENMASK(31, 24)
2380 #define B_AX_RA_TRY_RATE_AGG_LMT_MASK GENMASK(23, 16)
2381 #define B_AX_RTS_MAX_AGG_NUM_MASK GENMASK(15, 8)
2382 #define B_AX_MAX_AGG_NUM_MASK GENMASK(7, 0)
2383 
2384 #define R_AX_AGG_LEN_HT_0 0xC614
2385 #define R_AX_AGG_LEN_HT_0_C1 0xE614
2386 #define B_AX_AMPDU_MAX_LEN_HT_MASK GENMASK(31, 16)
2387 #define B_AX_RTS_TXTIME_TH_MASK GENMASK(15, 8)
2388 #define B_AX_RTS_LEN_TH_MASK GENMASK(7, 0)
2389 
2390 #define S_AX_CTS2S_TH_SEC_256B 1
2391 #define R_AX_SIFS_SETTING 0xC624
2392 #define R_AX_SIFS_SETTING_C1 0xE624
2393 #define B_AX_HW_CTS2SELF_PKT_LEN_TH_MASK GENMASK(31, 24)
2394 #define B_AX_HW_CTS2SELF_PKT_LEN_TH_TWW_MASK GENMASK(23, 18)
2395 #define B_AX_HW_CTS2SELF_EN BIT(16)
2396 #define B_AX_SPEC_SIFS_OFDM_PTCL_SH 8
2397 #define B_AX_SPEC_SIFS_OFDM_PTCL_MASK GENMASK(15, 8)
2398 #define B_AX_SPEC_SIFS_CCK_PTCL_MASK GENMASK(7, 0)
2399 #define S_AX_CTS2S_TH_1K 4
2400 
2401 #define R_AX_TXRATE_CHK 0xC628
2402 #define R_AX_TXRATE_CHK_C1 0xE628
2403 #define B_AX_DEFT_RATE_MASK GENMASK(15, 7)
2404 #define B_AX_BAND_MODE BIT(4)
2405 #define B_AX_MAX_TXNSS_MASK GENMASK(3, 2)
2406 #define B_AX_RTS_LIMIT_IN_OFDM6 BIT(1)
2407 #define B_AX_CHECK_CCK_EN BIT(0)
2408 
2409 #define R_AX_TXCNT 0xC62C
2410 #define R_AX_TXCNT_C1 0xE62C
2411 #define B_AX_ADD_TXCNT_BY BIT(31)
2412 #define B_AX_S_TXCNT_LMT_MASK GENMASK(29, 24)
2413 #define B_AX_L_TXCNT_LMT_MASK GENMASK(21, 16)
2414 
2415 #define R_AX_MBSSID_DROP_0 0xC63C
2416 #define R_AX_MBSSID_DROP_0_C1 0xE63C
2417 #define B_AX_GI_LTF_FB_SEL BIT(30)
2418 #define B_AX_RATE_SEL_MASK GENMASK(29, 24)
2419 #define B_AX_PORT_DROP_4_0_MASK GENMASK(20, 16)
2420 #define B_AX_MBSSID_DROP_15_0_MASK GENMASK(15, 0)
2421 
2422 #define R_AX_PTCLRPT_FULL_HDL 0xC660
2423 #define R_AX_PTCLRPT_FULL_HDL_C1 0xE660
2424 #define B_AX_RPT_LATCH_PHY_TIME_MASK GENMASK(15, 12)
2425 #define B_AX_F2PCMD_FWWD_RLS_MODE BIT(9)
2426 #define B_AX_F2PCMD_RPT_EN BIT(8)
2427 #define B_AX_BCN_RPT_PATH_MASK GENMASK(7, 6)
2428 #define B_AX_SPE_RPT_PATH_MASK GENMASK(5, 4)
2429 #define FWD_TO_WLCPU 1
2430 #define B_AX_TX_RPT_PATH_MASK GENMASK(3, 2)
2431 #define B_AX_F2PCMDRPT_FULL_DROP BIT(1)
2432 #define B_AX_NON_F2PCMDRPT_FULL_DROP BIT(0)
2433 
2434 #define R_AX_BT_PLT 0xC67C
2435 #define R_AX_BT_PLT_C1 0xE67C
2436 #define B_AX_BT_PLT_PKT_CNT_MASK GENMASK(31, 16)
2437 #define B_AX_BT_PLT_RST BIT(9)
2438 #define B_AX_PLT_EN BIT(8)
2439 #define B_AX_RX_PLT_GNT_LTE_RX BIT(7)
2440 #define B_AX_RX_PLT_GNT_BT_RX BIT(6)
2441 #define B_AX_RX_PLT_GNT_BT_TX BIT(5)
2442 #define B_AX_RX_PLT_GNT_WL BIT(4)
2443 #define B_AX_TX_PLT_GNT_LTE_RX BIT(3)
2444 #define B_AX_TX_PLT_GNT_BT_RX BIT(2)
2445 #define B_AX_TX_PLT_GNT_BT_TX BIT(1)
2446 #define B_AX_TX_PLT_GNT_WL BIT(0)
2447 
2448 #define R_AX_PTCL_BSS_COLOR_0 0xC6A0
2449 #define R_AX_PTCL_BSS_COLOR_0_C1 0xE6A0
2450 #define B_AX_BSS_COLOB_AX_PORT_3_MASK GENMASK(29, 24)
2451 #define B_AX_BSS_COLOB_AX_PORT_2_MASK GENMASK(21, 16)
2452 #define B_AX_BSS_COLOB_AX_PORT_1_MASK GENMASK(13, 8)
2453 #define B_AX_BSS_COLOB_AX_PORT_0_MASK GENMASK(5, 0)
2454 
2455 #define R_AX_PTCL_BSS_COLOR_1 0xC6A4
2456 #define R_AX_PTCL_BSS_COLOR_1_C1 0xE6A4
2457 #define B_AX_BSS_COLOB_AX_PORT_4_MASK GENMASK(5, 0)
2458 
2459 #define R_AX_PTCL_IMR0 0xC6C0
2460 #define R_AX_PTCL_IMR0_C1 0xE6C0
2461 #define B_AX_F2PCMD_PKTID_ERR_INT_EN BIT(31)
2462 #define B_AX_F2PCMD_RD_PKTID_ERR_INT_EN BIT(30)
2463 #define B_AX_F2PCMD_ASSIGN_PKTID_ERR_INT_EN BIT(29)
2464 #define B_AX_F2PCMD_USER_ALLC_ERR_INT_EN BIT(28)
2465 #define B_AX_RX_SPF_U0_PKTID_ERR_INT_EN BIT(27)
2466 #define B_AX_TX_SPF_U1_PKTID_ERR_INT_EN BIT(26)
2467 #define B_AX_TX_SPF_U2_PKTID_ERR_INT_EN BIT(25)
2468 #define B_AX_TX_SPF_U3_PKTID_ERR_INT_EN BIT(24)
2469 #define B_AX_TX_RECORD_PKTID_ERR_INT_EN BIT(23)
2470 #define B_AX_F2PCMD_EMPTY_ERR_INT_EN BIT(15)
2471 #define B_AX_TWTSP_QSEL_ERR_INT_EN BIT(14)
2472 #define B_AX_BCNQ_ORDER_ERR_INT_EN BIT(12)
2473 #define B_AX_Q_PKTID_ERR_INT_EN BIT(11)
2474 #define B_AX_D_PKTID_ERR_INT_EN BIT(10)
2475 #define B_AX_TXPRT_FULL_DROP_ERR_INT_EN BIT(9)
2476 #define B_AX_F2PCMDRPT_FULL_DROP_ERR_INT_EN BIT(8)
2477 #define B_AX_FSM1_TIMEOUT_ERR_INT_EN BIT(1)
2478 #define B_AX_FSM_TIMEOUT_ERR_INT_EN BIT(0)
2479 #define B_AX_PTCL_IMR_CLR_ALL GENMASK(31, 0)
2480 #define B_AX_PTCL_IMR_CLR (B_AX_FSM_TIMEOUT_ERR_INT_EN | \
2481 			   B_AX_F2PCMDRPT_FULL_DROP_ERR_INT_EN | \
2482 			   B_AX_TXPRT_FULL_DROP_ERR_INT_EN | \
2483 			   B_AX_D_PKTID_ERR_INT_EN | \
2484 			   B_AX_Q_PKTID_ERR_INT_EN | \
2485 			   B_AX_BCNQ_ORDER_ERR_INT_EN | \
2486 			   B_AX_TWTSP_QSEL_ERR_INT_EN | \
2487 			   B_AX_F2PCMD_EMPTY_ERR_INT_EN | \
2488 			   B_AX_TX_RECORD_PKTID_ERR_INT_EN | \
2489 			   B_AX_TX_SPF_U3_PKTID_ERR_INT_EN | \
2490 			   B_AX_TX_SPF_U2_PKTID_ERR_INT_EN | \
2491 			   B_AX_TX_SPF_U1_PKTID_ERR_INT_EN | \
2492 			   B_AX_RX_SPF_U0_PKTID_ERR_INT_EN | \
2493 			   B_AX_F2PCMD_USER_ALLC_ERR_INT_EN | \
2494 			   B_AX_F2PCMD_ASSIGN_PKTID_ERR_INT_EN | \
2495 			   B_AX_F2PCMD_RD_PKTID_ERR_INT_EN | \
2496 			   B_AX_F2PCMD_PKTID_ERR_INT_EN)
2497 #define B_AX_PTCL_IMR_SET (B_AX_FSM_TIMEOUT_ERR_INT_EN | \
2498 			   B_AX_TX_RECORD_PKTID_ERR_INT_EN | \
2499 			   B_AX_F2PCMD_USER_ALLC_ERR_INT_EN)
2500 #define B_AX_PTCL_IMR_CLR_V1 (B_AX_FSM1_TIMEOUT_ERR_INT_EN | \
2501 			      B_AX_FSM_TIMEOUT_ERR_INT_EN)
2502 #define B_AX_PTCL_IMR_SET_V1 (B_AX_FSM1_TIMEOUT_ERR_INT_EN | \
2503 			      B_AX_FSM_TIMEOUT_ERR_INT_EN)
2504 
2505 #define R_AX_PTCL_ISR0 0xC6C4
2506 #define R_AX_PTCL_ISR0_C1 0xE6C4
2507 
2508 #define S_AX_PTCL_TO_2MS 0x3F
2509 #define R_AX_PTCL_FSM_MON 0xC6E8
2510 #define R_AX_PTCL_FSM_MON_C1 0xE6E8
2511 #define B_AX_PTCL_TX_ARB_TO_MODE BIT(6)
2512 #define B_AX_PTCL_TX_ARB_TO_THR_MASK GENMASK(5, 0)
2513 
2514 #define R_AX_PTCL_TX_CTN_SEL 0xC6EC
2515 #define R_AX_PTCL_TX_CTN_SEL_C1 0xE6EC
2516 #define B_AX_PTCL_TX_ON_STAT BIT(7)
2517 
2518 #define R_AX_PTCL_DBG_INFO 0xC6F0
2519 #define R_AX_PTCL_DBG_INFO_C1 0xE6F0
2520 #define B_AX_PTCL_DBG_INFO_MASK GENMASK(31, 0)
2521 #define R_AX_PTCL_DBG 0xC6F4
2522 #define R_AX_PTCL_DBG_C1 0xE6F4
2523 #define B_AX_PTCL_DBG_EN BIT(8)
2524 #define B_AX_PTCL_DBG_SEL_MASK GENMASK(7, 0)
2525 
2526 #define R_AX_DLE_CTRL 0xC800
2527 #define R_AX_DLE_CTRL_C1 0xE800
2528 #define B_AX_NO_RESERVE_PAGE_ERR_IMR BIT(23)
2529 #define B_AX_RXDATA_FSM_HANG_ERROR_IMR BIT(15)
2530 #define B_AX_RXSTS_FSM_HANG_ERROR_IMR BIT(14)
2531 #define B_AX_DLE_IMR_CLR (B_AX_RXSTS_FSM_HANG_ERROR_IMR | \
2532 			  B_AX_RXDATA_FSM_HANG_ERROR_IMR | \
2533 			  B_AX_NO_RESERVE_PAGE_ERR_IMR)
2534 #define B_AX_DLE_IMR_SET (B_AX_RXSTS_FSM_HANG_ERROR_IMR | \
2535 			  B_AX_RXDATA_FSM_HANG_ERROR_IMR)
2536 
2537 #define R_AX_RX_ERR_FLAG 0xC800
2538 #define R_AX_RX_ERR_FLAG_C1 0xE800
2539 #define B_AX_RX_GET_NO_PAGE_ERR BIT(31)
2540 #define B_AX_RX_GET_NULL_PKT_ERR BIT(30)
2541 #define B_AX_RX_RU0_FSM_HANG_ERR BIT(29)
2542 #define B_AX_RX_RU1_FSM_HANG_ERR BIT(28)
2543 #define B_AX_RX_RU2_FSM_HANG_ERR BIT(27)
2544 #define B_AX_RX_RU3_FSM_HANG_ERR BIT(26)
2545 #define B_AX_RX_RU4_FSM_HANG_ERR BIT(25)
2546 #define B_AX_RX_RU5_FSM_HANG_ERR BIT(24)
2547 #define B_AX_RX_RU6_FSM_HANG_ERR BIT(23)
2548 #define B_AX_RX_RU7_FSM_HANG_ERR BIT(22)
2549 #define B_AX_RX_RXSTS_FSM_HANG_ERR BIT(21)
2550 #define B_AX_RX_CSI_FSM_HANG_ERR BIT(20)
2551 #define B_AX_RX_TXRPT_FSM_HANG_ERR BIT(19)
2552 #define B_AX_RX_F2PCMD_FSM_HANG_ERR BIT(18)
2553 #define B_AX_RX_RU0_ZERO_LEN_ERR BIT(17)
2554 #define B_AX_RX_RU1_ZERO_LEN_ERR BIT(16)
2555 #define B_AX_RX_RU2_ZERO_LEN_ERR BIT(15)
2556 #define B_AX_RX_RU3_ZERO_LEN_ERR BIT(14)
2557 #define B_AX_RX_RU4_ZERO_LEN_ERR BIT(13)
2558 #define B_AX_RX_RU5_ZERO_LEN_ERR BIT(12)
2559 #define B_AX_RX_RU6_ZERO_LEN_ERR BIT(11)
2560 #define B_AX_RX_RU7_ZERO_LEN_ERR BIT(10)
2561 #define B_AX_RX_RXSTS_ZERO_LEN_ERR BIT(9)
2562 #define B_AX_RX_CSI_ZERO_LEN_ERR BIT(8)
2563 #define B_AX_PLE_DATA_OPT_FSM_HANG BIT(7)
2564 #define B_AX_PLE_RXDATA_REQ_BUF_FSM_HANG BIT(6)
2565 #define B_AX_PLE_TXRPT_REQ_BUF_FSM_HANG BIT(5)
2566 #define B_AX_PLE_WD_OPT_FSM_HANG BIT(4)
2567 #define B_AX_PLE_ENQ_FSM_HANG BIT(3)
2568 #define B_AX_RXDATA_ENQUE_ORDER_ERR BIT(2)
2569 #define B_AX_RXSTS_ENQUE_ORDER_ERR BIT(1)
2570 #define B_AX_RX_CSI_PKT_NUM_ERR BIT(0)
2571 
2572 #define R_AX_RXDMA_CTRL_0 0xC804
2573 #define R_AX_RXDMA_CTRL_0_C1 0xE804
2574 #define B_AX_RXDMA_DBGOUT_EN BIT(31)
2575 #define B_AX_RXDMA_DBG_SEL_MASK GENMASK(30, 29)
2576 #define B_AX_RXDMA_FIFO_DBG_SEL_MASK GENMASK(28, 25)
2577 #define B_AX_RXDMA_DEFAULT_PAGE_MASK GENMASK(22, 21)
2578 #define B_AX_RXDMA_BUFF_REQ_PRI_MASK GENMASK(20, 19)
2579 #define B_AX_RXDMA_TGT_QUEID_MASK GENMASK(18, 13)
2580 #define B_AX_RXDMA_TGT_PRID_MASK GENMASK(12, 10)
2581 #define B_AX_RXDMA_DIS_CSI_RELEASE BIT(9)
2582 #define B_AX_RXDMA_DIS_RXSTS_WAIT_PTR_CLR BIT(7)
2583 #define B_AX_RXDMA_DIS_CSI_WAIT_PTR_CLR BIT(6)
2584 #define B_AX_RXSTS_PTR_FULL_MODE BIT(5)
2585 #define B_AX_CSI_PTR_FULL_MODE BIT(4)
2586 #define B_AX_RU3_PTR_FULL_MODE BIT(3)
2587 #define B_AX_RU2_PTR_FULL_MODE BIT(2)
2588 #define B_AX_RU1_PTR_FULL_MODE BIT(1)
2589 #define B_AX_RU0_PTR_FULL_MODE BIT(0)
2590 #define RX_FULL_MODE (B_AX_RU0_PTR_FULL_MODE | B_AX_RU1_PTR_FULL_MODE | \
2591 		      B_AX_RU2_PTR_FULL_MODE | B_AX_RU3_PTR_FULL_MODE | \
2592 		      B_AX_CSI_PTR_FULL_MODE | B_AX_RXSTS_PTR_FULL_MODE)
2593 
2594 #define R_AX_RX_CTRL0 0xC808
2595 #define R_AX_RX_CTRL0_C1 0xE808
2596 #define B_AX_DLE_CLOCK_FORCE_V1 BIT(31)
2597 #define B_AX_TXDMA_CLOCK_FORCE_V1 BIT(30)
2598 #define B_AX_RXDMA_CLOCK_FORCE_V1 BIT(29)
2599 #define B_AX_RXDMA_DEFAULT_PAGE_V1_MASK GENMASK(28, 24)
2600 #define B_AX_RXDMA_CSI_TGT_QUEID_MASK GENMASK(23, 18)
2601 #define B_AX_RXDMA_CSI_TGT_PRID_MASK GENMASK(17, 15)
2602 #define B_AX_RXDMA_DIS_CSI_RELEASE_V1 BIT(14)
2603 #define B_AX_CSI_PTR_FULL_MODE_V1 BIT(13)
2604 #define B_AX_RXDATA_PTR_FULL_MODE BIT(12)
2605 #define B_AX_RXSTS_PTR_FULL_MODE_V1 BIT(11)
2606 #define B_AX_TXRPT_FULL_RSV_DEPTH_V1_MASK GENMASK(10, 8)
2607 #define B_AX_RXDATA_FULL_RSV_DEPTH_MASK GENMASK(7, 5)
2608 #define B_AX_RXSTS_FULL_RSV_DEPTH_V1_MASK GENMASK(4, 2)
2609 #define B_AX_ORDER_FIFO_MASK GENMASK(1, 0)
2610 
2611 #define R_AX_RX_CTRL1 0xC80C
2612 #define R_AX_RX_CTRL1_C1 0xE80C
2613 #define B_AX_RXDMA_TXRPT_QUEUE_ID_SW_EN BIT(31)
2614 #define B_AX_RXDMA_TXRPT_QUEUE_ID_SW_V1_MASK GENMASK(30, 25)
2615 #define B_AX_RXDMA_F2PCMD_QUEUE_ID_SW_EN BIT(24)
2616 #define B_AX_RXDMA_F2PCMD_QUEUE_ID_SW_V1_MASK GENMASK(23, 18)
2617 #define B_AX_RXDMA_TXRPT_QUEUE_ID_TGT_SW_EN BIT(17)
2618 #define B_AX_RXDMA_TXRPT_QUEUE_ID_TGT_SW_1_MASK GENMASK(16, 11)
2619 #define B_AX_RXDMA_F2PCMD_QUEUE_ID_TGT_SW_EN BIT(10)
2620 #define B_AX_RXDMA_F2PCMD_QUEUE_ID_TGT_SW_1_MASK GENMASK(9, 4)
2621 #define B_AX_ORDER_FIFO_OUT BIT(3)
2622 #define B_AX_ORDER_FIFO_EMPTY BIT(2)
2623 #define B_AX_DBG_SEL_MASK GENMASK(1, 0)
2624 
2625 #define R_AX_RX_CTRL2 0xC810
2626 #define R_AX_RX_CTRL2_C1 0xE810
2627 #define B_AX_DLE_WDE_STATE_V1_MASK GENMASK(31, 30)
2628 #define B_AX_DLE_PLE_STATE_V1_MASK GENMASK(29, 28)
2629 #define B_AX_DLE_REQ_BUF_STATE_MASK GENMASK(27, 26)
2630 #define B_AX_DLE_ENQ_STATE_V1 BIT(25)
2631 #define B_AX_RX_DBG_SEL_MASK GENMASK(24, 19)
2632 #define B_AX_MACRX_CS_MASK GENMASK(18, 14)
2633 #define B_AX_RXSTS_CS_MASK GENMASK(13, 9)
2634 #define B_AX_ERR_INDICATOR BIT(5)
2635 #define B_AX_TXRPT_CS_MASK GENMASK(4, 0)
2636 
2637 #define R_AX_RXDMA_PKT_INFO_0 0xC814
2638 #define R_AX_RXDMA_PKT_INFO_1 0xC818
2639 #define R_AX_RXDMA_PKT_INFO_2 0xC81C
2640 
2641 #define R_AX_RX_ERR_FLAG_IMR 0xC804
2642 #define R_AX_RX_ERR_FLAG_IMR_C1 0xE804
2643 #define B_AX_RX_GET_NULL_PKT_ERR_MSK BIT(30)
2644 #define B_AX_RX_RU0_FSM_HANG_MSK_ERR_MSK BIT(29)
2645 #define B_AX_RX_RU1_FSM_HANG_MSK_ERR_MSK BIT(28)
2646 #define B_AX_RX_RU2_FSM_HANG_MSK_ERR_MSK BIT(27)
2647 #define B_AX_RX_RU3_FSM_HANG_MSK_ERR_MSK BIT(26)
2648 #define B_AX_RX_RU4_FSM_HANG_MSK_ERR_MSK BIT(25)
2649 #define B_AX_RX_RU5_FSM_HANG_MSK_ERR_MSK BIT(24)
2650 #define B_AX_RX_RU6_FSM_HANG_MSK_ERR_MSK BIT(23)
2651 #define B_AX_RX_RU7_FSM_HANG_MSK_ERR_MSK BIT(22)
2652 #define B_AX_RX_RXSTS_FSM_HANG_MSK_ERR_MSK BIT(21)
2653 #define B_AX_RX_CSI_FSM_HANG_MSK_ERR_MSK BIT(20)
2654 #define B_AX_RX_TXRPT_FSM_HANG_MSK_ERR_MSK BIT(19)
2655 #define B_AX_RX_F2PCMD_FSM_HANG_MSK_ERR_MSK BIT(18)
2656 #define B_AX_RX_RU0_ZERO_LEN_ERR_MSK BIT(17)
2657 #define B_AX_RX_RU1_ZERO_LEN_ERR_MSK BIT(16)
2658 #define B_AX_RX_RU2_ZERO_LEN_ERR_MSK BIT(15)
2659 #define B_AX_RX_RU3_ZERO_LEN_ERR_MSK BIT(14)
2660 #define B_AX_RX_RU4_ZERO_LEN_ERR_MSK BIT(13)
2661 #define B_AX_RX_RU5_ZERO_LEN_ERR_MSK BIT(12)
2662 #define B_AX_RX_RU6_ZERO_LEN_ERR_MSK BIT(11)
2663 #define B_AX_RX_RU7_ZERO_LEN_ERR_MSK BIT(10)
2664 #define B_AX_RX_RXSTS_ZERO_LEN_ERR_MSK BIT(9)
2665 #define B_AX_RX_CSI_ZERO_LEN_ERR_MSK BIT(8)
2666 #define B_AX_PLE_DATA_OPT_FSM_HANG_MSK BIT(7)
2667 #define B_AX_PLE_RXDATA_REQ_BUF_FSM_HANG_MSK BIT(6)
2668 #define B_AX_PLE_TXRPT_REQ_BUF_FSM_HANG_MSK BIT(5)
2669 #define B_AX_PLE_WD_OPT_FSM_HANG_MSK BIT(4)
2670 #define B_AX_PLE_ENQ_FSM_HANG_MSK BIT(3)
2671 #define B_AX_RXDATA_ENQUE_ORDER_ERR_MSK BIT(2)
2672 #define B_AX_RXSTS_ENQUE_ORDER_ERR_MSK BIT(1)
2673 #define B_AX_RX_CSI_PKT_NUM_ERR_MSK BIT(0)
2674 #define B_AX_RX_ERR_IMR_CLR_V1 (B_AX_RXSTS_ENQUE_ORDER_ERR_MSK | \
2675 				B_AX_RXDATA_ENQUE_ORDER_ERR_MSK | \
2676 				B_AX_RX_CSI_ZERO_LEN_ERR_MSK | \
2677 				B_AX_RX_RXSTS_ZERO_LEN_ERR_MSK | \
2678 				B_AX_RX_RU7_ZERO_LEN_ERR_MSK | \
2679 				B_AX_RX_RU6_ZERO_LEN_ERR_MSK | \
2680 				B_AX_RX_RU5_ZERO_LEN_ERR_MSK | \
2681 				B_AX_RX_RU4_ZERO_LEN_ERR_MSK | \
2682 				B_AX_RX_RU3_ZERO_LEN_ERR_MSK | \
2683 				B_AX_RX_RU2_ZERO_LEN_ERR_MSK | \
2684 				B_AX_RX_RU1_ZERO_LEN_ERR_MSK | \
2685 				B_AX_RX_RU0_ZERO_LEN_ERR_MSK | \
2686 				B_AX_RX_F2PCMD_FSM_HANG_MSK_ERR_MSK | \
2687 				B_AX_RX_TXRPT_FSM_HANG_MSK_ERR_MSK | \
2688 				B_AX_RX_CSI_FSM_HANG_MSK_ERR_MSK | \
2689 				B_AX_RX_RXSTS_FSM_HANG_MSK_ERR_MSK | \
2690 				B_AX_RX_RU7_FSM_HANG_MSK_ERR_MSK | \
2691 				B_AX_RX_RU6_FSM_HANG_MSK_ERR_MSK | \
2692 				B_AX_RX_RU5_FSM_HANG_MSK_ERR_MSK | \
2693 				B_AX_RX_RU4_FSM_HANG_MSK_ERR_MSK | \
2694 				B_AX_RX_RU3_FSM_HANG_MSK_ERR_MSK | \
2695 				B_AX_RX_RU2_FSM_HANG_MSK_ERR_MSK | \
2696 				B_AX_RX_RU1_FSM_HANG_MSK_ERR_MSK | \
2697 				B_AX_RX_RU0_FSM_HANG_MSK_ERR_MSK | \
2698 				B_AX_RX_GET_NULL_PKT_ERR_MSK)
2699 #define B_AX_RX_ERR_IMR_SET_V1 (B_AX_RXSTS_ENQUE_ORDER_ERR_MSK | \
2700 				B_AX_RXDATA_ENQUE_ORDER_ERR_MSK | \
2701 				B_AX_RX_CSI_ZERO_LEN_ERR_MSK | \
2702 				B_AX_RX_RXSTS_ZERO_LEN_ERR_MSK | \
2703 				B_AX_RX_RU7_ZERO_LEN_ERR_MSK | \
2704 				B_AX_RX_RU6_ZERO_LEN_ERR_MSK | \
2705 				B_AX_RX_RU5_ZERO_LEN_ERR_MSK | \
2706 				B_AX_RX_RU4_ZERO_LEN_ERR_MSK | \
2707 				B_AX_RX_RU3_ZERO_LEN_ERR_MSK | \
2708 				B_AX_RX_RU2_ZERO_LEN_ERR_MSK | \
2709 				B_AX_RX_RU1_ZERO_LEN_ERR_MSK | \
2710 				B_AX_RX_RU0_ZERO_LEN_ERR_MSK | \
2711 				B_AX_RX_F2PCMD_FSM_HANG_MSK_ERR_MSK | \
2712 				B_AX_RX_TXRPT_FSM_HANG_MSK_ERR_MSK | \
2713 				B_AX_RX_CSI_FSM_HANG_MSK_ERR_MSK | \
2714 				B_AX_RX_RXSTS_FSM_HANG_MSK_ERR_MSK | \
2715 				B_AX_RX_RU7_FSM_HANG_MSK_ERR_MSK | \
2716 				B_AX_RX_RU6_FSM_HANG_MSK_ERR_MSK | \
2717 				B_AX_RX_RU5_FSM_HANG_MSK_ERR_MSK | \
2718 				B_AX_RX_RU4_FSM_HANG_MSK_ERR_MSK | \
2719 				B_AX_RX_RU3_FSM_HANG_MSK_ERR_MSK | \
2720 				B_AX_RX_RU2_FSM_HANG_MSK_ERR_MSK | \
2721 				B_AX_RX_RU1_FSM_HANG_MSK_ERR_MSK | \
2722 				B_AX_RX_RU0_FSM_HANG_MSK_ERR_MSK | \
2723 				B_AX_RX_GET_NULL_PKT_ERR_MSK)
2724 
2725 #define R_AX_TX_ERR_FLAG_IMR 0xC870
2726 #define R_AX_TX_ERR_FLAG_IMR_C1 0xE870
2727 #define B_AX_TX_RU0_FSM_HANG_ERR_MSK BIT(31)
2728 #define B_AX_TX_RU1_FSM_HANG_ERR_MSK BIT(30)
2729 #define B_AX_TX_RU2_FSM_HANG_ERR_MSK BIT(29)
2730 #define B_AX_TX_RU3_FSM_HANG_ERR_MSK BIT(28)
2731 #define B_AX_TX_RU4_FSM_HANG_ERR_MSK BIT(27)
2732 #define B_AX_TX_RU5_FSM_HANG_ERR_MSK BIT(26)
2733 #define B_AX_TX_RU6_FSM_HANG_ERR_MSK BIT(25)
2734 #define B_AX_TX_RU7_FSM_HANG_ERR_MSK BIT(24)
2735 #define B_AX_TX_RU8_FSM_HANG_ERR_MSK BIT(23)
2736 #define B_AX_TX_RU9_FSM_HANG_ERR_MSK BIT(22)
2737 #define B_AX_TX_RU10_FSM_HANG_ERR_MSK BIT(21)
2738 #define B_AX_TX_RU11_FSM_HANG_ERR_MSK BIT(20)
2739 #define B_AX_TX_RU12_FSM_HANG_ERR_MSK BIT(19)
2740 #define B_AX_TX_RU13_FSM_HANG_ERR_MSK BIT(18)
2741 #define B_AX_TX_RU14_FSM_HANG_ERR_MSK BIT(17)
2742 #define B_AX_TX_RU15_FSM_HANG_ERR_MSK BIT(16)
2743 #define B_AX_TX_CSI_FSM_HANG_ERR_MSK BIT(15)
2744 #define B_AX_TX_WD_PLD_ID_FSM_HANG_ERR_MSK BIT(14)
2745 #define B_AX_TX_ERR_IMR_CLR_V1 (B_AX_TX_WD_PLD_ID_FSM_HANG_ERR_MSK | \
2746 				B_AX_TX_CSI_FSM_HANG_ERR_MSK | \
2747 				B_AX_TX_RU7_FSM_HANG_ERR_MSK | \
2748 				B_AX_TX_RU6_FSM_HANG_ERR_MSK | \
2749 				B_AX_TX_RU5_FSM_HANG_ERR_MSK | \
2750 				B_AX_TX_RU4_FSM_HANG_ERR_MSK | \
2751 				B_AX_TX_RU3_FSM_HANG_ERR_MSK | \
2752 				B_AX_TX_RU2_FSM_HANG_ERR_MSK | \
2753 				B_AX_TX_RU1_FSM_HANG_ERR_MSK | \
2754 				B_AX_TX_RU0_FSM_HANG_ERR_MSK)
2755 #define B_AX_TX_ERR_IMR_SET_V1 (B_AX_TX_WD_PLD_ID_FSM_HANG_ERR_MSK | \
2756 				B_AX_TX_CSI_FSM_HANG_ERR_MSK | \
2757 				B_AX_TX_RU7_FSM_HANG_ERR_MSK | \
2758 				B_AX_TX_RU6_FSM_HANG_ERR_MSK | \
2759 				B_AX_TX_RU5_FSM_HANG_ERR_MSK | \
2760 				B_AX_TX_RU4_FSM_HANG_ERR_MSK | \
2761 				B_AX_TX_RU3_FSM_HANG_ERR_MSK | \
2762 				B_AX_TX_RU2_FSM_HANG_ERR_MSK | \
2763 				B_AX_TX_RU1_FSM_HANG_ERR_MSK | \
2764 				B_AX_TX_RU0_FSM_HANG_ERR_MSK)
2765 
2766 #define R_AX_TCR0 0xCA00
2767 #define R_AX_TCR0_C1 0xEA00
2768 #define B_AX_TCR_ZLD_NUM_MASK GENMASK(31, 24)
2769 #define B_AX_TCR_UDF_EN BIT(23)
2770 #define B_AX_TCR_UDF_THSD_MASK GENMASK(22, 16)
2771 #define TCR_UDF_THSD 0x6
2772 #define B_AX_TCR_ERRSTEN_MASK GENMASK(15, 10)
2773 #define B_AX_TCR_VHTSIGA1_TXPS BIT(9)
2774 #define B_AX_TCR_PLCP_ERRHDL_EN BIT(8)
2775 #define B_AX_TCR_PADSEL BIT(7)
2776 #define B_AX_TCR_MASK_SIGBCRC BIT(6)
2777 #define B_AX_TCR_SR_VAL15_ALLOW BIT(5)
2778 #define B_AX_TCR_EN_EOF BIT(4)
2779 #define B_AX_TCR_EN_SCRAM_INC BIT(3)
2780 #define B_AX_TCR_EN_20MST BIT(2)
2781 #define B_AX_TCR_CRC BIT(1)
2782 #define B_AX_TCR_DISGCLK BIT(0)
2783 
2784 #define R_AX_TCR1 0xCA04
2785 #define R_AX_TCR1_C1 0xEA04
2786 #define B_AX_TXDFIFO_THRESHOLD GENMASK(31, 28)
2787 #define B_AX_TCR_CCK_LOCK_CLK BIT(27)
2788 #define B_AX_TCR_FORCE_READ_TXDFIFO BIT(26)
2789 #define B_AX_TCR_USTIME GENMASK(23, 16)
2790 #define B_AX_TCR_SMOOTH_VAL BIT(15)
2791 #define B_AX_TCR_SMOOTH_CTRL BIT(14)
2792 #define B_AX_CS_REQ_VAL BIT(13)
2793 #define B_AX_CS_REQ_SEL BIT(12)
2794 #define B_AX_TCR_ZLD_USTIME_AFTERPHYTXON GENMASK(11, 8)
2795 #define B_AX_TCR_TXTIMEOUT GENMASK(7, 0)
2796 
2797 #define R_AX_MD_TSFT_STMP_CTL 0xCA08
2798 #define R_AX_MD_TSFT_STMP_CTL_C1 0xEA08
2799 #define B_AX_TSFT_OFS_MASK GENMASK(31, 16)
2800 #define B_AX_STMP_THSD_MASK GENMASK(15, 8)
2801 #define B_AX_UPD_HGQMD BIT(1)
2802 #define B_AX_UPD_TIMIE BIT(0)
2803 
2804 #define R_AX_PPWRBIT_SETTING 0xCA0C
2805 #define R_AX_PPWRBIT_SETTING_C1 0xEA0C
2806 
2807 #define R_AX_TXD_FIFO_CTRL 0xCA1C
2808 #define R_AX_TXD_FIFO_CTRL_C1 0xEA1C
2809 #define B_AX_NON_LEGACY_PPDU_ZLD_USTIMER_MASK GENMASK(28, 24)
2810 #define B_AX_LEGACY_PPDU_ZLD_USTIMER_MASK GENMASK(20, 16)
2811 #define B_AX_TXDFIFO_HIGH_MCS_THRE_MASK GENMASK(15, 12)
2812 #define TXDFIFO_HIGH_MCS_THRE 0x7
2813 #define B_AX_TXDFIFO_LOW_MCS_THRE_MASK GENMASK(11, 8)
2814 #define TXDFIFO_LOW_MCS_THRE  0x7
2815 #define B_AX_HIGH_MCS_PHY_RATE_MASK GENMASK(7, 4)
2816 #define B_AX_BW_PHY_RATE_MASK GENMASK(1, 0)
2817 
2818 #define R_AX_MACTX_DBG_SEL_CNT 0xCA20
2819 #define R_AX_MACTX_DBG_SEL_CNT_C1 0xEA20
2820 #define B_AX_MACTX_MPDU_CNT GENMASK(31, 24)
2821 #define B_AX_MACTX_DMA_CNT GENMASK(23, 16)
2822 #define B_AX_LENGTH_ERR_FLAG_U3 BIT(11)
2823 #define B_AX_LENGTH_ERR_FLAG_U2 BIT(10)
2824 #define B_AX_LENGTH_ERR_FLAG_U1 BIT(9)
2825 #define B_AX_LENGTH_ERR_FLAG_U0 BIT(8)
2826 #define B_AX_DBGSEL_MACTX_MASK GENMASK(5, 0)
2827 
2828 #define R_AX_WMAC_TX_CTRL_DEBUG 0xCAE4
2829 #define R_AX_WMAC_TX_CTRL_DEBUG_C1 0xEAE4
2830 #define B_AX_TX_CTRL_DEBUG_SEL_MASK GENMASK(3, 0)
2831 
2832 #define R_AX_WMAC_TX_INFO0_DEBUG 0xCAE8
2833 #define R_AX_WMAC_TX_INFO0_DEBUG_C1 0xEAE8
2834 #define B_AX_TX_CTRL_INFO_P0_MASK GENMASK(31, 0)
2835 
2836 #define R_AX_WMAC_TX_INFO1_DEBUG 0xCAEC
2837 #define R_AX_WMAC_TX_INFO1_DEBUG_C1 0xEAEC
2838 #define B_AX_TX_CTRL_INFO_P1_MASK GENMASK(31, 0)
2839 
2840 #define R_AX_RSP_CHK_SIG 0xCC00
2841 #define R_AX_RSP_CHK_SIG_C1 0xEC00
2842 #define B_AX_RSP_STATIC_RTS_CHK_SERV_BW_EN BIT(30)
2843 #define B_AX_RSP_TBPPDU_CHK_PWR BIT(29)
2844 #define B_AX_RSP_CHK_BASIC_NAV BIT(21)
2845 #define B_AX_RSP_CHK_INTRA_NAV BIT(20)
2846 #define B_AX_RSP_CHK_TXNAV BIT(19)
2847 #define B_AX_TXDATA_END_PS_OPT BIT(18)
2848 #define B_AX_CHECK_SOUNDING_SEQ BIT(17)
2849 #define B_AX_RXBA_IGNOREA2 BIT(16)
2850 #define B_AX_ACKTO_CCK_MASK GENMASK(15, 8)
2851 #define B_AX_ACKTO_MASK GENMASK(7, 0)
2852 
2853 #define R_AX_TRXPTCL_RESP_0 0xCC04
2854 #define R_AX_TRXPTCL_RESP_0_C1 0xEC04
2855 #define B_AX_WMAC_RESP_STBC_EN BIT(31)
2856 #define B_AX_WMAC_RXFTM_TXACK_SC BIT(30)
2857 #define B_AX_WMAC_RXFTM_TXACKBWEQ BIT(29)
2858 #define B_AX_RSP_CHK_SEC_CCA_80 BIT(28)
2859 #define B_AX_RSP_CHK_SEC_CCA_40 BIT(27)
2860 #define B_AX_RSP_CHK_SEC_CCA_20 BIT(26)
2861 #define B_AX_RSP_CHK_BTCCA BIT(25)
2862 #define B_AX_RSP_CHK_EDCCA BIT(24)
2863 #define B_AX_RSP_CHK_CCA BIT(23)
2864 #define B_AX_WMAC_LDPC_EN BIT(22)
2865 #define B_AX_WMAC_SGIEN BIT(21)
2866 #define B_AX_WMAC_SPLCPEN BIT(20)
2867 #define B_AX_WMAC_BESP_EARLY_TXBA BIT(17)
2868 #define B_AX_WMAC_SPEC_SIFS_OFDM_MASK GENMASK(15, 8)
2869 #define B_AX_WMAC_SPEC_SIFS_CCK_MASK GENMASK(7, 0)
2870 #define WMAC_SPEC_SIFS_OFDM_52A 0x15
2871 #define WMAC_SPEC_SIFS_OFDM_52B 0x11
2872 #define WMAC_SPEC_SIFS_OFDM_52C 0x11
2873 #define WMAC_SPEC_SIFS_CCK	 0xA
2874 
2875 #define R_AX_TRXPTCL_RRSR_CTL_0 0xCC08
2876 #define R_AX_TRXPTCL_RRSR_CTL_0_C1 0xEC08
2877 #define B_AX_RESP_TX_MACID_CCA_TH_EN BIT(31)
2878 #define B_AX_RESP_TX_PWRMODE_MASK GENMASK(30, 28)
2879 #define B_AX_FTM_RRSR_RATE_EN_MASK GENMASK(27, 24)
2880 #define B_AX_NESS_MASK GENMASK(23, 22)
2881 #define B_AX_WMAC_RESP_DOPPLEB_AX_EN BIT(21)
2882 #define B_AX_WMAC_RESP_DCM_EN BIT(20)
2883 #define B_AX_WMAC_RRSB_AX_CCK_MASK GENMASK(19, 16)
2884 #define B_AX_WMAC_RESP_RATE_EN_MASK GENMASK(15, 12)
2885 #define B_AX_WMAC_RESP_RSC_MASK GENMASK(11, 10)
2886 #define B_AX_WMAC_RESP_REF_RATE_SEL BIT(9)
2887 #define B_AX_WMAC_RESP_REF_RATE_MASK GENMASK(8, 0)
2888 
2889 #define R_AX_MAC_LOOPBACK 0xCC20
2890 #define R_AX_MAC_LOOPBACK_C1 0xEC20
2891 #define B_AX_MACLBK_EN BIT(0)
2892 
2893 #define R_AX_WMAC_NAV_CTL 0xCC80
2894 #define R_AX_WMAC_NAV_CTL_C1 0xEC80
2895 #define B_AX_WMAC_NAV_UPPER_EN BIT(26)
2896 #define B_AX_WMAC_0P125US_TIMER_MASK GENMASK(25, 18)
2897 #define B_AX_WMAC_PLCP_UP_NAV_EN BIT(17)
2898 #define B_AX_WMAC_TF_UP_NAV_EN BIT(16)
2899 #define B_AX_WMAC_NAV_UPPER_MASK GENMASK(15, 8)
2900 #define NAV_12MS 0xBC
2901 #define NAV_25MS 0xC4
2902 #define B_AX_WMAC_RTS_RST_DUR_MASK GENMASK(7, 0)
2903 
2904 #define R_AX_RXTRIG_TEST_USER_2 0xCCB0
2905 #define R_AX_RXTRIG_TEST_USER_2_C1 0xECB0
2906 #define B_AX_RXTRIG_MACID_MASK GENMASK(31, 24)
2907 #define B_AX_RXTRIG_RU26_DIS BIT(21)
2908 #define B_AX_RXTRIG_FCSCHK_EN BIT(20)
2909 #define B_AX_RXTRIG_PORT_SEL_MASK GENMASK(19, 17)
2910 #define B_AX_RXTRIG_EN BIT(16)
2911 #define B_AX_RXTRIG_USERINFO_2_MASK GENMASK(15, 0)
2912 
2913 #define R_AX_TRXPTCL_ERROR_INDICA_MASK 0xCCBC
2914 #define R_AX_TRXPTCL_ERROR_INDICA_MASK_C1 0xECBC
2915 #define B_AX_WMAC_MODE BIT(22)
2916 #define B_AX_WMAC_TIMETOUT_THR_MASK GENMASK(21, 16)
2917 #define B_AX_RMAC_FTM BIT(8)
2918 #define B_AX_RMAC_CSI BIT(7)
2919 #define B_AX_TMAC_MIMO_CTRL BIT(6)
2920 #define B_AX_TMAC_RXTB BIT(5)
2921 #define B_AX_TMAC_HWSIGB_GEN BIT(4)
2922 #define B_AX_TMAC_TXPLCP BIT(3)
2923 #define B_AX_TMAC_RESP BIT(2)
2924 #define B_AX_TMAC_TXCTL BIT(1)
2925 #define B_AX_TMAC_MACTX BIT(0)
2926 #define B_AX_TMAC_IMR_CLR_V1 (B_AX_TMAC_MACTX | \
2927 			      B_AX_TMAC_TXCTL | \
2928 			      B_AX_TMAC_RESP | \
2929 			      B_AX_TMAC_TXPLCP | \
2930 			      B_AX_TMAC_HWSIGB_GEN | \
2931 			      B_AX_TMAC_RXTB | \
2932 			      B_AX_TMAC_MIMO_CTRL | \
2933 			      B_AX_RMAC_CSI | \
2934 			      B_AX_RMAC_FTM)
2935 #define B_AX_TMAC_IMR_SET_V1 (B_AX_TMAC_MACTX | \
2936 			      B_AX_TMAC_TXCTL | \
2937 			      B_AX_TMAC_RESP | \
2938 			      B_AX_TMAC_TXPLCP | \
2939 			      B_AX_TMAC_HWSIGB_GEN | \
2940 			      B_AX_TMAC_RXTB | \
2941 			      B_AX_TMAC_MIMO_CTRL | \
2942 			      B_AX_RMAC_FTM)
2943 
2944 #define R_AX_TRXPTCL_ERROR_INDICA 0xCCC0
2945 #define R_AX_TRXPTCL_ERROR_INDICA_C1 0xECC0
2946 #define B_AX_FTM_ERROR_FLAG_CLR BIT(8)
2947 #define B_AX_CSI_ERROR_FLAG_CLR BIT(7)
2948 #define B_AX_MIMOCTRL_ERROR_FLAG_CLR BIT(6)
2949 #define B_AX_RXTB_ERROR_FLAG_CLR BIT(5)
2950 #define B_AX_HWSIGB_GEN_ERROR_FLAG_CLR BIT(4)
2951 #define B_AX_TXPLCP_ERROR_FLAG_CLR BIT(3)
2952 #define B_AX_RESP_ERROR_FLAG_CLR BIT(2)
2953 #define B_AX_TXCTL_ERROR_FLAG_CLR BIT(1)
2954 #define B_AX_MACTX_ERROR_FLAG_CLR BIT(0)
2955 
2956 #define R_AX_WMAC_TX_TF_INFO_0 0xCCD0
2957 #define R_AX_WMAC_TX_TF_INFO_0_C1 0xECD0
2958 #define B_AX_WMAC_TX_TF_INFO_SEL_MASK GENMASK(2, 0)
2959 
2960 #define R_AX_WMAC_TX_TF_INFO_1 0xCCD4
2961 #define R_AX_WMAC_TX_TF_INFO_1_C1 0xECD4
2962 #define B_AX_WMAC_TX_TF_INFO_P0_MASK GENMASK(31, 0)
2963 
2964 #define R_AX_WMAC_TX_TF_INFO_2 0xCCD8
2965 #define R_AX_WMAC_TX_TF_INFO_2_C1 0xECD8
2966 #define B_AX_WMAC_TX_TF_INFO_P1_MASK GENMASK(31, 0)
2967 
2968 #define R_AX_TMAC_ERR_IMR_ISR 0xCCEC
2969 #define R_AX_TMAC_ERR_IMR_ISR_C1 0xECEC
2970 #define B_AX_TMAC_TXPLCP_ERR_CLR BIT(19)
2971 #define B_AX_TMAC_RESP_ERR_CLR BIT(18)
2972 #define B_AX_TMAC_TXCTL_ERR_CLR BIT(17)
2973 #define B_AX_TMAC_MACTX_ERR_CLR BIT(16)
2974 #define B_AX_TMAC_TXPLCP_ERR BIT(14)
2975 #define B_AX_TMAC_RESP_ERR BIT(13)
2976 #define B_AX_TMAC_TXCTL_ERR BIT(12)
2977 #define B_AX_TMAC_MACTX_ERR BIT(11)
2978 #define B_AX_TMAC_TXPLCP_INT_EN BIT(10)
2979 #define B_AX_TMAC_RESP_INT_EN BIT(9)
2980 #define B_AX_TMAC_TXCTL_INT_EN BIT(8)
2981 #define B_AX_TMAC_MACTX_INT_EN BIT(7)
2982 #define B_AX_WMAC_INT_MODE BIT(6)
2983 #define B_AX_TMAC_TIMETOUT_THR_MASK GENMASK(5, 0)
2984 #define B_AX_TMAC_IMR_CLR (B_AX_TMAC_MACTX_INT_EN | \
2985 			   B_AX_TMAC_TXCTL_INT_EN | \
2986 			   B_AX_TMAC_RESP_INT_EN | \
2987 			   B_AX_TMAC_TXPLCP_INT_EN)
2988 #define B_AX_TMAC_IMR_SET (B_AX_TMAC_MACTX_INT_EN | \
2989 			   B_AX_TMAC_TXCTL_INT_EN | \
2990 			   B_AX_TMAC_RESP_INT_EN | \
2991 			   B_AX_TMAC_TXPLCP_INT_EN)
2992 
2993 #define R_AX_DBGSEL_TRXPTCL 0xCCF4
2994 #define R_AX_DBGSEL_TRXPTCL_C1 0xECF4
2995 #define B_AX_DBGSEL_TRXPTCL_MASK GENMASK(7, 0)
2996 
2997 #define R_AX_PHYINFO_ERR_IMR_V1 0xCCF8
2998 #define R_AX_PHYINFO_ERR_IMR_V1_C1 0xECF8
2999 #define B_AX_PHYINTF_TIMEOUT_THR_MSAK_V1 GENMASK(21, 16)
3000 #define B_AX_CSI_ON_TIMEOUT_EN BIT(5)
3001 #define B_AX_STS_ON_TIMEOUT_EN BIT(4)
3002 #define B_AX_DATA_ON_TIMEOUT_EN BIT(3)
3003 #define B_AX_OFDM_CCA_TIMEOUT_EN BIT(2)
3004 #define B_AX_CCK_CCA_TIMEOUT_EN BIT(1)
3005 #define B_AX_PHY_TXON_TIMEOUT_EN BIT(0)
3006 #define B_AX_PHYINFO_IMR_CLR_V1 (B_AX_PHY_TXON_TIMEOUT_EN | \
3007 				 B_AX_CCK_CCA_TIMEOUT_EN | \
3008 				 B_AX_OFDM_CCA_TIMEOUT_EN | \
3009 				 B_AX_DATA_ON_TIMEOUT_EN | \
3010 				 B_AX_STS_ON_TIMEOUT_EN | \
3011 				 B_AX_CSI_ON_TIMEOUT_EN)
3012 #define B_AX_PHYINFO_IMR_SET_V1 (B_AX_PHY_TXON_TIMEOUT_EN | \
3013 				 B_AX_CCK_CCA_TIMEOUT_EN | \
3014 				 B_AX_OFDM_CCA_TIMEOUT_EN | \
3015 				 B_AX_DATA_ON_TIMEOUT_EN | \
3016 				 B_AX_STS_ON_TIMEOUT_EN | \
3017 				 B_AX_CSI_ON_TIMEOUT_EN)
3018 
3019 #define R_AX_PHYINFO_ERR_IMR 0xCCFC
3020 #define R_AX_PHYINFO_ERR_IMR_C1 0xECFC
3021 #define B_AX_CSI_ON_TIMEOUT BIT(29)
3022 #define B_AX_STS_ON_TIMEOUT BIT(28)
3023 #define B_AX_DATA_ON_TIMEOUT BIT(27)
3024 #define B_AX_OFDM_CCA_TIMEOUT BIT(26)
3025 #define B_AX_CCK_CCA_TIMEOUT BIT(25)
3026 #define B_AXC_PHY_TXON_TIMEOUT BIT(24)
3027 #define B_AX_CSI_ON_TIMEOUT_INT_EN BIT(21)
3028 #define B_AX_STS_ON_TIMEOUT_INT_EN BIT(20)
3029 #define B_AX_DATA_ON_TIMEOUT_INT_EN BIT(19)
3030 #define B_AX_OFDM_CCA_TIMEOUT_INT_EN BIT(18)
3031 #define B_AX_CCK_CCA_TIMEOUT_INT_EN BIT(17)
3032 #define B_AX_PHY_TXON_TIMEOUT_INT_EN BIT(16)
3033 #define B_AX_PHYINTF_TIMEOUT_THR_MSAK GENMASK(5, 0)
3034 #define B_AX_PHYINFO_IMR_EN_ALL (B_AX_PHY_TXON_TIMEOUT_INT_EN | \
3035 				 B_AX_CCK_CCA_TIMEOUT_INT_EN | \
3036 				 B_AX_OFDM_CCA_TIMEOUT_INT_EN | \
3037 				 B_AX_DATA_ON_TIMEOUT_INT_EN | \
3038 				 B_AX_STS_ON_TIMEOUT_INT_EN | \
3039 				 B_AX_CSI_ON_TIMEOUT_INT_EN)
3040 
3041 #define R_AX_PHYINFO_ERR_ISR 0xCCFC
3042 #define R_AX_PHYINFO_ERR_ISR_C1 0xECFC
3043 
3044 #define R_AX_BFMER_CTRL_0 0xCD78
3045 #define R_AX_BFMER_CTRL_0_C1 0xED78
3046 #define B_AX_BFMER_HE_CSI_OFFSET_MASK GENMASK(31, 24)
3047 #define B_AX_BFMER_VHT_CSI_OFFSET_MASK GENMASK(23, 16)
3048 #define B_AX_BFMER_HT_CSI_OFFSET_MASK GENMASK(15, 8)
3049 #define B_AX_BFMER_NDP_BFEN BIT(2)
3050 #define B_AX_BFMER_VHT_BFPRT_CHK BIT(0)
3051 
3052 #define R_AX_BFMEE_RESP_OPTION 0xCD80
3053 #define R_AX_BFMEE_RESP_OPTION_C1 0xED80
3054 #define B_AX_BFMEE_NDP_RX_STANDBY_TIMER_MASK GENMASK(31, 24)
3055 #define B_AX_BFMEE_BFRP_RX_STANDBY_TIMER_MASK GENMASK(23, 20)
3056 #define B_AX_MU_BFRPTSEG_SEL_MASK GENMASK(18, 17)
3057 #define B_AX_BFMEE_NDP_RXSTDBY_SEL BIT(16)
3058 #define BFRP_RX_STANDBY_TIMER		0x0
3059 #define NDP_RX_STANDBY_TIMER		0xFF
3060 #define B_AX_BFMEE_HE_NDPA_EN BIT(2)
3061 #define B_AX_BFMEE_VHT_NDPA_EN BIT(1)
3062 #define B_AX_BFMEE_HT_NDPA_EN BIT(0)
3063 
3064 #define R_AX_TRXPTCL_RESP_CSI_CTRL_0 0xCD88
3065 #define R_AX_TRXPTCL_RESP_CSI_CTRL_0_C1 0xED88
3066 #define R_AX_TRXPTCL_RESP_CSI_CTRL_1 0xCD94
3067 #define R_AX_TRXPTCL_RESP_CSI_CTRL_1_C1 0xED94
3068 #define B_AX_BFMEE_CSISEQ_SEL BIT(29)
3069 #define B_AX_BFMEE_BFPARAM_SEL BIT(28)
3070 #define B_AX_BFMEE_OFDM_LEN_TH_MASK GENMASK(27, 24)
3071 #define B_AX_BFMEE_BF_PORT_SEL BIT(23)
3072 #define B_AX_BFMEE_USE_NSTS BIT(22)
3073 #define B_AX_BFMEE_CSI_RATE_FB_EN BIT(21)
3074 #define B_AX_BFMEE_CSI_GID_SEL BIT(20)
3075 #define B_AX_BFMEE_CSI_RSC_MASK GENMASK(19, 18)
3076 #define B_AX_BFMEE_CSI_FORCE_RETE_EN BIT(17)
3077 #define B_AX_BFMEE_CSI_USE_NDPARATE BIT(16)
3078 #define B_AX_BFMEE_CSI_WITHHTC_EN BIT(15)
3079 #define B_AX_BFMEE_CSIINFO0_BF_EN BIT(14)
3080 #define B_AX_BFMEE_CSIINFO0_STBC_EN BIT(13)
3081 #define B_AX_BFMEE_CSIINFO0_LDPC_EN BIT(12)
3082 #define B_AX_BFMEE_CSIINFO0_CS_MASK GENMASK(11, 10)
3083 #define B_AX_BFMEE_CSIINFO0_CB_MASK GENMASK(9, 8)
3084 #define B_AX_BFMEE_CSIINFO0_NG_MASK GENMASK(7, 6)
3085 #define B_AX_BFMEE_CSIINFO0_NR_MASK GENMASK(5, 3)
3086 #define B_AX_BFMEE_CSIINFO0_NC_MASK GENMASK(2, 0)
3087 
3088 #define R_AX_TRXPTCL_RESP_CSI_RRSC 0xCD8C
3089 #define R_AX_TRXPTCL_RESP_CSI_RRSC_C1 0xED8C
3090 #define CSI_RRSC_BMAP 0x29292911
3091 
3092 #define R_AX_TRXPTCL_RESP_CSI_RATE 0xCD90
3093 #define R_AX_TRXPTCL_RESP_CSI_RATE_C1 0xED90
3094 #define B_AX_BFMEE_HE_CSI_RATE_MASK GENMASK(22, 16)
3095 #define B_AX_BFMEE_VHT_CSI_RATE_MASK GENMASK(14, 8)
3096 #define B_AX_BFMEE_HT_CSI_RATE_MASK GENMASK(6, 0)
3097 #define CSI_INIT_RATE_HE		0x3
3098 #define CSI_INIT_RATE_VHT		0x3
3099 #define CSI_INIT_RATE_HT		0x3
3100 
3101 #define R_AX_RCR 0xCE00
3102 #define R_AX_RCR_C1 0xEE00
3103 #define B_AX_STOP_RX_IN BIT(11)
3104 #define B_AX_DRV_INFO_SIZE_MASK GENMASK(10, 8)
3105 #define B_AX_CH_EN_MASK GENMASK(3, 0)
3106 
3107 #define R_AX_DLK_PROTECT_CTL 0xCE02
3108 #define R_AX_DLK_PROTECT_CTL_C1 0xEE02
3109 #define B_AX_RX_DLK_CCA_TIME_MASK GENMASK(15, 8)
3110 #define B_AX_RX_DLK_DATA_TIME_MASK GENMASK(7, 4)
3111 
3112 #define R_AX_PLCP_HDR_FLTR 0xCE04
3113 #define R_AX_PLCP_HDR_FLTR_C1 0xEE04
3114 #define B_AX_DIS_CHK_MIN_LEN BIT(8)
3115 #define B_AX_HE_SIGB_CRC_CHK BIT(6)
3116 #define B_AX_VHT_MU_SIGB_CRC_CHK BIT(5)
3117 #define B_AX_VHT_SU_SIGB_CRC_CHK BIT(4)
3118 #define B_AX_SIGA_CRC_CHK BIT(3)
3119 #define B_AX_LSIG_PARITY_CHK_EN BIT(2)
3120 #define B_AX_CCK_SIG_CHK BIT(1)
3121 #define B_AX_CCK_CRC_CHK BIT(0)
3122 
3123 #define R_AX_RX_FLTR_OPT 0xCE20
3124 #define R_AX_RX_FLTR_OPT_C1 0xEE20
3125 #define B_AX_UID_FILTER_MASK GENMASK(31, 24)
3126 #define B_AX_UNSPT_FILTER_SH 22
3127 #define B_AX_UNSPT_FILTER_MASK GENMASK(23, 22)
3128 #define B_AX_RX_MPDU_MAX_LEN_MASK GENMASK(21, 16)
3129 #define B_AX_RX_MPDU_MAX_LEN_SIZE 0x3f
3130 #define B_AX_A_FTM_REQ BIT(14)
3131 #define B_AX_A_ERR_PKT BIT(13)
3132 #define B_AX_A_UNSUP_PKT BIT(12)
3133 #define B_AX_A_CRC32_ERR BIT(11)
3134 #define B_AX_A_PWR_MGNT BIT(10)
3135 #define B_AX_A_BCN_CHK_RULE_MASK GENMASK(9, 8)
3136 #define B_AX_A_BCN_CHK_EN BIT(7)
3137 #define B_AX_A_MC_LIST_CAM_MATCH BIT(6)
3138 #define B_AX_A_BC_CAM_MATCH BIT(5)
3139 #define B_AX_A_UC_CAM_MATCH BIT(4)
3140 #define B_AX_A_MC BIT(3)
3141 #define B_AX_A_BC BIT(2)
3142 #define B_AX_A_A1_MATCH BIT(1)
3143 #define B_AX_SNIFFER_MODE BIT(0)
3144 #define DEFAULT_AX_RX_FLTR (B_AX_A_A1_MATCH | B_AX_A_BC | B_AX_A_MC |	       \
3145 			    B_AX_A_UC_CAM_MATCH | B_AX_A_BC_CAM_MATCH |	       \
3146 			    B_AX_A_PWR_MGNT | B_AX_A_FTM_REQ |		       \
3147 			    u32_encode_bits(3, B_AX_UID_FILTER_MASK) |	       \
3148 			    B_AX_A_BCN_CHK_EN)
3149 #define B_AX_RX_FLTR_CFG_MASK ((u32)~B_AX_RX_MPDU_MAX_LEN_MASK)
3150 
3151 #define R_AX_CTRL_FLTR 0xCE24
3152 #define R_AX_CTRL_FLTR_C1 0xEE24
3153 #define R_AX_MGNT_FLTR 0xCE28
3154 #define R_AX_MGNT_FLTR_C1 0xEE28
3155 #define R_AX_DATA_FLTR 0xCE2C
3156 #define R_AX_DATA_FLTR_C1 0xEE2C
3157 #define RX_FLTR_FRAME_DROP	0x00000000
3158 #define RX_FLTR_FRAME_TO_HOST	0x55555555
3159 #define RX_FLTR_FRAME_TO_WLCPU	0xAAAAAAAA
3160 
3161 #define R_AX_ADDR_CAM_CTRL 0xCE34
3162 #define R_AX_ADDR_CAM_CTRL_C1 0xEE34
3163 #define B_AX_ADDR_CAM_RANGE_MASK GENMASK(23, 16)
3164 #define B_AX_ADDR_CAM_CMPLIMT_MASK GENMASK(15, 12)
3165 #define B_AX_ADDR_CAM_CLR BIT(8)
3166 #define B_AX_ADDR_CAM_A2_B0_CHK BIT(2)
3167 #define B_AX_ADDR_CAM_SRCH_PERPKT BIT(1)
3168 #define B_AX_ADDR_CAM_EN BIT(0)
3169 
3170 #define R_AX_RESPBA_CAM_CTRL 0xCE3C
3171 #define R_AX_RESPBA_CAM_CTRL_C1 0xEE3C
3172 #define B_AX_SSN_SEL BIT(2)
3173 #define B_AX_BACAM_RST_MASK GENMASK(1, 0)
3174 #define S_AX_BACAM_RST_ALL 2
3175 
3176 #define R_AX_PPDU_STAT 0xCE40
3177 #define R_AX_PPDU_STAT_C1 0xEE40
3178 #define B_AX_PPDU_STAT_RPT_TRIG BIT(8)
3179 #define B_AX_PPDU_STAT_RPT_CRC32 BIT(5)
3180 #define B_AX_PPDU_STAT_RPT_A1M BIT(4)
3181 #define B_AX_APP_PLCP_HDR_RPT BIT(3)
3182 #define B_AX_APP_RX_CNT_RPT BIT(2)
3183 #define B_AX_APP_MAC_INFO_RPT BIT(1)
3184 #define B_AX_PPDU_STAT_RPT_EN BIT(0)
3185 
3186 #define R_AX_RX_SR_CTRL 0xCE4A
3187 #define R_AX_RX_SR_CTRL_C1 0xEE4A
3188 #define B_AX_SR_EN BIT(0)
3189 
3190 #define R_AX_CSIRPT_OPTION 0xCE64
3191 #define R_AX_CSIRPT_OPTION_C1 0xEE64
3192 #define B_AX_CSIPRT_HESU_AID_EN BIT(25)
3193 #define B_AX_CSIPRT_VHTSU_AID_EN BIT(24)
3194 
3195 #define R_AX_RX_STATE_MONITOR 0xCEF0
3196 #define R_AX_RX_STATE_MONITOR_C1 0xEEF0
3197 #define B_AX_RX_STATE_MONITOR_MASK GENMASK(31, 0)
3198 #define B_AX_STATE_CUR_MASK GENMASK(31, 16)
3199 #define B_AX_STATE_NXT_MASK GENMASK(13, 8)
3200 #define B_AX_STATE_UPD BIT(7)
3201 #define B_AX_STATE_SEL_MASK GENMASK(4, 0)
3202 
3203 #define R_AX_RMAC_ERR_ISR 0xCEF4
3204 #define R_AX_RMAC_ERR_ISR_C1 0xEEF4
3205 #define B_AX_RXERR_INTPS_EN BIT(31)
3206 #define B_AX_RMAC_RX_CSI_TIMEOUT_INT_EN BIT(19)
3207 #define B_AX_RMAC_RX_TIMEOUT_INT_EN BIT(18)
3208 #define B_AX_RMAC_CSI_TIMEOUT_INT_EN BIT(17)
3209 #define B_AX_RMAC_DATA_ON_TIMEOUT_INT_EN BIT(16)
3210 #define B_AX_RMAC_CCA_TIMEOUT_INT_EN BIT(15)
3211 #define B_AX_RMAC_DMA_TIMEOUT_INT_EN BIT(14)
3212 #define B_AX_RMAC_DATA_ON_TO_IDLE_TIMEOUT_INT_EN BIT(13)
3213 #define B_AX_RMAC_CCA_TO_IDLE_TIMEOUT_INT_EN BIT(12)
3214 #define B_AX_RMAC_RX_CSI_TIMEOUT_FLAG BIT(7)
3215 #define B_AX_RMAC_RX_TIMEOUT_FLAG BIT(6)
3216 #define B_AX_BMAC_CSI_TIMEOUT_FLAG BIT(5)
3217 #define B_AX_BMAC_DATA_ON_TIMEOUT_FLAG BIT(4)
3218 #define B_AX_BMAC_CCA_TIMEOUT_FLAG BIT(3)
3219 #define B_AX_BMAC_DMA_TIMEOUT_FLAG BIT(2)
3220 #define B_AX_BMAC_DATA_ON_TO_IDLE_TIMEOUT_FLAG BIT(1)
3221 #define B_AX_BMAC_CCA_TO_IDLE_TIMEOUT_FLAG BIT(0)
3222 #define B_AX_RMAC_IMR_CLR (B_AX_RMAC_CCA_TO_IDLE_TIMEOUT_INT_EN | \
3223 			   B_AX_RMAC_DATA_ON_TO_IDLE_TIMEOUT_INT_EN | \
3224 			   B_AX_RMAC_DMA_TIMEOUT_INT_EN | \
3225 			   B_AX_RMAC_CCA_TIMEOUT_INT_EN | \
3226 			   B_AX_RMAC_DATA_ON_TIMEOUT_INT_EN | \
3227 			   B_AX_RMAC_CSI_TIMEOUT_INT_EN | \
3228 			   B_AX_RMAC_RX_TIMEOUT_INT_EN | \
3229 			   B_AX_RMAC_RX_CSI_TIMEOUT_INT_EN)
3230 #define B_AX_RMAC_IMR_SET (B_AX_RMAC_DMA_TIMEOUT_INT_EN | \
3231 			   B_AX_RMAC_CSI_TIMEOUT_INT_EN | \
3232 			   B_AX_RMAC_RX_TIMEOUT_INT_EN | \
3233 			   B_AX_RMAC_RX_CSI_TIMEOUT_INT_EN)
3234 
3235 #define R_AX_RX_ERR_IMR 0xCEF8
3236 #define R_AX_RX_ERR_IMR_C1 0xEEF8
3237 #define B_AX_RX_ERR_TRIG_ACT_TO_MSK BIT(9)
3238 #define B_AX_RX_ERR_STS_ACT_TO_MSK BIT(8)
3239 #define B_AX_RX_ERR_CSI_ACT_TO_MSK BIT(7)
3240 #define B_AX_RX_ERR_ACT_TO_MSK BIT(6)
3241 #define B_AX_CSI_DATAON_ASSERT_TO_MSK BIT(5)
3242 #define B_AX_DATAON_ASSERT_TO_MSK BIT(4)
3243 #define B_AX_CCA_ASSERT_TO_MSK BIT(3)
3244 #define B_AX_RX_ERR_DMA_TO_MSK BIT(2)
3245 #define B_AX_RX_ERR_DATA_TO_MSK BIT(1)
3246 #define B_AX_RX_ERR_CCA_TO_MSK BIT(0)
3247 #define B_AX_RMAC_IMR_CLR_V1 (B_AX_RX_ERR_CCA_TO_MSK | \
3248 			      B_AX_RX_ERR_DATA_TO_MSK | \
3249 			      B_AX_RX_ERR_DMA_TO_MSK | \
3250 			      B_AX_CCA_ASSERT_TO_MSK | \
3251 			      B_AX_DATAON_ASSERT_TO_MSK | \
3252 			      B_AX_CSI_DATAON_ASSERT_TO_MSK | \
3253 			      B_AX_RX_ERR_ACT_TO_MSK | \
3254 			      B_AX_RX_ERR_CSI_ACT_TO_MSK | \
3255 			      B_AX_RX_ERR_STS_ACT_TO_MSK | \
3256 			      B_AX_RX_ERR_TRIG_ACT_TO_MSK)
3257 #define B_AX_RMAC_IMR_SET_V1 (B_AX_RX_ERR_CCA_TO_MSK | \
3258 			      B_AX_RX_ERR_DATA_TO_MSK | \
3259 			      B_AX_RX_ERR_DMA_TO_MSK | \
3260 			      B_AX_CCA_ASSERT_TO_MSK | \
3261 			      B_AX_DATAON_ASSERT_TO_MSK | \
3262 			      B_AX_CSI_DATAON_ASSERT_TO_MSK | \
3263 			      B_AX_RX_ERR_ACT_TO_MSK | \
3264 			      B_AX_RX_ERR_CSI_ACT_TO_MSK | \
3265 			      B_AX_RX_ERR_STS_ACT_TO_MSK | \
3266 			      B_AX_RX_ERR_TRIG_ACT_TO_MSK)
3267 
3268 #define R_AX_RMAC_PLCP_MON 0xCEF8
3269 #define R_AX_RMAC_PLCP_MON_C1 0xEEF8
3270 #define B_AX_RMAC_PLCP_MON_MASK GENMASK(31, 0)
3271 #define B_AX_PCLP_MON_SEL_MASK GENMASK(31, 28)
3272 #define B_AX_PCLP_MON_CONT_MASK GENMASK(27, 0)
3273 
3274 #define R_AX_RX_DEBUG_SELECT 0xCEFC
3275 #define R_AX_RX_DEBUG_SELECT_C1 0xEEFC
3276 #define B_AX_DEBUG_SEL_MASK GENMASK(7, 0)
3277 
3278 #define R_AX_PWR_RATE_CTRL 0xD200
3279 #define R_AX_PWR_RATE_CTRL_C1 0xF200
3280 #define B_AX_PWR_REF GENMASK(27, 10)
3281 #define B_AX_FORCE_PWR_BY_RATE_EN BIT(9)
3282 #define B_AX_FORCE_PWR_BY_RATE_VALUE_MASK GENMASK(8, 0)
3283 
3284 #define R_AX_PWR_RATE_OFST_CTRL 0xD204
3285 #define R_AX_PWR_COEXT_CTRL 0xD220
3286 #define B_AX_TXAGC_BT_EN BIT(1)
3287 #define B_AX_TXAGC_BT_MASK GENMASK(11, 3)
3288 
3289 #define R_AX_PWR_UL_CTRL0 0xD240
3290 #define R_AX_PWR_UL_CTRL2 0xD248
3291 #define B_AX_PWR_UL_CFO_MASK GENMASK(2, 0)
3292 #define B_AX_PWR_UL_CTRL2_MASK 0x07700007
3293 #define R_AX_PWR_UL_TB_CTRL 0xD288
3294 #define B_AX_PWR_UL_TB_CTRL_EN BIT(31)
3295 #define R_AX_PWR_UL_TB_1T 0xD28C
3296 #define B_AX_PWR_UL_TB_1T_MASK GENMASK(4, 0)
3297 #define B_AX_PWR_UL_TB_1T_V1_MASK GENMASK(7, 0)
3298 #define R_AX_PWR_UL_TB_2T 0xD290
3299 #define B_AX_PWR_UL_TB_2T_MASK GENMASK(4, 0)
3300 #define B_AX_PWR_UL_TB_2T_V1_MASK GENMASK(7, 0)
3301 #define R_AX_PWR_BY_RATE_TABLE0 0xD2C0
3302 #define R_AX_PWR_BY_RATE_TABLE10 0xD2E8
3303 #define R_AX_PWR_BY_RATE R_AX_PWR_BY_RATE_TABLE0
3304 #define R_AX_PWR_BY_RATE_MAX R_AX_PWR_BY_RATE_TABLE10
3305 #define R_AX_PWR_LMT_TABLE0 0xD2EC
3306 #define R_AX_PWR_LMT_TABLE19 0xD338
3307 #define R_AX_PWR_LMT R_AX_PWR_LMT_TABLE0
3308 #define R_AX_PWR_LMT_MAX R_AX_PWR_LMT_TABLE19
3309 #define R_AX_PWR_RU_LMT_TABLE0 0xD33C
3310 #define R_AX_PWR_RU_LMT_TABLE11 0xD368
3311 #define R_AX_PWR_RU_LMT R_AX_PWR_RU_LMT_TABLE0
3312 #define R_AX_PWR_RU_LMT_MAX R_AX_PWR_RU_LMT_TABLE11
3313 #define R_AX_PWR_MACID_LMT_TABLE0 0xD36C
3314 #define R_AX_PWR_MACID_LMT_TABLE127 0xD568
3315 
3316 #define R_AX_PATH_COM0 0xD800
3317 #define AX_PATH_COM0_DFVAL 0x00000000
3318 #define AX_PATH_COM0_PATHA 0x08889880
3319 #define AX_PATH_COM0_PATHB 0x11111900
3320 #define AX_PATH_COM0_PATHAB 0x19999980
3321 #define R_AX_PATH_COM1 0xD804
3322 #define AX_PATH_COM1_DFVAL 0x00000000
3323 #define AX_PATH_COM1_PATHA 0x13111111
3324 #define AX_PATH_COM1_PATHB 0x23222222
3325 #define AX_PATH_COM1_PATHAB 0x33333333
3326 #define R_AX_PATH_COM2 0xD808
3327 #define AX_PATH_COM2_DFVAL 0x00000000
3328 #define AX_PATH_COM2_PATHA 0x01209313
3329 #define AX_PATH_COM2_PATHB 0x01209323
3330 #define AX_PATH_COM2_PATHAB 0x01209333
3331 #define R_AX_PATH_COM3 0xD80C
3332 #define AX_PATH_COM3_DFVAL 0x49249249
3333 #define R_AX_PATH_COM4 0xD810
3334 #define AX_PATH_COM4_DFVAL 0x1C9C9C49
3335 #define R_AX_PATH_COM5 0xD814
3336 #define AX_PATH_COM5_DFVAL 0x39393939
3337 #define R_AX_PATH_COM6 0xD818
3338 #define AX_PATH_COM6_DFVAL 0x39393939
3339 #define R_AX_PATH_COM7 0xD81C
3340 #define AX_PATH_COM7_DFVAL 0x39393939
3341 #define AX_PATH_COM7_PATHA 0x39393939
3342 #define AX_PATH_COM7_PATHB 0x39383939
3343 #define AX_PATH_COM7_PATHAB 0x39393939
3344 #define R_AX_PATH_COM8 0xD820
3345 #define AX_PATH_COM8_DFVAL 0x00000000
3346 #define AX_PATH_COM8_PATHA 0x00003939
3347 #define AX_PATH_COM8_PATHB 0x00003938
3348 #define AX_PATH_COM8_PATHAB 0x00003939
3349 #define R_AX_PATH_COM9 0xD824
3350 #define AX_PATH_COM9_DFVAL 0x000007C0
3351 #define R_AX_PATH_COM10 0xD828
3352 #define AX_PATH_COM10_DFVAL 0xE0000000
3353 #define R_AX_PATH_COM11 0xD82C
3354 #define AX_PATH_COM11_DFVAL 0x00000000
3355 #define R_P80_AT_HIGH_FREQ_BB_WRP 0xD848
3356 #define B_P80_AT_HIGH_FREQ_BB_WRP BIT(28)
3357 #define R_AX_TSSI_CTRL_HEAD 0xD908
3358 #define R_AX_BANDEDGE_CFG 0xD94C
3359 #define B_AX_BANDEDGE_CFG_IDX_MASK GENMASK(31, 30)
3360 #define R_AX_TSSI_CTRL_TAIL 0xD95C
3361 
3362 #define R_AX_TXPWR_IMR 0xD9E0
3363 #define R_AX_TXPWR_IMR_C1 0xF9E0
3364 #define R_AX_TXPWR_ISR 0xD9E4
3365 #define R_AX_TXPWR_ISR_C1 0xF9E4
3366 
3367 #define R_AX_BTC_CFG 0xDA00
3368 #define B_AX_BTC_EN BIT(31)
3369 #define B_AX_EN_EXT_BT_PINMUX BIT(29)
3370 #define B_AX_BTC_RST BIT(28)
3371 #define B_AX_BTC_DBG_SRC_SEL BIT(27)
3372 #define B_AX_BTC_MODE_MASK GENMASK(25, 24)
3373 #define B_AX_INV_WL_ACT2 BIT(17)
3374 #define B_AX_BTG_LNA1_GAIN_SEL BIT(16)
3375 #define B_AX_COEX_DLY_CLK_MASK GENMASK(15, 8)
3376 #define B_AX_IGN_GNT_BT2_RX BIT(7)
3377 #define B_AX_IGN_GNT_BT2_TX BIT(6)
3378 #define B_AX_IGN_GNT_BT2 BIT(5)
3379 #define B_AX_BTC_DBG_SEL_MASK GENMASK(4, 3)
3380 #define B_AX_DIS_BTC_CLK_G BIT(2)
3381 #define B_AX_GNT_WL_RX_CTRL BIT(1)
3382 #define B_AX_WL_SRC BIT(0)
3383 
3384 #define R_AX_RTK_MODE_CFG_V1 0xDA04
3385 #define R_AX_RTK_MODE_CFG_V1_C1 0xFA04
3386 #define B_AX_BT_BLE_EN_V1 BIT(24)
3387 #define B_AX_BT_ULTRA_EN BIT(16)
3388 #define B_AX_BT_L_RX_ULTRA_MASK GENMASK(15, 14)
3389 #define B_AX_BT_L_TX_ULTRA_MASK GENMASK(13, 12)
3390 #define B_AX_BT_H_RX_ULTRA_MASK GENMASK(11, 10)
3391 #define B_AX_BT_H_TX_ULTRA_MASK GENMASK(9, 8)
3392 #define B_AX_SAMPLE_CLK_MASK GENMASK(7, 0)
3393 
3394 #define R_AX_WL_PRI_MSK 0xDA10
3395 #define B_AX_PTA_WL_PRI_MASK_BCNQ BIT(8)
3396 
3397 #define R_AX_BT_CNT_CFG 0xDA10
3398 #define R_AX_BT_CNT_CFG_C1 0xFA10
3399 #define B_AX_BT_CNT_RST_V1 BIT(1)
3400 #define B_AX_BT_CNT_EN BIT(0)
3401 
3402 #define R_BTC_BT_CNT_HIGH 0xDA14
3403 #define R_BTC_BT_CNT_LOW 0xDA18
3404 
3405 #define R_AX_BTC_FUNC_EN 0xDA20
3406 #define R_AX_BTC_FUNC_EN_C1 0xFA20
3407 #define B_AX_PTA_WL_TX_EN BIT(1)
3408 #define B_AX_PTA_EDCCA_EN BIT(0)
3409 
3410 #define R_BTC_COEX_WL_REQ 0xDA24
3411 #define B_BTC_TX_BCN_HI BIT(22)
3412 #define B_BTC_RSP_ACK_HI BIT(10)
3413 
3414 #define R_BTC_BREAK_TABLE 0xDA2C
3415 #define BTC_BREAK_PARAM 0xf0ffffff
3416 
3417 #define R_BTC_BT_COEX_MSK_TABLE 0xDA30
3418 #define B_BTC_PRI_MASK_RXCCK_V1 BIT(28)
3419 #define B_BTC_PRI_MASK_TX_RESP_V1 BIT(3)
3420 
3421 #define R_AX_BT_COEX_CFG_2 0xDA34
3422 #define R_AX_BT_COEX_CFG_2_C1 0xFA34
3423 #define B_AX_GNT_BT_BYPASS_PRIORITY BIT(12)
3424 #define B_AX_GNT_BT_POLARITY BIT(8)
3425 #define B_AX_TIMER_MASK GENMASK(7, 0)
3426 #define MAC_AX_CSR_RATE 80
3427 
3428 #define R_AX_CSR_MODE 0xDA40
3429 #define R_AX_CSR_MODE_C1 0xFA40
3430 #define B_AX_BT_CNT_RST BIT(16)
3431 #define B_AX_BT_STAT_DELAY_MASK GENMASK(15, 12)
3432 #define MAC_AX_CSR_DELAY 0
3433 #define B_AX_BT_TRX_INIT_DETECT_MASK GENMASK(11, 8)
3434 #define MAC_AX_CSR_TRX_TO 4
3435 #define B_AX_BT_PRI_DETECT_TO_MASK GENMASK(7, 4)
3436 #define MAC_AX_CSR_PRI_TO 5
3437 #define B_AX_WL_ACT_MSK BIT(3)
3438 #define B_AX_STATIS_BT_EN BIT(2)
3439 #define B_AX_WL_ACT_MASK_ENABLE BIT(1)
3440 #define B_AX_ENHANCED_BT BIT(0)
3441 
3442 #define R_AX_BT_BREAK_TABLE 0xDA44
3443 
3444 #define R_AX_BT_STAST_HIGH 0xDA44
3445 #define B_AX_STATIS_BT_HI_RX_MASK GENMASK(31, 16)
3446 #define B_AX_STATIS_BT_HI_TX_MASK GENMASK(15, 0)
3447 #define R_AX_BT_STAST_LOW 0xDA48
3448 #define B_AX_STATIS_BT_LO_TX_1_MASK GENMASK(15, 0)
3449 #define B_AX_STATIS_BT_LO_RX_1_MASK GENMASK(31, 16)
3450 
3451 #define R_AX_GNT_SW_CTRL 0xDA48
3452 #define R_AX_GNT_SW_CTRL_C1 0xFA48
3453 #define B_AX_WL_ACT2_VAL BIT(21)
3454 #define B_AX_WL_ACT2_SWCTRL BIT(20)
3455 #define B_AX_WL_ACT_VAL BIT(19)
3456 #define B_AX_WL_ACT_SWCTRL BIT(18)
3457 #define B_AX_GNT_BT_RX_VAL BIT(17)
3458 #define B_AX_GNT_BT_RX_SWCTRL BIT(16)
3459 #define B_AX_GNT_BT_TX_VAL BIT(15)
3460 #define B_AX_GNT_BT_TX_SWCTRL BIT(14)
3461 #define B_AX_GNT_WL_RX_VAL BIT(13)
3462 #define B_AX_GNT_WL_RX_SWCTRL BIT(12)
3463 #define B_AX_GNT_WL_TX_VAL BIT(11)
3464 #define B_AX_GNT_WL_TX_SWCTRL BIT(10)
3465 #define B_AX_GNT_BT_RFC_S1_VAL BIT(9)
3466 #define B_AX_GNT_BT_RFC_S1_SWCTRL BIT(8)
3467 #define B_AX_GNT_WL_RFC_S1_VAL BIT(7)
3468 #define B_AX_GNT_WL_RFC_S1_SWCTRL BIT(6)
3469 #define B_AX_GNT_BT_RFC_S0_VAL BIT(5)
3470 #define B_AX_GNT_BT_RFC_S0_SWCTRL BIT(4)
3471 #define B_AX_GNT_WL_RFC_S0_VAL BIT(3)
3472 #define B_AX_GNT_WL_RFC_S0_SWCTRL BIT(2)
3473 #define B_AX_GNT_WL_BB_VAL BIT(1)
3474 #define B_AX_GNT_WL_BB_SWCTRL BIT(0)
3475 
3476 #define R_AX_GNT_VAL 0x0054
3477 #define B_AX_GNT_BT_RFC_S1_STA BIT(5)
3478 #define B_AX_GNT_WL_RFC_S1_STA BIT(4)
3479 #define B_AX_GNT_BT_RFC_S0_STA BIT(3)
3480 #define B_AX_GNT_WL_RFC_S0_STA BIT(2)
3481 
3482 #define R_AX_GNT_VAL_V1 0xDA4C
3483 #define B_AX_GNT_BT_RFC_S1 BIT(4)
3484 #define B_AX_GNT_BT_RFC_S0 BIT(3)
3485 #define B_AX_GNT_WL_RFC_S1 BIT(2)
3486 #define B_AX_GNT_WL_RFC_S0 BIT(1)
3487 
3488 #define R_AX_TDMA_MODE 0xDA4C
3489 #define R_AX_TDMA_MODE_C1 0xFA4C
3490 #define B_AX_R_BT_CMD_RPT_MASK GENMASK(31, 16)
3491 #define B_AX_R_RPT_FROM_BT_MASK GENMASK(15, 8)
3492 #define B_AX_BT_HID_ISR_SET_MASK GENMASK(7, 6)
3493 #define B_AX_TDMA_BT_START_NOTIFY BIT(5)
3494 #define B_AX_ENABLE_TDMA_FW_MODE BIT(4)
3495 #define B_AX_ENABLE_PTA_TDMA_MODE BIT(3)
3496 #define B_AX_ENABLE_COEXIST_TAB_IN_TDMA BIT(2)
3497 #define B_AX_GPIO2_GPIO3_EXANGE_OR_NO_BT_CCA BIT(1)
3498 #define B_AX_RTK_BT_ENABLE BIT(0)
3499 
3500 #define R_AX_BT_COEX_CFG_5 0xDA6C
3501 #define R_AX_BT_COEX_CFG_5_C1 0xFA6C
3502 #define B_AX_BT_TIME_MASK GENMASK(31, 6)
3503 #define B_AX_BT_RPT_SAMPLE_RATE_MASK GENMASK(5, 0)
3504 #define MAC_AX_RTK_RATE 5
3505 
3506 #define R_AX_LTE_CTRL 0xDAF0
3507 #define R_AX_LTE_WDATA 0xDAF4
3508 #define R_AX_LTE_RDATA 0xDAF8
3509 
3510 #define R_AX_MACID_ANT_TABLE 0xDC00
3511 #define R_AX_MACID_ANT_TABLE_LAST 0xDDFC
3512 
3513 #define CMAC1_START_ADDR 0xE000
3514 #define CMAC1_END_ADDR 0xFFFF
3515 #define R_AX_CMAC_REG_END 0xFFFF
3516 
3517 #define R_AX_LTE_SW_CFG_1 0x0038
3518 #define R_AX_LTE_SW_CFG_1_C1 0x2038
3519 #define B_AX_GNT_BT_RFC_S1_SW_VAL BIT(31)
3520 #define B_AX_GNT_BT_RFC_S1_SW_CTRL BIT(30)
3521 #define B_AX_GNT_WL_RFC_S1_SW_VAL BIT(29)
3522 #define B_AX_GNT_WL_RFC_S1_SW_CTRL BIT(28)
3523 #define B_AX_GNT_BT_BB_S1_SW_VAL BIT(27)
3524 #define B_AX_GNT_BT_BB_S1_SW_CTRL BIT(26)
3525 #define B_AX_GNT_WL_BB_S1_SW_VAL BIT(25)
3526 #define B_AX_GNT_WL_BB_S1_SW_CTRL BIT(24)
3527 #define B_AX_BT_SW_CTRL_WL_PRIORITY BIT(19)
3528 #define B_AX_WL_SW_CTRL_WL_PRIORITY BIT(18)
3529 #define B_AX_LTE_PATTERN_2_EN BIT(17)
3530 #define B_AX_LTE_PATTERN_1_EN BIT(16)
3531 #define B_AX_GNT_BT_RFC_S0_SW_VAL BIT(15)
3532 #define B_AX_GNT_BT_RFC_S0_SW_CTRL BIT(14)
3533 #define B_AX_GNT_WL_RFC_S0_SW_VAL BIT(13)
3534 #define B_AX_GNT_WL_RFC_S0_SW_CTRL BIT(12)
3535 #define B_AX_GNT_BT_BB_S0_SW_VAL BIT(11)
3536 #define B_AX_GNT_BT_BB_S0_SW_CTRL BIT(10)
3537 #define B_AX_GNT_WL_BB_S0_SW_VAL BIT(9)
3538 #define B_AX_GNT_WL_BB_S0_SW_CTRL BIT(8)
3539 #define B_AX_LTECOEX_FUN_EN BIT(7)
3540 #define B_AX_LTECOEX_3WIRE_CTRL_MUX BIT(6)
3541 #define B_AX_LTECOEX_OP_MODE_SEL_MASK GENMASK(5, 4)
3542 #define B_AX_LTECOEX_UART_MUX BIT(3)
3543 #define B_AX_LTECOEX_UART_MODE_SEL_MASK GENMASK(2, 0)
3544 
3545 #define R_AX_LTE_SW_CFG_2 0x003C
3546 #define R_AX_LTE_SW_CFG_2_C1 0x203C
3547 #define B_AX_WL_RX_CTRL BIT(8)
3548 #define B_AX_GNT_WL_RX_SW_VAL BIT(7)
3549 #define B_AX_GNT_WL_RX_SW_CTRL BIT(6)
3550 #define B_AX_GNT_WL_TX_SW_VAL BIT(5)
3551 #define B_AX_GNT_WL_TX_SW_CTRL BIT(4)
3552 #define B_AX_GNT_BT_RX_SW_VAL BIT(3)
3553 #define B_AX_GNT_BT_RX_SW_CTRL BIT(2)
3554 #define B_AX_GNT_BT_TX_SW_VAL BIT(1)
3555 #define B_AX_GNT_BT_TX_SW_CTRL BIT(0)
3556 
3557 #define RR_MOD 0x00
3558 #define RR_MOD_V1 0x10000
3559 #define RR_MOD_IQK GENMASK(19, 4)
3560 #define RR_MOD_DPK GENMASK(19, 5)
3561 #define RR_MOD_MASK GENMASK(19, 16)
3562 #define RR_MOD_RGM GENMASK(13, 4)
3563 #define RR_MOD_V_DOWN 0x0
3564 #define RR_MOD_V_STANDBY 0x1
3565 #define RR_TXAGC 0x10001
3566 #define RR_MOD_V_TX 0x2
3567 #define RR_MOD_V_RX 0x3
3568 #define RR_MOD_V_TXIQK 0x4
3569 #define RR_MOD_V_DPK 0x5
3570 #define RR_MOD_V_RXK1 0x6
3571 #define RR_MOD_V_RXK2 0x7
3572 #define RR_MOD_NBW GENMASK(15, 14)
3573 #define RR_MOD_M_RXG GENMASK(13, 4)
3574 #define RR_MOD_M_RXBB GENMASK(9, 5)
3575 #define RR_MODOPT 0x01
3576 #define RR_MODOPT_M_TXPWR GENMASK(5, 0)
3577 #define RR_WLSEL 0x02
3578 #define RR_WLSEL_AG GENMASK(18, 16)
3579 #define RR_RSV1 0x05
3580 #define RR_RSV1_RST BIT(0)
3581 #define RR_BBDC 0x10005
3582 #define RR_BBDC_SEL BIT(0)
3583 #define RR_DTXLOK 0x08
3584 #define RR_RSV2 0x09
3585 #define RR_LOKVB 0x0a
3586 #define RR_LOKVB_COI GENMASK(19, 14)
3587 #define RR_LOKVB_COQ GENMASK(9, 4)
3588 #define RR_TXIG 0x11
3589 #define RR_TXIG_TG GENMASK(16, 12)
3590 #define RR_TXIG_GR1 GENMASK(6, 4)
3591 #define RR_TXIG_GR0 GENMASK(1, 0)
3592 #define RR_CHTR 0x17
3593 #define RR_CHTR_MOD GENMASK(11, 10)
3594 #define RR_CHTR_TXRX GENMASK(9, 0)
3595 #define RR_CFGCH 0x18
3596 #define RR_CFGCH_V1 0x10018
3597 #define RR_CFGCH_BAND1 GENMASK(17, 16)
3598 #define CFGCH_BAND1_2G 0
3599 #define CFGCH_BAND1_5G 1
3600 #define CFGCH_BAND1_6G 3
3601 #define RR_CFGCH_POW_LCK BIT(15)
3602 #define RR_CFGCH_TRX_AH BIT(14)
3603 #define RR_CFGCH_BCN BIT(13)
3604 #define RR_CFGCH_BW2 BIT(12)
3605 #define RR_CFGCH_BAND0 GENMASK(9, 8)
3606 #define CFGCH_BAND0_2G 0
3607 #define CFGCH_BAND0_5G 1
3608 #define CFGCH_BAND0_6G 0
3609 #define RR_CFGCH_BW GENMASK(11, 10)
3610 #define RR_CFGCH_CH GENMASK(7, 0)
3611 #define CFGCH_BW_20M 3
3612 #define CFGCH_BW_40M 2
3613 #define CFGCH_BW_80M 1
3614 #define CFGCH_BW_160M 0
3615 #define RR_APK 0x19
3616 #define RR_APK_MOD GENMASK(5, 4)
3617 #define RR_BTC 0x1a
3618 #define RR_BTC_TXBB GENMASK(14, 12)
3619 #define RR_BTC_RXBB GENMASK(11, 10)
3620 #define RR_RCKC 0x1b
3621 #define RR_RCKC_CA GENMASK(14, 10)
3622 #define RR_RCKS 0x1c
3623 #define RR_RCKO 0x1d
3624 #define RR_RCKO_OFF GENMASK(13, 9)
3625 #define RR_RXKPLL 0x1e
3626 #define RR_RXKPLL_OFF GENMASK(5, 0)
3627 #define RR_RXKPLL_POW BIT(19)
3628 #define RR_RSV4 0x1f
3629 #define RR_RSV4_AGH GENMASK(17, 16)
3630 #define RR_RSV4_PLLCH GENMASK(9, 0)
3631 #define RR_RXK 0x20
3632 #define RR_RXK_SEL2G BIT(8)
3633 #define RR_RXK_SEL5G BIT(7)
3634 #define RR_RXK_PLLEN BIT(5)
3635 #define RR_LUTWA 0x33
3636 #define RR_LUTWA_MASK GENMASK(9, 0)
3637 #define RR_LUTWA_M1 GENMASK(7, 0)
3638 #define RR_LUTWA_M2 GENMASK(4, 0)
3639 #define RR_LUTWD1 0x3e
3640 #define RR_LUTWD0 0x3f
3641 #define RR_LUTWD0_LB GENMASK(5, 0)
3642 #define RR_TM 0x42
3643 #define RR_TM_TRI BIT(19)
3644 #define RR_TM_VAL GENMASK(6, 1)
3645 #define RR_TM2 0x43
3646 #define RR_TM2_OFF GENMASK(19, 16)
3647 #define RR_TXG1 0x51
3648 #define RR_TXG1_ATT2 BIT(19)
3649 #define RR_TXG1_ATT1 BIT(11)
3650 #define RR_TXG2 0x52
3651 #define RR_TXG2_ATT0 BIT(11)
3652 #define RR_BSPAD 0x54
3653 #define RR_TXGA 0x55
3654 #define RR_TXGA_TRK_EN BIT(7)
3655 #define RR_TXGA_LOK_EXT GENMASK(4, 0)
3656 #define RR_TXGA_LOK_EN BIT(0)
3657 #define RR_TXGA_V1 0x10055
3658 #define RR_TXGA_V1_TRK_EN BIT(7)
3659 #define RR_GAINTX 0x56
3660 #define RR_GAINTX_ALL GENMASK(15, 0)
3661 #define RR_GAINTX_PAD GENMASK(9, 5)
3662 #define RR_GAINTX_BB GENMASK(4, 0)
3663 #define RR_TXMO 0x58
3664 #define RR_TXMO_COI GENMASK(19, 15)
3665 #define RR_TXMO_COQ GENMASK(14, 10)
3666 #define RR_TXMO_FII GENMASK(9, 6)
3667 #define RR_TXMO_FIQ GENMASK(5, 2)
3668 #define RR_TXA 0x5d
3669 #define RR_TXA_TRK GENMASK(19, 14)
3670 #define RR_TXRSV 0x5c
3671 #define RR_TXRSV_GAPK BIT(19)
3672 #define RR_BIAS 0x5e
3673 #define RR_BIAS_GAPK BIT(19)
3674 #define RR_BIASA 0x60
3675 #define RR_BIASA_TXG GENMASK(15, 12)
3676 #define RR_BIASA_TXA GENMASK(19, 16)
3677 #define RR_BIASA_A GENMASK(2, 0)
3678 #define RR_BIASA2 0x63
3679 #define RR_BIASA2_LB GENMASK(4, 2)
3680 #define RR_TXATANK 0x64
3681 #define RR_TXATANK_LBSW2 GENMASK(17, 15)
3682 #define RR_TXATANK_LBSW GENMASK(16, 15)
3683 #define RR_TXA2 0x65
3684 #define RR_TXA2_LDO GENMASK(19, 16)
3685 #define RR_TRXIQ 0x66
3686 #define RR_RSV6 0x6d
3687 #define RR_TXVBUF 0x7c
3688 #define RR_TXVBUF_DACEN BIT(5)
3689 #define RR_TXPOW 0x7f
3690 #define RR_TXPOW_TXA BIT(8)
3691 #define RR_TXPOW_TXAS BIT(7)
3692 #define RR_TXPOW_TXG BIT(1)
3693 #define RR_RXPOW 0x80
3694 #define RR_RXPOW_IQK GENMASK(17, 16)
3695 #define RR_RXBB 0x83
3696 #define RR_RXBB_VOBUF GENMASK(15, 12)
3697 #define RR_RXBB_C2G GENMASK(16, 10)
3698 #define RR_RXBB_C1G GENMASK(9, 8)
3699 #define RR_RXBB_FATT GENMASK(7, 0)
3700 #define RR_RXBB_ATTR GENMASK(7, 4)
3701 #define RR_RXBB_ATTC GENMASK(2, 0)
3702 #define RR_RXG 0x84
3703 #define RR_RXG_IQKMOD GENMASK(19, 16)
3704 #define RR_XGLNA2 0x85
3705 #define RR_XGLNA2_SW GENMASK(1, 0)
3706 #define RR_RXAE 0x89
3707 #define RR_RXAE_IQKMOD GENMASK(3, 0)
3708 #define RR_RXA 0x8a
3709 #define RR_RXA_DPK GENMASK(9, 8)
3710 #define RR_RXA_LNA 0x8b
3711 #define RR_RXA2 0x8c
3712 #define RR_RAA2_SWATT GENMASK(15, 9)
3713 #define RR_RXA2_C1 GENMASK(12, 10)
3714 #define RR_RXA2_C2 GENMASK(9, 3)
3715 #define RR_RXA2_CC2 GENMASK(8, 7)
3716 #define RR_RXA2_IATT GENMASK(7, 4)
3717 #define RR_RXA2_HATT GENMASK(6, 0)
3718 #define RR_RXA2_ATT GENMASK(3, 0)
3719 #define RR_RXIQGEN 0x8d
3720 #define RR_RXIQGEN_ATTL GENMASK(12, 8)
3721 #define RR_RXIQGEN_ATTH GENMASK(14, 13)
3722 #define RR_RXBB2 0x8f
3723 #define RR_RXBB2_DAC_EN BIT(13)
3724 #define RR_RXBB2_CKT BIT(12)
3725 #define RR_EN_TIA_IDA GENMASK(11, 10)
3726 #define RR_RXBB2_IDAC GENMASK(11, 9)
3727 #define RR_RXBB2_EBW GENMASK(6, 5)
3728 #define RR_XALNA2 0x90
3729 #define RR_XALNA2_SW2 GENMASK(9, 8)
3730 #define RR_XALNA2_SW GENMASK(1, 0)
3731 #define RR_DCK 0x92
3732 #define RR_DCK_DONE GENMASK(7, 5)
3733 #define RR_DCK_FINE BIT(1)
3734 #define RR_DCK_LV BIT(0)
3735 #define RR_DCK1 0x93
3736 #define RR_DCK1_DONE BIT(5)
3737 #define RR_DCK1_CLR GENMASK(3, 0)
3738 #define RR_DCK1_SEL BIT(3)
3739 #define RR_DCK2 0x94
3740 #define RR_DCK2_CYCLE GENMASK(7, 2)
3741 #define RR_DCKC 0x95
3742 #define RR_DCKC_CHK BIT(3)
3743 #define RR_IQGEN 0x97
3744 #define RR_IQGEN_BIAS GENMASK(11, 8)
3745 #define RR_TXIQK 0x98
3746 #define RR_TXIQK_ATT2 GENMASK(15, 12)
3747 #define RR_TXIQK_ATT1 GENMASK(6, 0)
3748 #define RR_TIA 0x9e
3749 #define RR_TIA_N6 BIT(8)
3750 #define RR_MIXER 0x9f
3751 #define RR_MIXER_GN GENMASK(4, 3)
3752 #define RR_POW 0xa0
3753 #define RR_POW_SYN GENMASK(3, 2)
3754 #define RR_LOGEN 0xa3
3755 #define RR_LOGEN_RPT GENMASK(19, 16)
3756 #define RR_SX 0xaf
3757 #define RR_LDO 0xb1
3758 #define RR_LDO_SEL GENMASK(8, 6)
3759 #define RR_VCO 0xb2
3760 #define RR_LPF 0xb7
3761 #define RR_LPF_BUSY BIT(8)
3762 #define RR_XTALX2 0xb8
3763 #define RR_MALSEL 0xbe
3764 #define RR_SYNFB 0xc5
3765 #define RR_SYNFB_LK BIT(15)
3766 #define RR_LCKST 0xcf
3767 #define RR_LCKST_BIN BIT(0)
3768 #define RR_LCK_TRG 0xd3
3769 #define RR_LCK_TRGSEL BIT(8)
3770 #define RR_MMD 0xd5
3771 #define RR_MMD_RST_EN BIT(8)
3772 #define RR_MMD_RST_SYN BIT(6)
3773 #define RR_IQKPLL 0xdc
3774 #define RR_IQKPLL_MOD GENMASK(9, 8)
3775 #define RR_SYNLUT 0xdd
3776 #define RR_SYNLUT_MOD BIT(4)
3777 #define RR_RCKD 0xde
3778 #define RR_RCKD_POW GENMASK(19, 13)
3779 #define RR_RCKD_BW BIT(2)
3780 #define RR_TXADBG 0xde
3781 #define RR_LUTDBG 0xdf
3782 #define RR_LUTDBG_TIA BIT(12)
3783 #define RR_LUTDBG_LOK BIT(2)
3784 #define RR_LUTWE2 0xee
3785 #define RR_LUTWE2_RTXBW BIT(2)
3786 #define RR_LUTWE 0xef
3787 #define RR_LUTWE_LOK BIT(2)
3788 #define RR_RFC 0xf0
3789 #define RR_RFC_CKEN BIT(1)
3790 
3791 #define R_UPD_P0 0x0000
3792 #define R_RSTB_WATCH_DOG 0x000C
3793 #define B_P0_RSTB_WATCH_DOG BIT(0)
3794 #define B_P1_RSTB_WATCH_DOG BIT(1)
3795 #define B_UPD_P0_EN BIT(31)
3796 #define R_ANAPAR_PW15 0x030C
3797 #define B_ANAPAR_PW15 GENMASK(31, 24)
3798 #define B_ANAPAR_PW15_H GENMASK(27, 24)
3799 #define B_ANAPAR_PW15_H2 GENMASK(27, 26)
3800 #define R_ANAPAR 0x032C
3801 #define B_ANAPAR_15 GENMASK(31, 16)
3802 #define B_ANAPAR_ADCCLK BIT(30)
3803 #define B_ANAPAR_FLTRST BIT(22)
3804 #define B_ANAPAR_CRXBB GENMASK(18, 16)
3805 #define B_ANAPAR_EN BIT(16)
3806 #define B_ANAPAR_14 GENMASK(15, 0)
3807 #define R_RFE_E_A2 0x0334
3808 #define R_RFE_O_SEL_A2 0x0338
3809 #define R_RFE_SEL0_A2 0x033C
3810 #define R_RFE_SEL32_A2 0x0340
3811 #define R_CIRST 0x035c
3812 #define B_CIRST_SYN GENMASK(11, 10)
3813 #define R_SWSI_DATA_V1 0x0370
3814 #define B_SWSI_DATA_VAL_V1 GENMASK(19, 0)
3815 #define B_SWSI_DATA_ADDR_V1 GENMASK(27, 20)
3816 #define B_SWSI_DATA_PATH_V1 GENMASK(30, 28)
3817 #define B_SWSI_DATA_BIT_MASK_EN_V1 BIT(31)
3818 #define R_SWSI_BIT_MASK_V1 0x0374
3819 #define B_SWSI_BIT_MASK_V1 GENMASK(19, 0)
3820 #define R_SWSI_READ_ADDR_V1 0x0378
3821 #define B_SWSI_READ_ADDR_ADDR_V1 GENMASK(7, 0)
3822 #define B_SWSI_READ_ADDR_PATH_V1 GENMASK(10, 8)
3823 #define B_SWSI_READ_ADDR_V1 GENMASK(10, 0)
3824 #define R_UPD_CLK_ADC 0x0700
3825 #define B_UPD_CLK_ADC_VAL GENMASK(26, 25)
3826 #define B_UPD_CLK_ADC_ON BIT(24)
3827 #define B_ENABLE_CCK BIT(5)
3828 #define R_RSTB_ASYNC 0x0704
3829 #define B_RSTB_ASYNC_ALL BIT(1)
3830 #define R_MAC_PIN_SEL 0x0734
3831 #define B_CH_IDX_SEG0 GENMASK(23, 16)
3832 #define R_PLCP_HISTOGRAM 0x0738
3833 #define B_STS_PARSING_TIME GENMASK(19, 16)
3834 #define B_STS_DIS_TRIG_BY_FAIL BIT(3)
3835 #define B_STS_DIS_TRIG_BY_BRK BIT(2)
3836 #define R_PHY_STS_BITMAP_ADDR_START R_PHY_STS_BITMAP_SEARCH_FAIL
3837 #define B_PHY_STS_BITMAP_ADDR_MASK GENMASK(6, 2)
3838 #define R_PHY_STS_BITMAP_SEARCH_FAIL 0x073C
3839 #define B_PHY_STS_BITMAP_MSK_52A 0x337cff3f
3840 #define R_PHY_STS_BITMAP_R2T 0x0740
3841 #define R_PHY_STS_BITMAP_CCA_SPOOF 0x0744
3842 #define R_PHY_STS_BITMAP_OFDM_BRK 0x0748
3843 #define R_PHY_STS_BITMAP_CCK_BRK 0x074C
3844 #define R_PHY_STS_BITMAP_DL_MU_SPOOF 0x0750
3845 #define R_PHY_STS_BITMAP_HE_MU 0x0754
3846 #define R_PHY_STS_BITMAP_VHT_MU 0x0758
3847 #define R_PHY_STS_BITMAP_UL_TB_SPOOF 0x075C
3848 #define R_PHY_STS_BITMAP_TRIGBASE 0x0760
3849 #define R_PHY_STS_BITMAP_CCK 0x0764
3850 #define R_PHY_STS_BITMAP_LEGACY 0x0768
3851 #define R_PHY_STS_BITMAP_HT 0x076C
3852 #define R_PHY_STS_BITMAP_VHT 0x0770
3853 #define R_PHY_STS_BITMAP_HE 0x0774
3854 #define R_PMAC_GNT 0x0980
3855 #define B_PMAC_GNT_TXEN BIT(0)
3856 #define B_PMAC_GNT_RXEN BIT(16)
3857 #define B_PMAC_GNT_P1 GENMASK(20, 17)
3858 #define B_PMAC_GNT_P2 GENMASK(29, 26)
3859 #define R_PMAC_RX_CFG1 0x0988
3860 #define B_PMAC_OPT1_MSK GENMASK(11, 0)
3861 #define R_PMAC_RXMOD 0x0994
3862 #define B_PMAC_RXMOD_MSK GENMASK(7, 4)
3863 #define R_MAC_SEL 0x09A4
3864 #define B_MAC_SEL_OFDM_TRI_FILTER BIT(31)
3865 #define B_MAC_SEL_PWR_EN BIT(16)
3866 #define B_MAC_SEL_DPD_EN BIT(10)
3867 #define B_MAC_SEL_MOD GENMASK(4, 2)
3868 #define R_PMAC_TX_CTRL 0x09C0
3869 #define B_PMAC_TXEN_DIS BIT(0)
3870 #define R_PMAC_TX_PRD 0x09C4
3871 #define B_PMAC_TX_PRD_MSK GENMASK(31, 8)
3872 #define B_PMAC_CTX_EN BIT(0)
3873 #define B_PMAC_PTX_EN BIT(4)
3874 #define R_PMAC_TX_CNT 0x09C8
3875 #define B_PMAC_TX_CNT_MSK GENMASK(31, 0)
3876 #define R_P80_AT_HIGH_FREQ 0x09D8
3877 #define B_P80_AT_HIGH_FREQ BIT(26)
3878 #define R_DBCC_80P80_SEL_EVM_RPT 0x0A10
3879 #define B_DBCC_80P80_SEL_EVM_RPT_EN BIT(0)
3880 #define R_CCX 0x0C00
3881 #define B_CCX_EDCCA_OPT_MSK GENMASK(6, 4)
3882 #define B_MEASUREMENT_TRIG_MSK BIT(2)
3883 #define B_CCX_TRIG_OPT_MSK BIT(1)
3884 #define B_CCX_EN_MSK BIT(0)
3885 #define R_IFS_COUNTER 0x0C28
3886 #define B_IFS_CLM_PERIOD_MSK GENMASK(31, 16)
3887 #define B_IFS_CLM_COUNTER_UNIT_MSK GENMASK(15, 14)
3888 #define B_IFS_COUNTER_CLR_MSK BIT(13)
3889 #define B_IFS_COLLECT_EN BIT(12)
3890 #define R_IFS_T1 0x0C2C
3891 #define B_IFS_T1_TH_HIGH_MSK GENMASK(31, 16)
3892 #define B_IFS_T1_EN_MSK BIT(15)
3893 #define B_IFS_T1_TH_LOW_MSK GENMASK(14, 0)
3894 #define R_IFS_T2 0x0C30
3895 #define B_IFS_T2_TH_HIGH_MSK GENMASK(31, 16)
3896 #define B_IFS_T2_EN_MSK BIT(15)
3897 #define B_IFS_T2_TH_LOW_MSK GENMASK(14, 0)
3898 #define R_IFS_T3 0x0C34
3899 #define B_IFS_T3_TH_HIGH_MSK GENMASK(31, 16)
3900 #define B_IFS_T3_EN_MSK BIT(15)
3901 #define B_IFS_T3_TH_LOW_MSK GENMASK(14, 0)
3902 #define R_IFS_T4 0x0C38
3903 #define B_IFS_T4_TH_HIGH_MSK GENMASK(31, 16)
3904 #define B_IFS_T4_EN_MSK BIT(15)
3905 #define B_IFS_T4_TH_LOW_MSK GENMASK(14, 0)
3906 #define R_PD_CTRL 0x0C3C
3907 #define B_PD_HIT_DIS BIT(9)
3908 #define R_IOQ_IQK_DPK 0x0C60
3909 #define B_IOQ_IQK_DPK_EN BIT(1)
3910 #define R_GNT_BT_WGT_EN 0x0C6C
3911 #define B_GNT_BT_WGT_EN BIT(21)
3912 #define R_PD_ARBITER_OFF 0x0C80
3913 #define B_PD_ARBITER_OFF BIT(31)
3914 #define R_SNDCCA_A1 0x0C9C
3915 #define B_SNDCCA_A1_EN GENMASK(19, 12)
3916 #define R_SNDCCA_A2 0x0CA0
3917 #define B_SNDCCA_A2_VAL GENMASK(19, 12)
3918 #define R_RXHT_MCS_LIMIT 0x0D18
3919 #define B_RXHT_MCS_LIMIT GENMASK(9, 8)
3920 #define R_RXVHT_MCS_LIMIT 0x0D18
3921 #define B_RXVHT_MCS_LIMIT GENMASK(22, 21)
3922 #define R_P0_EN_SOUND_WO_NDP 0x0D7C
3923 #define B_P0_EN_SOUND_WO_NDP BIT(1)
3924 #define R_RXHE 0x0D80
3925 #define B_RXHETB_MAX_NSS GENMASK(25, 23)
3926 #define B_RXHE_MAX_NSS GENMASK(16, 14)
3927 #define B_RXHE_USER_MAX GENMASK(13, 6)
3928 #define R_SPOOF_ASYNC_RST 0x0D84
3929 #define B_SPOOF_ASYNC_RST BIT(15)
3930 #define R_NDP_BRK0 0xDA0
3931 #define R_NDP_BRK1 0xDA4
3932 #define B_NDP_RU_BRK BIT(0)
3933 #define R_BRK_ASYNC_RST_EN_1 0x0DC0
3934 #define R_BRK_ASYNC_RST_EN_2 0x0DC4
3935 #define R_BRK_ASYNC_RST_EN_3 0x0DC8
3936 #define R_S0_HW_SI_DIS 0x1200
3937 #define B_S0_HW_SI_DIS_W_R_TRIG GENMASK(30, 28)
3938 #define R_P0_RXCK 0x12A0
3939 #define B_P0_RXCK_BW3 BIT(30)
3940 #define B_P0_TXCK_ALL GENMASK(19, 12)
3941 #define B_P0_RXCK_ON BIT(19)
3942 #define B_P0_RXCK_VAL GENMASK(18, 16)
3943 #define B_P0_TXCK_ON BIT(15)
3944 #define B_P0_TXCK_VAL GENMASK(14, 12)
3945 #define R_P0_RFMODE 0x12AC
3946 #define B_P0_RFMODE_ORI_TXRX_FTM_TX GENMASK(31, 4)
3947 #define B_P0_RFMODE_MUX GENMASK(11, 4)
3948 #define R_P0_RFMODE_ORI_RX 0x12AC
3949 #define B_P0_RFMODE_ORI_RX_ALL GENMASK(23, 12)
3950 #define R_P0_RFMODE_FTM_RX 0x12B0
3951 #define B_P0_RFMODE_FTM_RX GENMASK(11, 0)
3952 #define R_P0_NRBW 0x12B8
3953 #define B_P0_NRBW_DBG BIT(30)
3954 #define R_S0_RXDC 0x12D4
3955 #define B_S0_RXDC_I GENMASK(25, 16)
3956 #define B_S0_RXDC_Q GENMASK(31, 26)
3957 #define R_S0_RXDC2 0x12D8
3958 #define B_S0_RXDC2_SEL GENMASK(9, 8)
3959 #define B_S0_RXDC2_AVG GENMASK(7, 6)
3960 #define B_S0_RXDC2_MEN GENMASK(5, 4)
3961 #define B_S0_RXDC2_Q2 GENMASK(3, 0)
3962 #define R_CFO_COMP_SEG0_L 0x1384
3963 #define R_CFO_COMP_SEG0_H 0x1388
3964 #define R_CFO_COMP_SEG0_CTRL 0x138C
3965 #define R_DBG32_D 0x1730
3966 #define R_SWSI_V1 0x174C
3967 #define B_SWSI_W_BUSY_V1 BIT(24)
3968 #define B_SWSI_R_BUSY_V1 BIT(25)
3969 #define B_SWSI_R_DATA_DONE_V1 BIT(26)
3970 #define R_TX_COUNTER 0x1A40
3971 #define R_IFS_CLM_TX_CNT 0x1ACC
3972 #define B_IFS_CLM_EDCCA_EXCLUDE_CCA_FA_MSK GENMASK(31, 16)
3973 #define B_IFS_CLM_TX_CNT_MSK GENMASK(15, 0)
3974 #define R_IFS_CLM_CCA 0x1AD0
3975 #define B_IFS_CLM_OFDMCCA_EXCLUDE_FA_MSK GENMASK(31, 16)
3976 #define B_IFS_CLM_CCKCCA_EXCLUDE_FA_MSK GENMASK(15, 0)
3977 #define R_IFS_CLM_FA 0x1AD4
3978 #define B_IFS_CLM_OFDM_FA_MSK GENMASK(31, 16)
3979 #define B_IFS_CLM_CCK_FA_MSK GENMASK(15, 0)
3980 #define R_IFS_HIS 0x1AD8
3981 #define B_IFS_T4_HIS_MSK GENMASK(31, 24)
3982 #define B_IFS_T3_HIS_MSK GENMASK(23, 16)
3983 #define B_IFS_T2_HIS_MSK GENMASK(15, 8)
3984 #define B_IFS_T1_HIS_MSK GENMASK(7, 0)
3985 #define R_IFS_AVG_L 0x1ADC
3986 #define B_IFS_T2_AVG_MSK GENMASK(31, 16)
3987 #define B_IFS_T1_AVG_MSK GENMASK(15, 0)
3988 #define R_IFS_AVG_H 0x1AE0
3989 #define B_IFS_T4_AVG_MSK GENMASK(31, 16)
3990 #define B_IFS_T3_AVG_MSK GENMASK(15, 0)
3991 #define R_IFS_CCA_L 0x1AE4
3992 #define B_IFS_T2_CCA_MSK GENMASK(31, 16)
3993 #define B_IFS_T1_CCA_MSK GENMASK(15, 0)
3994 #define R_IFS_CCA_H 0x1AE8
3995 #define B_IFS_T4_CCA_MSK GENMASK(31, 16)
3996 #define B_IFS_T3_CCA_MSK GENMASK(15, 0)
3997 #define R_IFSCNT 0x1AEC
3998 #define B_IFSCNT_DONE_MSK BIT(16)
3999 #define B_IFSCNT_TOTAL_CNT_MSK GENMASK(15, 0)
4000 #define R_TXAGC_TP 0x1C04
4001 #define B_TXAGC_TP GENMASK(2, 0)
4002 #define R_TSSI_THER 0x1C10
4003 #define B_TSSI_THER GENMASK(29, 24)
4004 #define R_TSSI_CWRPT 0x1C18
4005 #define B_TSSI_CWRPT_RDY BIT(16)
4006 #define B_TSSI_CWRPT GENMASK(8, 0)
4007 #define R_TXAGC_BTP 0x1CA0
4008 #define B_TXAGC_BTP GENMASK(31, 24)
4009 #define R_TXAGC_BB 0x1C60
4010 #define B_TXAGC_BB_OFT GENMASK(31, 16)
4011 #define B_TXAGC_BB GENMASK(31, 24)
4012 #define R_S0_ADDCK 0x1E00
4013 #define B_S0_ADDCK_I GENMASK(9, 0)
4014 #define B_S0_ADDCK_Q GENMASK(19, 10)
4015 #define R_ADC_FIFO 0x20fc
4016 #define B_ADC_FIFO_RST GENMASK(31, 24)
4017 #define B_ADC_FIFO_RXK GENMASK(31, 16)
4018 #define B_ADC_FIFO_A3 BIT(28)
4019 #define B_ADC_FIFO_A2 BIT(24)
4020 #define B_ADC_FIFO_A1 BIT(20)
4021 #define B_ADC_FIFO_A0 BIT(16)
4022 #define R_TXFIR0 0x2300
4023 #define B_TXFIR_C01 GENMASK(23, 0)
4024 #define R_TXFIR2 0x2304
4025 #define B_TXFIR_C23 GENMASK(23, 0)
4026 #define R_TXFIR4 0x2308
4027 #define B_TXFIR_C45 GENMASK(23, 0)
4028 #define R_TXFIR6 0x230c
4029 #define B_TXFIR_C67 GENMASK(23, 0)
4030 #define R_TXFIR8 0x2310
4031 #define B_TXFIR_C89 GENMASK(23, 0)
4032 #define R_TXFIRA 0x2314
4033 #define B_TXFIR_CAB GENMASK(23, 0)
4034 #define R_TXFIRC 0x2318
4035 #define B_TXFIR_CCD GENMASK(23, 0)
4036 #define R_TXFIRE 0x231c
4037 #define B_TXFIR_CEF GENMASK(23, 0)
4038 #define R_11B_RX_V1 0x2320
4039 #define B_11B_RXCCA_DIS_V1 BIT(0)
4040 #define R_RPL_OFST 0x2340
4041 #define B_RPL_OFST_MASK GENMASK(14, 8)
4042 #define R_RXCCA 0x2344
4043 #define B_RXCCA_DIS BIT(31)
4044 #define R_RXCCA_V1 0x2320
4045 #define B_RXCCA_DIS_V1 BIT(0)
4046 #define R_RXSC 0x237C
4047 #define B_RXSC_EN BIT(0)
4048 #define R_RX_RPL_OFST 0x23AC
4049 #define B_RX_RPL_OFST_CCK_MASK GENMASK(6, 0)
4050 #define R_RXSCOBC 0x23B0
4051 #define B_RXSCOBC_TH GENMASK(18, 0)
4052 #define R_RXSCOCCK 0x23B4
4053 #define B_RXSCOCCK_TH GENMASK(18, 0)
4054 #define R_P80_AT_HIGH_FREQ_RU_ALLOC 0x2410
4055 #define B_P80_AT_HIGH_FREQ_RU_ALLOC_PHY1 BIT(14)
4056 #define B_P80_AT_HIGH_FREQ_RU_ALLOC_PHY0 BIT(13)
4057 #define R_DBCC_80P80_SEL_EVM_RPT2 0x2A10
4058 #define B_DBCC_80P80_SEL_EVM_RPT2_EN BIT(0)
4059 #define R_P1_EN_SOUND_WO_NDP 0x2D7C
4060 #define B_P1_EN_SOUND_WO_NDP BIT(1)
4061 #define R_S1_HW_SI_DIS 0x3200
4062 #define B_S1_HW_SI_DIS_W_R_TRIG GENMASK(30, 28)
4063 #define R_P1_RXCK 0x32A0
4064 #define B_P1_RXCK_BW3 BIT(30)
4065 #define B_P1_TXCK_ALL GENMASK(19, 12)
4066 #define B_P1_RXCK_ON BIT(19)
4067 #define B_P1_RXCK_VAL GENMASK(18, 16)
4068 #define R_P1_RFMODE 0x32AC
4069 #define B_P1_RFMODE_ORI_TXRX_FTM_TX GENMASK(31, 4)
4070 #define B_P1_RFMODE_MUX GENMASK(11, 4)
4071 #define R_P1_RFMODE_ORI_RX 0x32AC
4072 #define B_P1_RFMODE_ORI_RX_ALL GENMASK(23, 12)
4073 #define R_P1_RFMODE_FTM_RX 0x32B0
4074 #define B_P1_RFMODE_FTM_RX GENMASK(11, 0)
4075 #define R_P1_DBGMOD 0x32B8
4076 #define B_P1_DBGMOD_ON BIT(30)
4077 #define R_S1_RXDC 0x32D4
4078 #define B_S1_RXDC_I GENMASK(25, 16)
4079 #define B_S1_RXDC_Q GENMASK(31, 26)
4080 #define R_S1_RXDC2 0x32D8
4081 #define B_S1_RXDC2_EN GENMASK(5, 4)
4082 #define B_S1_RXDC2_SEL GENMASK(9, 8)
4083 #define B_S1_RXDC2_Q2 GENMASK(3, 0)
4084 #define R_TXAGC_BB_S1 0x3C60
4085 #define B_TXAGC_BB_S1_OFT GENMASK(31, 16)
4086 #define B_TXAGC_BB_S1 GENMASK(31, 24)
4087 #define R_S1_ADDCK 0x3E00
4088 #define B_S1_ADDCK_I GENMASK(9, 0)
4089 #define B_S1_ADDCK_Q GENMASK(19, 10)
4090 #define R_MUIC 0x40F8
4091 #define B_MUIC_EN BIT(0)
4092 #define R_DCFO 0x4264
4093 #define B_DCFO GENMASK(1, 0)
4094 #define R_SEG0CSI 0x42AC
4095 #define B_SEG0CSI_IDX GENMASK(11, 0)
4096 #define R_SEG0CSI_EN 0x42C4
4097 #define B_SEG0CSI_EN BIT(23)
4098 #define R_BSS_CLR_MAP 0x43ac
4099 #define B_BSS_CLR_MAP_VLD0 BIT(28)
4100 #define B_BSS_CLR_MAP_TGT GENMASK(27, 22)
4101 #define B_BSS_CLR_MAP_STAID GENMASK(21, 11)
4102 #define R_CFO_TRK0 0x4404
4103 #define R_CFO_TRK1 0x440C
4104 #define B_CFO_TRK_MSK GENMASK(14, 10)
4105 #define R_T2F_GI_COMB 0x4424
4106 #define B_T2F_GI_COMB_EN BIT(2)
4107 #define R_BT_DYN_DC_EST_EN 0x441C
4108 #define R_BT_DYN_DC_EST_EN_V1 0x4420
4109 #define B_BT_DYN_DC_EST_EN_MSK BIT(31)
4110 #define R_ASSIGN_SBD_OPT_V1 0x4440
4111 #define B_ASSIGN_SBD_OPT_EN_V1 BIT(31)
4112 #define R_ASSIGN_SBD_OPT 0x4450
4113 #define B_ASSIGN_SBD_OPT_EN BIT(24)
4114 #define R_DCFO_COMP_S0 0x448C
4115 #define B_DCFO_COMP_S0_MSK GENMASK(11, 0)
4116 #define R_DCFO_WEIGHT 0x4490
4117 #define B_DCFO_WEIGHT_MSK GENMASK(27, 24)
4118 #define R_DCFO_OPT 0x4494
4119 #define B_DCFO_OPT_EN BIT(29)
4120 #define B_TXSHAPE_TRIANGULAR_CFG GENMASK(25, 24)
4121 #define R_BANDEDGE 0x4498
4122 #define B_BANDEDGE_EN BIT(30)
4123 #define R_DPD_BF 0x44a0
4124 #define B_DPD_BF_OFDM GENMASK(16, 12)
4125 #define B_DPD_BF_SCA GENMASK(6, 0)
4126 #define R_TXPATH_SEL 0x458C
4127 #define B_TXPATH_SEL_MSK GENMASK(31, 28)
4128 #define R_TXPWR 0x4594
4129 #define B_TXPWR_MSK GENMASK(30, 22)
4130 #define R_TXNSS_MAP 0x45B4
4131 #define B_TXNSS_MAP_MSK GENMASK(20, 17)
4132 #define R_PCOEFF0_V1 0x45BC
4133 #define B_PCOEFF01_MSK_V1 GENMASK(23, 0)
4134 #define R_PCOEFF2_V1 0x45CC
4135 #define B_PCOEFF23_MSK_V1 GENMASK(23, 0)
4136 #define R_PCOEFF4_V1 0x45D0
4137 #define B_PCOEFF45_MSK_V1 GENMASK(23, 0)
4138 #define R_PCOEFF6_V1 0x45D4
4139 #define B_PCOEFF67_MSK_V1 GENMASK(23, 0)
4140 #define R_PCOEFF8_V1 0x45D8
4141 #define B_PCOEFF89_MSK_V1 GENMASK(23, 0)
4142 #define R_PCOEFFA_V1 0x45C0
4143 #define B_PCOEFFAB_MSK_V1 GENMASK(23, 0)
4144 #define R_PCOEFFC_V1 0x45C4
4145 #define B_PCOEFFCD_MSK_V1 GENMASK(23, 0)
4146 #define R_PCOEFFE_V1 0x45C8
4147 #define B_PCOEFFEF_MSK_V1 GENMASK(23, 0)
4148 #define R_PATH0_IB_PKPW 0x4628
4149 #define B_PATH0_IB_PKPW_MSK GENMASK(11, 6)
4150 #define R_PATH0_LNA_ERR1 0x462C
4151 #define B_PATH0_LNA_ERR_G1_A_MSK GENMASK(29, 24)
4152 #define B_PATH0_LNA_ERR_G0_G_MSK GENMASK(17, 12)
4153 #define B_PATH0_LNA_ERR_G0_A_MSK GENMASK(11, 6)
4154 #define R_PATH0_LNA_ERR2 0x4630
4155 #define B_PATH0_LNA_ERR_G2_G_MSK GENMASK(23, 18)
4156 #define B_PATH0_LNA_ERR_G2_A_MSK GENMASK(17, 12)
4157 #define B_PATH0_LNA_ERR_G1_G_MSK GENMASK(5, 0)
4158 #define R_PATH0_LNA_ERR3 0x4634
4159 #define B_PATH0_LNA_ERR_G4_G_MSK GENMASK(29, 24)
4160 #define B_PATH0_LNA_ERR_G4_A_MSK GENMASK(23, 18)
4161 #define B_PATH0_LNA_ERR_G3_G_MSK GENMASK(11, 6)
4162 #define B_PATH0_LNA_ERR_G3_A_MSK GENMASK(5, 0)
4163 #define R_PATH0_LNA_ERR4 0x4638
4164 #define B_PATH0_LNA_ERR_G6_A_MSK GENMASK(29, 24)
4165 #define B_PATH0_LNA_ERR_G5_G_MSK GENMASK(17, 12)
4166 #define B_PATH0_LNA_ERR_G5_A_MSK GENMASK(11, 6)
4167 #define R_PATH0_LNA_ERR5 0x463C
4168 #define B_PATH0_LNA_ERR_G6_G_MSK GENMASK(5, 0)
4169 #define R_PATH0_TIA_ERR_G0 0x4640
4170 #define B_PATH0_TIA_ERR_G0_G_MSK GENMASK(23, 18)
4171 #define B_PATH0_TIA_ERR_G0_A_MSK GENMASK(17, 12)
4172 #define R_PATH0_TIA_ERR_G1 0x4644
4173 #define B_PATH0_TIA_ERR_G1_SEL GENMASK(31, 30)
4174 #define B_PATH0_TIA_ERR_G1_G_MSK GENMASK(11, 6)
4175 #define B_PATH0_TIA_ERR_G1_A_MSK GENMASK(5, 0)
4176 #define R_PATH0_IB_PBK 0x4650
4177 #define B_PATH0_IB_PBK_MSK GENMASK(14, 10)
4178 #define R_PATH0_RXB_INIT 0x4658
4179 #define B_PATH0_RXB_INIT_IDX_MSK GENMASK(9, 5)
4180 #define R_PATH0_LNA_INIT 0x4668
4181 #define R_PATH0_LNA_INIT_V1 0x472C
4182 #define B_PATH0_LNA_INIT_IDX_MSK GENMASK(26, 24)
4183 #define R_PATH0_BTG 0x466C
4184 #define B_PATH0_BTG_SHEN GENMASK(18, 17)
4185 #define R_PATH0_TIA_INIT 0x4674
4186 #define B_PATH0_TIA_INIT_IDX_MSK BIT(17)
4187 #define R_PATH0_P20_FOLLOW_BY_PAGCUGC 0x46A0
4188 #define R_PATH0_P20_FOLLOW_BY_PAGCUGC_V1 0x4C24
4189 #define R_PATH0_P20_FOLLOW_BY_PAGCUGC_V2 0x46E8
4190 #define B_PATH0_P20_FOLLOW_BY_PAGCUGC_EN_MSK BIT(5)
4191 #define R_PATH0_S20_FOLLOW_BY_PAGCUGC 0x46A4
4192 #define R_PATH0_S20_FOLLOW_BY_PAGCUGC_V1 0x4C28
4193 #define R_PATH0_S20_FOLLOW_BY_PAGCUGC_V2 0x46EC
4194 #define B_PATH0_S20_FOLLOW_BY_PAGCUGC_EN_MSK BIT(5)
4195 #define R_PATH0_RXB_INIT_V1 0x46A8
4196 #define B_PATH0_RXB_INIT_IDX_MSK_V1 GENMASK(14, 10)
4197 #define R_PATH0_G_LNA6_OP1DB_V1 0x4688
4198 #define B_PATH0_G_LNA6_OP1DB_V1 GENMASK(31, 24)
4199 #define R_PATH0_G_TIA0_LNA6_OP1DB_V1 0x4694
4200 #define B_PATH0_G_TIA0_LNA6_OP1DB_V1 GENMASK(7, 0)
4201 #define R_PATH0_G_TIA1_LNA6_OP1DB_V1 0x4694
4202 #define B_PATH0_R_G_OFST_MASK GENMASK(23, 16)
4203 #define B_PATH0_G_TIA1_LNA6_OP1DB_V1 GENMASK(15, 8)
4204 #define R_CDD_EVM_CHK_EN 0x46C0
4205 #define B_CDD_EVM_CHK_EN BIT(0)
4206 #define R_PATH0_BAND_SEL_V1 0x4738
4207 #define B_PATH0_BAND_SEL_MSK_V1 BIT(17)
4208 #define R_PATH0_BT_SHARE_V1 0x4738
4209 #define B_PATH0_BT_SHARE_V1 BIT(19)
4210 #define R_PATH0_BTG_PATH_V1 0x4738
4211 #define B_PATH0_BTG_PATH_V1 BIT(22)
4212 #define R_P0_NBIIDX 0x469C
4213 #define B_P0_NBIIDX_VAL GENMASK(11, 0)
4214 #define B_P0_NBIIDX_NOTCH_EN BIT(12)
4215 #define R_P0_BACKOFF_IBADC_V1 0x469C
4216 #define B_P0_BACKOFF_IBADC_V1 GENMASK(31, 26)
4217 #define B_P0_NBIIDX_NOTCH_EN_V1 BIT(12)
4218 #define R_P1_MODE 0x4718
4219 #define B_P1_MODE_SEL GENMASK(31, 30)
4220 #define R_P0_AGC_CTL 0x4730
4221 #define B_P0_AGC_EN BIT(31)
4222 #define R_PATH1_LNA_INIT 0x473C
4223 #define R_PATH1_LNA_INIT_V1 0x4A80
4224 #define B_PATH1_LNA_INIT_IDX_MSK GENMASK(26, 24)
4225 #define R_PATH0_TIA_INIT_V1 0x473C
4226 #define B_PATH0_TIA_INIT_IDX_MSK_V1 BIT(9)
4227 #define R_PATH1_TIA_INIT 0x4748
4228 #define B_PATH1_TIA_INIT_IDX_MSK BIT(17)
4229 #define R_PATH1_BTG 0x4740
4230 #define B_PATH1_BTG_SHEN GENMASK(18, 17)
4231 #define R_PATH1_RXB_INIT 0x472C
4232 #define B_PATH1_RXB_INIT_IDX_MSK GENMASK(9, 5)
4233 #define R_PATH1_G_LNA6_OP1DB_V1 0x476C
4234 #define B_PATH1_G_LNA6_OP1DB_V1 GENMASK(31, 24)
4235 #define R_PATH1_P20_FOLLOW_BY_PAGCUGC 0x4774
4236 #define R_PATH1_P20_FOLLOW_BY_PAGCUGC_V1 0x4CE8
4237 #define R_PATH1_P20_FOLLOW_BY_PAGCUGC_V2 0x47A8
4238 #define B_PATH1_P20_FOLLOW_BY_PAGCUGC_EN_MSK BIT(5)
4239 #define R_PATH1_S20_FOLLOW_BY_PAGCUGC 0x4778
4240 #define R_PATH1_S20_FOLLOW_BY_PAGCUGC_V1 0x4CEC
4241 #define R_PATH1_S20_FOLLOW_BY_PAGCUGC_V2 0x47AC
4242 #define B_PATH1_S20_FOLLOW_BY_PAGCUGC_EN_MSK BIT(5)
4243 #define R_PATH1_G_TIA0_LNA6_OP1DB_V1 0x4778
4244 #define B_PATH1_G_TIA0_LNA6_OP1DB_V1 GENMASK(7, 0)
4245 #define R_PATH1_G_TIA1_LNA6_OP1DB_V1 0x4778
4246 #define B_PATH1_G_TIA1_LNA6_OP1DB_V1 GENMASK(15, 8)
4247 #define R_PATH1_BAND_SEL_V1 0x4AA4
4248 #define B_PATH1_BAND_SEL_MSK_V1 BIT(17)
4249 #define R_PATH1_BT_SHARE_V1 0x4AA4
4250 #define B_PATH1_BT_SHARE_V1 BIT(19)
4251 #define R_PATH1_BTG_PATH_V1 0x4AA4
4252 #define B_PATH1_BTG_PATH_V1 BIT(22)
4253 #define R_P1_NBIIDX 0x4770
4254 #define B_P1_NBIIDX_VAL GENMASK(11, 0)
4255 #define B_P1_NBIIDX_NOTCH_EN BIT(12)
4256 #define R_PKT_CTRL 0x47D4
4257 #define B_PKT_POP_EN BIT(8)
4258 #define R_SEG0R_PD 0x481C
4259 #define R_SEG0R_PD_V1 0x4860
4260 #define B_SEG0R_PD_SPATIAL_REUSE_EN_MSK_V1 BIT(30)
4261 #define B_SEG0R_PD_SPATIAL_REUSE_EN_MSK BIT(29)
4262 #define B_SEG0R_PD_LOWER_BOUND_MSK GENMASK(10, 6)
4263 #define R_2P4G_BAND 0x4970
4264 #define B_2P4G_BAND_SEL BIT(1)
4265 #define R_FC0_BW 0x4974
4266 #define R_FC0_BW_V1 0x49C0
4267 #define B_FC0_BW_SET GENMASK(31, 30)
4268 #define B_ANT_RX_BT_SEG0 GENMASK(25, 22)
4269 #define B_ANT_RX_1RCCA_SEG1 GENMASK(21, 18)
4270 #define B_ANT_RX_1RCCA_SEG0 GENMASK(17, 14)
4271 #define B_FC0_BW_INV GENMASK(6, 0)
4272 #define R_CHBW_MOD 0x4978
4273 #define R_CHBW_MOD_V1 0x49C4
4274 #define B_BT_SHARE BIT(14)
4275 #define B_CHBW_MOD_SBW GENMASK(13, 12)
4276 #define B_CHBW_MOD_PRICH GENMASK(11, 8)
4277 #define B_ANT_RX_SEG0 GENMASK(3, 0)
4278 #define R_P0_RPL1 0x49B0
4279 #define B_P0_RPL1_41_MASK GENMASK(31, 24)
4280 #define B_P0_RPL1_40_MASK GENMASK(23, 16)
4281 #define B_P0_RPL1_20_MASK GENMASK(15, 8)
4282 #define B_P0_RPL1_MASK (B_P0_RPL1_41_MASK | B_P0_RPL1_40_MASK | B_P0_RPL1_20_MASK)
4283 #define B_P0_RPL1_SHIFT 8
4284 #define B_P0_RPL1_BIAS_MASK GENMASK(7, 0)
4285 #define R_P0_RPL2 0x49B4
4286 #define B_P0_RTL2_8A_MASK GENMASK(31, 24)
4287 #define B_P0_RTL2_81_MASK GENMASK(23, 16)
4288 #define B_P0_RTL2_80_MASK GENMASK(15, 8)
4289 #define B_P0_RTL2_42_MASK GENMASK(7, 0)
4290 #define R_P0_RPL3 0x49B8
4291 #define B_P0_RTL3_89_MASK GENMASK(31, 24)
4292 #define B_P0_RTL3_84_MASK GENMASK(23, 16)
4293 #define B_P0_RTL3_83_MASK GENMASK(15, 8)
4294 #define B_P0_RTL3_82_MASK GENMASK(7, 0)
4295 #define R_PD_BOOST_EN 0x49E8
4296 #define B_PD_BOOST_EN BIT(7)
4297 #define R_P1_BACKOFF_IBADC_V1 0x49F0
4298 #define B_P1_BACKOFF_IBADC_V1 GENMASK(31, 26)
4299 #define R_P1_RPL1 0x4A00
4300 #define R_P1_RPL2 0x4A04
4301 #define R_P1_RPL3 0x4A08
4302 #define R_BK_FC0_INV_V1 0x4A1C
4303 #define B_BK_FC0_INV_MSK_V1 GENMASK(18, 0)
4304 #define R_CCK_FC0_INV_V1 0x4A20
4305 #define B_CCK_FC0_INV_MSK_V1 GENMASK(18, 0)
4306 #define R_PATH1_RXB_INIT_V1 0x4A5C
4307 #define B_PATH1_RXB_INIT_IDX_MSK_V1 GENMASK(14, 10)
4308 #define R_P1_AGC_CTL 0x4A9C
4309 #define B_P1_AGC_EN BIT(31)
4310 #define R_PATH1_TIA_INIT_V1 0x4AA8
4311 #define B_PATH1_TIA_INIT_IDX_MSK_V1 BIT(9)
4312 #define R_P0_AGC_RSVD 0x4ACC
4313 #define R_PATH0_RXBB_V1 0x4AD4
4314 #define B_PATH0_RXBB_MSK_V1 GENMASK(31, 0)
4315 #define R_P1_AGC_RSVD 0x4AD8
4316 #define R_PATH1_RXBB_V1 0x4AE0
4317 #define B_PATH1_RXBB_MSK_V1 GENMASK(31, 0)
4318 #define R_PATH0_BT_BACKOFF_V1 0x4AE4
4319 #define B_PATH0_BT_BACKOFF_V1 GENMASK(23, 0)
4320 #define R_PATH1_BT_BACKOFF_V1 0x4AEC
4321 #define B_PATH1_BT_BACKOFF_V1 GENMASK(23, 0)
4322 #define R_PATH0_FRC_FIR_TYPE_V1 0x4C00
4323 #define B_PATH0_FRC_FIR_TYPE_MSK_V1 GENMASK(1, 0)
4324 #define R_PATH0_NOTCH 0x4C14
4325 #define B_PATH0_NOTCH_EN BIT(12)
4326 #define B_PATH0_NOTCH_VAL GENMASK(11, 0)
4327 #define R_PATH0_NOTCH2 0x4C20
4328 #define B_PATH0_NOTCH2_EN BIT(12)
4329 #define B_PATH0_NOTCH2_VAL GENMASK(11, 0)
4330 #define R_PATH0_5MDET 0x4C4C
4331 #define R_PATH0_5MDET_V1 0x46F8
4332 #define B_PATH0_5MDET_EN BIT(12)
4333 #define B_PATH0_5MDET_SB2 BIT(8)
4334 #define B_PATH0_5MDET_SB0 BIT(6)
4335 #define B_PATH0_5MDET_TH GENMASK(5, 0)
4336 #define R_PATH1_FRC_FIR_TYPE_V1 0x4CC4
4337 #define B_PATH1_FRC_FIR_TYPE_MSK_V1 GENMASK(1, 0)
4338 #define R_PATH1_NOTCH 0x4CD8
4339 #define B_PATH1_NOTCH_EN BIT(12)
4340 #define B_PATH1_NOTCH_VAL GENMASK(11, 0)
4341 #define R_PATH1_NOTCH2 0x4CE4
4342 #define B_PATH1_NOTCH2_EN BIT(12)
4343 #define B_PATH1_NOTCH2_VAL GENMASK(11, 0)
4344 #define R_PATH1_5MDET 0x4D10
4345 #define R_PATH1_5MDET_V1 0x47B8
4346 #define B_PATH1_5MDET_EN BIT(12)
4347 #define B_PATH1_5MDET_SB2 BIT(8)
4348 #define B_PATH1_5MDET_SB0 BIT(6)
4349 #define B_PATH1_5MDET_TH GENMASK(5, 0)
4350 #define R_RPL_BIAS_COMP 0x4DF0
4351 #define B_RPL_BIAS_COMP_MASK GENMASK(7, 0)
4352 #define R_RPL_PATHAB 0x4E0C
4353 #define B_RPL_PATHB_MASK GENMASK(23, 16)
4354 #define B_RPL_PATHA_MASK GENMASK(15, 8)
4355 #define R_RSSI_M_PATHAB 0x4E2C
4356 #define B_RSSI_M_PATHB_MASK GENMASK(15, 8)
4357 #define B_RSSI_M_PATHA_MASK GENMASK(7, 0)
4358 #define R_FC0_V1 0x4E30
4359 #define B_FC0_MSK_V1 GENMASK(12, 0)
4360 #define R_RX_BW40_2XFFT_EN_V1 0x4E30
4361 #define B_RX_BW40_2XFFT_EN_MSK_V1 BIT(26)
4362 #define R_DCFO_COMP_S0_V1 0x4A40
4363 #define B_DCFO_COMP_S0_V1_MSK GENMASK(13, 0)
4364 #define R_BMODE_PDTH_V1 0x4B64
4365 #define B_BMODE_PDTH_LOWER_BOUND_MSK_V1 GENMASK(31, 24)
4366 #define R_BMODE_PDTH_EN_V1 0x4B74
4367 #define B_BMODE_PDTH_LIMIT_EN_MSK_V1 BIT(30)
4368 #define R_CFO_COMP_SEG1_L 0x5384
4369 #define R_CFO_COMP_SEG1_H 0x5388
4370 #define R_CFO_COMP_SEG1_CTRL 0x538C
4371 #define B_CFO_COMP_VALID_BIT BIT(29)
4372 #define B_CFO_COMP_WEIGHT_MSK GENMASK(27, 24)
4373 #define B_CFO_COMP_VAL_MSK GENMASK(11, 0)
4374 #define R_TSSI_PA_K1 0x5600
4375 #define R_TSSI_PA_K2 0x5604
4376 #define R_P0_TSSI_ALIM1 0x5630
4377 #define B_P0_TSSI_ALIM1 GENMASK(29, 0)
4378 #define B_P0_TSSI_ALIM11 GENMASK(29, 20)
4379 #define B_P0_TSSI_ALIM12 GENMASK(19, 10)
4380 #define B_P0_TSSI_ALIM13 GENMASK(9, 0)
4381 #define R_P0_TSSI_ALIM3 0x5634
4382 #define B_P0_TSSI_ALIM31 GENMASK(9, 0)
4383 #define R_TSSI_PA_K5 0x5638
4384 #define R_P0_TSSI_ALIM2 0x563c
4385 #define B_P0_TSSI_ALIM2 GENMASK(29, 0)
4386 #define R_P0_TSSI_ALIM4 0x5640
4387 #define R_TSSI_PA_K8 0x5644
4388 #define R_UPD_CLK 0x5670
4389 #define B_DAC_VAL BIT(31)
4390 #define B_ACK_VAL GENMASK(30, 29)
4391 #define B_DPD_DIS BIT(14)
4392 #define B_DPD_GDIS BIT(13)
4393 #define B_IQK_RFC_ON BIT(1)
4394 #define R_TXPWRB 0x56CC
4395 #define B_TXPWRB_ON BIT(28)
4396 #define B_TXPWRB_VAL GENMASK(27, 19)
4397 #define R_DPD_OFT_EN 0x5800
4398 #define B_DPD_OFT_EN BIT(28)
4399 #define B_DPD_TSSI_CW GENMASK(26, 18)
4400 #define B_DPD_PWR_CW GENMASK(17, 9)
4401 #define B_DPD_REF GENMASK(8, 0)
4402 #define R_P0_TSSIC 0x5814
4403 #define B_P0_TSSIC_BYPASS BIT(11)
4404 #define R_DPD_OFT_ADDR 0x5804
4405 #define B_DPD_OFT_ADDR GENMASK(31, 27)
4406 #define R_TXPWRB_H 0x580c
4407 #define B_TXPWRB_RDY BIT(15)
4408 #define R_P0_TMETER 0x5810
4409 #define B_P0_TMETER GENMASK(15, 10)
4410 #define B_P0_TMETER_DIS BIT(16)
4411 #define B_P0_TMETER_TRK BIT(24)
4412 #define R_P1_TSSIC 0x7814
4413 #define B_P1_TSSIC_BYPASS BIT(11)
4414 #define R_P0_TSSI_TRK 0x5818
4415 #define B_P0_TSSI_TRK_EN BIT(30)
4416 #define B_P0_TSSI_RFC GENMASK(28, 27)
4417 #define B_P0_TSSI_OFT_EN BIT(28)
4418 #define B_P0_TSSI_OFT GENMASK(7, 0)
4419 #define R_P0_TSSI_AVG 0x5820
4420 #define B_P0_TSSI_EN BIT(31)
4421 #define B_P0_TSSI_AVG GENMASK(15, 12)
4422 #define R_P0_RFCTM 0x5864
4423 #define B_P0_RFCTM_EN BIT(29)
4424 #define B_P0_RFCTM_VAL GENMASK(25, 20)
4425 #define R_P0_RFCTM_RDY BIT(26)
4426 #define R_P0_TRSW 0x5868
4427 #define B_P0_TRSW_B BIT(0)
4428 #define B_P0_TRSW_A BIT(1)
4429 #define B_P0_TRSW_X BIT(2)
4430 #define B_P0_TRSW_SO_A2 GENMASK(7, 5)
4431 #define R_P0_RFM 0x5894
4432 #define B_P0_RFM_DIS_WL BIT(7)
4433 #define B_P0_RFM_TX_OPT BIT(6)
4434 #define B_P0_RFM_BT_EN BIT(5)
4435 #define B_P0_RFM_OUT GENMASK(4, 0)
4436 #define R_P0_PATH_RST 0x58AC
4437 #define R_P0_TXDPD 0x58D4
4438 #define B_P0_TXDPD GENMASK(31, 28)
4439 #define R_P0_TXPW_RSTB 0x58DC
4440 #define B_P0_TXPW_RSTB_MANON BIT(30)
4441 #define B_P0_TXPW_RSTB_TSSI BIT(31)
4442 #define R_P0_TSSI_MV_AVG 0x58E4
4443 #define B_P0_TSSI_MV_MIX GENMASK(19, 11)
4444 #define B_P0_TSSI_MV_AVG GENMASK(13, 11)
4445 #define B_P0_TSSI_MV_CLR BIT(14)
4446 #define R_TXGAIN_SCALE 0x58F0
4447 #define B_TXGAIN_SCALE_EN BIT(19)
4448 #define B_TXGAIN_SCALE_OFT GENMASK(31, 24)
4449 #define R_P0_TSSI_BASE 0x5C00
4450 #define R_S0_DACKI 0x5E00
4451 #define B_S0_DACKI_AR GENMASK(31, 28)
4452 #define B_S0_DACKI_EN BIT(3)
4453 #define R_S0_DACKI2 0x5E30
4454 #define B_S0_DACKI2_K GENMASK(21, 12)
4455 #define R_S0_DACKI7 0x5E44
4456 #define B_S0_DACKI7_K GENMASK(15, 8)
4457 #define R_S0_DACKI8 0x5E48
4458 #define B_S0_DACKI8_K GENMASK(15, 8)
4459 #define R_S0_DACKQ 0x5E50
4460 #define B_S0_DACKQ_AR GENMASK(31, 28)
4461 #define B_S0_DACKQ_EN BIT(3)
4462 #define R_S0_DACKQ2 0x5E80
4463 #define B_S0_DACKQ2_K GENMASK(21, 12)
4464 #define R_S0_DACKQ7 0x5E94
4465 #define B_S0_DACKQ7_K GENMASK(15, 8)
4466 #define R_S0_DACKQ8 0x5E98
4467 #define B_S0_DACKQ8_K GENMASK(15, 8)
4468 #define R_RPL_BIAS_COMP1 0x6DF0
4469 #define B_RPL_BIAS_COMP1_MASK GENMASK(7, 0)
4470 #define R_P1_TSSI_ALIM1 0x7630
4471 #define B_P1_TSSI_ALIM1 GENMASK(29, 0)
4472 #define B_P1_TSSI_ALIM11 GENMASK(29, 20)
4473 #define B_P1_TSSI_ALIM12 GENMASK(19, 10)
4474 #define B_P1_TSSI_ALIM13 GENMASK(9, 0)
4475 #define R_P1_TSSI_ALIM3 0x7634
4476 #define B_P1_TSSI_ALIM31 GENMASK(9, 0)
4477 #define R_P1_TSSI_ALIM2 0x763c
4478 #define B_P1_TSSI_ALIM2 GENMASK(29, 0)
4479 #define R_P1_TSSIC 0x7814
4480 #define B_P1_TSSIC_BYPASS BIT(11)
4481 #define R_P1_TMETER 0x7810
4482 #define B_P1_TMETER GENMASK(15, 10)
4483 #define B_P1_TMETER_DIS BIT(16)
4484 #define B_P1_TMETER_TRK BIT(24)
4485 #define R_P1_TSSI_TRK 0x7818
4486 #define B_P1_TSSI_TRK_EN BIT(30)
4487 #define B_P1_TSSI_RFC GENMASK(28, 27)
4488 #define B_P1_TSSI_OFT_EN BIT(28)
4489 #define B_P1_TSSI_OFT GENMASK(7, 0)
4490 #define R_P1_TSSI_AVG 0x7820
4491 #define B_P1_TSSI_EN BIT(31)
4492 #define B_P1_TSSI_AVG GENMASK(15, 12)
4493 #define R_P1_RFCTM 0x7864
4494 #define R_P1_RFCTM_RDY BIT(26)
4495 #define B_P1_RFCTM_VAL GENMASK(25, 20)
4496 #define B_P1_RFCTM_DEL GENMASK(19, 11)
4497 #define R_P1_PATH_RST 0x78AC
4498 #define R_P1_TXPW_RSTB 0x78DC
4499 #define B_P1_TXPW_RSTB_MANON BIT(30)
4500 #define B_P1_TXPW_RSTB_TSSI BIT(31)
4501 #define R_P1_TSSI_MV_AVG 0x78E4
4502 #define B_P1_TSSI_MV_MIX GENMASK(19, 11)
4503 #define B_P1_TSSI_MV_AVG GENMASK(13, 11)
4504 #define B_P1_TSSI_MV_CLR BIT(14)
4505 #define R_TSSI_THOF 0x7C00
4506 #define R_S1_DACKI 0x7E00
4507 #define B_S1_DACKI_AR GENMASK(31, 28)
4508 #define B_S1_DACKI_EN BIT(3)
4509 #define R_S1_DACKI2 0x7E30
4510 #define B_S1_DACKI2_K GENMASK(21, 12)
4511 #define R_S1_DACKI7 0x7E44
4512 #define B_S1_DACKI_K GENMASK(15, 8)
4513 #define R_S1_DACKI8 0x7E48
4514 #define B_S1_DACKI8_K GENMASK(15, 8)
4515 #define R_S1_DACKQ 0x7E50
4516 #define B_S1_DACKQ_AR GENMASK(31, 28)
4517 #define B_S1_DACKQ_EN BIT(3)
4518 #define R_S1_DACKQ2 0x7E80
4519 #define B_S1_DACKQ2_K GENMASK(21, 12)
4520 #define R_S1_DACKQ7 0x7E94
4521 #define B_S1_DACKQ7_K GENMASK(15, 8)
4522 #define R_S1_DACKQ8 0x7E98
4523 #define B_S1_DACKQ8_K GENMASK(15, 8)
4524 #define R_NCTL_CFG 0x8000
4525 #define B_NCTL_CFG_SPAGE GENMASK(2, 1)
4526 #define R_NCTL_RPT 0x8008
4527 #define B_NCTL_RPT_FLG BIT(26)
4528 #define R_NCTL_N1 0x8010
4529 #define B_NCTL_N1_CIP GENMASK(7, 0)
4530 #define R_NCTL_N2 0x8014
4531 #define R_IQK_COM 0x8018
4532 #define R_IQK_DIF 0x801C
4533 #define B_IQK_DIF_TRX GENMASK(1, 0)
4534 #define R_IQK_DIF1 0x8020
4535 #define B_IQK_DIF1_TXPI GENMASK(19, 0)
4536 #define R_IQK_DIF2 0x8024
4537 #define B_IQK_DIF2_RXPI GENMASK(19, 0)
4538 #define R_IQK_DIF4 0x802C
4539 #define B_IQK_DIF4_RXT GENMASK(27, 16)
4540 #define B_IQK_DIF4_TXT GENMASK(11, 0)
4541 #define IQK_DF4_TXT_8_25MHZ 0x021
4542 #define R_IQK_CFG 0x8034
4543 #define B_IQK_CFG_SET GENMASK(5, 4)
4544 #define R_TPG_SEL 0x8068
4545 #define R_TPG_MOD 0x806C
4546 #define B_TPG_MOD_F GENMASK(2, 1)
4547 #define R_MDPK_SYNC 0x8070
4548 #define B_MDPK_SYNC_SEL BIT(31)
4549 #define B_MDPK_SYNC_MAN GENMASK(31, 28)
4550 #define R_MDPK_RX_DCK 0x8074
4551 #define B_MDPK_RX_DCK_EN BIT(31)
4552 #define R_KIP_MOD 0x8078
4553 #define B_KIP_MOD GENMASK(19, 0)
4554 #define R_NCTL_RW 0x8080
4555 #define R_KIP_SYSCFG 0x8088
4556 #define R_KIP_CLK 0x808C
4557 #define R_DPK_IDL 0x809C
4558 #define B_DPK_IDL BIT(8)
4559 #define R_LDL_NORM 0x80A0
4560 #define B_LDL_NORM_MA BIT(16)
4561 #define B_LDL_NORM_PN GENMASK(12, 8)
4562 #define B_LDL_NORM_OP GENMASK(1, 0)
4563 #define R_DPK_CTL 0x80B0
4564 #define B_DPK_CTL_EN BIT(28)
4565 #define R_DPK_CFG 0x80B8
4566 #define B_DPK_CFG_IDX GENMASK(14, 12)
4567 #define R_DPK_CFG2 0x80BC
4568 #define B_DPK_CFG2_ST BIT(14)
4569 #define R_DPK_CFG3 0x80C0
4570 #define R_KPATH_CFG 0x80D0
4571 #define B_KPATH_CFG_ED GENMASK(21, 20)
4572 #define R_KIP_RPT1 0x80D4
4573 #define B_KIP_RPT1_SEL GENMASK(21, 16)
4574 #define B_KIP_RPT1_SEL_V1 GENMASK(19, 16)
4575 #define R_SRAM_IQRX 0x80D8
4576 #define R_GAPK 0x80E0
4577 #define B_GAPK_ADR BIT(0)
4578 #define R_SRAM_IQRX2 0x80E8
4579 #define R_DPK_MPA 0x80EC
4580 #define B_DPK_MPA_T0 BIT(10)
4581 #define B_DPK_MPA_T1 BIT(9)
4582 #define B_DPK_MPA_T2 BIT(8)
4583 #define R_DPK_WR 0x80F4
4584 #define B_DPK_WR_ST BIT(29)
4585 #define R_DPK_TRK 0x80f0
4586 #define B_DPK_TRK_DIS BIT(31)
4587 #define R_RPT_COM 0x80FC
4588 #define B_PRT_COM_SYNERR BIT(30)
4589 #define B_PRT_COM_DCI GENMASK(27, 16)
4590 #define B_PRT_COM_CORV GENMASK(15, 8)
4591 #define B_PRT_COM_DCQ GENMASK(11, 0)
4592 #define B_PRT_COM_RXOV BIT(8)
4593 #define B_PRT_COM_GL GENMASK(7, 4)
4594 #define B_PRT_COM_CORI GENMASK(7, 0)
4595 #define B_PRT_COM_RXBB GENMASK(5, 0)
4596 #define B_PRT_COM_RXBB_V1 GENMASK(4, 0)
4597 #define B_PRT_COM_DONE BIT(0)
4598 #define R_COEF_SEL 0x8104
4599 #define B_COEF_SEL_IQC BIT(0)
4600 #define B_COEF_SEL_MDPD BIT(8)
4601 #define R_CFIR_SYS 0x8120
4602 #define R_IQK_RES 0x8124
4603 #define B_IQK_RES_K BIT(28)
4604 #define B_IQK_RES_TXCFIR GENMASK(11, 8)
4605 #define B_IQK_RES_RXCFIR GENMASK(3, 0)
4606 #define R_TXIQC 0x8138
4607 #define R_RXIQC 0x813c
4608 #define B_RXIQC_BYPASS BIT(0)
4609 #define B_RXIQC_BYPASS2 BIT(2)
4610 #define B_RXIQC_NEWP GENMASK(19, 8)
4611 #define B_RXIQC_NEWX GENMASK(31, 20)
4612 #define R_KIP 0x8140
4613 #define B_KIP_DBCC BIT(0)
4614 #define B_KIP_RFGAIN BIT(8)
4615 #define R_RFGAIN 0x8144
4616 #define B_RFGAIN_PAD GENMASK(4, 0)
4617 #define B_RFGAIN_TXBB GENMASK(12, 8)
4618 #define R_RFGAIN_BND 0x8148
4619 #define B_RFGAIN_BND GENMASK(4, 0)
4620 #define R_CFIR_MAP 0x8150
4621 #define R_CFIR_LUT 0x8154
4622 #define B_CFIR_LUT_SEL BIT(8)
4623 #define B_CFIR_LUT_SET BIT(4)
4624 #define B_CFIR_LUT_G3 BIT(3)
4625 #define B_CFIR_LUT_G2 BIT(2)
4626 #define B_CFIR_LUT_GP_V1 GENMASK(2, 0)
4627 #define B_CFIR_LUT_GP GENMASK(1, 0)
4628 #define R_DPK_GN 0x819C
4629 #define B_DPK_GN_EN GENMASK(17, 16)
4630 #define B_DPK_GN_AG GENMASK(9, 0)
4631 #define R_DPD_V1 0x81a0
4632 #define B_DPD_LBK BIT(7)
4633 #define R_DPD_CH0 0x81AC
4634 #define R_DPD_BND 0x81B4
4635 #define B_DPD_BND_1 GENMASK(24, 16)
4636 #define B_DPD_BND_0 GENMASK(8, 0)
4637 #define R_DPD_CH0A 0x81BC
4638 #define B_DPD_MEN GENMASK(31, 28)
4639 #define B_DPD_ORDER GENMASK(26, 24)
4640 #define B_DPD_ORDER_V1 GENMASK(26, 25)
4641 #define B_DPD_CFG GENMASK(22, 0)
4642 #define B_DPD_SEL GENMASK(13, 8)
4643 #define R_TXAGC_RFK 0x81C4
4644 #define B_TXAGC_RFK_CH0 GENMASK(5, 0)
4645 #define R_DPD_COM 0x81C8
4646 #define B_DPD_COM_OF BIT(15)
4647 #define R_KIP_IQP 0x81CC
4648 #define B_KIP_IQP_SW GENMASK(13, 12)
4649 #define B_KIP_IQP_IQSW GENMASK(5, 0)
4650 #define R_KIP_RPT 0x81D4
4651 #define B_KIP_RPT_SEL GENMASK(21, 16)
4652 #define R_W_COEF 0x81D8
4653 #define R_LOAD_COEF 0x81DC
4654 #define B_LOAD_COEF_MDPD BIT(16)
4655 #define B_LOAD_COEF_CFIR GENMASK(1, 0)
4656 #define B_LOAD_COEF_DI BIT(1)
4657 #define B_LOAD_COEF_AUTO BIT(0)
4658 #define R_DPK_GL 0x81F0
4659 #define B_DPK_GL_A0 GENMASK(31, 28)
4660 #define B_DPK_GL_A1 GENMASK(17, 0)
4661 #define R_RPT_PER 0x81FC
4662 #define B_RPT_PER_TSSI GENMASK(28, 16)
4663 #define B_RPT_PER_OF GENMASK(15, 8)
4664 #define B_RPT_PER_TH GENMASK(5, 0)
4665 #define R_IQRSN 0x8220
4666 #define B_IQRSN_K1 BIT(28)
4667 #define B_IQRSN_K2 BIT(16)
4668 #define R_RXCFIR_P0C0 0x8D40
4669 #define R_RXCFIR_P0C1 0x8D84
4670 #define R_RXCFIR_P0C2 0x8DC8
4671 #define R_RXCFIR_P0C3 0x8E0C
4672 #define R_TXCFIR_P0C0 0x8F50
4673 #define R_TXCFIR_P0C1 0x8F84
4674 #define R_TXCFIR_P0C2 0x8FB8
4675 #define R_TXCFIR_P0C3 0x8FEC
4676 #define R_RXCFIR_P1C0 0x9140
4677 #define R_RXCFIR_P1C1 0x9184
4678 #define R_RXCFIR_P1C2 0x91C8
4679 #define R_RXCFIR_P1C3 0x920C
4680 #define R_TXCFIR_P1C0 0x9350
4681 #define R_TXCFIR_P1C1 0x9384
4682 #define R_TXCFIR_P1C2 0x93B8
4683 #define R_TXCFIR_P1C3 0x93EC
4684 #define R_IQKINF 0x9FE0
4685 #define B_IQKINF_VER GENMASK(31, 24)
4686 #define B_IQKINF_FAIL_RXGRP GENMASK(23, 16)
4687 #define B_IQKINF_FAIL_TXGRP GENMASK(15, 8)
4688 #define B_IQKINF_FAIL GENMASK(3, 0)
4689 #define B_IQKINF_F_RX BIT(3)
4690 #define B_IQKINF_FTX BIT(2)
4691 #define B_IQKINF_FFIN BIT(1)
4692 #define B_IQKINF_FCOR BIT(0)
4693 #define R_IQKCH 0x9FE4
4694 #define B_IQKCH_CH GENMASK(15, 8)
4695 #define B_IQKCH_BW GENMASK(7, 4)
4696 #define B_IQKCH_BAND GENMASK(3, 0)
4697 #define R_IQKINF2 0x9FE8
4698 #define B_IQKINF2_FCNT GENMASK(23, 16)
4699 #define B_IQKINF2_KCNT GENMASK(15, 8)
4700 #define B_IQKINF2_NCTLV GENMASK(7, 0)
4701 #define R_DCOF0 0xC000
4702 #define B_DCOF0_V GENMASK(4, 1)
4703 #define R_DCOF1 0xC004
4704 #define B_DCOF1_S BIT(0)
4705 #define R_DCOF8 0xC020
4706 #define B_DCOF8_V GENMASK(4, 1)
4707 #define R_DACK_S0P0 0xC040
4708 #define B_DACK_S0P0_OK BIT(31)
4709 #define R_DACK_BIAS00 0xc048
4710 #define B_DACK_BIAS00 GENMASK(11, 2)
4711 #define R_DACK_S0P2 0xC05C
4712 #define B_DACK_S0M0 GENMASK(31, 24)
4713 #define B_DACK_S0P2_OK BIT(2)
4714 #define R_DACK_DADCK00 0xC060
4715 #define B_DACK_DADCK00 GENMASK(31, 24)
4716 #define R_DACK_S0P1 0xC064
4717 #define B_DACK_S0P1_OK BIT(31)
4718 #define R_DACK_BIAS01 0xC06C
4719 #define B_DACK_BIAS01 GENMASK(11, 2)
4720 #define R_DACK_S0P3 0xC080
4721 #define B_DACK_S0M1 GENMASK(31, 24)
4722 #define B_DACK_S0P3_OK BIT(2)
4723 #define R_DACK_DADCK01 0xC084
4724 #define B_DACK_DADCK01 GENMASK(31, 24)
4725 #define R_DRCK_FH 0xC094
4726 #define B_DRCK_LAT BIT(9)
4727 #define R_DRCK 0xC0C4
4728 #define B_DRCK_IDLE BIT(9)
4729 #define B_DRCK_EN BIT(6)
4730 #define B_DRCK_VAL GENMASK(4, 0)
4731 #define R_DRCK_RES 0xC0C8
4732 #define B_DRCK_RES GENMASK(19, 15)
4733 #define B_DRCK_POL BIT(3)
4734 #define R_DRCK_V1 0xC0CC
4735 #define B_DRCK_V1_SEL BIT(9)
4736 #define B_DRCK_V1_KICK BIT(6)
4737 #define B_DRCK_V1_CV GENMASK(4, 0)
4738 #define R_DRCK_RS 0xC0D0
4739 #define B_DRCK_RS_LPS GENMASK(19, 15)
4740 #define B_DRCK_RS_DONE BIT(3)
4741 #define R_PATH0_SAMPL_DLY_T_V1 0xC0D4
4742 #define B_PATH0_SAMPL_DLY_T_MSK_V1 GENMASK(27, 26)
4743 #define R_P0_CFCH_BW0 0xC0D4
4744 #define B_P0_CFCH_BW0 GENMASK(27, 26)
4745 #define R_P0_CFCH_BW1 0xC0D8
4746 #define B_P0_CFCH_EX BIT(13)
4747 #define B_P0_CFCH_BW1 GENMASK(8, 5)
4748 #define R_ADDCK0D 0xC0F0
4749 #define B_ADDCK0D_VAL2 GENMASK(31, 26)
4750 #define B_ADDCK0D_VAL GENMASK(25, 16)
4751 #define R_ADDCK0 0xC0F4
4752 #define B_ADDCK0_TRG BIT(11)
4753 #define B_ADDCK0 GENMASK(9, 8)
4754 #define B_ADDCK0_MAN GENMASK(5, 4)
4755 #define B_ADDCK0_EN BIT(4)
4756 #define B_ADDCK0_VAL GENMASK(3, 0)
4757 #define B_ADDCK0_RST BIT(2)
4758 #define R_ADDCK0_RL 0xC0F8
4759 #define B_ADDCK0_RLS GENMASK(29, 28)
4760 #define B_ADDCK0_RL1 GENMASK(27, 18)
4761 #define B_ADDCK0_RL0 GENMASK(17, 8)
4762 #define R_ADDCKR0 0xC0FC
4763 #define B_ADDCKR0_A0 GENMASK(19, 10)
4764 #define B_ADDCKR0_A1 GENMASK(9, 0)
4765 #define R_DACK10 0xC100
4766 #define B_DACK10 GENMASK(4, 1)
4767 #define R_DACK1_K 0xc104
4768 #define B_DACK1_EN BIT(0)
4769 #define R_DACK11 0xC120
4770 #define B_DACK11 GENMASK(4, 1)
4771 #define R_DACK_S1P0 0xC140
4772 #define B_DACK_S1P0_OK BIT(31)
4773 #define R_DACK_BIAS10 0xC148
4774 #define B_DACK_BIAS10 GENMASK(11, 2)
4775 #define R_DACK10S 0xC15C
4776 #define B_DACK10S GENMASK(31, 24)
4777 #define R_DACK_S1P2 0xC15C
4778 #define B_DACK_S1P2_OK BIT(2)
4779 #define R_DACK_DADCK10 0xC160
4780 #define B_DACK_DADCK10 GENMASK(31, 24)
4781 #define R_DACK_S1P1 0xC164
4782 #define B_DACK_S1P1_OK BIT(31)
4783 #define R_DACK_BIAS11 0xC16C
4784 #define B_DACK_BIAS11 GENMASK(11, 2)
4785 #define R_DACK11S 0xC180
4786 #define B_DACK11S GENMASK(31, 24)
4787 #define R_DACK_S1P3 0xC180
4788 #define B_DACK_S1P3_OK BIT(2)
4789 #define R_DACK_DADCK11 0xC184
4790 #define B_DACK_DADCK11 GENMASK(31, 24)
4791 #define R_PATH1_SAMPL_DLY_T_V1 0xC1D4
4792 #define B_PATH1_SAMPL_DLY_T_MSK_V1 GENMASK(27, 26)
4793 #define R_PATH0_BW_SEL_V1 0xC0D8
4794 #define B_PATH0_BW_SEL_MSK_V1 GENMASK(8, 5)
4795 #define R_PATH1_BW_SEL_V1 0xC1D8
4796 #define B_PATH1_BW_SEL_EX BIT(13)
4797 #define B_PATH1_BW_SEL_MSK_V1 GENMASK(8, 5)
4798 #define R_ADDCK1D 0xC1F0
4799 #define B_ADDCK1D_VAL2 GENMASK(31, 26)
4800 #define B_ADDCK1D_VAL GENMASK(25, 16)
4801 #define R_ADDCK1 0xC1F4
4802 #define B_ADDCK1_TRG BIT(11)
4803 #define B_ADDCK1 GENMASK(9, 8)
4804 #define B_ADDCK1_MAN GENMASK(5, 4)
4805 #define B_ADDCK1_EN BIT(4)
4806 #define B_ADDCK1_RST BIT(2)
4807 #define R_ADDCK1_RL 0xC1F8
4808 #define B_ADDCK1_RLS GENMASK(29, 28)
4809 #define B_ADDCK1_RL1 GENMASK(27, 18)
4810 #define B_ADDCK1_RL0 GENMASK(17, 8)
4811 #define R_ADDCKR1 0xC1fC
4812 #define B_ADDCKR1_A0 GENMASK(19, 10)
4813 #define B_ADDCKR1_A1 GENMASK(9, 0)
4814 
4815 /* WiFi CPU local domain */
4816 #define R_AX_WDT_CTRL 0x0040
4817 #define B_AX_WDT_EN BIT(31)
4818 #define B_AX_WDT_OPT_RESET_PLATFORM_EN BIT(29)
4819 #define B_AX_IO_HANG_IMR BIT(27)
4820 #define B_AX_IO_HANG_CMAC_RDATA_EN BIT(26)
4821 #define B_AX_IO_HANG_DMAC_EN BIT(25)
4822 #define B_AX_WDT_CLR BIT(16)
4823 #define B_AX_WDT_COUNT_MASK GENMASK(15, 0)
4824 #define WDT_CTRL_ALL_DIS 0
4825 
4826 #define R_AX_WDT_STATUS 0x0044
4827 #define B_AX_FS_WDT_INT BIT(8)
4828 #define B_AX_FS_WDT_INT_MSK BIT(0)
4829 
4830 #endif
4831