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