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