GNU Linux-libre 4.14.251-gnu1
[releases.git] / drivers / staging / rtlwifi / halmac / halmac_bit2.h
1 /******************************************************************************
2  *
3  * Copyright(c) 2016  Realtek Corporation.
4  *
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms of version 2 of the GNU General Public License as
7  * published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
12  * more details.
13  *
14  * The full GNU General Public License is included in this distribution in the
15  * file called LICENSE.
16  *
17  * Contact Information:
18  * wlanfae <wlanfae@realtek.com>
19  * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park,
20  * Hsinchu 300, Taiwan.
21  *
22  * Larry Finger <Larry.Finger@lwfinger.net>
23  *
24  *****************************************************************************/
25 #ifndef __RTL_WLAN_BITDEF_H__
26 #define __RTL_WLAN_BITDEF_H__
27
28 /*-------------------------Modification Log-----------------------------------
29  *      Base on MAC_Register.doc SVN391
30  *-------------------------Modification Log-----------------------------------
31  */
32
33 /*--------------------------Include File--------------------------------------*/
34 /*--------------------------Include File--------------------------------------*/
35
36 /* 3 ============Programming guide Start===================== */
37 /*
38  *      1. For all bit define, it should be prefixed by "BIT_"
39  *      2. For all bit mask, it should be prefixed by "BIT_MASK_"
40  *      3. For all bit shift, it should be prefixed by "BIT_SHIFT_"
41  *      4. For other case, prefix is not needed
42  *
43  * Example:
44  * #define BIT_SHIFT_MAX_TXDMA          16
45  * #define BIT_MASK_MAX_TXDMA           0x7
46  * #define BIT_MAX_TXDMA(x)             \
47  *                      (((x) & BIT_MASK_MAX_TXDMA) << BIT_SHIFT_MAX_TXDMA)
48  * #define BIT_GET_MAX_TXDMA(x)         \
49  *                      (((x) >> BIT_SHIFT_MAX_TXDMA) & BIT_MASK_MAX_TXDMA)
50  *
51  */
52 /* 3 ============Programming guide End===================== */
53
54 #define CPU_OPT_WIDTH 0x1F
55
56 #define BIT_SHIFT_WATCH_DOG_RECORD_V1 10
57 #define BIT_MASK_WATCH_DOG_RECORD_V1 0x3fff
58 #define BIT_WATCH_DOG_RECORD_V1(x)                                             \
59         (((x) & BIT_MASK_WATCH_DOG_RECORD_V1) << BIT_SHIFT_WATCH_DOG_RECORD_V1)
60 #define BIT_GET_WATCH_DOG_RECORD_V1(x)                                         \
61         (((x) >> BIT_SHIFT_WATCH_DOG_RECORD_V1) & BIT_MASK_WATCH_DOG_RECORD_V1)
62
63 #define BIT_R_IO_TIMEOUT_FLAG_V1 BIT(9)
64
65 #define BIT_ISO_MD2PP BIT(0)
66
67 #define BIT_SHIFT_R_WMAC_IPV6_MYIPAD 0
68 #define BIT_MASK_R_WMAC_IPV6_MYIPAD 0xffffffffffffffffffffffffffffffffL
69 #define BIT_R_WMAC_IPV6_MYIPAD(x)                                              \
70         (((x) & BIT_MASK_R_WMAC_IPV6_MYIPAD) << BIT_SHIFT_R_WMAC_IPV6_MYIPAD)
71 #define BIT_GET_R_WMAC_IPV6_MYIPAD(x)                                          \
72         (((x) >> BIT_SHIFT_R_WMAC_IPV6_MYIPAD) & BIT_MASK_R_WMAC_IPV6_MYIPAD)
73
74 /* 2 REG_SDIO_TX_CTRL                   (Offset 0x10250000) */
75
76 #define BIT_SHIFT_SDIO_INT_TIMEOUT 16
77 #define BIT_MASK_SDIO_INT_TIMEOUT 0xffff
78 #define BIT_SDIO_INT_TIMEOUT(x)                                                \
79         (((x) & BIT_MASK_SDIO_INT_TIMEOUT) << BIT_SHIFT_SDIO_INT_TIMEOUT)
80 #define BIT_GET_SDIO_INT_TIMEOUT(x)                                            \
81         (((x) >> BIT_SHIFT_SDIO_INT_TIMEOUT) & BIT_MASK_SDIO_INT_TIMEOUT)
82
83 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
84
85 #define BIT_PWC_EV12V BIT(15)
86
87 /* 2 REG_SDIO_TX_CTRL                   (Offset 0x10250000) */
88
89 #define BIT_IO_ERR_STATUS BIT(15)
90
91 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
92
93 #define BIT_PWC_EV25V BIT(14)
94
95 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
96
97 #define BIT_PA33V_EN BIT(13)
98 #define BIT_PA12V_EN BIT(12)
99
100 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
101
102 #define BIT_UA33V_EN BIT(11)
103 #define BIT_UA12V_EN BIT(10)
104
105 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
106
107 #define BIT_ISO_RFDIO BIT(9)
108
109 /* 2 REG_SDIO_TX_CTRL                   (Offset 0x10250000) */
110
111 #define BIT_REPLY_ERRCRC_IN_DATA BIT(9)
112
113 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
114
115 #define BIT_ISO_EB2CORE BIT(8)
116
117 /* 2 REG_SDIO_TX_CTRL                   (Offset 0x10250000) */
118
119 #define BIT_EN_CMD53_OVERLAP BIT(8)
120
121 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
122
123 #define BIT_ISO_DIOE BIT(7)
124
125 /* 2 REG_SDIO_TX_CTRL                   (Offset 0x10250000) */
126
127 #define BIT_REPLY_ERR_IN_R5 BIT(7)
128
129 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
130
131 #define BIT_ISO_WLPON2PP BIT(6)
132
133 /* 2 REG_SDIO_TX_CTRL                   (Offset 0x10250000) */
134
135 #define BIT_R18A_EN BIT(6)
136
137 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
138
139 #define BIT_ISO_IP2MAC_WA2PP BIT(5)
140
141 /* 2 REG_SDIO_TX_CTRL                   (Offset 0x10250000) */
142
143 #define BIT_INIT_CMD_EN BIT(5)
144
145 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
146
147 #define BIT_ISO_PD2CORE BIT(4)
148
149 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
150
151 #define BIT_ISO_PA2PCIE BIT(3)
152
153 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
154
155 #define BIT_ISO_UD2CORE BIT(2)
156
157 /* 2 REG_SDIO_TX_CTRL                   (Offset 0x10250000) */
158
159 #define BIT_EN_RXDMA_MASK_INT BIT(2)
160
161 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
162
163 #define BIT_ISO_UA2USB BIT(1)
164
165 /* 2 REG_SDIO_TX_CTRL                   (Offset 0x10250000) */
166
167 #define BIT_EN_MASK_TIMER BIT(1)
168
169 /* 2 REG_SYS_ISO_CTRL                   (Offset 0x0000) */
170
171 #define BIT_ISO_WD2PP BIT(0)
172
173 /* 2 REG_SDIO_TX_CTRL                   (Offset 0x10250000) */
174
175 #define BIT_CMD_ERR_STOP_INT_EN BIT(0)
176
177 /* 2 REG_SYS_FUNC_EN                            (Offset 0x0002) */
178
179 #define BIT_FEN_MREGEN BIT(15)
180 #define BIT_FEN_HWPDN BIT(14)
181
182 /* 2 REG_SYS_FUNC_EN                            (Offset 0x0002) */
183
184 #define BIT_EN_25_1 BIT(13)
185
186 /* 2 REG_SYS_FUNC_EN                            (Offset 0x0002) */
187
188 #define BIT_FEN_ELDR BIT(12)
189 #define BIT_FEN_DCORE BIT(11)
190 #define BIT_FEN_CPUEN BIT(10)
191 #define BIT_FEN_DIOE BIT(9)
192 #define BIT_FEN_PCIED BIT(8)
193 #define BIT_FEN_PPLL BIT(7)
194 #define BIT_FEN_PCIEA BIT(6)
195 #define BIT_FEN_DIO_PCIE BIT(5)
196 #define BIT_FEN_USBD BIT(4)
197 #define BIT_FEN_UPLL BIT(3)
198 #define BIT_FEN_USBA BIT(2)
199
200 /* 2 REG_SYS_FUNC_EN                            (Offset 0x0002) */
201
202 #define BIT_FEN_BB_GLB_RSTN BIT(1)
203 #define BIT_FEN_BBRSTB BIT(0)
204
205 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
206
207 #define BIT_SOP_EABM BIT(31)
208
209 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
210
211 #define BIT_SOP_ACKF BIT(30)
212 #define BIT_SOP_ERCK BIT(29)
213
214 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
215
216 #define BIT_SOP_ESWR BIT(28)
217
218 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
219
220 #define BIT_SOP_PWMM BIT(27)
221
222 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
223
224 #define BIT_SOP_EECK BIT(26)
225
226 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
227
228 #define BIT_SOP_EXTL BIT(24)
229
230 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
231
232 #define BIT_SYM_OP_RING_12M BIT(22)
233
234 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
235
236 #define BIT_ROP_SWPR BIT(21)
237
238 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
239
240 #define BIT_DIS_HW_LPLDM BIT(20)
241
242 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
243
244 #define BIT_OPT_SWRST_WLMCU BIT(19)
245 #define BIT_RDY_SYSPWR BIT(17)
246
247 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
248
249 #define BIT_EN_WLON BIT(16)
250
251 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
252
253 #define BIT_APDM_HPDN BIT(15)
254
255 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
256
257 #define BIT_AFSM_PCIE_SUS_EN BIT(12)
258
259 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
260
261 #define BIT_AFSM_WLSUS_EN BIT(11)
262
263 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
264
265 #define BIT_APFM_SWLPS BIT(10)
266
267 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
268
269 #define BIT_APFM_OFFMAC BIT(9)
270 #define BIT_APFN_ONMAC BIT(8)
271
272 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
273
274 #define BIT_CHIP_PDN_EN BIT(7)
275
276 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
277
278 #define BIT_RDY_MACDIS BIT(6)
279
280 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
281
282 #define BIT_RING_CLK_12M_EN BIT(4)
283
284 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
285
286 #define BIT_PFM_WOWL BIT(3)
287
288 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
289
290 #define BIT_PFM_LDKP BIT(2)
291
292 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
293
294 #define BIT_WL_HCI_ALD BIT(1)
295
296 /* 2 REG_SYS_PW_CTRL                            (Offset 0x0004) */
297
298 #define BIT_PFM_LDALL BIT(0)
299
300 /* 2 REG_SYS_CLK_CTRL                   (Offset 0x0008) */
301
302 #define BIT_LDO_DUMMY BIT(15)
303
304 /* 2 REG_SYS_CLK_CTRL                   (Offset 0x0008) */
305
306 #define BIT_CPU_CLK_EN BIT(14)
307
308 /* 2 REG_SYS_CLK_CTRL                   (Offset 0x0008) */
309
310 #define BIT_SYMREG_CLK_EN BIT(13)
311
312 /* 2 REG_SYS_CLK_CTRL                   (Offset 0x0008) */
313
314 #define BIT_HCI_CLK_EN BIT(12)
315
316 /* 2 REG_SYS_CLK_CTRL                   (Offset 0x0008) */
317
318 #define BIT_MAC_CLK_EN BIT(11)
319 #define BIT_SEC_CLK_EN BIT(10)
320
321 /* 2 REG_SYS_CLK_CTRL                   (Offset 0x0008) */
322
323 #define BIT_PHY_SSC_RSTB BIT(9)
324 #define BIT_EXT_32K_EN BIT(8)
325
326 /* 2 REG_SYS_CLK_CTRL                   (Offset 0x0008) */
327
328 #define BIT_WL_CLK_TEST BIT(7)
329 #define BIT_OP_SPS_PWM_EN BIT(6)
330
331 /* 2 REG_SYS_CLK_CTRL                   (Offset 0x0008) */
332
333 #define BIT_LOADER_CLK_EN BIT(5)
334 #define BIT_MACSLP BIT(4)
335 #define BIT_WAKEPAD_EN BIT(3)
336 #define BIT_ROMD16V_EN BIT(2)
337
338 /* 2 REG_SYS_CLK_CTRL                   (Offset 0x0008) */
339
340 #define BIT_CKANA12M_EN BIT(1)
341
342 /* 2 REG_SYS_CLK_CTRL                   (Offset 0x0008) */
343
344 #define BIT_CNTD16V_EN BIT(0)
345
346 /* 2 REG_SYS_EEPROM_CTRL                        (Offset 0x000A) */
347
348 #define BIT_SHIFT_VPDIDX 8
349 #define BIT_MASK_VPDIDX 0xff
350 #define BIT_VPDIDX(x) (((x) & BIT_MASK_VPDIDX) << BIT_SHIFT_VPDIDX)
351 #define BIT_GET_VPDIDX(x) (((x) >> BIT_SHIFT_VPDIDX) & BIT_MASK_VPDIDX)
352
353 #define BIT_SHIFT_EEM1_0 6
354 #define BIT_MASK_EEM1_0 0x3
355 #define BIT_EEM1_0(x) (((x) & BIT_MASK_EEM1_0) << BIT_SHIFT_EEM1_0)
356 #define BIT_GET_EEM1_0(x) (((x) >> BIT_SHIFT_EEM1_0) & BIT_MASK_EEM1_0)
357
358 #define BIT_AUTOLOAD_SUS BIT(5)
359
360 /* 2 REG_SYS_EEPROM_CTRL                        (Offset 0x000A) */
361
362 #define BIT_EERPOMSEL BIT(4)
363
364 /* 2 REG_SYS_EEPROM_CTRL                        (Offset 0x000A) */
365
366 #define BIT_EECS_V1 BIT(3)
367 #define BIT_EESK_V1 BIT(2)
368 #define BIT_EEDI_V1 BIT(1)
369 #define BIT_EEDO_V1 BIT(0)
370
371 /* 2 REG_EE_VPD                         (Offset 0x000C) */
372
373 #define BIT_SHIFT_VPD_DATA 0
374 #define BIT_MASK_VPD_DATA 0xffffffffL
375 #define BIT_VPD_DATA(x) (((x) & BIT_MASK_VPD_DATA) << BIT_SHIFT_VPD_DATA)
376 #define BIT_GET_VPD_DATA(x) (((x) >> BIT_SHIFT_VPD_DATA) & BIT_MASK_VPD_DATA)
377
378 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
379
380 #define BIT_C2_L_BIT0 BIT(31)
381
382 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
383
384 #define BIT_SHIFT_C1_L 29
385 #define BIT_MASK_C1_L 0x3
386 #define BIT_C1_L(x) (((x) & BIT_MASK_C1_L) << BIT_SHIFT_C1_L)
387 #define BIT_GET_C1_L(x) (((x) >> BIT_SHIFT_C1_L) & BIT_MASK_C1_L)
388
389 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
390
391 #define BIT_SHIFT_REG_FREQ_L 25
392 #define BIT_MASK_REG_FREQ_L 0x7
393 #define BIT_REG_FREQ_L(x) (((x) & BIT_MASK_REG_FREQ_L) << BIT_SHIFT_REG_FREQ_L)
394 #define BIT_GET_REG_FREQ_L(x)                                                  \
395         (((x) >> BIT_SHIFT_REG_FREQ_L) & BIT_MASK_REG_FREQ_L)
396
397 #define BIT_REG_EN_DUTY BIT(24)
398
399 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
400
401 #define BIT_SHIFT_REG_MODE 22
402 #define BIT_MASK_REG_MODE 0x3
403 #define BIT_REG_MODE(x) (((x) & BIT_MASK_REG_MODE) << BIT_SHIFT_REG_MODE)
404 #define BIT_GET_REG_MODE(x) (((x) >> BIT_SHIFT_REG_MODE) & BIT_MASK_REG_MODE)
405
406 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
407
408 #define BIT_REG_EN_SP BIT(21)
409 #define BIT_REG_AUTO_L BIT(20)
410
411 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
412
413 #define BIT_SW18_SELD_BIT0 BIT(19)
414
415 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
416
417 #define BIT_SW18_POWOCP BIT(18)
418
419 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
420
421 #define BIT_SHIFT_OCP_L1 15
422 #define BIT_MASK_OCP_L1 0x7
423 #define BIT_OCP_L1(x) (((x) & BIT_MASK_OCP_L1) << BIT_SHIFT_OCP_L1)
424 #define BIT_GET_OCP_L1(x) (((x) >> BIT_SHIFT_OCP_L1) & BIT_MASK_OCP_L1)
425
426 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
427
428 #define BIT_SHIFT_CF_L 13
429 #define BIT_MASK_CF_L 0x3
430 #define BIT_CF_L(x) (((x) & BIT_MASK_CF_L) << BIT_SHIFT_CF_L)
431 #define BIT_GET_CF_L(x) (((x) >> BIT_SHIFT_CF_L) & BIT_MASK_CF_L)
432
433 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
434
435 #define BIT_SW18_FPWM BIT(11)
436
437 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
438
439 #define BIT_SW18_SWEN BIT(9)
440 #define BIT_SW18_LDEN BIT(8)
441 #define BIT_MAC_ID_EN BIT(7)
442
443 /* 2 REG_SYS_SWR_CTRL1                  (Offset 0x0010) */
444
445 #define BIT_AFE_BGEN BIT(0)
446
447 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
448
449 #define BIT_POW_ZCD_L BIT(31)
450
451 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
452
453 #define BIT_SDIO_CRCERR_MSK BIT(31)
454
455 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
456
457 #define BIT_AUTOZCD_L BIT(30)
458 #define BIT_SDIO_HSISR3_IND_MSK BIT(30)
459 #define BIT_SDIO_HSISR2_IND_MSK BIT(29)
460
461 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
462
463 #define BIT_SHIFT_REG_DELAY 28
464 #define BIT_MASK_REG_DELAY 0x3
465 #define BIT_REG_DELAY(x) (((x) & BIT_MASK_REG_DELAY) << BIT_SHIFT_REG_DELAY)
466 #define BIT_GET_REG_DELAY(x) (((x) >> BIT_SHIFT_REG_DELAY) & BIT_MASK_REG_DELAY)
467
468 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
469
470 #define BIT_SDIO_HEISR_IND_MSK BIT(28)
471
472 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
473
474 #define BIT_SDIO_CTWEND_MSK BIT(27)
475 #define BIT_SDIO_ATIMEND_E_MSK BIT(26)
476
477 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
478
479 #define BIT_SDIIO_ATIMEND_MSK BIT(25)
480
481 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
482
483 #define BIT_SDIO_OCPINT_MSK BIT(24)
484
485 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
486
487 #define BIT_SHIFT_V15ADJ_L1_V1 24
488 #define BIT_MASK_V15ADJ_L1_V1 0x7
489 #define BIT_V15ADJ_L1_V1(x)                                                    \
490         (((x) & BIT_MASK_V15ADJ_L1_V1) << BIT_SHIFT_V15ADJ_L1_V1)
491 #define BIT_GET_V15ADJ_L1_V1(x)                                                \
492         (((x) >> BIT_SHIFT_V15ADJ_L1_V1) & BIT_MASK_V15ADJ_L1_V1)
493
494 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
495
496 #define BIT_SDIO_PSTIMEOUT_MSK BIT(23)
497
498 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
499
500 #define BIT_SDIO_GTINT4_MSK BIT(22)
501
502 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
503
504 #define BIT_SDIO_GTINT3_MSK BIT(21)
505
506 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
507
508 #define BIT_SDIO_HSISR_IND_MSK BIT(20)
509
510 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
511
512 #define BIT_SHIFT_VOL_L1_V1 20
513 #define BIT_MASK_VOL_L1_V1 0xf
514 #define BIT_VOL_L1_V1(x) (((x) & BIT_MASK_VOL_L1_V1) << BIT_SHIFT_VOL_L1_V1)
515 #define BIT_GET_VOL_L1_V1(x) (((x) >> BIT_SHIFT_VOL_L1_V1) & BIT_MASK_VOL_L1_V1)
516
517 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
518
519 #define BIT_SDIO_CPWM2_MSK BIT(19)
520
521 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
522
523 #define BIT_SDIO_CPWM1_MSK BIT(18)
524
525 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
526
527 #define BIT_SDIO_C2HCMD_INT_MSK BIT(17)
528
529 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
530
531 #define BIT_SHIFT_IN_L1_V1 17
532 #define BIT_MASK_IN_L1_V1 0x7
533 #define BIT_IN_L1_V1(x) (((x) & BIT_MASK_IN_L1_V1) << BIT_SHIFT_IN_L1_V1)
534 #define BIT_GET_IN_L1_V1(x) (((x) >> BIT_SHIFT_IN_L1_V1) & BIT_MASK_IN_L1_V1)
535
536 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
537
538 #define BIT_SDIO_BCNERLY_INT_MSK BIT(16)
539
540 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
541
542 #define BIT_SHIFT_TBOX_L1 15
543 #define BIT_MASK_TBOX_L1 0x3
544 #define BIT_TBOX_L1(x) (((x) & BIT_MASK_TBOX_L1) << BIT_SHIFT_TBOX_L1)
545 #define BIT_GET_TBOX_L1(x) (((x) >> BIT_SHIFT_TBOX_L1) & BIT_MASK_TBOX_L1)
546
547 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
548
549 #define BIT_SW18_SEL BIT(13)
550
551 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
552
553 #define BIT_SW18_SD BIT(10)
554
555 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
556
557 #define BIT_SDIO_TXBCNERR_MSK BIT(7)
558
559 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
560
561 #define BIT_SHIFT_R3_L 7
562 #define BIT_MASK_R3_L 0x3
563 #define BIT_R3_L(x) (((x) & BIT_MASK_R3_L) << BIT_SHIFT_R3_L)
564 #define BIT_GET_R3_L(x) (((x) >> BIT_SHIFT_R3_L) & BIT_MASK_R3_L)
565
566 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
567
568 #define BIT_SDIO_TXBCNOK_MSK BIT(6)
569
570 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
571
572 #define BIT_SHIFT_SW18_R2 5
573 #define BIT_MASK_SW18_R2 0x3
574 #define BIT_SW18_R2(x) (((x) & BIT_MASK_SW18_R2) << BIT_SHIFT_SW18_R2)
575 #define BIT_GET_SW18_R2(x) (((x) >> BIT_SHIFT_SW18_R2) & BIT_MASK_SW18_R2)
576
577 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
578
579 #define BIT_SDIO_RXFOVW_MSK BIT(5)
580 #define BIT_SDIO_TXFOVW_MSK BIT(4)
581
582 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
583
584 #define BIT_SHIFT_SW18_R1 3
585 #define BIT_MASK_SW18_R1 0x3
586 #define BIT_SW18_R1(x) (((x) & BIT_MASK_SW18_R1) << BIT_SHIFT_SW18_R1)
587 #define BIT_GET_SW18_R1(x) (((x) >> BIT_SHIFT_SW18_R1) & BIT_MASK_SW18_R1)
588
589 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
590
591 #define BIT_SDIO_RXERR_MSK BIT(3)
592 #define BIT_SDIO_TXERR_MSK BIT(2)
593
594 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
595
596 #define BIT_SDIO_AVAL_MSK BIT(1)
597
598 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
599
600 #define BIT_SHIFT_C3_L_C3 1
601 #define BIT_MASK_C3_L_C3 0x3
602 #define BIT_C3_L_C3(x) (((x) & BIT_MASK_C3_L_C3) << BIT_SHIFT_C3_L_C3)
603 #define BIT_GET_C3_L_C3(x) (((x) >> BIT_SHIFT_C3_L_C3) & BIT_MASK_C3_L_C3)
604
605 /* 2 REG_SDIO_HIMR                              (Offset 0x10250014) */
606
607 #define BIT_RX_REQUEST_MSK BIT(0)
608
609 /* 2 REG_SYS_SWR_CTRL2                  (Offset 0x0014) */
610
611 #define BIT_C2_L_BIT1 BIT(0)
612
613 /* 2 REG_SYS_SWR_CTRL3                  (Offset 0x0018) */
614
615 #define BIT_SPS18_OCP_DIS BIT(31)
616
617 /* 2 REG_SDIO_HISR                              (Offset 0x10250018) */
618
619 #define BIT_SDIO_CRCERR BIT(31)
620
621 /* 2 REG_SDIO_HISR                              (Offset 0x10250018) */
622
623 #define BIT_SDIO_HSISR3_IND BIT(30)
624 #define BIT_SDIO_HSISR2_IND BIT(29)
625 #define BIT_SDIO_HEISR_IND BIT(28)
626
627 /* 2 REG_SDIO_HISR                              (Offset 0x10250018) */
628
629 #define BIT_SDIO_CTWEND BIT(27)
630 #define BIT_SDIO_ATIMEND_E BIT(26)
631 #define BIT_SDIO_ATIMEND BIT(25)
632 #define BIT_SDIO_OCPINT BIT(24)
633 #define BIT_SDIO_PSTIMEOUT BIT(23)
634 #define BIT_SDIO_GTINT4 BIT(22)
635 #define BIT_SDIO_GTINT3 BIT(21)
636 #define BIT_SDIO_HSISR_IND BIT(20)
637 #define BIT_SDIO_CPWM2 BIT(19)
638 #define BIT_SDIO_CPWM1 BIT(18)
639 #define BIT_SDIO_C2HCMD_INT BIT(17)
640
641 /* 2 REG_SYS_SWR_CTRL3                  (Offset 0x0018) */
642
643 #define BIT_SHIFT_SPS18_OCP_TH 16
644 #define BIT_MASK_SPS18_OCP_TH 0x7fff
645 #define BIT_SPS18_OCP_TH(x)                                                    \
646         (((x) & BIT_MASK_SPS18_OCP_TH) << BIT_SHIFT_SPS18_OCP_TH)
647 #define BIT_GET_SPS18_OCP_TH(x)                                                \
648         (((x) >> BIT_SHIFT_SPS18_OCP_TH) & BIT_MASK_SPS18_OCP_TH)
649
650 /* 2 REG_SDIO_HISR                              (Offset 0x10250018) */
651
652 #define BIT_SDIO_BCNERLY_INT BIT(16)
653 #define BIT_SDIO_TXBCNERR BIT(7)
654 #define BIT_SDIO_TXBCNOK BIT(6)
655 #define BIT_SDIO_RXFOVW BIT(5)
656 #define BIT_SDIO_TXFOVW BIT(4)
657 #define BIT_SDIO_RXERR BIT(3)
658 #define BIT_SDIO_TXERR BIT(2)
659 #define BIT_SDIO_AVAL BIT(1)
660
661 /* 2 REG_SYS_SWR_CTRL3                  (Offset 0x0018) */
662
663 #define BIT_SHIFT_OCP_WINDOW 0
664 #define BIT_MASK_OCP_WINDOW 0xffff
665 #define BIT_OCP_WINDOW(x) (((x) & BIT_MASK_OCP_WINDOW) << BIT_SHIFT_OCP_WINDOW)
666 #define BIT_GET_OCP_WINDOW(x)                                                  \
667         (((x) >> BIT_SHIFT_OCP_WINDOW) & BIT_MASK_OCP_WINDOW)
668
669 /* 2 REG_SDIO_HISR                              (Offset 0x10250018) */
670
671 #define BIT_RX_REQUEST BIT(0)
672
673 /* 2 REG_RSV_CTRL                               (Offset 0x001C) */
674
675 #define BIT_HREG_DBG BIT(23)
676
677 /* 2 REG_RSV_CTRL                               (Offset 0x001C) */
678
679 #define BIT_WLMCUIOIF BIT(8)
680
681 /* 2 REG_RSV_CTRL                               (Offset 0x001C) */
682
683 #define BIT_LOCK_ALL_EN BIT(7)
684
685 /* 2 REG_RSV_CTRL                               (Offset 0x001C) */
686
687 #define BIT_R_DIS_PRST BIT(6)
688
689 /* 2 REG_RSV_CTRL                               (Offset 0x001C) */
690
691 #define BIT_WLOCK_1C_B6 BIT(5)
692
693 /* 2 REG_RSV_CTRL                               (Offset 0x001C) */
694
695 #define BIT_WLOCK_40 BIT(4)
696 #define BIT_WLOCK_08 BIT(3)
697 #define BIT_WLOCK_04 BIT(2)
698 #define BIT_WLOCK_00 BIT(1)
699 #define BIT_WLOCK_ALL BIT(0)
700
701 /* 2 REG_SDIO_RX_REQ_LEN                        (Offset 0x1025001C) */
702
703 #define BIT_SHIFT_RX_REQ_LEN_V1 0
704 #define BIT_MASK_RX_REQ_LEN_V1 0x3ffff
705 #define BIT_RX_REQ_LEN_V1(x)                                                   \
706         (((x) & BIT_MASK_RX_REQ_LEN_V1) << BIT_SHIFT_RX_REQ_LEN_V1)
707 #define BIT_GET_RX_REQ_LEN_V1(x)                                               \
708         (((x) >> BIT_SHIFT_RX_REQ_LEN_V1) & BIT_MASK_RX_REQ_LEN_V1)
709
710 /* 2 REG_RF_CTRL                                (Offset 0x001F) */
711
712 #define BIT_RF_SDMRSTB BIT(2)
713
714 /* 2 REG_RF_CTRL                                (Offset 0x001F) */
715
716 #define BIT_RF_RSTB BIT(1)
717
718 /* 2 REG_RF_CTRL                                (Offset 0x001F) */
719
720 #define BIT_RF_EN BIT(0)
721
722 /* 2 REG_SDIO_FREE_TXPG_SEQ_V1          (Offset 0x1025001F) */
723
724 #define BIT_SHIFT_FREE_TXPG_SEQ 0
725 #define BIT_MASK_FREE_TXPG_SEQ 0xff
726 #define BIT_FREE_TXPG_SEQ(x)                                                   \
727         (((x) & BIT_MASK_FREE_TXPG_SEQ) << BIT_SHIFT_FREE_TXPG_SEQ)
728 #define BIT_GET_FREE_TXPG_SEQ(x)                                               \
729         (((x) >> BIT_SHIFT_FREE_TXPG_SEQ) & BIT_MASK_FREE_TXPG_SEQ)
730
731 /* 2 REG_AFE_LDO_CTRL                   (Offset 0x0020) */
732
733 #define BIT_SHIFT_LPLDH12_RSV 29
734 #define BIT_MASK_LPLDH12_RSV 0x7
735 #define BIT_LPLDH12_RSV(x)                                                     \
736         (((x) & BIT_MASK_LPLDH12_RSV) << BIT_SHIFT_LPLDH12_RSV)
737 #define BIT_GET_LPLDH12_RSV(x)                                                 \
738         (((x) >> BIT_SHIFT_LPLDH12_RSV) & BIT_MASK_LPLDH12_RSV)
739
740 /* 2 REG_AFE_LDO_CTRL                   (Offset 0x0020) */
741
742 #define BIT_LPLDH12_SLP BIT(28)
743
744 #define BIT_SHIFT_LPLDH12_VADJ 24
745 #define BIT_MASK_LPLDH12_VADJ 0xf
746 #define BIT_LPLDH12_VADJ(x)                                                    \
747         (((x) & BIT_MASK_LPLDH12_VADJ) << BIT_SHIFT_LPLDH12_VADJ)
748 #define BIT_GET_LPLDH12_VADJ(x)                                                \
749         (((x) >> BIT_SHIFT_LPLDH12_VADJ) & BIT_MASK_LPLDH12_VADJ)
750
751 /* 2 REG_AFE_LDO_CTRL                   (Offset 0x0020) */
752
753 #define BIT_LDH12_EN BIT(16)
754
755 /* 2 REG_SDIO_FREE_TXPG                 (Offset 0x10250020) */
756
757 #define BIT_SHIFT_MID_FREEPG_V1 16
758 #define BIT_MASK_MID_FREEPG_V1 0xfff
759 #define BIT_MID_FREEPG_V1(x)                                                   \
760         (((x) & BIT_MASK_MID_FREEPG_V1) << BIT_SHIFT_MID_FREEPG_V1)
761 #define BIT_GET_MID_FREEPG_V1(x)                                               \
762         (((x) >> BIT_SHIFT_MID_FREEPG_V1) & BIT_MASK_MID_FREEPG_V1)
763
764 /* 2 REG_AFE_LDO_CTRL                   (Offset 0x0020) */
765
766 #define BIT_WLBBOFF_BIG_PWC_EN BIT(14)
767 #define BIT_WLBBOFF_SMALL_PWC_EN BIT(13)
768 #define BIT_WLMACOFF_BIG_PWC_EN BIT(12)
769 #define BIT_WLPON_PWC_EN BIT(11)
770
771 /* 2 REG_AFE_LDO_CTRL                   (Offset 0x0020) */
772
773 #define BIT_POW_REGU_P1 BIT(10)
774
775 /* 2 REG_AFE_LDO_CTRL                   (Offset 0x0020) */
776
777 #define BIT_LDOV12W_EN BIT(8)
778
779 /* 2 REG_AFE_LDO_CTRL                   (Offset 0x0020) */
780
781 #define BIT_EX_XTAL_DRV_DIGI BIT(7)
782 #define BIT_EX_XTAL_DRV_USB BIT(6)
783 #define BIT_EX_XTAL_DRV_AFE BIT(5)
784
785 /* 2 REG_AFE_LDO_CTRL                   (Offset 0x0020) */
786
787 #define BIT_EX_XTAL_DRV_RF2 BIT(4)
788
789 /* 2 REG_AFE_LDO_CTRL                   (Offset 0x0020) */
790
791 #define BIT_EX_XTAL_DRV_RF1 BIT(3)
792 #define BIT_POW_REGU_P0 BIT(2)
793
794 /* 2 REG_AFE_LDO_CTRL                   (Offset 0x0020) */
795
796 #define BIT_POW_PLL_LDO BIT(0)
797
798 /* 2 REG_SDIO_FREE_TXPG                 (Offset 0x10250020) */
799
800 #define BIT_SHIFT_HIQ_FREEPG_V1 0
801 #define BIT_MASK_HIQ_FREEPG_V1 0xfff
802 #define BIT_HIQ_FREEPG_V1(x)                                                   \
803         (((x) & BIT_MASK_HIQ_FREEPG_V1) << BIT_SHIFT_HIQ_FREEPG_V1)
804 #define BIT_GET_HIQ_FREEPG_V1(x)                                               \
805         (((x) >> BIT_SHIFT_HIQ_FREEPG_V1) & BIT_MASK_HIQ_FREEPG_V1)
806
807 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
808
809 #define BIT_AGPIO_GPE BIT(31)
810
811 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
812
813 #define BIT_SHIFT_XTAL_CAP_XI 25
814 #define BIT_MASK_XTAL_CAP_XI 0x3f
815 #define BIT_XTAL_CAP_XI(x)                                                     \
816         (((x) & BIT_MASK_XTAL_CAP_XI) << BIT_SHIFT_XTAL_CAP_XI)
817 #define BIT_GET_XTAL_CAP_XI(x)                                                 \
818         (((x) >> BIT_SHIFT_XTAL_CAP_XI) & BIT_MASK_XTAL_CAP_XI)
819
820 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
821
822 #define BIT_SHIFT_XTAL_DRV_DIGI 23
823 #define BIT_MASK_XTAL_DRV_DIGI 0x3
824 #define BIT_XTAL_DRV_DIGI(x)                                                   \
825         (((x) & BIT_MASK_XTAL_DRV_DIGI) << BIT_SHIFT_XTAL_DRV_DIGI)
826 #define BIT_GET_XTAL_DRV_DIGI(x)                                               \
827         (((x) >> BIT_SHIFT_XTAL_DRV_DIGI) & BIT_MASK_XTAL_DRV_DIGI)
828
829 #define BIT_XTAL_DRV_USB_BIT1 BIT(22)
830
831 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
832
833 #define BIT_SHIFT_MAC_CLK_SEL 20
834 #define BIT_MASK_MAC_CLK_SEL 0x3
835 #define BIT_MAC_CLK_SEL(x)                                                     \
836         (((x) & BIT_MASK_MAC_CLK_SEL) << BIT_SHIFT_MAC_CLK_SEL)
837 #define BIT_GET_MAC_CLK_SEL(x)                                                 \
838         (((x) >> BIT_SHIFT_MAC_CLK_SEL) & BIT_MASK_MAC_CLK_SEL)
839
840 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
841
842 #define BIT_XTAL_DRV_USB_BIT0 BIT(19)
843
844 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
845
846 #define BIT_SHIFT_XTAL_DRV_AFE 17
847 #define BIT_MASK_XTAL_DRV_AFE 0x3
848 #define BIT_XTAL_DRV_AFE(x)                                                    \
849         (((x) & BIT_MASK_XTAL_DRV_AFE) << BIT_SHIFT_XTAL_DRV_AFE)
850 #define BIT_GET_XTAL_DRV_AFE(x)                                                \
851         (((x) >> BIT_SHIFT_XTAL_DRV_AFE) & BIT_MASK_XTAL_DRV_AFE)
852
853 /* 2 REG_SDIO_FREE_TXPG2                        (Offset 0x10250024) */
854
855 #define BIT_SHIFT_PUB_FREEPG_V1 16
856 #define BIT_MASK_PUB_FREEPG_V1 0xfff
857 #define BIT_PUB_FREEPG_V1(x)                                                   \
858         (((x) & BIT_MASK_PUB_FREEPG_V1) << BIT_SHIFT_PUB_FREEPG_V1)
859 #define BIT_GET_PUB_FREEPG_V1(x)                                               \
860         (((x) >> BIT_SHIFT_PUB_FREEPG_V1) & BIT_MASK_PUB_FREEPG_V1)
861
862 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
863
864 #define BIT_SHIFT_XTAL_DRV_RF2 15
865 #define BIT_MASK_XTAL_DRV_RF2 0x3
866 #define BIT_XTAL_DRV_RF2(x)                                                    \
867         (((x) & BIT_MASK_XTAL_DRV_RF2) << BIT_SHIFT_XTAL_DRV_RF2)
868 #define BIT_GET_XTAL_DRV_RF2(x)                                                \
869         (((x) >> BIT_SHIFT_XTAL_DRV_RF2) & BIT_MASK_XTAL_DRV_RF2)
870
871 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
872
873 #define BIT_SHIFT_XTAL_DRV_RF1 13
874 #define BIT_MASK_XTAL_DRV_RF1 0x3
875 #define BIT_XTAL_DRV_RF1(x)                                                    \
876         (((x) & BIT_MASK_XTAL_DRV_RF1) << BIT_SHIFT_XTAL_DRV_RF1)
877 #define BIT_GET_XTAL_DRV_RF1(x)                                                \
878         (((x) >> BIT_SHIFT_XTAL_DRV_RF1) & BIT_MASK_XTAL_DRV_RF1)
879
880 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
881
882 #define BIT_XTAL_DELAY_DIGI BIT(12)
883
884 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
885
886 #define BIT_XTAL_DELAY_USB BIT(11)
887 #define BIT_XTAL_DELAY_AFE BIT(10)
888
889 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
890
891 #define BIT_SHIFT_XTAL_LDO_VREF 7
892 #define BIT_MASK_XTAL_LDO_VREF 0x7
893 #define BIT_XTAL_LDO_VREF(x)                                                   \
894         (((x) & BIT_MASK_XTAL_LDO_VREF) << BIT_SHIFT_XTAL_LDO_VREF)
895 #define BIT_GET_XTAL_LDO_VREF(x)                                               \
896         (((x) >> BIT_SHIFT_XTAL_LDO_VREF) & BIT_MASK_XTAL_LDO_VREF)
897
898 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
899
900 #define BIT_XTAL_XQSEL_RF BIT(6)
901 #define BIT_XTAL_XQSEL BIT(5)
902
903 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
904
905 #define BIT_SHIFT_XTAL_GMN_V2 3
906 #define BIT_MASK_XTAL_GMN_V2 0x3
907 #define BIT_XTAL_GMN_V2(x)                                                     \
908         (((x) & BIT_MASK_XTAL_GMN_V2) << BIT_SHIFT_XTAL_GMN_V2)
909 #define BIT_GET_XTAL_GMN_V2(x)                                                 \
910         (((x) >> BIT_SHIFT_XTAL_GMN_V2) & BIT_MASK_XTAL_GMN_V2)
911
912 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
913
914 #define BIT_SHIFT_XTAL_GMP_V2 1
915 #define BIT_MASK_XTAL_GMP_V2 0x3
916 #define BIT_XTAL_GMP_V2(x)                                                     \
917         (((x) & BIT_MASK_XTAL_GMP_V2) << BIT_SHIFT_XTAL_GMP_V2)
918 #define BIT_GET_XTAL_GMP_V2(x)                                                 \
919         (((x) >> BIT_SHIFT_XTAL_GMP_V2) & BIT_MASK_XTAL_GMP_V2)
920
921 /* 2 REG_AFE_CTRL1                              (Offset 0x0024) */
922
923 #define BIT_XTAL_EN BIT(0)
924
925 /* 2 REG_SDIO_FREE_TXPG2                        (Offset 0x10250024) */
926
927 #define BIT_SHIFT_LOW_FREEPG_V1 0
928 #define BIT_MASK_LOW_FREEPG_V1 0xfff
929 #define BIT_LOW_FREEPG_V1(x)                                                   \
930         (((x) & BIT_MASK_LOW_FREEPG_V1) << BIT_SHIFT_LOW_FREEPG_V1)
931 #define BIT_GET_LOW_FREEPG_V1(x)                                               \
932         (((x) >> BIT_SHIFT_LOW_FREEPG_V1) & BIT_MASK_LOW_FREEPG_V1)
933
934 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
935
936 #define BIT_SHIFT_REG_C3_V4 30
937 #define BIT_MASK_REG_C3_V4 0x3
938 #define BIT_REG_C3_V4(x) (((x) & BIT_MASK_REG_C3_V4) << BIT_SHIFT_REG_C3_V4)
939 #define BIT_GET_REG_C3_V4(x) (((x) >> BIT_SHIFT_REG_C3_V4) & BIT_MASK_REG_C3_V4)
940
941 #define BIT_REG_CP_BIT1 BIT(29)
942
943 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
944
945 #define BIT_SHIFT_REG_RS_V4 26
946 #define BIT_MASK_REG_RS_V4 0x7
947 #define BIT_REG_RS_V4(x) (((x) & BIT_MASK_REG_RS_V4) << BIT_SHIFT_REG_RS_V4)
948 #define BIT_GET_REG_RS_V4(x) (((x) >> BIT_SHIFT_REG_RS_V4) & BIT_MASK_REG_RS_V4)
949
950 /* 2 REG_SDIO_OQT_FREE_TXPG_V1          (Offset 0x10250028) */
951
952 #define BIT_SHIFT_NOAC_OQT_FREEPG_V1 24
953 #define BIT_MASK_NOAC_OQT_FREEPG_V1 0xff
954 #define BIT_NOAC_OQT_FREEPG_V1(x)                                              \
955         (((x) & BIT_MASK_NOAC_OQT_FREEPG_V1) << BIT_SHIFT_NOAC_OQT_FREEPG_V1)
956 #define BIT_GET_NOAC_OQT_FREEPG_V1(x)                                          \
957         (((x) >> BIT_SHIFT_NOAC_OQT_FREEPG_V1) & BIT_MASK_NOAC_OQT_FREEPG_V1)
958
959 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
960
961 #define BIT_SHIFT_REG__CS 24
962 #define BIT_MASK_REG__CS 0x3
963 #define BIT_REG__CS(x) (((x) & BIT_MASK_REG__CS) << BIT_SHIFT_REG__CS)
964 #define BIT_GET_REG__CS(x) (((x) >> BIT_SHIFT_REG__CS) & BIT_MASK_REG__CS)
965
966 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
967
968 #define BIT_SHIFT_REG_CP_OFFSET 21
969 #define BIT_MASK_REG_CP_OFFSET 0x7
970 #define BIT_REG_CP_OFFSET(x)                                                   \
971         (((x) & BIT_MASK_REG_CP_OFFSET) << BIT_SHIFT_REG_CP_OFFSET)
972 #define BIT_GET_REG_CP_OFFSET(x)                                               \
973         (((x) >> BIT_SHIFT_REG_CP_OFFSET) & BIT_MASK_REG_CP_OFFSET)
974
975 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
976
977 #define BIT_SHIFT_CP_BIAS 18
978 #define BIT_MASK_CP_BIAS 0x7
979 #define BIT_CP_BIAS(x) (((x) & BIT_MASK_CP_BIAS) << BIT_SHIFT_CP_BIAS)
980 #define BIT_GET_CP_BIAS(x) (((x) >> BIT_SHIFT_CP_BIAS) & BIT_MASK_CP_BIAS)
981
982 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
983
984 #define BIT_REG_IDOUBLE_V2 BIT(17)
985
986 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
987
988 #define BIT_EN_SYN BIT(16)
989
990 #define BIT_SHIFT_AC_OQT_FREEPG_V1 16
991 #define BIT_MASK_AC_OQT_FREEPG_V1 0xff
992 #define BIT_AC_OQT_FREEPG_V1(x)                                                \
993         (((x) & BIT_MASK_AC_OQT_FREEPG_V1) << BIT_SHIFT_AC_OQT_FREEPG_V1)
994 #define BIT_GET_AC_OQT_FREEPG_V1(x)                                            \
995         (((x) >> BIT_SHIFT_AC_OQT_FREEPG_V1) & BIT_MASK_AC_OQT_FREEPG_V1)
996
997 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
998
999 #define BIT_SHIFT_MCCO 14
1000 #define BIT_MASK_MCCO 0x3
1001 #define BIT_MCCO(x) (((x) & BIT_MASK_MCCO) << BIT_SHIFT_MCCO)
1002 #define BIT_GET_MCCO(x) (((x) >> BIT_SHIFT_MCCO) & BIT_MASK_MCCO)
1003
1004 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
1005
1006 #define BIT_SHIFT_REG_LDO_SEL 12
1007 #define BIT_MASK_REG_LDO_SEL 0x3
1008 #define BIT_REG_LDO_SEL(x)                                                     \
1009         (((x) & BIT_MASK_REG_LDO_SEL) << BIT_SHIFT_REG_LDO_SEL)
1010 #define BIT_GET_REG_LDO_SEL(x)                                                 \
1011         (((x) >> BIT_SHIFT_REG_LDO_SEL) & BIT_MASK_REG_LDO_SEL)
1012
1013 #define BIT_REG_KVCO_V2 BIT(10)
1014
1015 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
1016
1017 #define BIT_AGPIO_GPO BIT(9)
1018
1019 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
1020
1021 #define BIT_SHIFT_AGPIO_DRV 7
1022 #define BIT_MASK_AGPIO_DRV 0x3
1023 #define BIT_AGPIO_DRV(x) (((x) & BIT_MASK_AGPIO_DRV) << BIT_SHIFT_AGPIO_DRV)
1024 #define BIT_GET_AGPIO_DRV(x) (((x) >> BIT_SHIFT_AGPIO_DRV) & BIT_MASK_AGPIO_DRV)
1025
1026 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
1027
1028 #define BIT_SHIFT_XTAL_CAP_XO 1
1029 #define BIT_MASK_XTAL_CAP_XO 0x3f
1030 #define BIT_XTAL_CAP_XO(x)                                                     \
1031         (((x) & BIT_MASK_XTAL_CAP_XO) << BIT_SHIFT_XTAL_CAP_XO)
1032 #define BIT_GET_XTAL_CAP_XO(x)                                                 \
1033         (((x) >> BIT_SHIFT_XTAL_CAP_XO) & BIT_MASK_XTAL_CAP_XO)
1034
1035 /* 2 REG_AFE_CTRL2                              (Offset 0x0028) */
1036
1037 #define BIT_POW_PLL BIT(0)
1038
1039 /* 2 REG_SDIO_OQT_FREE_TXPG_V1          (Offset 0x10250028) */
1040
1041 #define BIT_SHIFT_EXQ_FREEPG_V1 0
1042 #define BIT_MASK_EXQ_FREEPG_V1 0xfff
1043 #define BIT_EXQ_FREEPG_V1(x)                                                   \
1044         (((x) & BIT_MASK_EXQ_FREEPG_V1) << BIT_SHIFT_EXQ_FREEPG_V1)
1045 #define BIT_GET_EXQ_FREEPG_V1(x)                                               \
1046         (((x) >> BIT_SHIFT_EXQ_FREEPG_V1) & BIT_MASK_EXQ_FREEPG_V1)
1047
1048 /* 2 REG_AFE_CTRL3                              (Offset 0x002C) */
1049
1050 #define BIT_SHIFT_PS 7
1051 #define BIT_MASK_PS 0x7
1052 #define BIT_PS(x) (((x) & BIT_MASK_PS) << BIT_SHIFT_PS)
1053 #define BIT_GET_PS(x) (((x) >> BIT_SHIFT_PS) & BIT_MASK_PS)
1054
1055 /* 2 REG_AFE_CTRL3                              (Offset 0x002C) */
1056
1057 #define BIT_PSEN BIT(6)
1058 #define BIT_DOGENB BIT(5)
1059
1060 /* 2 REG_AFE_CTRL3                              (Offset 0x002C) */
1061
1062 #define BIT_REG_MBIAS BIT(4)
1063
1064 /* 2 REG_AFE_CTRL3                              (Offset 0x002C) */
1065
1066 #define BIT_SHIFT_REG_R3_V4 1
1067 #define BIT_MASK_REG_R3_V4 0x7
1068 #define BIT_REG_R3_V4(x) (((x) & BIT_MASK_REG_R3_V4) << BIT_SHIFT_REG_R3_V4)
1069 #define BIT_GET_REG_R3_V4(x) (((x) >> BIT_SHIFT_REG_R3_V4) & BIT_MASK_REG_R3_V4)
1070
1071 /* 2 REG_AFE_CTRL3                              (Offset 0x002C) */
1072
1073 #define BIT_REG_CP_BIT0 BIT(0)
1074
1075 /* 2 REG_EFUSE_CTRL                             (Offset 0x0030) */
1076
1077 #define BIT_EF_FLAG BIT(31)
1078
1079 #define BIT_SHIFT_EF_PGPD 28
1080 #define BIT_MASK_EF_PGPD 0x7
1081 #define BIT_EF_PGPD(x) (((x) & BIT_MASK_EF_PGPD) << BIT_SHIFT_EF_PGPD)
1082 #define BIT_GET_EF_PGPD(x) (((x) >> BIT_SHIFT_EF_PGPD) & BIT_MASK_EF_PGPD)
1083
1084 #define BIT_SHIFT_EF_RDT 24
1085 #define BIT_MASK_EF_RDT 0xf
1086 #define BIT_EF_RDT(x) (((x) & BIT_MASK_EF_RDT) << BIT_SHIFT_EF_RDT)
1087 #define BIT_GET_EF_RDT(x) (((x) >> BIT_SHIFT_EF_RDT) & BIT_MASK_EF_RDT)
1088
1089 #define BIT_SHIFT_EF_PGTS 20
1090 #define BIT_MASK_EF_PGTS 0xf
1091 #define BIT_EF_PGTS(x) (((x) & BIT_MASK_EF_PGTS) << BIT_SHIFT_EF_PGTS)
1092 #define BIT_GET_EF_PGTS(x) (((x) >> BIT_SHIFT_EF_PGTS) & BIT_MASK_EF_PGTS)
1093
1094 /* 2 REG_EFUSE_CTRL                             (Offset 0x0030) */
1095
1096 #define BIT_EF_PDWN BIT(19)
1097
1098 /* 2 REG_EFUSE_CTRL                             (Offset 0x0030) */
1099
1100 #define BIT_EF_ALDEN BIT(18)
1101
1102 /* 2 REG_SDIO_HTSFR_INFO                        (Offset 0x10250030) */
1103
1104 #define BIT_SHIFT_HTSFR1 16
1105 #define BIT_MASK_HTSFR1 0xffff
1106 #define BIT_HTSFR1(x) (((x) & BIT_MASK_HTSFR1) << BIT_SHIFT_HTSFR1)
1107 #define BIT_GET_HTSFR1(x) (((x) >> BIT_SHIFT_HTSFR1) & BIT_MASK_HTSFR1)
1108
1109 /* 2 REG_EFUSE_CTRL                             (Offset 0x0030) */
1110
1111 #define BIT_SHIFT_EF_ADDR 8
1112 #define BIT_MASK_EF_ADDR 0x3ff
1113 #define BIT_EF_ADDR(x) (((x) & BIT_MASK_EF_ADDR) << BIT_SHIFT_EF_ADDR)
1114 #define BIT_GET_EF_ADDR(x) (((x) >> BIT_SHIFT_EF_ADDR) & BIT_MASK_EF_ADDR)
1115
1116 #define BIT_SHIFT_EF_DATA 0
1117 #define BIT_MASK_EF_DATA 0xff
1118 #define BIT_EF_DATA(x) (((x) & BIT_MASK_EF_DATA) << BIT_SHIFT_EF_DATA)
1119 #define BIT_GET_EF_DATA(x) (((x) >> BIT_SHIFT_EF_DATA) & BIT_MASK_EF_DATA)
1120
1121 /* 2 REG_SDIO_HTSFR_INFO                        (Offset 0x10250030) */
1122
1123 #define BIT_SHIFT_HTSFR0 0
1124 #define BIT_MASK_HTSFR0 0xffff
1125 #define BIT_HTSFR0(x) (((x) & BIT_MASK_HTSFR0) << BIT_SHIFT_HTSFR0)
1126 #define BIT_GET_HTSFR0(x) (((x) >> BIT_SHIFT_HTSFR0) & BIT_MASK_HTSFR0)
1127
1128 /* 2 REG_LDO_EFUSE_CTRL                 (Offset 0x0034) */
1129
1130 #define BIT_LDOE25_EN BIT(31)
1131
1132 /* 2 REG_LDO_EFUSE_CTRL                 (Offset 0x0034) */
1133
1134 #define BIT_SHIFT_LDOE25_V12ADJ_L 27
1135 #define BIT_MASK_LDOE25_V12ADJ_L 0xf
1136 #define BIT_LDOE25_V12ADJ_L(x)                                                 \
1137         (((x) & BIT_MASK_LDOE25_V12ADJ_L) << BIT_SHIFT_LDOE25_V12ADJ_L)
1138 #define BIT_GET_LDOE25_V12ADJ_L(x)                                             \
1139         (((x) >> BIT_SHIFT_LDOE25_V12ADJ_L) & BIT_MASK_LDOE25_V12ADJ_L)
1140
1141 /* 2 REG_LDO_EFUSE_CTRL                 (Offset 0x0034) */
1142
1143 #define BIT_EF_CRES_SEL BIT(26)
1144
1145 /* 2 REG_LDO_EFUSE_CTRL                 (Offset 0x0034) */
1146
1147 #define BIT_SHIFT_EF_SCAN_START_V1 16
1148 #define BIT_MASK_EF_SCAN_START_V1 0x3ff
1149 #define BIT_EF_SCAN_START_V1(x)                                                \
1150         (((x) & BIT_MASK_EF_SCAN_START_V1) << BIT_SHIFT_EF_SCAN_START_V1)
1151 #define BIT_GET_EF_SCAN_START_V1(x)                                            \
1152         (((x) >> BIT_SHIFT_EF_SCAN_START_V1) & BIT_MASK_EF_SCAN_START_V1)
1153
1154 /* 2 REG_LDO_EFUSE_CTRL                 (Offset 0x0034) */
1155
1156 #define BIT_SHIFT_EF_SCAN_END 12
1157 #define BIT_MASK_EF_SCAN_END 0xf
1158 #define BIT_EF_SCAN_END(x)                                                     \
1159         (((x) & BIT_MASK_EF_SCAN_END) << BIT_SHIFT_EF_SCAN_END)
1160 #define BIT_GET_EF_SCAN_END(x)                                                 \
1161         (((x) >> BIT_SHIFT_EF_SCAN_END) & BIT_MASK_EF_SCAN_END)
1162
1163 /* 2 REG_LDO_EFUSE_CTRL                 (Offset 0x0034) */
1164
1165 #define BIT_EF_PD_DIS BIT(11)
1166
1167 /* 2 REG_LDO_EFUSE_CTRL                 (Offset 0x0034) */
1168
1169 #define BIT_SHIFT_EF_CELL_SEL 8
1170 #define BIT_MASK_EF_CELL_SEL 0x3
1171 #define BIT_EF_CELL_SEL(x)                                                     \
1172         (((x) & BIT_MASK_EF_CELL_SEL) << BIT_SHIFT_EF_CELL_SEL)
1173 #define BIT_GET_EF_CELL_SEL(x)                                                 \
1174         (((x) >> BIT_SHIFT_EF_CELL_SEL) & BIT_MASK_EF_CELL_SEL)
1175
1176 /* 2 REG_LDO_EFUSE_CTRL                 (Offset 0x0034) */
1177
1178 #define BIT_EF_TRPT BIT(7)
1179
1180 #define BIT_SHIFT_EF_TTHD 0
1181 #define BIT_MASK_EF_TTHD 0x7f
1182 #define BIT_EF_TTHD(x) (((x) & BIT_MASK_EF_TTHD) << BIT_SHIFT_EF_TTHD)
1183 #define BIT_GET_EF_TTHD(x) (((x) >> BIT_SHIFT_EF_TTHD) & BIT_MASK_EF_TTHD)
1184
1185 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1186
1187 #define BIT_SHIFT_DBG_SEL_V1 16
1188 #define BIT_MASK_DBG_SEL_V1 0xff
1189 #define BIT_DBG_SEL_V1(x) (((x) & BIT_MASK_DBG_SEL_V1) << BIT_SHIFT_DBG_SEL_V1)
1190 #define BIT_GET_DBG_SEL_V1(x)                                                  \
1191         (((x) >> BIT_SHIFT_DBG_SEL_V1) & BIT_MASK_DBG_SEL_V1)
1192
1193 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1194
1195 #define BIT_SHIFT_DBG_SEL_BYTE 14
1196 #define BIT_MASK_DBG_SEL_BYTE 0x3
1197 #define BIT_DBG_SEL_BYTE(x)                                                    \
1198         (((x) & BIT_MASK_DBG_SEL_BYTE) << BIT_SHIFT_DBG_SEL_BYTE)
1199 #define BIT_GET_DBG_SEL_BYTE(x)                                                \
1200         (((x) >> BIT_SHIFT_DBG_SEL_BYTE) & BIT_MASK_DBG_SEL_BYTE)
1201
1202 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1203
1204 #define BIT_SHIFT_STD_L1_V1 12
1205 #define BIT_MASK_STD_L1_V1 0x3
1206 #define BIT_STD_L1_V1(x) (((x) & BIT_MASK_STD_L1_V1) << BIT_SHIFT_STD_L1_V1)
1207 #define BIT_GET_STD_L1_V1(x) (((x) >> BIT_SHIFT_STD_L1_V1) & BIT_MASK_STD_L1_V1)
1208
1209 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1210
1211 #define BIT_SYSON_DBG_PAD_E2 BIT(11)
1212
1213 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1214
1215 #define BIT_SYSON_LED_PAD_E2 BIT(10)
1216
1217 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1218
1219 #define BIT_SYSON_GPEE_PAD_E2 BIT(9)
1220
1221 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1222
1223 #define BIT_SYSON_PCI_PAD_E2 BIT(8)
1224
1225 #define BIT_SHIFT_MATCH_CNT 8
1226 #define BIT_MASK_MATCH_CNT 0xff
1227 #define BIT_MATCH_CNT(x) (((x) & BIT_MASK_MATCH_CNT) << BIT_SHIFT_MATCH_CNT)
1228 #define BIT_GET_MATCH_CNT(x) (((x) >> BIT_SHIFT_MATCH_CNT) & BIT_MASK_MATCH_CNT)
1229
1230 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1231
1232 #define BIT_AUTO_SW_LDO_VOL_EN BIT(7)
1233
1234 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1235
1236 #define BIT_SHIFT_SYSON_SPS0WWV_WT 4
1237 #define BIT_MASK_SYSON_SPS0WWV_WT 0x3
1238 #define BIT_SYSON_SPS0WWV_WT(x)                                                \
1239         (((x) & BIT_MASK_SYSON_SPS0WWV_WT) << BIT_SHIFT_SYSON_SPS0WWV_WT)
1240 #define BIT_GET_SYSON_SPS0WWV_WT(x)                                            \
1241         (((x) >> BIT_SHIFT_SYSON_SPS0WWV_WT) & BIT_MASK_SYSON_SPS0WWV_WT)
1242
1243 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1244
1245 #define BIT_SHIFT_SYSON_SPS0LDO_WT 2
1246 #define BIT_MASK_SYSON_SPS0LDO_WT 0x3
1247 #define BIT_SYSON_SPS0LDO_WT(x)                                                \
1248         (((x) & BIT_MASK_SYSON_SPS0LDO_WT) << BIT_SHIFT_SYSON_SPS0LDO_WT)
1249 #define BIT_GET_SYSON_SPS0LDO_WT(x)                                            \
1250         (((x) >> BIT_SHIFT_SYSON_SPS0LDO_WT) & BIT_MASK_SYSON_SPS0LDO_WT)
1251
1252 /* 2 REG_PWR_OPTION_CTRL                        (Offset 0x0038) */
1253
1254 #define BIT_SHIFT_SYSON_RCLK_SCALE 0
1255 #define BIT_MASK_SYSON_RCLK_SCALE 0x3
1256 #define BIT_SYSON_RCLK_SCALE(x)                                                \
1257         (((x) & BIT_MASK_SYSON_RCLK_SCALE) << BIT_SHIFT_SYSON_RCLK_SCALE)
1258 #define BIT_GET_SYSON_RCLK_SCALE(x)                                            \
1259         (((x) >> BIT_SHIFT_SYSON_RCLK_SCALE) & BIT_MASK_SYSON_RCLK_SCALE)
1260
1261 /* 2 REG_SDIO_HCPWM1_V2                 (Offset 0x10250038) */
1262
1263 #define BIT_SYS_CLK BIT(0)
1264
1265 /* 2 REG_CAL_TIMER                              (Offset 0x003C) */
1266
1267 #define BIT_SHIFT_CAL_SCAL 0
1268 #define BIT_MASK_CAL_SCAL 0xff
1269 #define BIT_CAL_SCAL(x) (((x) & BIT_MASK_CAL_SCAL) << BIT_SHIFT_CAL_SCAL)
1270 #define BIT_GET_CAL_SCAL(x) (((x) >> BIT_SHIFT_CAL_SCAL) & BIT_MASK_CAL_SCAL)
1271
1272 /* 2 REG_ACLK_MON                               (Offset 0x003E) */
1273
1274 #define BIT_SHIFT_RCLK_MON 5
1275 #define BIT_MASK_RCLK_MON 0x7ff
1276 #define BIT_RCLK_MON(x) (((x) & BIT_MASK_RCLK_MON) << BIT_SHIFT_RCLK_MON)
1277 #define BIT_GET_RCLK_MON(x) (((x) >> BIT_SHIFT_RCLK_MON) & BIT_MASK_RCLK_MON)
1278
1279 #define BIT_CAL_EN BIT(4)
1280
1281 #define BIT_SHIFT_DPSTU 2
1282 #define BIT_MASK_DPSTU 0x3
1283 #define BIT_DPSTU(x) (((x) & BIT_MASK_DPSTU) << BIT_SHIFT_DPSTU)
1284 #define BIT_GET_DPSTU(x) (((x) >> BIT_SHIFT_DPSTU) & BIT_MASK_DPSTU)
1285
1286 #define BIT_SUS_16X BIT(1)
1287
1288 /* 2 REG_SDIO_INDIRECT_REG_CFG          (Offset 0x10250040) */
1289
1290 #define BIT_INDIRECT_REG_RDY BIT(20)
1291
1292 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1293
1294 #define BIT_FSPI_EN BIT(19)
1295
1296 /* 2 REG_SDIO_INDIRECT_REG_CFG          (Offset 0x10250040) */
1297
1298 #define BIT_INDIRECT_REG_R BIT(19)
1299
1300 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1301
1302 #define BIT_WL_RTS_EXT_32K_SEL BIT(18)
1303
1304 /* 2 REG_SDIO_INDIRECT_REG_CFG          (Offset 0x10250040) */
1305
1306 #define BIT_INDIRECT_REG_W BIT(18)
1307
1308 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1309
1310 #define BIT_WLGP_SPI_EN BIT(16)
1311
1312 /* 2 REG_SDIO_INDIRECT_REG_CFG          (Offset 0x10250040) */
1313
1314 #define BIT_SHIFT_INDIRECT_REG_SIZE 16
1315 #define BIT_MASK_INDIRECT_REG_SIZE 0x3
1316 #define BIT_INDIRECT_REG_SIZE(x)                                               \
1317         (((x) & BIT_MASK_INDIRECT_REG_SIZE) << BIT_SHIFT_INDIRECT_REG_SIZE)
1318 #define BIT_GET_INDIRECT_REG_SIZE(x)                                           \
1319         (((x) >> BIT_SHIFT_INDIRECT_REG_SIZE) & BIT_MASK_INDIRECT_REG_SIZE)
1320
1321 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1322
1323 #define BIT_SIC_LBK BIT(15)
1324 #define BIT_ENHTP BIT(14)
1325
1326 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1327
1328 #define BIT_ENSIC BIT(12)
1329 #define BIT_SIC_SWRST BIT(11)
1330
1331 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1332
1333 #define BIT_PO_WIFI_PTA_PINS BIT(10)
1334
1335 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1336
1337 #define BIT_PO_BT_PTA_PINS BIT(9)
1338
1339 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1340
1341 #define BIT_ENUART BIT(8)
1342
1343 #define BIT_SHIFT_BTMODE 6
1344 #define BIT_MASK_BTMODE 0x3
1345 #define BIT_BTMODE(x) (((x) & BIT_MASK_BTMODE) << BIT_SHIFT_BTMODE)
1346 #define BIT_GET_BTMODE(x) (((x) >> BIT_SHIFT_BTMODE) & BIT_MASK_BTMODE)
1347
1348 #define BIT_ENBT BIT(5)
1349 #define BIT_EROM_EN BIT(4)
1350
1351 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1352
1353 #define BIT_WLRFE_6_7_EN BIT(3)
1354
1355 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1356
1357 #define BIT_WLRFE_4_5_EN BIT(2)
1358
1359 /* 2 REG_GPIO_MUXCFG                            (Offset 0x0040) */
1360
1361 #define BIT_SHIFT_GPIOSEL 0
1362 #define BIT_MASK_GPIOSEL 0x3
1363 #define BIT_GPIOSEL(x) (((x) & BIT_MASK_GPIOSEL) << BIT_SHIFT_GPIOSEL)
1364 #define BIT_GET_GPIOSEL(x) (((x) >> BIT_SHIFT_GPIOSEL) & BIT_MASK_GPIOSEL)
1365
1366 /* 2 REG_SDIO_INDIRECT_REG_CFG          (Offset 0x10250040) */
1367
1368 #define BIT_SHIFT_INDIRECT_REG_ADDR 0
1369 #define BIT_MASK_INDIRECT_REG_ADDR 0xffff
1370 #define BIT_INDIRECT_REG_ADDR(x)                                               \
1371         (((x) & BIT_MASK_INDIRECT_REG_ADDR) << BIT_SHIFT_INDIRECT_REG_ADDR)
1372 #define BIT_GET_INDIRECT_REG_ADDR(x)                                           \
1373         (((x) >> BIT_SHIFT_INDIRECT_REG_ADDR) & BIT_MASK_INDIRECT_REG_ADDR)
1374
1375 /* 2 REG_GPIO_PIN_CTRL                  (Offset 0x0044) */
1376
1377 #define BIT_SHIFT_GPIO_MOD_7_TO_0 24
1378 #define BIT_MASK_GPIO_MOD_7_TO_0 0xff
1379 #define BIT_GPIO_MOD_7_TO_0(x)                                                 \
1380         (((x) & BIT_MASK_GPIO_MOD_7_TO_0) << BIT_SHIFT_GPIO_MOD_7_TO_0)
1381 #define BIT_GET_GPIO_MOD_7_TO_0(x)                                             \
1382         (((x) >> BIT_SHIFT_GPIO_MOD_7_TO_0) & BIT_MASK_GPIO_MOD_7_TO_0)
1383
1384 #define BIT_SHIFT_GPIO_IO_SEL_7_TO_0 16
1385 #define BIT_MASK_GPIO_IO_SEL_7_TO_0 0xff
1386 #define BIT_GPIO_IO_SEL_7_TO_0(x)                                              \
1387         (((x) & BIT_MASK_GPIO_IO_SEL_7_TO_0) << BIT_SHIFT_GPIO_IO_SEL_7_TO_0)
1388 #define BIT_GET_GPIO_IO_SEL_7_TO_0(x)                                          \
1389         (((x) >> BIT_SHIFT_GPIO_IO_SEL_7_TO_0) & BIT_MASK_GPIO_IO_SEL_7_TO_0)
1390
1391 #define BIT_SHIFT_GPIO_OUT_7_TO_0 8
1392 #define BIT_MASK_GPIO_OUT_7_TO_0 0xff
1393 #define BIT_GPIO_OUT_7_TO_0(x)                                                 \
1394         (((x) & BIT_MASK_GPIO_OUT_7_TO_0) << BIT_SHIFT_GPIO_OUT_7_TO_0)
1395 #define BIT_GET_GPIO_OUT_7_TO_0(x)                                             \
1396         (((x) >> BIT_SHIFT_GPIO_OUT_7_TO_0) & BIT_MASK_GPIO_OUT_7_TO_0)
1397
1398 #define BIT_SHIFT_GPIO_IN_7_TO_0 0
1399 #define BIT_MASK_GPIO_IN_7_TO_0 0xff
1400 #define BIT_GPIO_IN_7_TO_0(x)                                                  \
1401         (((x) & BIT_MASK_GPIO_IN_7_TO_0) << BIT_SHIFT_GPIO_IN_7_TO_0)
1402 #define BIT_GET_GPIO_IN_7_TO_0(x)                                              \
1403         (((x) >> BIT_SHIFT_GPIO_IN_7_TO_0) & BIT_MASK_GPIO_IN_7_TO_0)
1404
1405 /* 2 REG_SDIO_INDIRECT_REG_DATA         (Offset 0x10250044) */
1406
1407 #define BIT_SHIFT_INDIRECT_REG_DATA 0
1408 #define BIT_MASK_INDIRECT_REG_DATA 0xffffffffL
1409 #define BIT_INDIRECT_REG_DATA(x)                                               \
1410         (((x) & BIT_MASK_INDIRECT_REG_DATA) << BIT_SHIFT_INDIRECT_REG_DATA)
1411 #define BIT_GET_INDIRECT_REG_DATA(x)                                           \
1412         (((x) >> BIT_SHIFT_INDIRECT_REG_DATA) & BIT_MASK_INDIRECT_REG_DATA)
1413
1414 /* 2 REG_GPIO_INTM                              (Offset 0x0048) */
1415
1416 #define BIT_SHIFT_MUXDBG_SEL 30
1417 #define BIT_MASK_MUXDBG_SEL 0x3
1418 #define BIT_MUXDBG_SEL(x) (((x) & BIT_MASK_MUXDBG_SEL) << BIT_SHIFT_MUXDBG_SEL)
1419 #define BIT_GET_MUXDBG_SEL(x)                                                  \
1420         (((x) >> BIT_SHIFT_MUXDBG_SEL) & BIT_MASK_MUXDBG_SEL)
1421
1422 /* 2 REG_GPIO_INTM                              (Offset 0x0048) */
1423
1424 #define BIT_EXTWOL_SEL BIT(17)
1425
1426 /* 2 REG_GPIO_INTM                              (Offset 0x0048) */
1427
1428 #define BIT_EXTWOL_EN BIT(16)
1429
1430 /* 2 REG_GPIO_INTM                              (Offset 0x0048) */
1431
1432 #define BIT_GPIOF_INT_MD BIT(15)
1433 #define BIT_GPIOE_INT_MD BIT(14)
1434 #define BIT_GPIOD_INT_MD BIT(13)
1435 #define BIT_GPIOC_INT_MD BIT(12)
1436 #define BIT_GPIOB_INT_MD BIT(11)
1437 #define BIT_GPIOA_INT_MD BIT(10)
1438 #define BIT_GPIO9_INT_MD BIT(9)
1439 #define BIT_GPIO8_INT_MD BIT(8)
1440 #define BIT_GPIO7_INT_MD BIT(7)
1441 #define BIT_GPIO6_INT_MD BIT(6)
1442 #define BIT_GPIO5_INT_MD BIT(5)
1443 #define BIT_GPIO4_INT_MD BIT(4)
1444 #define BIT_GPIO3_INT_MD BIT(3)
1445 #define BIT_GPIO2_INT_MD BIT(2)
1446 #define BIT_GPIO1_INT_MD BIT(1)
1447 #define BIT_GPIO0_INT_MD BIT(0)
1448
1449 /* 2 REG_LED_CFG                                (Offset 0x004C) */
1450
1451 #define BIT_GPIO3_WL_CTRL_EN BIT(27)
1452
1453 /* 2 REG_LED_CFG                                (Offset 0x004C) */
1454
1455 #define BIT_LNAON_SEL_EN BIT(26)
1456
1457 /* 2 REG_LED_CFG                                (Offset 0x004C) */
1458
1459 #define BIT_PAPE_SEL_EN BIT(25)
1460
1461 /* 2 REG_LED_CFG                                (Offset 0x004C) */
1462
1463 #define BIT_DPDT_WLBT_SEL BIT(24)
1464
1465 /* 2 REG_LED_CFG                                (Offset 0x004C) */
1466
1467 #define BIT_DPDT_SEL_EN BIT(23)
1468
1469 /* 2 REG_LED_CFG                                (Offset 0x004C) */
1470
1471 #define BIT_GPIO13_14_WL_CTRL_EN BIT(22)
1472
1473 /* 2 REG_LED_CFG                                (Offset 0x004C) */
1474
1475 #define BIT_LED2DIS BIT(21)
1476
1477 /* 2 REG_LED_CFG                                (Offset 0x004C) */
1478
1479 #define BIT_LED2PL BIT(20)
1480 #define BIT_LED2SV BIT(19)
1481
1482 #define BIT_SHIFT_LED2CM 16
1483 #define BIT_MASK_LED2CM 0x7
1484 #define BIT_LED2CM(x) (((x) & BIT_MASK_LED2CM) << BIT_SHIFT_LED2CM)
1485 #define BIT_GET_LED2CM(x) (((x) >> BIT_SHIFT_LED2CM) & BIT_MASK_LED2CM)
1486
1487 #define BIT_LED1DIS BIT(15)
1488 #define BIT_LED1PL BIT(12)
1489 #define BIT_LED1SV BIT(11)
1490
1491 #define BIT_SHIFT_LED1CM 8
1492 #define BIT_MASK_LED1CM 0x7
1493 #define BIT_LED1CM(x) (((x) & BIT_MASK_LED1CM) << BIT_SHIFT_LED1CM)
1494 #define BIT_GET_LED1CM(x) (((x) >> BIT_SHIFT_LED1CM) & BIT_MASK_LED1CM)
1495
1496 #define BIT_LED0DIS BIT(7)
1497
1498 /* 2 REG_LED_CFG                                (Offset 0x004C) */
1499
1500 #define BIT_SHIFT_AFE_LDO_SWR_CHECK 5
1501 #define BIT_MASK_AFE_LDO_SWR_CHECK 0x3
1502 #define BIT_AFE_LDO_SWR_CHECK(x)                                               \
1503         (((x) & BIT_MASK_AFE_LDO_SWR_CHECK) << BIT_SHIFT_AFE_LDO_SWR_CHECK)
1504 #define BIT_GET_AFE_LDO_SWR_CHECK(x)                                           \
1505         (((x) >> BIT_SHIFT_AFE_LDO_SWR_CHECK) & BIT_MASK_AFE_LDO_SWR_CHECK)
1506
1507 /* 2 REG_LED_CFG                                (Offset 0x004C) */
1508
1509 #define BIT_LED0PL BIT(4)
1510 #define BIT_LED0SV BIT(3)
1511
1512 #define BIT_SHIFT_LED0CM 0
1513 #define BIT_MASK_LED0CM 0x7
1514 #define BIT_LED0CM(x) (((x) & BIT_MASK_LED0CM) << BIT_SHIFT_LED0CM)
1515 #define BIT_GET_LED0CM(x) (((x) >> BIT_SHIFT_LED0CM) & BIT_MASK_LED0CM)
1516
1517 /* 2 REG_FSIMR                          (Offset 0x0050) */
1518
1519 #define BIT_FS_PDNINT_EN BIT(31)
1520
1521 /* 2 REG_FSIMR                          (Offset 0x0050) */
1522
1523 #define BIT_NFC_INT_PAD_EN BIT(30)
1524
1525 /* 2 REG_FSIMR                          (Offset 0x0050) */
1526
1527 #define BIT_FS_SPS_OCP_INT_EN BIT(29)
1528
1529 /* 2 REG_FSIMR                          (Offset 0x0050) */
1530
1531 #define BIT_FS_PWMERR_INT_EN BIT(28)
1532
1533 /* 2 REG_FSIMR                          (Offset 0x0050) */
1534
1535 #define BIT_FS_GPIOF_INT_EN BIT(27)
1536 #define BIT_FS_GPIOE_INT_EN BIT(26)
1537 #define BIT_FS_GPIOD_INT_EN BIT(25)
1538 #define BIT_FS_GPIOC_INT_EN BIT(24)
1539
1540 /* 2 REG_FSIMR                          (Offset 0x0050) */
1541
1542 #define BIT_FS_GPIOB_INT_EN BIT(23)
1543
1544 /* 2 REG_FSIMR                          (Offset 0x0050) */
1545
1546 #define BIT_FS_GPIOA_INT_EN BIT(22)
1547
1548 /* 2 REG_FSIMR                          (Offset 0x0050) */
1549
1550 #define BIT_FS_GPIO9_INT_EN BIT(21)
1551
1552 /* 2 REG_FSIMR                          (Offset 0x0050) */
1553
1554 #define BIT_FS_GPIO8_INT_EN BIT(20)
1555
1556 /* 2 REG_FSIMR                          (Offset 0x0050) */
1557
1558 #define BIT_FS_GPIO7_INT_EN BIT(19)
1559
1560 /* 2 REG_FSIMR                          (Offset 0x0050) */
1561
1562 #define BIT_FS_GPIO6_INT_EN BIT(18)
1563
1564 /* 2 REG_FSIMR                          (Offset 0x0050) */
1565
1566 #define BIT_FS_GPIO5_INT_EN BIT(17)
1567
1568 /* 2 REG_FSIMR                          (Offset 0x0050) */
1569
1570 #define BIT_FS_GPIO4_INT_EN BIT(16)
1571
1572 /* 2 REG_FSIMR                          (Offset 0x0050) */
1573
1574 #define BIT_FS_GPIO3_INT_EN BIT(15)
1575
1576 /* 2 REG_FSIMR                          (Offset 0x0050) */
1577
1578 #define BIT_FS_GPIO2_INT_EN BIT(14)
1579
1580 /* 2 REG_FSIMR                          (Offset 0x0050) */
1581
1582 #define BIT_FS_GPIO1_INT_EN BIT(13)
1583
1584 /* 2 REG_FSIMR                          (Offset 0x0050) */
1585
1586 #define BIT_FS_GPIO0_INT_EN BIT(12)
1587
1588 /* 2 REG_FSIMR                          (Offset 0x0050) */
1589
1590 #define BIT_FS_HCI_SUS_EN BIT(11)
1591
1592 /* 2 REG_FSIMR                          (Offset 0x0050) */
1593
1594 #define BIT_FS_HCI_RES_EN BIT(10)
1595
1596 /* 2 REG_FSIMR                          (Offset 0x0050) */
1597
1598 #define BIT_FS_HCI_RESET_EN BIT(9)
1599
1600 /* 2 REG_FSIMR                          (Offset 0x0050) */
1601
1602 #define BIT_FS_BTON_STS_UPDATE_MSK_EN BIT(7)
1603
1604 /* 2 REG_FSIMR                          (Offset 0x0050) */
1605
1606 #define BIT_ACT2RECOVERY_INT_EN_V1 BIT(6)
1607
1608 /* 2 REG_FSIMR                          (Offset 0x0050) */
1609
1610 #define BIT_GEN1GEN2_SWITCH BIT(5)
1611
1612 /* 2 REG_FSIMR                          (Offset 0x0050) */
1613
1614 #define BIT_HCI_TXDMA_REQ_HIMR BIT(4)
1615
1616 /* 2 REG_FSIMR                          (Offset 0x0050) */
1617
1618 #define BIT_FS_32K_LEAVE_SETTING_MAK BIT(3)
1619
1620 /* 2 REG_FSIMR                          (Offset 0x0050) */
1621
1622 #define BIT_FS_32K_ENTER_SETTING_MAK BIT(2)
1623
1624 /* 2 REG_FSIMR                          (Offset 0x0050) */
1625
1626 #define BIT_FS_USB_LPMRSM_MSK BIT(1)
1627
1628 /* 2 REG_FSIMR                          (Offset 0x0050) */
1629
1630 #define BIT_FS_USB_LPMINT_MSK BIT(0)
1631
1632 /* 2 REG_FSISR                          (Offset 0x0054) */
1633
1634 #define BIT_FS_PDNINT BIT(31)
1635
1636 /* 2 REG_FSISR                          (Offset 0x0054) */
1637
1638 #define BIT_FS_SPS_OCP_INT BIT(29)
1639
1640 /* 2 REG_FSISR                          (Offset 0x0054) */
1641
1642 #define BIT_FS_PWMERR_INT BIT(28)
1643
1644 /* 2 REG_FSISR                          (Offset 0x0054) */
1645
1646 #define BIT_FS_GPIOF_INT BIT(27)
1647 #define BIT_FS_GPIOE_INT BIT(26)
1648 #define BIT_FS_GPIOD_INT BIT(25)
1649 #define BIT_FS_GPIOC_INT BIT(24)
1650
1651 /* 2 REG_FSISR                          (Offset 0x0054) */
1652
1653 #define BIT_FS_GPIOB_INT BIT(23)
1654
1655 /* 2 REG_FSISR                          (Offset 0x0054) */
1656
1657 #define BIT_FS_GPIOA_INT BIT(22)
1658
1659 /* 2 REG_FSISR                          (Offset 0x0054) */
1660
1661 #define BIT_FS_GPIO9_INT BIT(21)
1662
1663 /* 2 REG_FSISR                          (Offset 0x0054) */
1664
1665 #define BIT_FS_GPIO8_INT BIT(20)
1666
1667 /* 2 REG_FSISR                          (Offset 0x0054) */
1668
1669 #define BIT_FS_GPIO7_INT BIT(19)
1670
1671 /* 2 REG_FSISR                          (Offset 0x0054) */
1672
1673 #define BIT_FS_GPIO6_INT BIT(18)
1674
1675 /* 2 REG_FSISR                          (Offset 0x0054) */
1676
1677 #define BIT_FS_GPIO5_INT BIT(17)
1678
1679 /* 2 REG_FSISR                          (Offset 0x0054) */
1680
1681 #define BIT_FS_GPIO4_INT BIT(16)
1682
1683 /* 2 REG_FSISR                          (Offset 0x0054) */
1684
1685 #define BIT_FS_GPIO3_INT BIT(15)
1686
1687 /* 2 REG_FSISR                          (Offset 0x0054) */
1688
1689 #define BIT_FS_GPIO2_INT BIT(14)
1690
1691 /* 2 REG_FSISR                          (Offset 0x0054) */
1692
1693 #define BIT_FS_GPIO1_INT BIT(13)
1694
1695 /* 2 REG_FSISR                          (Offset 0x0054) */
1696
1697 #define BIT_FS_GPIO0_INT BIT(12)
1698
1699 /* 2 REG_FSISR                          (Offset 0x0054) */
1700
1701 #define BIT_FS_HCI_SUS_INT BIT(11)
1702
1703 /* 2 REG_FSISR                          (Offset 0x0054) */
1704
1705 #define BIT_FS_HCI_RES_INT BIT(10)
1706
1707 /* 2 REG_FSISR                          (Offset 0x0054) */
1708
1709 #define BIT_FS_HCI_RESET_INT BIT(9)
1710
1711 /* 2 REG_FSISR                          (Offset 0x0054) */
1712
1713 #define BIT_ACT2RECOVERY BIT(6)
1714
1715 /* 2 REG_FSISR                          (Offset 0x0054) */
1716
1717 #define BIT_HCI_TXDMA_REQ_HISR BIT(4)
1718
1719 /* 2 REG_FSISR                          (Offset 0x0054) */
1720
1721 #define BIT_FS_32K_LEAVE_SETTING_INT BIT(3)
1722
1723 /* 2 REG_FSISR                          (Offset 0x0054) */
1724
1725 #define BIT_FS_32K_ENTER_SETTING_INT BIT(2)
1726
1727 /* 2 REG_FSISR                          (Offset 0x0054) */
1728
1729 #define BIT_FS_USB_LPMRSM_INT BIT(1)
1730
1731 /* 2 REG_FSISR                          (Offset 0x0054) */
1732
1733 #define BIT_FS_USB_LPMINT_INT BIT(0)
1734
1735 /* 2 REG_HSIMR                          (Offset 0x0058) */
1736
1737 #define BIT_GPIOF_INT_EN BIT(31)
1738 #define BIT_GPIOE_INT_EN BIT(30)
1739 #define BIT_GPIOD_INT_EN BIT(29)
1740 #define BIT_GPIOC_INT_EN BIT(28)
1741 #define BIT_GPIOB_INT_EN BIT(27)
1742 #define BIT_GPIOA_INT_EN BIT(26)
1743 #define BIT_GPIO9_INT_EN BIT(25)
1744 #define BIT_GPIO8_INT_EN BIT(24)
1745 #define BIT_GPIO7_INT_EN BIT(23)
1746 #define BIT_GPIO6_INT_EN BIT(22)
1747 #define BIT_GPIO5_INT_EN BIT(21)
1748 #define BIT_GPIO4_INT_EN BIT(20)
1749 #define BIT_GPIO3_INT_EN BIT(19)
1750
1751 /* 2 REG_HSIMR                          (Offset 0x0058) */
1752
1753 #define BIT_GPIO1_INT_EN BIT(17)
1754 #define BIT_GPIO0_INT_EN BIT(16)
1755
1756 /* 2 REG_HSIMR                          (Offset 0x0058) */
1757
1758 #define BIT_GPIO2_INT_EN_V1 BIT(16)
1759
1760 /* 2 REG_HSIMR                          (Offset 0x0058) */
1761
1762 #define BIT_PDNINT_EN BIT(7)
1763
1764 /* 2 REG_HSIMR                          (Offset 0x0058) */
1765
1766 #define BIT_RON_INT_EN BIT(6)
1767
1768 /* 2 REG_HSIMR                          (Offset 0x0058) */
1769
1770 #define BIT_SPS_OCP_INT_EN BIT(5)
1771
1772 /* 2 REG_HSIMR                          (Offset 0x0058) */
1773
1774 #define BIT_GPIO15_0_INT_EN BIT(0)
1775
1776 /* 2 REG_HSISR                          (Offset 0x005C) */
1777
1778 #define BIT_GPIOF_INT BIT(31)
1779 #define BIT_GPIOE_INT BIT(30)
1780 #define BIT_GPIOD_INT BIT(29)
1781 #define BIT_GPIOC_INT BIT(28)
1782 #define BIT_GPIOB_INT BIT(27)
1783 #define BIT_GPIOA_INT BIT(26)
1784 #define BIT_GPIO9_INT BIT(25)
1785 #define BIT_GPIO8_INT BIT(24)
1786 #define BIT_GPIO7_INT BIT(23)
1787
1788 /* 2 REG_HSISR                          (Offset 0x005C) */
1789
1790 #define BIT_GPIO6_INT BIT(22)
1791 #define BIT_GPIO5_INT BIT(21)
1792 #define BIT_GPIO4_INT BIT(20)
1793 #define BIT_GPIO3_INT BIT(19)
1794
1795 /* 2 REG_HSISR                          (Offset 0x005C) */
1796
1797 #define BIT_GPIO1_INT BIT(17)
1798 #define BIT_GPIO0_INT BIT(16)
1799
1800 /* 2 REG_HSISR                          (Offset 0x005C) */
1801
1802 #define BIT_GPIO2_INT_V1 BIT(16)
1803
1804 /* 2 REG_HSISR                          (Offset 0x005C) */
1805
1806 #define BIT_PDNINT BIT(7)
1807
1808 /* 2 REG_HSISR                          (Offset 0x005C) */
1809
1810 #define BIT_RON_INT BIT(6)
1811
1812 /* 2 REG_HSISR                          (Offset 0x005C) */
1813
1814 #define BIT_SPS_OCP_INT BIT(5)
1815
1816 /* 2 REG_HSISR                          (Offset 0x005C) */
1817
1818 #define BIT_GPIO15_0_INT BIT(0)
1819 #define BIT_MCUFWDL_EN BIT(0)
1820
1821 /* 2 REG_GPIO_EXT_CTRL                  (Offset 0x0060) */
1822
1823 #define BIT_SHIFT_GPIO_MOD_15_TO_8 24
1824 #define BIT_MASK_GPIO_MOD_15_TO_8 0xff
1825 #define BIT_GPIO_MOD_15_TO_8(x)                                                \
1826         (((x) & BIT_MASK_GPIO_MOD_15_TO_8) << BIT_SHIFT_GPIO_MOD_15_TO_8)
1827 #define BIT_GET_GPIO_MOD_15_TO_8(x)                                            \
1828         (((x) >> BIT_SHIFT_GPIO_MOD_15_TO_8) & BIT_MASK_GPIO_MOD_15_TO_8)
1829
1830 #define BIT_SHIFT_GPIO_IO_SEL_15_TO_8 16
1831 #define BIT_MASK_GPIO_IO_SEL_15_TO_8 0xff
1832 #define BIT_GPIO_IO_SEL_15_TO_8(x)                                             \
1833         (((x) & BIT_MASK_GPIO_IO_SEL_15_TO_8) << BIT_SHIFT_GPIO_IO_SEL_15_TO_8)
1834 #define BIT_GET_GPIO_IO_SEL_15_TO_8(x)                                         \
1835         (((x) >> BIT_SHIFT_GPIO_IO_SEL_15_TO_8) & BIT_MASK_GPIO_IO_SEL_15_TO_8)
1836
1837 #define BIT_SHIFT_GPIO_OUT_15_TO_8 8
1838 #define BIT_MASK_GPIO_OUT_15_TO_8 0xff
1839 #define BIT_GPIO_OUT_15_TO_8(x)                                                \
1840         (((x) & BIT_MASK_GPIO_OUT_15_TO_8) << BIT_SHIFT_GPIO_OUT_15_TO_8)
1841 #define BIT_GET_GPIO_OUT_15_TO_8(x)                                            \
1842         (((x) >> BIT_SHIFT_GPIO_OUT_15_TO_8) & BIT_MASK_GPIO_OUT_15_TO_8)
1843
1844 #define BIT_SHIFT_GPIO_IN_15_TO_8 0
1845 #define BIT_MASK_GPIO_IN_15_TO_8 0xff
1846 #define BIT_GPIO_IN_15_TO_8(x)                                                 \
1847         (((x) & BIT_MASK_GPIO_IN_15_TO_8) << BIT_SHIFT_GPIO_IN_15_TO_8)
1848 #define BIT_GET_GPIO_IN_15_TO_8(x)                                             \
1849         (((x) >> BIT_SHIFT_GPIO_IN_15_TO_8) & BIT_MASK_GPIO_IN_15_TO_8)
1850
1851 /* 2 REG_SDIO_H2C                               (Offset 0x10250060) */
1852
1853 #define BIT_SHIFT_SDIO_H2C_MSG 0
1854 #define BIT_MASK_SDIO_H2C_MSG 0xffffffffL
1855 #define BIT_SDIO_H2C_MSG(x)                                                    \
1856         (((x) & BIT_MASK_SDIO_H2C_MSG) << BIT_SHIFT_SDIO_H2C_MSG)
1857 #define BIT_GET_SDIO_H2C_MSG(x)                                                \
1858         (((x) >> BIT_SHIFT_SDIO_H2C_MSG) & BIT_MASK_SDIO_H2C_MSG)
1859
1860 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1861
1862 #define BIT_PAPE_WLBT_SEL BIT(29)
1863 #define BIT_LNAON_WLBT_SEL BIT(28)
1864
1865 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1866
1867 #define BIT_BTGP_GPG3_FEN BIT(26)
1868 #define BIT_BTGP_GPG2_FEN BIT(25)
1869
1870 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1871
1872 #define BIT_BTGP_JTAG_EN BIT(24)
1873
1874 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1875
1876 #define BIT_XTAL_CLK_EXTARNAL_EN BIT(23)
1877
1878 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1879
1880 #define BIT_BTGP_UART0_EN BIT(22)
1881
1882 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1883
1884 #define BIT_BTGP_UART1_EN BIT(21)
1885
1886 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1887
1888 #define BIT_BTGP_SPI_EN BIT(20)
1889
1890 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1891
1892 #define BIT_BTGP_GPIO_E2 BIT(19)
1893
1894 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1895
1896 #define BIT_BTGP_GPIO_EN BIT(18)
1897
1898 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1899
1900 #define BIT_SHIFT_BTGP_GPIO_SL 16
1901 #define BIT_MASK_BTGP_GPIO_SL 0x3
1902 #define BIT_BTGP_GPIO_SL(x)                                                    \
1903         (((x) & BIT_MASK_BTGP_GPIO_SL) << BIT_SHIFT_BTGP_GPIO_SL)
1904 #define BIT_GET_BTGP_GPIO_SL(x)                                                \
1905         (((x) >> BIT_SHIFT_BTGP_GPIO_SL) & BIT_MASK_BTGP_GPIO_SL)
1906
1907 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1908
1909 #define BIT_PAD_SDIO_SR BIT(14)
1910
1911 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1912
1913 #define BIT_GPIO14_OUTPUT_PL BIT(13)
1914
1915 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1916
1917 #define BIT_HOST_WAKE_PAD_PULL_EN BIT(12)
1918
1919 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1920
1921 #define BIT_HOST_WAKE_PAD_SL BIT(11)
1922
1923 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1924
1925 #define BIT_PAD_LNAON_SR BIT(10)
1926
1927 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1928
1929 #define BIT_PAD_LNAON_E2 BIT(9)
1930
1931 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1932
1933 #define BIT_SW_LNAON_G_SEL_DATA BIT(8)
1934
1935 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1936
1937 #define BIT_SW_LNAON_A_SEL_DATA BIT(7)
1938
1939 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1940
1941 #define BIT_PAD_PAPE_SR BIT(6)
1942
1943 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1944
1945 #define BIT_PAD_PAPE_E2 BIT(5)
1946
1947 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1948
1949 #define BIT_SW_PAPE_G_SEL_DATA BIT(4)
1950
1951 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1952
1953 #define BIT_SW_PAPE_A_SEL_DATA BIT(3)
1954
1955 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1956
1957 #define BIT_PAD_DPDT_SR BIT(2)
1958
1959 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1960
1961 #define BIT_PAD_DPDT_PAD_E2 BIT(1)
1962
1963 /* 2 REG_PAD_CTRL1                              (Offset 0x0064) */
1964
1965 #define BIT_SW_DPDT_SEL_DATA BIT(0)
1966
1967 /* 2 REG_SDIO_C2H                               (Offset 0x10250064) */
1968
1969 #define BIT_SHIFT_SDIO_C2H_MSG 0
1970 #define BIT_MASK_SDIO_C2H_MSG 0xffffffffL
1971 #define BIT_SDIO_C2H_MSG(x)                                                    \
1972         (((x) & BIT_MASK_SDIO_C2H_MSG) << BIT_SHIFT_SDIO_C2H_MSG)
1973 #define BIT_GET_SDIO_C2H_MSG(x)                                                \
1974         (((x) >> BIT_SHIFT_SDIO_C2H_MSG) & BIT_MASK_SDIO_C2H_MSG)
1975
1976 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
1977
1978 #define BIT_ISO_BD2PP BIT(31)
1979 #define BIT_LDOV12B_EN BIT(30)
1980 #define BIT_CKEN_BTGPS BIT(29)
1981 #define BIT_FEN_BTGPS BIT(28)
1982
1983 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
1984
1985 #define BIT_MULRW BIT(27)
1986
1987 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
1988
1989 #define BIT_BTCPU_BOOTSEL BIT(27)
1990 #define BIT_SPI_SPEEDUP BIT(26)
1991
1992 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
1993
1994 #define BIT_DEVWAKE_PAD_TYPE_SEL BIT(24)
1995 #define BIT_CLKREQ_PAD_TYPE_SEL BIT(23)
1996
1997 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
1998
1999 #define BIT_EN_CPL_TIMEOUT_PS BIT(22)
2000
2001 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2002
2003 #define BIT_ISO_BTPON2PP BIT(22)
2004
2005 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2006
2007 #define BIT_REG_TXDMA_FAIL_PS BIT(21)
2008
2009 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2010
2011 #define BIT_EN_HWENTR_L1 BIT(19)
2012
2013 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2014
2015 #define BIT_BT_HWROF_EN BIT(19)
2016
2017 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2018
2019 #define BIT_EN_ADV_CLKGATE BIT(18)
2020
2021 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2022
2023 #define BIT_BT_FUNC_EN BIT(18)
2024
2025 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2026
2027 #define BIT_BT_HWPDN_SL BIT(17)
2028
2029 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2030
2031 #define BIT_BT_DISN_EN BIT(16)
2032
2033 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2034
2035 #define BIT_BT_PDN_PULL_EN BIT(15)
2036
2037 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2038
2039 #define BIT_WL_PDN_PULL_EN BIT(14)
2040 #define BIT_EXTERNAL_REQUEST_PL BIT(13)
2041
2042 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2043
2044 #define BIT_GPIO0_2_3_PULL_LOW_EN BIT(12)
2045
2046 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2047
2048 #define BIT_ISO_BA2PP BIT(11)
2049 #define BIT_BT_AFE_LDO_EN BIT(10)
2050
2051 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2052
2053 #define BIT_BT_AFE_PLL_EN BIT(9)
2054
2055 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2056
2057 #define BIT_BT_DIG_CLK_EN BIT(8)
2058
2059 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2060
2061 #define BIT_WL_DRV_EXIST_IDX BIT(5)
2062
2063 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2064
2065 #define BIT_DOP_EHPAD BIT(4)
2066
2067 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2068
2069 #define BIT_WL_HWROF_EN BIT(3)
2070
2071 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2072
2073 #define BIT_WL_FUNC_EN BIT(2)
2074
2075 /* 2 REG_WL_BT_PWR_CTRL                 (Offset 0x0068) */
2076
2077 #define BIT_WL_HWPDN_SL BIT(1)
2078 #define BIT_WL_HWPDN_EN BIT(0)
2079
2080 /* 2 REG_SDM_DEBUG                              (Offset 0x006C) */
2081
2082 #define BIT_SHIFT_WLCLK_PHASE 0
2083 #define BIT_MASK_WLCLK_PHASE 0x1f
2084 #define BIT_WLCLK_PHASE(x)                                                     \
2085         (((x) & BIT_MASK_WLCLK_PHASE) << BIT_SHIFT_WLCLK_PHASE)
2086 #define BIT_GET_WLCLK_PHASE(x)                                                 \
2087         (((x) >> BIT_SHIFT_WLCLK_PHASE) & BIT_MASK_WLCLK_PHASE)
2088
2089 /* 2 REG_SYS_SDIO_CTRL                  (Offset 0x0070) */
2090
2091 #define BIT_DBG_GNT_WL_BT BIT(27)
2092
2093 /* 2 REG_SYS_SDIO_CTRL                  (Offset 0x0070) */
2094
2095 #define BIT_LTE_MUX_CTRL_PATH BIT(26)
2096
2097 /* 2 REG_SYS_SDIO_CTRL                  (Offset 0x0070) */
2098
2099 #define BIT_LTE_COEX_UART BIT(25)
2100
2101 /* 2 REG_SYS_SDIO_CTRL                  (Offset 0x0070) */
2102
2103 #define BIT_3W_LTE_WL_GPIO BIT(24)
2104
2105 /* 2 REG_SYS_SDIO_CTRL                  (Offset 0x0070) */
2106
2107 #define BIT_SDIO_INT_POLARITY BIT(19)
2108 #define BIT_SDIO_INT BIT(18)
2109
2110 /* 2 REG_SYS_SDIO_CTRL                  (Offset 0x0070) */
2111
2112 #define BIT_SDIO_OFF_EN BIT(17)
2113
2114 /* 2 REG_SYS_SDIO_CTRL                  (Offset 0x0070) */
2115
2116 #define BIT_SDIO_ON_EN BIT(16)
2117
2118 /* 2 REG_SYS_SDIO_CTRL                  (Offset 0x0070) */
2119
2120 #define BIT_PCIE_WAIT_TIMEOUT_EVENT BIT(10)
2121 #define BIT_PCIE_WAIT_TIME BIT(9)
2122
2123 /* 2 REG_SYS_SDIO_CTRL                  (Offset 0x0070) */
2124
2125 #define BIT_MPCIE_REFCLK_XTAL_SEL BIT(8)
2126
2127 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2128
2129 #define BIT_SHIFT_TSFT_SEL 29
2130 #define BIT_MASK_TSFT_SEL 0x7
2131 #define BIT_TSFT_SEL(x) (((x) & BIT_MASK_TSFT_SEL) << BIT_SHIFT_TSFT_SEL)
2132 #define BIT_GET_TSFT_SEL(x) (((x) >> BIT_SHIFT_TSFT_SEL) & BIT_MASK_TSFT_SEL)
2133
2134 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2135
2136 #define BIT_SHIFT_RPWM 24
2137 #define BIT_MASK_RPWM 0xff
2138 #define BIT_RPWM(x) (((x) & BIT_MASK_RPWM) << BIT_SHIFT_RPWM)
2139 #define BIT_GET_RPWM(x) (((x) >> BIT_SHIFT_RPWM) & BIT_MASK_RPWM)
2140
2141 #define BIT_ROM_DLEN BIT(19)
2142
2143 #define BIT_SHIFT_ROM_PGE 16
2144 #define BIT_MASK_ROM_PGE 0x7
2145 #define BIT_ROM_PGE(x) (((x) & BIT_MASK_ROM_PGE) << BIT_SHIFT_ROM_PGE)
2146 #define BIT_GET_ROM_PGE(x) (((x) >> BIT_SHIFT_ROM_PGE) & BIT_MASK_ROM_PGE)
2147
2148 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2149
2150 #define BIT_USB_HOST_PWR_OFF_EN BIT(12)
2151
2152 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2153
2154 #define BIT_SYM_LPS_BLOCK_EN BIT(11)
2155
2156 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2157
2158 #define BIT_USB_LPM_ACT_EN BIT(10)
2159
2160 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2161
2162 #define BIT_USB_LPM_NY BIT(9)
2163
2164 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2165
2166 #define BIT_USB_SUS_DIS BIT(8)
2167
2168 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2169
2170 #define BIT_SHIFT_SDIO_PAD_E 5
2171 #define BIT_MASK_SDIO_PAD_E 0x7
2172 #define BIT_SDIO_PAD_E(x) (((x) & BIT_MASK_SDIO_PAD_E) << BIT_SHIFT_SDIO_PAD_E)
2173 #define BIT_GET_SDIO_PAD_E(x)                                                  \
2174         (((x) >> BIT_SHIFT_SDIO_PAD_E) & BIT_MASK_SDIO_PAD_E)
2175
2176 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2177
2178 #define BIT_USB_LPPLL_EN BIT(4)
2179
2180 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2181
2182 #define BIT_ROP_SW15 BIT(2)
2183
2184 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2185
2186 #define BIT_PCI_CKRDY_OPT BIT(1)
2187
2188 /* 2 REG_HCI_OPT_CTRL                   (Offset 0x0074) */
2189
2190 #define BIT_PCI_VAUX_EN BIT(0)
2191
2192 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2193
2194 #define BIT_ZCD_HW_AUTO_EN BIT(27)
2195 #define BIT_ZCD_REGSEL BIT(26)
2196
2197 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2198
2199 #define BIT_SHIFT_AUTO_ZCD_IN_CODE 21
2200 #define BIT_MASK_AUTO_ZCD_IN_CODE 0x1f
2201 #define BIT_AUTO_ZCD_IN_CODE(x)                                                \
2202         (((x) & BIT_MASK_AUTO_ZCD_IN_CODE) << BIT_SHIFT_AUTO_ZCD_IN_CODE)
2203 #define BIT_GET_AUTO_ZCD_IN_CODE(x)                                            \
2204         (((x) >> BIT_SHIFT_AUTO_ZCD_IN_CODE) & BIT_MASK_AUTO_ZCD_IN_CODE)
2205
2206 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2207
2208 #define BIT_SHIFT_ZCD_CODE_IN_L 16
2209 #define BIT_MASK_ZCD_CODE_IN_L 0x1f
2210 #define BIT_ZCD_CODE_IN_L(x)                                                   \
2211         (((x) & BIT_MASK_ZCD_CODE_IN_L) << BIT_SHIFT_ZCD_CODE_IN_L)
2212 #define BIT_GET_ZCD_CODE_IN_L(x)                                               \
2213         (((x) >> BIT_SHIFT_ZCD_CODE_IN_L) & BIT_MASK_ZCD_CODE_IN_L)
2214
2215 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2216
2217 #define BIT_SHIFT_LDO_HV5_DUMMY 14
2218 #define BIT_MASK_LDO_HV5_DUMMY 0x3
2219 #define BIT_LDO_HV5_DUMMY(x)                                                   \
2220         (((x) & BIT_MASK_LDO_HV5_DUMMY) << BIT_SHIFT_LDO_HV5_DUMMY)
2221 #define BIT_GET_LDO_HV5_DUMMY(x)                                               \
2222         (((x) >> BIT_SHIFT_LDO_HV5_DUMMY) & BIT_MASK_LDO_HV5_DUMMY)
2223
2224 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2225
2226 #define BIT_SHIFT_REG_VTUNE33_BIT0_TO_BIT1 12
2227 #define BIT_MASK_REG_VTUNE33_BIT0_TO_BIT1 0x3
2228 #define BIT_REG_VTUNE33_BIT0_TO_BIT1(x)                                        \
2229         (((x) & BIT_MASK_REG_VTUNE33_BIT0_TO_BIT1)                             \
2230          << BIT_SHIFT_REG_VTUNE33_BIT0_TO_BIT1)
2231 #define BIT_GET_REG_VTUNE33_BIT0_TO_BIT1(x)                                    \
2232         (((x) >> BIT_SHIFT_REG_VTUNE33_BIT0_TO_BIT1) &                         \
2233          BIT_MASK_REG_VTUNE33_BIT0_TO_BIT1)
2234
2235 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2236
2237 #define BIT_SHIFT_REG_STANDBY33_BIT0_TO_BIT1 10
2238 #define BIT_MASK_REG_STANDBY33_BIT0_TO_BIT1 0x3
2239 #define BIT_REG_STANDBY33_BIT0_TO_BIT1(x)                                      \
2240         (((x) & BIT_MASK_REG_STANDBY33_BIT0_TO_BIT1)                           \
2241          << BIT_SHIFT_REG_STANDBY33_BIT0_TO_BIT1)
2242 #define BIT_GET_REG_STANDBY33_BIT0_TO_BIT1(x)                                  \
2243         (((x) >> BIT_SHIFT_REG_STANDBY33_BIT0_TO_BIT1) &                       \
2244          BIT_MASK_REG_STANDBY33_BIT0_TO_BIT1)
2245
2246 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2247
2248 #define BIT_SHIFT_REG_LOAD33_BIT0_TO_BIT1 8
2249 #define BIT_MASK_REG_LOAD33_BIT0_TO_BIT1 0x3
2250 #define BIT_REG_LOAD33_BIT0_TO_BIT1(x)                                         \
2251         (((x) & BIT_MASK_REG_LOAD33_BIT0_TO_BIT1)                              \
2252          << BIT_SHIFT_REG_LOAD33_BIT0_TO_BIT1)
2253 #define BIT_GET_REG_LOAD33_BIT0_TO_BIT1(x)                                     \
2254         (((x) >> BIT_SHIFT_REG_LOAD33_BIT0_TO_BIT1) &                          \
2255          BIT_MASK_REG_LOAD33_BIT0_TO_BIT1)
2256
2257 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2258
2259 #define BIT_REG_BYPASS_L BIT(7)
2260
2261 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2262
2263 #define BIT_REG_LDOF_L BIT(6)
2264
2265 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2266
2267 #define BIT_REG_TYPE_L_V1 BIT(5)
2268
2269 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2270
2271 #define BIT_ARENB_L BIT(3)
2272
2273 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2274
2275 #define BIT_SHIFT_CFC_L 1
2276 #define BIT_MASK_CFC_L 0x3
2277 #define BIT_CFC_L(x) (((x) & BIT_MASK_CFC_L) << BIT_SHIFT_CFC_L)
2278 #define BIT_GET_CFC_L(x) (((x) >> BIT_SHIFT_CFC_L) & BIT_MASK_CFC_L)
2279
2280 /* 2 REG_LDO_SWR_CTRL                   (Offset 0x007C) */
2281
2282 #define BIT_REG_OCPS_L_V1 BIT(0)
2283
2284 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2285
2286 #define BIT_ANA_PORT_EN BIT(22)
2287 #define BIT_MAC_PORT_EN BIT(21)
2288 #define BIT_BOOT_FSPI_EN BIT(20)
2289 #define BIT_FW_INIT_RDY BIT(15)
2290 #define BIT_FW_DW_RDY BIT(14)
2291
2292 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2293
2294 #define BIT_SHIFT_CPU_CLK_SEL 12
2295 #define BIT_MASK_CPU_CLK_SEL 0x3
2296 #define BIT_CPU_CLK_SEL(x)                                                     \
2297         (((x) & BIT_MASK_CPU_CLK_SEL) << BIT_SHIFT_CPU_CLK_SEL)
2298 #define BIT_GET_CPU_CLK_SEL(x)                                                 \
2299         (((x) >> BIT_SHIFT_CPU_CLK_SEL) & BIT_MASK_CPU_CLK_SEL)
2300
2301 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2302
2303 #define BIT_CCLK_CHG_MASK BIT(11)
2304
2305 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2306
2307 #define BIT_EMEM__TXBUF_CHKSUM_OK BIT(10)
2308
2309 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2310
2311 #define BIT_EMEM_TXBUF_DW_RDY BIT(9)
2312
2313 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2314
2315 #define BIT_EMEM_CHKSUM_OK BIT(8)
2316 #define BIT_EMEM_DW_OK BIT(7)
2317 #define BIT_TOGGLING BIT(7)
2318 #define BIT_DMEM_CHKSUM_OK BIT(6)
2319 #define BIT_ACK BIT(6)
2320
2321 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2322
2323 #define BIT_DMEM_DW_OK BIT(5)
2324
2325 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2326
2327 #define BIT_IMEM_CHKSUM_OK BIT(4)
2328
2329 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2330
2331 #define BIT_IMEM_DW_OK BIT(3)
2332
2333 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2334
2335 #define BIT_IMEM_BOOT_LOAD_CHKSUM_OK BIT(2)
2336
2337 /* 2 REG_MCUFW_CTRL                             (Offset 0x0080) */
2338
2339 #define BIT_IMEM_BOOT_LOAD_DW_OK BIT(1)
2340
2341 /* 2 REG_SDIO_HRPWM1                            (Offset 0x10250080) */
2342
2343 #define BIT_32K_PERMISSION BIT(0)
2344
2345 /* 2 REG_MCU_TST_CFG                            (Offset 0x0084) */
2346
2347 #define BIT_SHIFT_LBKTST 0
2348 #define BIT_MASK_LBKTST 0xffff
2349 #define BIT_LBKTST(x) (((x) & BIT_MASK_LBKTST) << BIT_SHIFT_LBKTST)
2350 #define BIT_GET_LBKTST(x) (((x) >> BIT_SHIFT_LBKTST) & BIT_MASK_LBKTST)
2351
2352 /* 2 REG_SDIO_BUS_CTRL                  (Offset 0x10250085) */
2353
2354 #define BIT_PAD_CLK_XHGE_EN BIT(3)
2355 #define BIT_INTER_CLK_EN BIT(2)
2356 #define BIT_EN_RPT_TXCRC BIT(1)
2357 #define BIT_DIS_RXDMA_STS BIT(0)
2358
2359 /* 2 REG_SDIO_HSUS_CTRL                 (Offset 0x10250086) */
2360
2361 #define BIT_INTR_CTRL BIT(4)
2362 #define BIT_SDIO_VOLTAGE BIT(3)
2363 #define BIT_BYPASS_INIT BIT(2)
2364
2365 /* 2 REG_SDIO_HSUS_CTRL                 (Offset 0x10250086) */
2366
2367 #define BIT_HCI_RESUME_RDY BIT(1)
2368 #define BIT_HCI_SUS_REQ BIT(0)
2369
2370 /* 2 REG_HMEBOX_E0_E1                   (Offset 0x0088) */
2371
2372 #define BIT_SHIFT_HOST_MSG_E1 16
2373 #define BIT_MASK_HOST_MSG_E1 0xffff
2374 #define BIT_HOST_MSG_E1(x)                                                     \
2375         (((x) & BIT_MASK_HOST_MSG_E1) << BIT_SHIFT_HOST_MSG_E1)
2376 #define BIT_GET_HOST_MSG_E1(x)                                                 \
2377         (((x) >> BIT_SHIFT_HOST_MSG_E1) & BIT_MASK_HOST_MSG_E1)
2378
2379 #define BIT_SHIFT_HOST_MSG_E0 0
2380 #define BIT_MASK_HOST_MSG_E0 0xffff
2381 #define BIT_HOST_MSG_E0(x)                                                     \
2382         (((x) & BIT_MASK_HOST_MSG_E0) << BIT_SHIFT_HOST_MSG_E0)
2383 #define BIT_GET_HOST_MSG_E0(x)                                                 \
2384         (((x) >> BIT_SHIFT_HOST_MSG_E0) & BIT_MASK_HOST_MSG_E0)
2385
2386 /* 2 REG_SDIO_RESPONSE_TIMER                    (Offset 0x10250088) */
2387
2388 #define BIT_SHIFT_CMDIN_2RESP_TIMER 0
2389 #define BIT_MASK_CMDIN_2RESP_TIMER 0xffff
2390 #define BIT_CMDIN_2RESP_TIMER(x)                                               \
2391         (((x) & BIT_MASK_CMDIN_2RESP_TIMER) << BIT_SHIFT_CMDIN_2RESP_TIMER)
2392 #define BIT_GET_CMDIN_2RESP_TIMER(x)                                           \
2393         (((x) >> BIT_SHIFT_CMDIN_2RESP_TIMER) & BIT_MASK_CMDIN_2RESP_TIMER)
2394
2395 /* 2 REG_SDIO_CMD_CRC                   (Offset 0x1025008A) */
2396
2397 #define BIT_SHIFT_SDIO_CMD_CRC_V1 0
2398 #define BIT_MASK_SDIO_CMD_CRC_V1 0xff
2399 #define BIT_SDIO_CMD_CRC_V1(x)                                                 \
2400         (((x) & BIT_MASK_SDIO_CMD_CRC_V1) << BIT_SHIFT_SDIO_CMD_CRC_V1)
2401 #define BIT_GET_SDIO_CMD_CRC_V1(x)                                             \
2402         (((x) >> BIT_SHIFT_SDIO_CMD_CRC_V1) & BIT_MASK_SDIO_CMD_CRC_V1)
2403
2404 /* 2 REG_HMEBOX_E2_E3                   (Offset 0x008C) */
2405
2406 #define BIT_SHIFT_HOST_MSG_E3 16
2407 #define BIT_MASK_HOST_MSG_E3 0xffff
2408 #define BIT_HOST_MSG_E3(x)                                                     \
2409         (((x) & BIT_MASK_HOST_MSG_E3) << BIT_SHIFT_HOST_MSG_E3)
2410 #define BIT_GET_HOST_MSG_E3(x)                                                 \
2411         (((x) >> BIT_SHIFT_HOST_MSG_E3) & BIT_MASK_HOST_MSG_E3)
2412
2413 #define BIT_SHIFT_HOST_MSG_E2 0
2414 #define BIT_MASK_HOST_MSG_E2 0xffff
2415 #define BIT_HOST_MSG_E2(x)                                                     \
2416         (((x) & BIT_MASK_HOST_MSG_E2) << BIT_SHIFT_HOST_MSG_E2)
2417 #define BIT_GET_HOST_MSG_E2(x)                                                 \
2418         (((x) >> BIT_SHIFT_HOST_MSG_E2) & BIT_MASK_HOST_MSG_E2)
2419
2420 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2421
2422 #define BIT_WLLPSOP_EABM BIT(31)
2423
2424 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2425
2426 #define BIT_WLLPSOP_ACKF BIT(30)
2427
2428 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2429
2430 #define BIT_WLLPSOP_DLDM BIT(29)
2431
2432 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2433
2434 #define BIT_WLLPSOP_ESWR BIT(28)
2435
2436 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2437
2438 #define BIT_WLLPSOP_PWMM BIT(27)
2439 #define BIT_WLLPSOP_EECK BIT(26)
2440
2441 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2442
2443 #define BIT_WLLPSOP_WLMACOFF BIT(25)
2444
2445 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2446
2447 #define BIT_WLLPSOP_EXTAL BIT(24)
2448
2449 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2450
2451 #define BIT_WL_SYNPON_VOLTSPDN BIT(23)
2452
2453 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2454
2455 #define BIT_WLLPSOP_WLBBOFF BIT(22)
2456
2457 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2458
2459 #define BIT_WLLPSOP_WLMEM_DS BIT(21)
2460
2461 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2462
2463 #define BIT_SHIFT_LPLDH12_VADJ_STEP_DN 12
2464 #define BIT_MASK_LPLDH12_VADJ_STEP_DN 0xf
2465 #define BIT_LPLDH12_VADJ_STEP_DN(x)                                            \
2466         (((x) & BIT_MASK_LPLDH12_VADJ_STEP_DN)                                 \
2467          << BIT_SHIFT_LPLDH12_VADJ_STEP_DN)
2468 #define BIT_GET_LPLDH12_VADJ_STEP_DN(x)                                        \
2469         (((x) >> BIT_SHIFT_LPLDH12_VADJ_STEP_DN) &                             \
2470          BIT_MASK_LPLDH12_VADJ_STEP_DN)
2471
2472 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2473
2474 #define BIT_SHIFT_V15ADJ_L1_STEP_DN 8
2475 #define BIT_MASK_V15ADJ_L1_STEP_DN 0x7
2476 #define BIT_V15ADJ_L1_STEP_DN(x)                                               \
2477         (((x) & BIT_MASK_V15ADJ_L1_STEP_DN) << BIT_SHIFT_V15ADJ_L1_STEP_DN)
2478 #define BIT_GET_V15ADJ_L1_STEP_DN(x)                                           \
2479         (((x) >> BIT_SHIFT_V15ADJ_L1_STEP_DN) & BIT_MASK_V15ADJ_L1_STEP_DN)
2480
2481 #define BIT_REGU_32K_CLK_EN BIT(1)
2482 #define BIT_DRV_WLAN_INT_CLR BIT(1)
2483
2484 /* 2 REG_WLLPS_CTRL                             (Offset 0x0090) */
2485
2486 #define BIT_WL_LPS_EN BIT(0)
2487
2488 /* 2 REG_SDIO_HSISR                             (Offset 0x10250090) */
2489
2490 #define BIT_DRV_WLAN_INT BIT(0)
2491
2492 /* 2 REG_SDIO_HSIMR                             (Offset 0x10250091) */
2493
2494 #define BIT_HISR_MASK BIT(0)
2495
2496 /* 2 REG_AFE_CTRL5                              (Offset 0x0094) */
2497
2498 #define BIT_BB_DBG_SEL_AFE_SDM_BIT0 BIT(31)
2499
2500 /* 2 REG_AFE_CTRL5                              (Offset 0x0094) */
2501
2502 #define BIT_ORDER_SDM BIT(30)
2503 #define BIT_RFE_SEL_SDM BIT(29)
2504
2505 #define BIT_SHIFT_REF_SEL 25
2506 #define BIT_MASK_REF_SEL 0xf
2507 #define BIT_REF_SEL(x) (((x) & BIT_MASK_REF_SEL) << BIT_SHIFT_REF_SEL)
2508 #define BIT_GET_REF_SEL(x) (((x) >> BIT_SHIFT_REF_SEL) & BIT_MASK_REF_SEL)
2509
2510 /* 2 REG_AFE_CTRL5                              (Offset 0x0094) */
2511
2512 #define BIT_SHIFT_F0F_SDM 12
2513 #define BIT_MASK_F0F_SDM 0x1fff
2514 #define BIT_F0F_SDM(x) (((x) & BIT_MASK_F0F_SDM) << BIT_SHIFT_F0F_SDM)
2515 #define BIT_GET_F0F_SDM(x) (((x) >> BIT_SHIFT_F0F_SDM) & BIT_MASK_F0F_SDM)
2516
2517 /* 2 REG_AFE_CTRL5                              (Offset 0x0094) */
2518
2519 #define BIT_SHIFT_F0N_SDM 9
2520 #define BIT_MASK_F0N_SDM 0x7
2521 #define BIT_F0N_SDM(x) (((x) & BIT_MASK_F0N_SDM) << BIT_SHIFT_F0N_SDM)
2522 #define BIT_GET_F0N_SDM(x) (((x) >> BIT_SHIFT_F0N_SDM) & BIT_MASK_F0N_SDM)
2523
2524 /* 2 REG_AFE_CTRL5                              (Offset 0x0094) */
2525
2526 #define BIT_SHIFT_DIVN_SDM 3
2527 #define BIT_MASK_DIVN_SDM 0x3f
2528 #define BIT_DIVN_SDM(x) (((x) & BIT_MASK_DIVN_SDM) << BIT_SHIFT_DIVN_SDM)
2529 #define BIT_GET_DIVN_SDM(x) (((x) >> BIT_SHIFT_DIVN_SDM) & BIT_MASK_DIVN_SDM)
2530
2531 /* 2 REG_GPIO_DEBOUNCE_CTRL                     (Offset 0x0098) */
2532
2533 #define BIT_WLGP_DBC1EN BIT(15)
2534
2535 #define BIT_SHIFT_WLGP_DBC1 8
2536 #define BIT_MASK_WLGP_DBC1 0xf
2537 #define BIT_WLGP_DBC1(x) (((x) & BIT_MASK_WLGP_DBC1) << BIT_SHIFT_WLGP_DBC1)
2538 #define BIT_GET_WLGP_DBC1(x) (((x) >> BIT_SHIFT_WLGP_DBC1) & BIT_MASK_WLGP_DBC1)
2539
2540 #define BIT_WLGP_DBC0EN BIT(7)
2541
2542 #define BIT_SHIFT_WLGP_DBC0 0
2543 #define BIT_MASK_WLGP_DBC0 0xf
2544 #define BIT_WLGP_DBC0(x) (((x) & BIT_MASK_WLGP_DBC0) << BIT_SHIFT_WLGP_DBC0)
2545 #define BIT_GET_WLGP_DBC0(x) (((x) >> BIT_SHIFT_WLGP_DBC0) & BIT_MASK_WLGP_DBC0)
2546
2547 /* 2 REG_RPWM2                          (Offset 0x009C) */
2548
2549 #define BIT_SHIFT_RPWM2 16
2550 #define BIT_MASK_RPWM2 0xffff
2551 #define BIT_RPWM2(x) (((x) & BIT_MASK_RPWM2) << BIT_SHIFT_RPWM2)
2552 #define BIT_GET_RPWM2(x) (((x) >> BIT_SHIFT_RPWM2) & BIT_MASK_RPWM2)
2553
2554 /* 2 REG_SYSON_FSM_MON                  (Offset 0x00A0) */
2555
2556 #define BIT_SHIFT_FSM_MON_SEL 24
2557 #define BIT_MASK_FSM_MON_SEL 0x7
2558 #define BIT_FSM_MON_SEL(x)                                                     \
2559         (((x) & BIT_MASK_FSM_MON_SEL) << BIT_SHIFT_FSM_MON_SEL)
2560 #define BIT_GET_FSM_MON_SEL(x)                                                 \
2561         (((x) >> BIT_SHIFT_FSM_MON_SEL) & BIT_MASK_FSM_MON_SEL)
2562
2563 #define BIT_DOP_ELDO BIT(23)
2564 #define BIT_FSM_MON_UPD BIT(15)
2565
2566 #define BIT_SHIFT_FSM_PAR 0
2567 #define BIT_MASK_FSM_PAR 0x7fff
2568 #define BIT_FSM_PAR(x) (((x) & BIT_MASK_FSM_PAR) << BIT_SHIFT_FSM_PAR)
2569 #define BIT_GET_FSM_PAR(x) (((x) >> BIT_SHIFT_FSM_PAR) & BIT_MASK_FSM_PAR)
2570
2571 /* 2 REG_AFE_CTRL6                              (Offset 0x00A4) */
2572
2573 #define BIT_SHIFT_BB_DBG_SEL_AFE_SDM_BIT3_1 0
2574 #define BIT_MASK_BB_DBG_SEL_AFE_SDM_BIT3_1 0x7
2575 #define BIT_BB_DBG_SEL_AFE_SDM_BIT3_1(x)                                       \
2576         (((x) & BIT_MASK_BB_DBG_SEL_AFE_SDM_BIT3_1)                            \
2577          << BIT_SHIFT_BB_DBG_SEL_AFE_SDM_BIT3_1)
2578 #define BIT_GET_BB_DBG_SEL_AFE_SDM_BIT3_1(x)                                   \
2579         (((x) >> BIT_SHIFT_BB_DBG_SEL_AFE_SDM_BIT3_1) &                        \
2580          BIT_MASK_BB_DBG_SEL_AFE_SDM_BIT3_1)
2581
2582 /* 2 REG_PMC_DBG_CTRL1                  (Offset 0x00A8) */
2583
2584 #define BIT_BT_INT_EN BIT(31)
2585
2586 #define BIT_SHIFT_RD_WR_WIFI_BT_INFO 16
2587 #define BIT_MASK_RD_WR_WIFI_BT_INFO 0x7fff
2588 #define BIT_RD_WR_WIFI_BT_INFO(x)                                              \
2589         (((x) & BIT_MASK_RD_WR_WIFI_BT_INFO) << BIT_SHIFT_RD_WR_WIFI_BT_INFO)
2590 #define BIT_GET_RD_WR_WIFI_BT_INFO(x)                                          \
2591         (((x) >> BIT_SHIFT_RD_WR_WIFI_BT_INFO) & BIT_MASK_RD_WR_WIFI_BT_INFO)
2592
2593 /* 2 REG_PMC_DBG_CTRL1                  (Offset 0x00A8) */
2594
2595 #define BIT_PMC_WR_OVF BIT(8)
2596
2597 #define BIT_SHIFT_WLPMC_ERRINT 0
2598 #define BIT_MASK_WLPMC_ERRINT 0xff
2599 #define BIT_WLPMC_ERRINT(x)                                                    \
2600         (((x) & BIT_MASK_WLPMC_ERRINT) << BIT_SHIFT_WLPMC_ERRINT)
2601 #define BIT_GET_WLPMC_ERRINT(x)                                                \
2602         (((x) >> BIT_SHIFT_WLPMC_ERRINT) & BIT_MASK_WLPMC_ERRINT)
2603
2604 /* 2 REG_AFE_CTRL7                              (Offset 0x00AC) */
2605
2606 #define BIT_SHIFT_SEL_V 30
2607 #define BIT_MASK_SEL_V 0x3
2608 #define BIT_SEL_V(x) (((x) & BIT_MASK_SEL_V) << BIT_SHIFT_SEL_V)
2609 #define BIT_GET_SEL_V(x) (((x) >> BIT_SHIFT_SEL_V) & BIT_MASK_SEL_V)
2610
2611 /* 2 REG_AFE_CTRL7                              (Offset 0x00AC) */
2612
2613 #define BIT_TXFIFO_TH_INT BIT(30)
2614
2615 /* 2 REG_AFE_CTRL7                              (Offset 0x00AC) */
2616
2617 #define BIT_SEL_LDO_PC BIT(29)
2618
2619 /* 2 REG_AFE_CTRL7                              (Offset 0x00AC) */
2620
2621 #define BIT_SHIFT_CK_MON_SEL 26
2622 #define BIT_MASK_CK_MON_SEL 0x7
2623 #define BIT_CK_MON_SEL(x) (((x) & BIT_MASK_CK_MON_SEL) << BIT_SHIFT_CK_MON_SEL)
2624 #define BIT_GET_CK_MON_SEL(x)                                                  \
2625         (((x) >> BIT_SHIFT_CK_MON_SEL) & BIT_MASK_CK_MON_SEL)
2626
2627 /* 2 REG_AFE_CTRL7                              (Offset 0x00AC) */
2628
2629 #define BIT_CK_MON_EN BIT(25)
2630 #define BIT_FREF_EDGE BIT(24)
2631 #define BIT_CK320M_EN BIT(23)
2632 #define BIT_CK_5M_EN BIT(22)
2633 #define BIT_TESTEN BIT(21)
2634
2635 /* 2 REG_HIMR0                          (Offset 0x00B0) */
2636
2637 #define BIT_TIMEOUT_INTERRUPT2_MASK BIT(31)
2638 #define BIT_TIMEOUT_INTERRUTP1_MASK BIT(30)
2639 #define BIT_PSTIMEOUT_MSK BIT(29)
2640 #define BIT_GTINT4_MSK BIT(28)
2641 #define BIT_GTINT3_MSK BIT(27)
2642 #define BIT_TXBCN0ERR_MSK BIT(26)
2643 #define BIT_TXBCN0OK_MSK BIT(25)
2644 #define BIT_TSF_BIT32_TOGGLE_MSK BIT(24)
2645 #define BIT_BCNDMAINT0_MSK BIT(20)
2646 #define BIT_BCNDERR0_MSK BIT(16)
2647 #define BIT_HSISR_IND_ON_INT_MSK BIT(15)
2648
2649 /* 2 REG_HIMR0                          (Offset 0x00B0) */
2650
2651 #define BIT_BCNDMAINT_E_MSK BIT(14)
2652
2653 /* 2 REG_HIMR0                          (Offset 0x00B0) */
2654
2655 #define BIT_CTWEND_MSK BIT(12)
2656 #define BIT_HISR1_IND_MSK BIT(11)
2657
2658 /* 2 REG_HIMR0                          (Offset 0x00B0) */
2659
2660 #define BIT_C2HCMD_MSK BIT(10)
2661 #define BIT_CPWM2_MSK BIT(9)
2662 #define BIT_CPWM_MSK BIT(8)
2663 #define BIT_HIGHDOK_MSK BIT(7)
2664 #define BIT_MGTDOK_MSK BIT(6)
2665 #define BIT_BKDOK_MSK BIT(5)
2666 #define BIT_BEDOK_MSK BIT(4)
2667 #define BIT_VIDOK_MSK BIT(3)
2668 #define BIT_VODOK_MSK BIT(2)
2669 #define BIT_RDU_MSK BIT(1)
2670 #define BIT_RXOK_MSK BIT(0)
2671
2672 /* 2 REG_HISR0                          (Offset 0x00B4) */
2673
2674 #define BIT_TIMEOUT_INTERRUPT2 BIT(31)
2675
2676 /* 2 REG_HISR0                          (Offset 0x00B4) */
2677
2678 #define BIT_TIMEOUT_INTERRUTP1 BIT(30)
2679
2680 /* 2 REG_HISR0                          (Offset 0x00B4) */
2681
2682 #define BIT_PSTIMEOUT BIT(29)
2683 #define BIT_GTINT4 BIT(28)
2684 #define BIT_GTINT3 BIT(27)
2685 #define BIT_TXBCN0ERR BIT(26)
2686 #define BIT_TXBCN0OK BIT(25)
2687 #define BIT_TSF_BIT32_TOGGLE BIT(24)
2688 #define BIT_BCNDMAINT0 BIT(20)
2689 #define BIT_BCNDERR0 BIT(16)
2690 #define BIT_HSISR_IND_ON_INT BIT(15)
2691
2692 /* 2 REG_HISR0                          (Offset 0x00B4) */
2693
2694 #define BIT_BCNDMAINT_E BIT(14)
2695
2696 /* 2 REG_HISR0                          (Offset 0x00B4) */
2697
2698 #define BIT_CTWEND BIT(12)
2699
2700 /* 2 REG_HISR0                          (Offset 0x00B4) */
2701
2702 #define BIT_HISR1_IND_INT BIT(11)
2703 #define BIT_C2HCMD BIT(10)
2704 #define BIT_CPWM2 BIT(9)
2705 #define BIT_CPWM BIT(8)
2706 #define BIT_HIGHDOK BIT(7)
2707 #define BIT_MGTDOK BIT(6)
2708 #define BIT_BKDOK BIT(5)
2709 #define BIT_BEDOK BIT(4)
2710 #define BIT_VIDOK BIT(3)
2711 #define BIT_VODOK BIT(2)
2712 #define BIT_RDU BIT(1)
2713 #define BIT_RXOK BIT(0)
2714
2715 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2716
2717 #define BIT_BTON_STS_UPDATE_MASK BIT(29)
2718
2719 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2720
2721 #define BIT_MCU_ERR_MASK BIT(28)
2722
2723 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2724
2725 #define BIT_BCNDMAINT7__MSK BIT(27)
2726
2727 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2728
2729 #define BIT_BCNDMAINT6__MSK BIT(26)
2730
2731 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2732
2733 #define BIT_BCNDMAINT5__MSK BIT(25)
2734
2735 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2736
2737 #define BIT_BCNDMAINT4__MSK BIT(24)
2738
2739 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2740
2741 #define BIT_BCNDMAINT3_MSK BIT(23)
2742 #define BIT_BCNDMAINT2_MSK BIT(22)
2743 #define BIT_BCNDMAINT1_MSK BIT(21)
2744 #define BIT_BCNDERR7_MSK BIT(20)
2745 #define BIT_BCNDERR6_MSK BIT(19)
2746 #define BIT_BCNDERR5_MSK BIT(18)
2747 #define BIT_BCNDERR4_MSK BIT(17)
2748 #define BIT_BCNDERR3_MSK BIT(16)
2749 #define BIT_BCNDERR2_MSK BIT(15)
2750 #define BIT_BCNDERR1_MSK BIT(14)
2751
2752 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2753
2754 #define BIT_ATIMEND_E_MSK BIT(13)
2755
2756 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2757
2758 #define BIT_ATIMEND__MSK BIT(12)
2759
2760 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2761
2762 #define BIT_TXERR_MSK BIT(11)
2763 #define BIT_RXERR_MSK BIT(10)
2764 #define BIT_TXFOVW_MSK BIT(9)
2765 #define BIT_FOVW_MSK BIT(8)
2766
2767 /* 2 REG_HIMR1                          (Offset 0x00B8) */
2768
2769 #define BIT_CPU_MGQ_TXDONE_MSK BIT(5)
2770 #define BIT_PS_TIMER_C_MSK BIT(4)
2771 #define BIT_PS_TIMER_B_MSK BIT(3)
2772 #define BIT_PS_TIMER_A_MSK BIT(2)
2773 #define BIT_CPUMGQ_TX_TIMER_MSK BIT(1)
2774
2775 /* 2 REG_HISR1                          (Offset 0x00BC) */
2776
2777 #define BIT_BTON_STS_UPDATE_INT BIT(29)
2778
2779 /* 2 REG_HISR1                          (Offset 0x00BC) */
2780
2781 #define BIT_MCU_ERR BIT(28)
2782
2783 /* 2 REG_HISR1                          (Offset 0x00BC) */
2784
2785 #define BIT_BCNDMAINT7 BIT(27)
2786 #define BIT_BCNDMAINT6 BIT(26)
2787 #define BIT_BCNDMAINT5 BIT(25)
2788 #define BIT_BCNDMAINT4 BIT(24)
2789 #define BIT_BCNDMAINT3 BIT(23)
2790 #define BIT_BCNDMAINT2 BIT(22)
2791 #define BIT_BCNDMAINT1 BIT(21)
2792 #define BIT_BCNDERR7 BIT(20)
2793 #define BIT_BCNDERR6 BIT(19)
2794 #define BIT_BCNDERR5 BIT(18)
2795 #define BIT_BCNDERR4 BIT(17)
2796 #define BIT_BCNDERR3 BIT(16)
2797 #define BIT_BCNDERR2 BIT(15)
2798 #define BIT_BCNDERR1 BIT(14)
2799
2800 /* 2 REG_HISR1                          (Offset 0x00BC) */
2801
2802 #define BIT_ATIMEND_E BIT(13)
2803
2804 /* 2 REG_HISR1                          (Offset 0x00BC) */
2805
2806 #define BIT_ATIMEND BIT(12)
2807 #define BIT_TXERR_INT BIT(11)
2808 #define BIT_RXERR_INT BIT(10)
2809 #define BIT_TXFOVW BIT(9)
2810 #define BIT_FOVW BIT(8)
2811
2812 /* 2 REG_HISR1                          (Offset 0x00BC) */
2813
2814 #define BIT_CPU_MGQ_TXDONE BIT(5)
2815 #define BIT_PS_TIMER_C BIT(4)
2816 #define BIT_PS_TIMER_B BIT(3)
2817 #define BIT_PS_TIMER_A BIT(2)
2818 #define BIT_CPUMGQ_TX_TIMER BIT(1)
2819
2820 /* 2 REG_SDIO_ERR_RPT                   (Offset 0x102500C0) */
2821
2822 #define BIT_HR_FF_OVF BIT(6)
2823 #define BIT_HR_FF_UDN BIT(5)
2824 #define BIT_TXDMA_BUSY_ERR BIT(4)
2825 #define BIT_TXDMA_VLD_ERR BIT(3)
2826 #define BIT_QSEL_UNKNOWN_ERR BIT(2)
2827 #define BIT_QSEL_MIS_ERR BIT(1)
2828
2829 /* 2 REG_DBG_PORT_SEL                   (Offset 0x00C0) */
2830
2831 #define BIT_SHIFT_DEBUG_ST 0
2832 #define BIT_MASK_DEBUG_ST 0xffffffffL
2833 #define BIT_DEBUG_ST(x) (((x) & BIT_MASK_DEBUG_ST) << BIT_SHIFT_DEBUG_ST)
2834 #define BIT_GET_DEBUG_ST(x) (((x) >> BIT_SHIFT_DEBUG_ST) & BIT_MASK_DEBUG_ST)
2835
2836 /* 2 REG_SDIO_ERR_RPT                   (Offset 0x102500C0) */
2837
2838 #define BIT_SDIO_OVERRD_ERR BIT(0)
2839
2840 /* 2 REG_SDIO_CMD_ERRCNT                        (Offset 0x102500C1) */
2841
2842 #define BIT_SHIFT_CMD_CRC_ERR_CNT 0
2843 #define BIT_MASK_CMD_CRC_ERR_CNT 0xff
2844 #define BIT_CMD_CRC_ERR_CNT(x)                                                 \
2845         (((x) & BIT_MASK_CMD_CRC_ERR_CNT) << BIT_SHIFT_CMD_CRC_ERR_CNT)
2846 #define BIT_GET_CMD_CRC_ERR_CNT(x)                                             \
2847         (((x) >> BIT_SHIFT_CMD_CRC_ERR_CNT) & BIT_MASK_CMD_CRC_ERR_CNT)
2848
2849 /* 2 REG_SDIO_DATA_ERRCNT                       (Offset 0x102500C2) */
2850
2851 #define BIT_SHIFT_DATA_CRC_ERR_CNT 0
2852 #define BIT_MASK_DATA_CRC_ERR_CNT 0xff
2853 #define BIT_DATA_CRC_ERR_CNT(x)                                                \
2854         (((x) & BIT_MASK_DATA_CRC_ERR_CNT) << BIT_SHIFT_DATA_CRC_ERR_CNT)
2855 #define BIT_GET_DATA_CRC_ERR_CNT(x)                                            \
2856         (((x) >> BIT_SHIFT_DATA_CRC_ERR_CNT) & BIT_MASK_DATA_CRC_ERR_CNT)
2857
2858 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2859
2860 #define BIT_USB3_USB2_TRANSITION BIT(20)
2861
2862 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2863
2864 #define BIT_SHIFT_USB23_SW_MODE_V1 18
2865 #define BIT_MASK_USB23_SW_MODE_V1 0x3
2866 #define BIT_USB23_SW_MODE_V1(x)                                                \
2867         (((x) & BIT_MASK_USB23_SW_MODE_V1) << BIT_SHIFT_USB23_SW_MODE_V1)
2868 #define BIT_GET_USB23_SW_MODE_V1(x)                                            \
2869         (((x) >> BIT_SHIFT_USB23_SW_MODE_V1) & BIT_MASK_USB23_SW_MODE_V1)
2870
2871 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2872
2873 #define BIT_NO_PDN_CHIPOFF_V1 BIT(17)
2874
2875 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2876
2877 #define BIT_RSM_EN_V1 BIT(16)
2878
2879 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2880
2881 #define BIT_LD_B12V_EN BIT(7)
2882
2883 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2884
2885 #define BIT_EECS_IOSEL_V1 BIT(6)
2886
2887 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2888
2889 #define BIT_EECS_DATA_O_V1 BIT(5)
2890
2891 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2892
2893 #define BIT_EECS_DATA_I_V1 BIT(4)
2894
2895 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2896
2897 #define BIT_EESK_IOSEL_V1 BIT(2)
2898
2899 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2900
2901 #define BIT_EESK_DATA_O_V1 BIT(1)
2902
2903 /* 2 REG_PAD_CTRL2                              (Offset 0x00C4) */
2904
2905 #define BIT_EESK_DATA_I_V1 BIT(0)
2906
2907 /* 2 REG_SDIO_CMD_ERR_CONTENT           (Offset 0x102500C4) */
2908
2909 #define BIT_SHIFT_SDIO_CMD_ERR_CONTENT 0
2910 #define BIT_MASK_SDIO_CMD_ERR_CONTENT 0xffffffffffL
2911 #define BIT_SDIO_CMD_ERR_CONTENT(x)                                            \
2912         (((x) & BIT_MASK_SDIO_CMD_ERR_CONTENT)                                 \
2913          << BIT_SHIFT_SDIO_CMD_ERR_CONTENT)
2914 #define BIT_GET_SDIO_CMD_ERR_CONTENT(x)                                        \
2915         (((x) >> BIT_SHIFT_SDIO_CMD_ERR_CONTENT) &                             \
2916          BIT_MASK_SDIO_CMD_ERR_CONTENT)
2917
2918 /* 2 REG_SDIO_CRC_ERR_IDX                       (Offset 0x102500C9) */
2919
2920 #define BIT_D3_CRC_ERR BIT(4)
2921 #define BIT_D2_CRC_ERR BIT(3)
2922 #define BIT_D1_CRC_ERR BIT(2)
2923 #define BIT_D0_CRC_ERR BIT(1)
2924 #define BIT_CMD_CRC_ERR BIT(0)
2925
2926 /* 2 REG_SDIO_DATA_CRC                  (Offset 0x102500CA) */
2927
2928 #define BIT_SHIFT_SDIO_DATA_CRC 0
2929 #define BIT_MASK_SDIO_DATA_CRC 0xff
2930 #define BIT_SDIO_DATA_CRC(x)                                                   \
2931         (((x) & BIT_MASK_SDIO_DATA_CRC) << BIT_SHIFT_SDIO_DATA_CRC)
2932 #define BIT_GET_SDIO_DATA_CRC(x)                                               \
2933         (((x) >> BIT_SHIFT_SDIO_DATA_CRC) & BIT_MASK_SDIO_DATA_CRC)
2934
2935 /* 2 REG_SDIO_DATA_REPLY_TIME           (Offset 0x102500CB) */
2936
2937 #define BIT_SHIFT_SDIO_DATA_REPLY_TIME 0
2938 #define BIT_MASK_SDIO_DATA_REPLY_TIME 0x7
2939 #define BIT_SDIO_DATA_REPLY_TIME(x)                                            \
2940         (((x) & BIT_MASK_SDIO_DATA_REPLY_TIME)                                 \
2941          << BIT_SHIFT_SDIO_DATA_REPLY_TIME)
2942 #define BIT_GET_SDIO_DATA_REPLY_TIME(x)                                        \
2943         (((x) >> BIT_SHIFT_SDIO_DATA_REPLY_TIME) &                             \
2944          BIT_MASK_SDIO_DATA_REPLY_TIME)
2945
2946 /* 2 REG_PMC_DBG_CTRL2                  (Offset 0x00CC) */
2947
2948 #define BIT_SHIFT_EFUSE_BURN_GNT 24
2949 #define BIT_MASK_EFUSE_BURN_GNT 0xff
2950 #define BIT_EFUSE_BURN_GNT(x)                                                  \
2951         (((x) & BIT_MASK_EFUSE_BURN_GNT) << BIT_SHIFT_EFUSE_BURN_GNT)
2952 #define BIT_GET_EFUSE_BURN_GNT(x)                                              \
2953         (((x) >> BIT_SHIFT_EFUSE_BURN_GNT) & BIT_MASK_EFUSE_BURN_GNT)
2954
2955 /* 2 REG_PMC_DBG_CTRL2                  (Offset 0x00CC) */
2956
2957 #define BIT_STOP_WL_PMC BIT(9)
2958 #define BIT_STOP_SYM_PMC BIT(8)
2959
2960 /* 2 REG_PMC_DBG_CTRL2                  (Offset 0x00CC) */
2961
2962 #define BIT_REG_RST_WLPMC BIT(5)
2963 #define BIT_REG_RST_PD12N BIT(4)
2964 #define BIT_SYSON_DIS_WLREG_WRMSK BIT(3)
2965 #define BIT_SYSON_DIS_PMCREG_WRMSK BIT(2)
2966
2967 #define BIT_SHIFT_SYSON_REG_ARB 0
2968 #define BIT_MASK_SYSON_REG_ARB 0x3
2969 #define BIT_SYSON_REG_ARB(x)                                                   \
2970         (((x) & BIT_MASK_SYSON_REG_ARB) << BIT_SHIFT_SYSON_REG_ARB)
2971 #define BIT_GET_SYSON_REG_ARB(x)                                               \
2972         (((x) >> BIT_SHIFT_SYSON_REG_ARB) & BIT_MASK_SYSON_REG_ARB)
2973
2974 /* 2 REG_BIST_CTRL                              (Offset 0x00D0) */
2975
2976 #define BIT_BIST_USB_DIS BIT(27)
2977
2978 /* 2 REG_BIST_CTRL                              (Offset 0x00D0) */
2979
2980 #define BIT_BIST_PCI_DIS BIT(26)
2981
2982 /* 2 REG_BIST_CTRL                              (Offset 0x00D0) */
2983
2984 #define BIT_BIST_BT_DIS BIT(25)
2985
2986 /* 2 REG_BIST_CTRL                              (Offset 0x00D0) */
2987
2988 #define BIT_BIST_WL_DIS BIT(24)
2989
2990 /* 2 REG_BIST_CTRL                              (Offset 0x00D0) */
2991
2992 #define BIT_SHIFT_BIST_RPT_SEL 16
2993 #define BIT_MASK_BIST_RPT_SEL 0xf
2994 #define BIT_BIST_RPT_SEL(x)                                                    \
2995         (((x) & BIT_MASK_BIST_RPT_SEL) << BIT_SHIFT_BIST_RPT_SEL)
2996 #define BIT_GET_BIST_RPT_SEL(x)                                                \
2997         (((x) >> BIT_SHIFT_BIST_RPT_SEL) & BIT_MASK_BIST_RPT_SEL)
2998
2999 /* 2 REG_BIST_CTRL                              (Offset 0x00D0) */
3000
3001 #define BIT_BIST_RESUME_PS BIT(4)
3002
3003 /* 2 REG_BIST_CTRL                              (Offset 0x00D0) */
3004
3005 #define BIT_BIST_RESUME BIT(3)
3006 #define BIT_BIST_NORMAL BIT(2)
3007
3008 /* 2 REG_BIST_CTRL                              (Offset 0x00D0) */
3009
3010 #define BIT_BIST_RSTN BIT(1)
3011 #define BIT_BIST_CLK_EN BIT(0)
3012
3013 /* 2 REG_BIST_RPT                               (Offset 0x00D4) */
3014
3015 #define BIT_SHIFT_MBIST_REPORT 0
3016 #define BIT_MASK_MBIST_REPORT 0xffffffffL
3017 #define BIT_MBIST_REPORT(x)                                                    \
3018         (((x) & BIT_MASK_MBIST_REPORT) << BIT_SHIFT_MBIST_REPORT)
3019 #define BIT_GET_MBIST_REPORT(x)                                                \
3020         (((x) >> BIT_SHIFT_MBIST_REPORT) & BIT_MASK_MBIST_REPORT)
3021
3022 /* 2 REG_MEM_CTRL                               (Offset 0x00D8) */
3023
3024 #define BIT_UMEM_RME BIT(31)
3025
3026 /* 2 REG_MEM_CTRL                               (Offset 0x00D8) */
3027
3028 #define BIT_SHIFT_BT_SPRAM 28
3029 #define BIT_MASK_BT_SPRAM 0x3
3030 #define BIT_BT_SPRAM(x) (((x) & BIT_MASK_BT_SPRAM) << BIT_SHIFT_BT_SPRAM)
3031 #define BIT_GET_BT_SPRAM(x) (((x) >> BIT_SHIFT_BT_SPRAM) & BIT_MASK_BT_SPRAM)
3032
3033 /* 2 REG_MEM_CTRL                               (Offset 0x00D8) */
3034
3035 #define BIT_SHIFT_BT_ROM 24
3036 #define BIT_MASK_BT_ROM 0xf
3037 #define BIT_BT_ROM(x) (((x) & BIT_MASK_BT_ROM) << BIT_SHIFT_BT_ROM)
3038 #define BIT_GET_BT_ROM(x) (((x) >> BIT_SHIFT_BT_ROM) & BIT_MASK_BT_ROM)
3039
3040 #define BIT_SHIFT_PCI_DPRAM 10
3041 #define BIT_MASK_PCI_DPRAM 0x3
3042 #define BIT_PCI_DPRAM(x) (((x) & BIT_MASK_PCI_DPRAM) << BIT_SHIFT_PCI_DPRAM)
3043 #define BIT_GET_PCI_DPRAM(x) (((x) >> BIT_SHIFT_PCI_DPRAM) & BIT_MASK_PCI_DPRAM)
3044
3045 /* 2 REG_MEM_CTRL                               (Offset 0x00D8) */
3046
3047 #define BIT_SHIFT_PCI_SPRAM 8
3048 #define BIT_MASK_PCI_SPRAM 0x3
3049 #define BIT_PCI_SPRAM(x) (((x) & BIT_MASK_PCI_SPRAM) << BIT_SHIFT_PCI_SPRAM)
3050 #define BIT_GET_PCI_SPRAM(x) (((x) >> BIT_SHIFT_PCI_SPRAM) & BIT_MASK_PCI_SPRAM)
3051
3052 #define BIT_SHIFT_USB_SPRAM 6
3053 #define BIT_MASK_USB_SPRAM 0x3
3054 #define BIT_USB_SPRAM(x) (((x) & BIT_MASK_USB_SPRAM) << BIT_SHIFT_USB_SPRAM)
3055 #define BIT_GET_USB_SPRAM(x) (((x) >> BIT_SHIFT_USB_SPRAM) & BIT_MASK_USB_SPRAM)
3056
3057 /* 2 REG_MEM_CTRL                               (Offset 0x00D8) */
3058
3059 #define BIT_SHIFT_USB_SPRF 4
3060 #define BIT_MASK_USB_SPRF 0x3
3061 #define BIT_USB_SPRF(x) (((x) & BIT_MASK_USB_SPRF) << BIT_SHIFT_USB_SPRF)
3062 #define BIT_GET_USB_SPRF(x) (((x) >> BIT_SHIFT_USB_SPRF) & BIT_MASK_USB_SPRF)
3063
3064 /* 2 REG_MEM_CTRL                               (Offset 0x00D8) */
3065
3066 #define BIT_SHIFT_MCU_ROM 0
3067 #define BIT_MASK_MCU_ROM 0xf
3068 #define BIT_MCU_ROM(x) (((x) & BIT_MASK_MCU_ROM) << BIT_SHIFT_MCU_ROM)
3069 #define BIT_GET_MCU_ROM(x) (((x) >> BIT_SHIFT_MCU_ROM) & BIT_MASK_MCU_ROM)
3070
3071 /* 2 REG_AFE_CTRL8                              (Offset 0x00DC) */
3072
3073 #define BIT_SYN_AGPIO BIT(20)
3074
3075 /* 2 REG_AFE_CTRL8                              (Offset 0x00DC) */
3076
3077 #define BIT_XTAL_LP BIT(4)
3078 #define BIT_XTAL_GM_SEP BIT(3)
3079
3080 /* 2 REG_AFE_CTRL8                              (Offset 0x00DC) */
3081
3082 #define BIT_SHIFT_XTAL_SEL_TOK 0
3083 #define BIT_MASK_XTAL_SEL_TOK 0x7
3084 #define BIT_XTAL_SEL_TOK(x)                                                    \
3085         (((x) & BIT_MASK_XTAL_SEL_TOK) << BIT_SHIFT_XTAL_SEL_TOK)
3086 #define BIT_GET_XTAL_SEL_TOK(x)                                                \
3087         (((x) >> BIT_SHIFT_XTAL_SEL_TOK) & BIT_MASK_XTAL_SEL_TOK)
3088
3089 /* 2 REG_USB_SIE_INTF                   (Offset 0x00E0) */
3090
3091 #define BIT_RD_SEL BIT(31)
3092
3093 /* 2 REG_USB_SIE_INTF                   (Offset 0x00E0) */
3094
3095 #define BIT_USB_SIE_INTF_WE_V1 BIT(30)
3096 #define BIT_USB_SIE_INTF_BYIOREG_V1 BIT(29)
3097 #define BIT_USB_SIE_SELECT BIT(28)
3098
3099 /* 2 REG_USB_SIE_INTF                   (Offset 0x00E0) */
3100
3101 #define BIT_SHIFT_USB_SIE_INTF_ADDR_V1 16
3102 #define BIT_MASK_USB_SIE_INTF_ADDR_V1 0x1ff
3103 #define BIT_USB_SIE_INTF_ADDR_V1(x)                                            \
3104         (((x) & BIT_MASK_USB_SIE_INTF_ADDR_V1)                                 \
3105          << BIT_SHIFT_USB_SIE_INTF_ADDR_V1)
3106 #define BIT_GET_USB_SIE_INTF_ADDR_V1(x)                                        \
3107         (((x) >> BIT_SHIFT_USB_SIE_INTF_ADDR_V1) &                             \
3108          BIT_MASK_USB_SIE_INTF_ADDR_V1)
3109
3110 /* 2 REG_USB_SIE_INTF                   (Offset 0x00E0) */
3111
3112 #define BIT_SHIFT_USB_SIE_INTF_RD 8
3113 #define BIT_MASK_USB_SIE_INTF_RD 0xff
3114 #define BIT_USB_SIE_INTF_RD(x)                                                 \
3115         (((x) & BIT_MASK_USB_SIE_INTF_RD) << BIT_SHIFT_USB_SIE_INTF_RD)
3116 #define BIT_GET_USB_SIE_INTF_RD(x)                                             \
3117         (((x) >> BIT_SHIFT_USB_SIE_INTF_RD) & BIT_MASK_USB_SIE_INTF_RD)
3118
3119 #define BIT_SHIFT_USB_SIE_INTF_WD 0
3120 #define BIT_MASK_USB_SIE_INTF_WD 0xff
3121 #define BIT_USB_SIE_INTF_WD(x)                                                 \
3122         (((x) & BIT_MASK_USB_SIE_INTF_WD) << BIT_SHIFT_USB_SIE_INTF_WD)
3123 #define BIT_GET_USB_SIE_INTF_WD(x)                                             \
3124         (((x) >> BIT_SHIFT_USB_SIE_INTF_WD) & BIT_MASK_USB_SIE_INTF_WD)
3125
3126 /* 2 REG_PCIE_MIO_INTF                  (Offset 0x00E4) */
3127
3128 #define BIT_PCIE_MIO_BYIOREG BIT(13)
3129 #define BIT_PCIE_MIO_RE BIT(12)
3130
3131 #define BIT_SHIFT_PCIE_MIO_WE 8
3132 #define BIT_MASK_PCIE_MIO_WE 0xf
3133 #define BIT_PCIE_MIO_WE(x)                                                     \
3134         (((x) & BIT_MASK_PCIE_MIO_WE) << BIT_SHIFT_PCIE_MIO_WE)
3135 #define BIT_GET_PCIE_MIO_WE(x)                                                 \
3136         (((x) >> BIT_SHIFT_PCIE_MIO_WE) & BIT_MASK_PCIE_MIO_WE)
3137
3138 #define BIT_SHIFT_PCIE_MIO_ADDR 0
3139 #define BIT_MASK_PCIE_MIO_ADDR 0xff
3140 #define BIT_PCIE_MIO_ADDR(x)                                                   \
3141         (((x) & BIT_MASK_PCIE_MIO_ADDR) << BIT_SHIFT_PCIE_MIO_ADDR)
3142 #define BIT_GET_PCIE_MIO_ADDR(x)                                               \
3143         (((x) >> BIT_SHIFT_PCIE_MIO_ADDR) & BIT_MASK_PCIE_MIO_ADDR)
3144
3145 /* 2 REG_PCIE_MIO_INTD                  (Offset 0x00E8) */
3146
3147 #define BIT_SHIFT_PCIE_MIO_DATA 0
3148 #define BIT_MASK_PCIE_MIO_DATA 0xffffffffL
3149 #define BIT_PCIE_MIO_DATA(x)                                                   \
3150         (((x) & BIT_MASK_PCIE_MIO_DATA) << BIT_SHIFT_PCIE_MIO_DATA)
3151 #define BIT_GET_PCIE_MIO_DATA(x)                                               \
3152         (((x) >> BIT_SHIFT_PCIE_MIO_DATA) & BIT_MASK_PCIE_MIO_DATA)
3153
3154 /* 2 REG_WLRF1                          (Offset 0x00EC) */
3155
3156 #define BIT_SHIFT_WLRF1_CTRL 24
3157 #define BIT_MASK_WLRF1_CTRL 0xff
3158 #define BIT_WLRF1_CTRL(x) (((x) & BIT_MASK_WLRF1_CTRL) << BIT_SHIFT_WLRF1_CTRL)
3159 #define BIT_GET_WLRF1_CTRL(x)                                                  \
3160         (((x) >> BIT_SHIFT_WLRF1_CTRL) & BIT_MASK_WLRF1_CTRL)
3161
3162 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3163
3164 #define BIT_SHIFT_TRP_ICFG 28
3165 #define BIT_MASK_TRP_ICFG 0xf
3166 #define BIT_TRP_ICFG(x) (((x) & BIT_MASK_TRP_ICFG) << BIT_SHIFT_TRP_ICFG)
3167 #define BIT_GET_TRP_ICFG(x) (((x) >> BIT_SHIFT_TRP_ICFG) & BIT_MASK_TRP_ICFG)
3168
3169 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3170
3171 #define BIT_RF_TYPE_ID BIT(27)
3172 #define BIT_BD_HCI_SEL BIT(26)
3173
3174 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3175
3176 #define BIT_BD_PKG_SEL BIT(25)
3177
3178 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3179
3180 #define BIT_SPSLDO_SEL BIT(24)
3181
3182 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3183
3184 #define BIT_RTL_ID BIT(23)
3185 #define BIT_PAD_HWPD_IDN BIT(22)
3186
3187 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3188
3189 #define BIT_TESTMODE BIT(20)
3190
3191 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3192
3193 #define BIT_SHIFT_VENDOR_ID 16
3194 #define BIT_MASK_VENDOR_ID 0xf
3195 #define BIT_VENDOR_ID(x) (((x) & BIT_MASK_VENDOR_ID) << BIT_SHIFT_VENDOR_ID)
3196 #define BIT_GET_VENDOR_ID(x) (((x) >> BIT_SHIFT_VENDOR_ID) & BIT_MASK_VENDOR_ID)
3197
3198 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3199
3200 #define BIT_SHIFT_CHIP_VER 12
3201 #define BIT_MASK_CHIP_VER 0xf
3202 #define BIT_CHIP_VER(x) (((x) & BIT_MASK_CHIP_VER) << BIT_SHIFT_CHIP_VER)
3203 #define BIT_GET_CHIP_VER(x) (((x) >> BIT_SHIFT_CHIP_VER) & BIT_MASK_CHIP_VER)
3204
3205 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3206
3207 #define BIT_BD_MAC3 BIT(11)
3208
3209 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3210
3211 #define BIT_BD_MAC1 BIT(10)
3212 #define BIT_BD_MAC2 BIT(9)
3213 #define BIT_SIC_IDLE BIT(8)
3214 #define BIT_SW_OFFLOAD_EN BIT(7)
3215
3216 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3217
3218 #define BIT_OCP_SHUTDN BIT(6)
3219
3220 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3221
3222 #define BIT_V15_VLD BIT(5)
3223
3224 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3225
3226 #define BIT_PCIRSTB BIT(4)
3227
3228 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3229
3230 #define BIT_PCLK_VLD BIT(3)
3231
3232 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3233
3234 #define BIT_UCLK_VLD BIT(2)
3235
3236 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3237
3238 #define BIT_ACLK_VLD BIT(1)
3239
3240 /* 2 REG_SYS_CFG1                               (Offset 0x00F0) */
3241
3242 #define BIT_XCLK_VLD BIT(0)
3243
3244 /* 2 REG_SYS_STATUS1                            (Offset 0x00F4) */
3245
3246 #define BIT_SHIFT_RF_RL_ID 28
3247 #define BIT_MASK_RF_RL_ID 0xf
3248 #define BIT_RF_RL_ID(x) (((x) & BIT_MASK_RF_RL_ID) << BIT_SHIFT_RF_RL_ID)
3249 #define BIT_GET_RF_RL_ID(x) (((x) >> BIT_SHIFT_RF_RL_ID) & BIT_MASK_RF_RL_ID)
3250
3251 /* 2 REG_SYS_STATUS1                            (Offset 0x00F4) */
3252
3253 #define BIT_HPHY_ICFG BIT(19)
3254
3255 /* 2 REG_SYS_STATUS1                            (Offset 0x00F4) */
3256
3257 #define BIT_SHIFT_SEL_0XC0 16
3258 #define BIT_MASK_SEL_0XC0 0x3
3259 #define BIT_SEL_0XC0(x) (((x) & BIT_MASK_SEL_0XC0) << BIT_SHIFT_SEL_0XC0)
3260 #define BIT_GET_SEL_0XC0(x) (((x) >> BIT_SHIFT_SEL_0XC0) & BIT_MASK_SEL_0XC0)
3261
3262 /* 2 REG_SYS_STATUS1                            (Offset 0x00F4) */
3263
3264 #define BIT_SHIFT_HCI_SEL_V3 12
3265 #define BIT_MASK_HCI_SEL_V3 0x7
3266 #define BIT_HCI_SEL_V3(x) (((x) & BIT_MASK_HCI_SEL_V3) << BIT_SHIFT_HCI_SEL_V3)
3267 #define BIT_GET_HCI_SEL_V3(x)                                                  \
3268         (((x) >> BIT_SHIFT_HCI_SEL_V3) & BIT_MASK_HCI_SEL_V3)
3269
3270 /* 2 REG_SYS_STATUS1                            (Offset 0x00F4) */
3271
3272 #define BIT_USB_OPERATION_MODE BIT(10)
3273 #define BIT_BT_PDN BIT(9)
3274 #define BIT_AUTO_WLPON BIT(8)
3275
3276 /* 2 REG_SYS_STATUS1                            (Offset 0x00F4) */
3277
3278 #define BIT_WL_MODE BIT(7)
3279
3280 /* 2 REG_SYS_STATUS1                            (Offset 0x00F4) */
3281
3282 #define BIT_PKG_SEL_HCI BIT(6)
3283
3284 /* 2 REG_SYS_STATUS1                            (Offset 0x00F4) */
3285
3286 #define BIT_SHIFT_PAD_HCI_SEL_V1 3
3287 #define BIT_MASK_PAD_HCI_SEL_V1 0x7
3288 #define BIT_PAD_HCI_SEL_V1(x)                                                  \
3289         (((x) & BIT_MASK_PAD_HCI_SEL_V1) << BIT_SHIFT_PAD_HCI_SEL_V1)
3290 #define BIT_GET_PAD_HCI_SEL_V1(x)                                              \
3291         (((x) >> BIT_SHIFT_PAD_HCI_SEL_V1) & BIT_MASK_PAD_HCI_SEL_V1)
3292
3293 /* 2 REG_SYS_STATUS1                            (Offset 0x00F4) */
3294
3295 #define BIT_SHIFT_EFS_HCI_SEL_V1 0
3296 #define BIT_MASK_EFS_HCI_SEL_V1 0x7
3297 #define BIT_EFS_HCI_SEL_V1(x)                                                  \
3298         (((x) & BIT_MASK_EFS_HCI_SEL_V1) << BIT_SHIFT_EFS_HCI_SEL_V1)
3299 #define BIT_GET_EFS_HCI_SEL_V1(x)                                              \
3300         (((x) >> BIT_SHIFT_EFS_HCI_SEL_V1) & BIT_MASK_EFS_HCI_SEL_V1)
3301
3302 /* 2 REG_SYS_STATUS2                            (Offset 0x00F8) */
3303
3304 #define BIT_SIO_ALDN BIT(19)
3305 #define BIT_USB_ALDN BIT(18)
3306 #define BIT_PCI_ALDN BIT(17)
3307 #define BIT_SYS_ALDN BIT(16)
3308
3309 #define BIT_SHIFT_EPVID1 8
3310 #define BIT_MASK_EPVID1 0xff
3311 #define BIT_EPVID1(x) (((x) & BIT_MASK_EPVID1) << BIT_SHIFT_EPVID1)
3312 #define BIT_GET_EPVID1(x) (((x) >> BIT_SHIFT_EPVID1) & BIT_MASK_EPVID1)
3313
3314 #define BIT_SHIFT_EPVID0 0
3315 #define BIT_MASK_EPVID0 0xff
3316 #define BIT_EPVID0(x) (((x) & BIT_MASK_EPVID0) << BIT_SHIFT_EPVID0)
3317 #define BIT_GET_EPVID0(x) (((x) >> BIT_SHIFT_EPVID0) & BIT_MASK_EPVID0)
3318
3319 /* 2 REG_SYS_CFG2                               (Offset 0x00FC) */
3320
3321 #define BIT_HCI_SEL_EMBEDDED BIT(8)
3322
3323 /* 2 REG_SYS_CFG2                               (Offset 0x00FC) */
3324
3325 #define BIT_SHIFT_HW_ID 0
3326 #define BIT_MASK_HW_ID 0xff
3327 #define BIT_HW_ID(x) (((x) & BIT_MASK_HW_ID) << BIT_SHIFT_HW_ID)
3328 #define BIT_GET_HW_ID(x) (((x) >> BIT_SHIFT_HW_ID) & BIT_MASK_HW_ID)
3329
3330 /* 2 REG_CR                                     (Offset 0x0100) */
3331
3332 #define BIT_SHIFT_LBMODE 24
3333 #define BIT_MASK_LBMODE 0x1f
3334 #define BIT_LBMODE(x) (((x) & BIT_MASK_LBMODE) << BIT_SHIFT_LBMODE)
3335 #define BIT_GET_LBMODE(x) (((x) >> BIT_SHIFT_LBMODE) & BIT_MASK_LBMODE)
3336
3337 #define BIT_SHIFT_NETYPE1 18
3338 #define BIT_MASK_NETYPE1 0x3
3339 #define BIT_NETYPE1(x) (((x) & BIT_MASK_NETYPE1) << BIT_SHIFT_NETYPE1)
3340 #define BIT_GET_NETYPE1(x) (((x) >> BIT_SHIFT_NETYPE1) & BIT_MASK_NETYPE1)
3341
3342 #define BIT_SHIFT_NETYPE0 16
3343 #define BIT_MASK_NETYPE0 0x3
3344 #define BIT_NETYPE0(x) (((x) & BIT_MASK_NETYPE0) << BIT_SHIFT_NETYPE0)
3345 #define BIT_GET_NETYPE0(x) (((x) >> BIT_SHIFT_NETYPE0) & BIT_MASK_NETYPE0)
3346
3347 /* 2 REG_CR                                     (Offset 0x0100) */
3348
3349 #define BIT_I2C_MAILBOX_EN BIT(12)
3350 #define BIT_SHCUT_EN BIT(11)
3351
3352 /* 2 REG_CR                                     (Offset 0x0100) */
3353
3354 #define BIT_32K_CAL_TMR_EN BIT(10)
3355 #define BIT_MAC_SEC_EN BIT(9)
3356 #define BIT_ENSWBCN BIT(8)
3357 #define BIT_MACRXEN BIT(7)
3358 #define BIT_MACTXEN BIT(6)
3359 #define BIT_SCHEDULE_EN BIT(5)
3360 #define BIT_PROTOCOL_EN BIT(4)
3361 #define BIT_RXDMA_EN BIT(3)
3362 #define BIT_TXDMA_EN BIT(2)
3363 #define BIT_HCI_RXDMA_EN BIT(1)
3364 #define BIT_HCI_TXDMA_EN BIT(0)
3365
3366 /* 2 REG_PKT_BUFF_ACCESS_CTRL           (Offset 0x0106) */
3367
3368 #define BIT_SHIFT_PKT_BUFF_ACCESS_CTRL 0
3369 #define BIT_MASK_PKT_BUFF_ACCESS_CTRL 0xff
3370 #define BIT_PKT_BUFF_ACCESS_CTRL(x)                                            \
3371         (((x) & BIT_MASK_PKT_BUFF_ACCESS_CTRL)                                 \
3372          << BIT_SHIFT_PKT_BUFF_ACCESS_CTRL)
3373 #define BIT_GET_PKT_BUFF_ACCESS_CTRL(x)                                        \
3374         (((x) >> BIT_SHIFT_PKT_BUFF_ACCESS_CTRL) &                             \
3375          BIT_MASK_PKT_BUFF_ACCESS_CTRL)
3376
3377 /* 2 REG_TSF_CLK_STATE                  (Offset 0x0108) */
3378
3379 #define BIT_TSF_CLK_STABLE BIT(15)
3380
3381 #define BIT_SHIFT_I2C_M_BUS_GNT_FW 4
3382 #define BIT_MASK_I2C_M_BUS_GNT_FW 0x7
3383 #define BIT_I2C_M_BUS_GNT_FW(x)                                                \
3384         (((x) & BIT_MASK_I2C_M_BUS_GNT_FW) << BIT_SHIFT_I2C_M_BUS_GNT_FW)
3385 #define BIT_GET_I2C_M_BUS_GNT_FW(x)                                            \
3386         (((x) >> BIT_SHIFT_I2C_M_BUS_GNT_FW) & BIT_MASK_I2C_M_BUS_GNT_FW)
3387
3388 #define BIT_I2C_M_GNT_FW BIT(3)
3389
3390 #define BIT_SHIFT_I2C_M_SPEED 1
3391 #define BIT_MASK_I2C_M_SPEED 0x3
3392 #define BIT_I2C_M_SPEED(x)                                                     \
3393         (((x) & BIT_MASK_I2C_M_SPEED) << BIT_SHIFT_I2C_M_SPEED)
3394 #define BIT_GET_I2C_M_SPEED(x)                                                 \
3395         (((x) >> BIT_SHIFT_I2C_M_SPEED) & BIT_MASK_I2C_M_SPEED)
3396
3397 #define BIT_I2C_M_UNLOCK BIT(0)
3398
3399 /* 2 REG_TXDMA_PQ_MAP                   (Offset 0x010C) */
3400
3401 #define BIT_SHIFT_TXDMA_HIQ_MAP 14
3402 #define BIT_MASK_TXDMA_HIQ_MAP 0x3
3403 #define BIT_TXDMA_HIQ_MAP(x)                                                   \
3404         (((x) & BIT_MASK_TXDMA_HIQ_MAP) << BIT_SHIFT_TXDMA_HIQ_MAP)
3405 #define BIT_GET_TXDMA_HIQ_MAP(x)                                               \
3406         (((x) >> BIT_SHIFT_TXDMA_HIQ_MAP) & BIT_MASK_TXDMA_HIQ_MAP)
3407
3408 #define BIT_SHIFT_TXDMA_MGQ_MAP 12
3409 #define BIT_MASK_TXDMA_MGQ_MAP 0x3
3410 #define BIT_TXDMA_MGQ_MAP(x)                                                   \
3411         (((x) & BIT_MASK_TXDMA_MGQ_MAP) << BIT_SHIFT_TXDMA_MGQ_MAP)
3412 #define BIT_GET_TXDMA_MGQ_MAP(x)                                               \
3413         (((x) >> BIT_SHIFT_TXDMA_MGQ_MAP) & BIT_MASK_TXDMA_MGQ_MAP)
3414
3415 #define BIT_SHIFT_TXDMA_BKQ_MAP 10
3416 #define BIT_MASK_TXDMA_BKQ_MAP 0x3
3417 #define BIT_TXDMA_BKQ_MAP(x)                                                   \
3418         (((x) & BIT_MASK_TXDMA_BKQ_MAP) << BIT_SHIFT_TXDMA_BKQ_MAP)
3419 #define BIT_GET_TXDMA_BKQ_MAP(x)                                               \
3420         (((x) >> BIT_SHIFT_TXDMA_BKQ_MAP) & BIT_MASK_TXDMA_BKQ_MAP)
3421
3422 #define BIT_SHIFT_TXDMA_BEQ_MAP 8
3423 #define BIT_MASK_TXDMA_BEQ_MAP 0x3
3424 #define BIT_TXDMA_BEQ_MAP(x)                                                   \
3425         (((x) & BIT_MASK_TXDMA_BEQ_MAP) << BIT_SHIFT_TXDMA_BEQ_MAP)
3426 #define BIT_GET_TXDMA_BEQ_MAP(x)                                               \
3427         (((x) >> BIT_SHIFT_TXDMA_BEQ_MAP) & BIT_MASK_TXDMA_BEQ_MAP)
3428
3429 #define BIT_SHIFT_TXDMA_VIQ_MAP 6
3430 #define BIT_MASK_TXDMA_VIQ_MAP 0x3
3431 #define BIT_TXDMA_VIQ_MAP(x)                                                   \
3432         (((x) & BIT_MASK_TXDMA_VIQ_MAP) << BIT_SHIFT_TXDMA_VIQ_MAP)
3433 #define BIT_GET_TXDMA_VIQ_MAP(x)                                               \
3434         (((x) >> BIT_SHIFT_TXDMA_VIQ_MAP) & BIT_MASK_TXDMA_VIQ_MAP)
3435
3436 #define BIT_SHIFT_TXDMA_VOQ_MAP 4
3437 #define BIT_MASK_TXDMA_VOQ_MAP 0x3
3438 #define BIT_TXDMA_VOQ_MAP(x)                                                   \
3439         (((x) & BIT_MASK_TXDMA_VOQ_MAP) << BIT_SHIFT_TXDMA_VOQ_MAP)
3440 #define BIT_GET_TXDMA_VOQ_MAP(x)                                               \
3441         (((x) >> BIT_SHIFT_TXDMA_VOQ_MAP) & BIT_MASK_TXDMA_VOQ_MAP)
3442
3443 #define BIT_RXDMA_AGG_EN BIT(2)
3444 #define BIT_RXSHFT_EN BIT(1)
3445 #define BIT_RXDMA_ARBBW_EN BIT(0)
3446
3447 /* 2 REG_TRXFF_BNDY                             (Offset 0x0114) */
3448
3449 #define BIT_SHIFT_RXFFOVFL_RSV_V2 8
3450 #define BIT_MASK_RXFFOVFL_RSV_V2 0xf
3451 #define BIT_RXFFOVFL_RSV_V2(x)                                                 \
3452         (((x) & BIT_MASK_RXFFOVFL_RSV_V2) << BIT_SHIFT_RXFFOVFL_RSV_V2)
3453 #define BIT_GET_RXFFOVFL_RSV_V2(x)                                             \
3454         (((x) >> BIT_SHIFT_RXFFOVFL_RSV_V2) & BIT_MASK_RXFFOVFL_RSV_V2)
3455
3456 /* 2 REG_TRXFF_BNDY                             (Offset 0x0114) */
3457
3458 #define BIT_SHIFT_TXPKTBUF_PGBNDY 0
3459 #define BIT_MASK_TXPKTBUF_PGBNDY 0xff
3460 #define BIT_TXPKTBUF_PGBNDY(x)                                                 \
3461         (((x) & BIT_MASK_TXPKTBUF_PGBNDY) << BIT_SHIFT_TXPKTBUF_PGBNDY)
3462 #define BIT_GET_TXPKTBUF_PGBNDY(x)                                             \
3463         (((x) >> BIT_SHIFT_TXPKTBUF_PGBNDY) & BIT_MASK_TXPKTBUF_PGBNDY)
3464
3465 /* 2 REG_TRXFF_BNDY                             (Offset 0x0114) */
3466
3467 #define BIT_SHIFT_RXFF0_BNDY_V2 0
3468 #define BIT_MASK_RXFF0_BNDY_V2 0x3ffff
3469 #define BIT_RXFF0_BNDY_V2(x)                                                   \
3470         (((x) & BIT_MASK_RXFF0_BNDY_V2) << BIT_SHIFT_RXFF0_BNDY_V2)
3471 #define BIT_GET_RXFF0_BNDY_V2(x)                                               \
3472         (((x) >> BIT_SHIFT_RXFF0_BNDY_V2) & BIT_MASK_RXFF0_BNDY_V2)
3473
3474 #define BIT_SHIFT_RXFF0_RDPTR_V2 0
3475 #define BIT_MASK_RXFF0_RDPTR_V2 0x3ffff
3476 #define BIT_RXFF0_RDPTR_V2(x)                                                  \
3477         (((x) & BIT_MASK_RXFF0_RDPTR_V2) << BIT_SHIFT_RXFF0_RDPTR_V2)
3478 #define BIT_GET_RXFF0_RDPTR_V2(x)                                              \
3479         (((x) >> BIT_SHIFT_RXFF0_RDPTR_V2) & BIT_MASK_RXFF0_RDPTR_V2)
3480
3481 #define BIT_SHIFT_RXFF0_WTPTR_V2 0
3482 #define BIT_MASK_RXFF0_WTPTR_V2 0x3ffff
3483 #define BIT_RXFF0_WTPTR_V2(x)                                                  \
3484         (((x) & BIT_MASK_RXFF0_WTPTR_V2) << BIT_SHIFT_RXFF0_WTPTR_V2)
3485 #define BIT_GET_RXFF0_WTPTR_V2(x)                                              \
3486         (((x) >> BIT_SHIFT_RXFF0_WTPTR_V2) & BIT_MASK_RXFF0_WTPTR_V2)
3487
3488 /* 2 REG_PTA_I2C_MBOX                   (Offset 0x0118) */
3489
3490 #define BIT_SHIFT_I2C_M_STATUS 8
3491 #define BIT_MASK_I2C_M_STATUS 0xf
3492 #define BIT_I2C_M_STATUS(x)                                                    \
3493         (((x) & BIT_MASK_I2C_M_STATUS) << BIT_SHIFT_I2C_M_STATUS)
3494 #define BIT_GET_I2C_M_STATUS(x)                                                \
3495         (((x) >> BIT_SHIFT_I2C_M_STATUS) & BIT_MASK_I2C_M_STATUS)
3496
3497 /* 2 REG_FE1IMR                         (Offset 0x0120) */
3498
3499 #define BIT_FS_RXDMA2_DONE_INT_EN BIT(28)
3500 #define BIT_FS_RXDONE3_INT_EN BIT(27)
3501 #define BIT_FS_RXDONE2_INT_EN BIT(26)
3502 #define BIT_FS_RX_BCN_P4_INT_EN BIT(25)
3503 #define BIT_FS_RX_BCN_P3_INT_EN BIT(24)
3504 #define BIT_FS_RX_BCN_P2_INT_EN BIT(23)
3505 #define BIT_FS_RX_BCN_P1_INT_EN BIT(22)
3506 #define BIT_FS_RX_BCN_P0_INT_EN BIT(21)
3507 #define BIT_FS_RX_UMD0_INT_EN BIT(20)
3508 #define BIT_FS_RX_UMD1_INT_EN BIT(19)
3509 #define BIT_FS_RX_BMD0_INT_EN BIT(18)
3510 #define BIT_FS_RX_BMD1_INT_EN BIT(17)
3511 #define BIT_FS_RXDONE_INT_EN BIT(16)
3512 #define BIT_FS_WWLAN_INT_EN BIT(15)
3513 #define BIT_FS_SOUND_DONE_INT_EN BIT(14)
3514 #define BIT_FS_LP_STBY_INT_EN BIT(13)
3515 #define BIT_FS_TRL_MTR_INT_EN BIT(12)
3516 #define BIT_FS_BF1_PRETO_INT_EN BIT(11)
3517 #define BIT_FS_BF0_PRETO_INT_EN BIT(10)
3518 #define BIT_FS_PTCL_RELEASE_MACID_INT_EN BIT(9)
3519
3520 /* 2 REG_FE1IMR                         (Offset 0x0120) */
3521
3522 #define BIT_FS_LTE_COEX_EN BIT(6)
3523
3524 /* 2 REG_FE1IMR                         (Offset 0x0120) */
3525
3526 #define BIT_FS_WLACTOFF_INT_EN BIT(5)
3527 #define BIT_FS_WLACTON_INT_EN BIT(4)
3528 #define BIT_FS_BTCMD_INT_EN BIT(3)
3529
3530 /* 2 REG_FE1IMR                         (Offset 0x0120) */
3531
3532 #define BIT_FS_REG_MAILBOX_TO_I2C_INT_EN BIT(2)
3533
3534 /* 2 REG_FE1IMR                         (Offset 0x0120) */
3535
3536 #define BIT_FS_TRPC_TO_INT_EN_V1 BIT(1)
3537
3538 /* 2 REG_FE1IMR                         (Offset 0x0120) */
3539
3540 #define BIT_FS_RPC_O_T_INT_EN_V1 BIT(0)
3541
3542 /* 2 REG_FE1ISR                         (Offset 0x0124) */
3543
3544 #define BIT_FS_RXDMA2_DONE_INT BIT(28)
3545 #define BIT_FS_RXDONE3_INT BIT(27)
3546 #define BIT_FS_RXDONE2_INT BIT(26)
3547 #define BIT_FS_RX_BCN_P4_INT BIT(25)
3548 #define BIT_FS_RX_BCN_P3_INT BIT(24)
3549 #define BIT_FS_RX_BCN_P2_INT BIT(23)
3550 #define BIT_FS_RX_BCN_P1_INT BIT(22)
3551 #define BIT_FS_RX_BCN_P0_INT BIT(21)
3552 #define BIT_FS_RX_UMD0_INT BIT(20)
3553 #define BIT_FS_RX_UMD1_INT BIT(19)
3554 #define BIT_FS_RX_BMD0_INT BIT(18)
3555 #define BIT_FS_RX_BMD1_INT BIT(17)
3556 #define BIT_FS_RXDONE_INT BIT(16)
3557 #define BIT_FS_WWLAN_INT BIT(15)
3558 #define BIT_FS_SOUND_DONE_INT BIT(14)
3559 #define BIT_FS_LP_STBY_INT BIT(13)
3560 #define BIT_FS_TRL_MTR_INT BIT(12)
3561 #define BIT_FS_BF1_PRETO_INT BIT(11)
3562 #define BIT_FS_BF0_PRETO_INT BIT(10)
3563 #define BIT_FS_PTCL_RELEASE_MACID_INT BIT(9)
3564
3565 /* 2 REG_FE1ISR                         (Offset 0x0124) */
3566
3567 #define BIT_FS_LTE_COEX_INT BIT(6)
3568
3569 /* 2 REG_FE1ISR                         (Offset 0x0124) */
3570
3571 #define BIT_FS_WLACTOFF_INT BIT(5)
3572 #define BIT_FS_WLACTON_INT BIT(4)
3573 #define BIT_FS_BCN_RX_INT_INT BIT(3)
3574
3575 /* 2 REG_FE1ISR                         (Offset 0x0124) */
3576
3577 #define BIT_FS_MAILBOX_TO_I2C_INT BIT(2)
3578
3579 /* 2 REG_FE1ISR                         (Offset 0x0124) */
3580
3581 #define BIT_FS_TRPC_TO_INT BIT(1)
3582
3583 /* 2 REG_FE1ISR                         (Offset 0x0124) */
3584
3585 #define BIT_FS_RPC_O_T_INT BIT(0)
3586
3587 /* 2 REG_CPWM                           (Offset 0x012C) */
3588
3589 #define BIT_CPWM_TOGGLING BIT(31)
3590
3591 #define BIT_SHIFT_CPWM_MOD 24
3592 #define BIT_MASK_CPWM_MOD 0x7f
3593 #define BIT_CPWM_MOD(x) (((x) & BIT_MASK_CPWM_MOD) << BIT_SHIFT_CPWM_MOD)
3594 #define BIT_GET_CPWM_MOD(x) (((x) >> BIT_SHIFT_CPWM_MOD) & BIT_MASK_CPWM_MOD)
3595
3596 /* 2 REG_FWIMR                          (Offset 0x0130) */
3597
3598 #define BIT_FS_TXBCNOK_MB7_INT_EN BIT(31)
3599
3600 /* 2 REG_FWIMR                          (Offset 0x0130) */
3601
3602 #define BIT_FS_TXBCNOK_MB6_INT_EN BIT(30)
3603
3604 /* 2 REG_FWIMR                          (Offset 0x0130) */
3605
3606 #define BIT_FS_TXBCNOK_MB5_INT_EN BIT(29)
3607
3608 /* 2 REG_FWIMR                          (Offset 0x0130) */
3609
3610 #define BIT_FS_TXBCNOK_MB4_INT_EN BIT(28)
3611
3612 /* 2 REG_FWIMR                          (Offset 0x0130) */
3613
3614 #define BIT_FS_TXBCNOK_MB3_INT_EN BIT(27)
3615
3616 /* 2 REG_FWIMR                          (Offset 0x0130) */
3617
3618 #define BIT_FS_TXBCNOK_MB2_INT_EN BIT(26)
3619
3620 /* 2 REG_FWIMR                          (Offset 0x0130) */
3621
3622 #define BIT_FS_TXBCNOK_MB1_INT_EN BIT(25)
3623
3624 /* 2 REG_FWIMR                          (Offset 0x0130) */
3625
3626 #define BIT_FS_TXBCNOK_MB0_INT_EN BIT(24)
3627
3628 /* 2 REG_FWIMR                          (Offset 0x0130) */
3629
3630 #define BIT_FS_TXBCNERR_MB7_INT_EN BIT(23)
3631
3632 /* 2 REG_FWIMR                          (Offset 0x0130) */
3633
3634 #define BIT_FS_TXBCNERR_MB6_INT_EN BIT(22)
3635
3636 /* 2 REG_FWIMR                          (Offset 0x0130) */
3637
3638 #define BIT_FS_TXBCNERR_MB5_INT_EN BIT(21)
3639
3640 /* 2 REG_FWIMR                          (Offset 0x0130) */
3641
3642 #define BIT_FS_TXBCNERR_MB4_INT_EN BIT(20)
3643
3644 /* 2 REG_FWIMR                          (Offset 0x0130) */
3645
3646 #define BIT_FS_TXBCNERR_MB3_INT_EN BIT(19)
3647
3648 /* 2 REG_FWIMR                          (Offset 0x0130) */
3649
3650 #define BIT_FS_TXBCNERR_MB2_INT_EN BIT(18)
3651
3652 /* 2 REG_FWIMR                          (Offset 0x0130) */
3653
3654 #define BIT_FS_TXBCNERR_MB1_INT_EN BIT(17)
3655
3656 /* 2 REG_FWIMR                          (Offset 0x0130) */
3657
3658 #define BIT_FS_TXBCNERR_MB0_INT_EN BIT(16)
3659
3660 /* 2 REG_FWIMR                          (Offset 0x0130) */
3661
3662 #define BIT_CPU_MGQ_TXDONE_INT_EN BIT(15)
3663
3664 /* 2 REG_FWIMR                          (Offset 0x0130) */
3665
3666 #define BIT_SIFS_OVERSPEC_INT_EN BIT(14)
3667
3668 /* 2 REG_FWIMR                          (Offset 0x0130) */
3669
3670 #define BIT_FS_MGNTQ_RPTR_RELEASE_INT_EN BIT(13)
3671
3672 /* 2 REG_FWIMR                          (Offset 0x0130) */
3673
3674 #define BIT_FS_MGNTQFF_TO_INT_EN BIT(12)
3675
3676 /* 2 REG_FWIMR                          (Offset 0x0130) */
3677
3678 #define BIT_FS_DDMA1_LP_INT_EN BIT(11)
3679
3680 /* 2 REG_FWIMR                          (Offset 0x0130) */
3681
3682 #define BIT_FS_DDMA1_HP_INT_EN BIT(10)
3683
3684 /* 2 REG_FWIMR                          (Offset 0x0130) */
3685
3686 #define BIT_FS_DDMA0_LP_INT_EN BIT(9)
3687
3688 /* 2 REG_FWIMR                          (Offset 0x0130) */
3689
3690 #define BIT_FS_DDMA0_HP_INT_EN BIT(8)
3691
3692 /* 2 REG_FWIMR                          (Offset 0x0130) */
3693
3694 #define BIT_FS_TRXRPT_INT_EN BIT(7)
3695
3696 /* 2 REG_FWIMR                          (Offset 0x0130) */
3697
3698 #define BIT_FS_C2H_W_READY_INT_EN BIT(6)
3699
3700 /* 2 REG_FWIMR                          (Offset 0x0130) */
3701
3702 #define BIT_FS_HRCV_INT_EN BIT(5)
3703
3704 /* 2 REG_FWIMR                          (Offset 0x0130) */
3705
3706 #define BIT_FS_H2CCMD_INT_EN BIT(4)
3707
3708 /* 2 REG_FWIMR                          (Offset 0x0130) */
3709
3710 #define BIT_FS_TXPKTIN_INT_EN BIT(3)
3711
3712 /* 2 REG_FWIMR                          (Offset 0x0130) */
3713
3714 #define BIT_FS_ERRORHDL_INT_EN BIT(2)
3715
3716 /* 2 REG_FWIMR                          (Offset 0x0130) */
3717
3718 #define BIT_FS_TXCCX_INT_EN BIT(1)
3719
3720 /* 2 REG_FWIMR                          (Offset 0x0130) */
3721
3722 #define BIT_FS_TXCLOSE_INT_EN BIT(0)
3723
3724 /* 2 REG_FWISR                          (Offset 0x0134) */
3725
3726 #define BIT_FS_TXBCNOK_MB7_INT BIT(31)
3727
3728 /* 2 REG_FWISR                          (Offset 0x0134) */
3729
3730 #define BIT_FS_TXBCNOK_MB6_INT BIT(30)
3731
3732 /* 2 REG_FWISR                          (Offset 0x0134) */
3733
3734 #define BIT_FS_TXBCNOK_MB5_INT BIT(29)
3735
3736 /* 2 REG_FWISR                          (Offset 0x0134) */
3737
3738 #define BIT_FS_TXBCNOK_MB4_INT BIT(28)
3739
3740 /* 2 REG_FWISR                          (Offset 0x0134) */
3741
3742 #define BIT_FS_TXBCNOK_MB3_INT BIT(27)
3743
3744 /* 2 REG_FWISR                          (Offset 0x0134) */
3745
3746 #define BIT_FS_TXBCNOK_MB2_INT BIT(26)
3747
3748 /* 2 REG_FWISR                          (Offset 0x0134) */
3749
3750 #define BIT_FS_TXBCNOK_MB1_INT BIT(25)
3751
3752 /* 2 REG_FWISR                          (Offset 0x0134) */
3753
3754 #define BIT_FS_TXBCNOK_MB0_INT BIT(24)
3755
3756 /* 2 REG_FWISR                          (Offset 0x0134) */
3757
3758 #define BIT_FS_TXBCNERR_MB7_INT BIT(23)
3759
3760 /* 2 REG_FWISR                          (Offset 0x0134) */
3761
3762 #define BIT_FS_TXBCNERR_MB6_INT BIT(22)
3763
3764 /* 2 REG_FWISR                          (Offset 0x0134) */
3765
3766 #define BIT_FS_TXBCNERR_MB5_INT BIT(21)
3767
3768 /* 2 REG_FWISR                          (Offset 0x0134) */
3769
3770 #define BIT_FS_TXBCNERR_MB4_INT BIT(20)
3771
3772 /* 2 REG_FWISR                          (Offset 0x0134) */
3773
3774 #define BIT_FS_TXBCNERR_MB3_INT BIT(19)
3775
3776 /* 2 REG_FWISR                          (Offset 0x0134) */
3777
3778 #define BIT_FS_TXBCNERR_MB2_INT BIT(18)
3779
3780 /* 2 REG_FWISR                          (Offset 0x0134) */
3781
3782 #define BIT_FS_TXBCNERR_MB1_INT BIT(17)
3783
3784 /* 2 REG_FWISR                          (Offset 0x0134) */
3785
3786 #define BIT_FS_TXBCNERR_MB0_INT BIT(16)
3787
3788 /* 2 REG_FWISR                          (Offset 0x0134) */
3789
3790 #define BIT_CPU_MGQ_TXDONE_INT BIT(15)
3791
3792 /* 2 REG_FWISR                          (Offset 0x0134) */
3793
3794 #define BIT_SIFS_OVERSPEC_INT BIT(14)
3795
3796 /* 2 REG_FWISR                          (Offset 0x0134) */
3797
3798 #define BIT_FS_MGNTQ_RPTR_RELEASE_INT BIT(13)
3799
3800 /* 2 REG_FWISR                          (Offset 0x0134) */
3801
3802 #define BIT_FS_MGNTQFF_TO_INT BIT(12)
3803
3804 /* 2 REG_FWISR                          (Offset 0x0134) */
3805
3806 #define BIT_FS_DDMA1_LP_INT BIT(11)
3807
3808 /* 2 REG_FWISR                          (Offset 0x0134) */
3809
3810 #define BIT_FS_DDMA1_HP_INT BIT(10)
3811
3812 /* 2 REG_FWISR                          (Offset 0x0134) */
3813
3814 #define BIT_FS_DDMA0_LP_INT BIT(9)
3815
3816 /* 2 REG_FWISR                          (Offset 0x0134) */
3817
3818 #define BIT_FS_DDMA0_HP_INT BIT(8)
3819
3820 /* 2 REG_FWISR                          (Offset 0x0134) */
3821
3822 #define BIT_FS_TRXRPT_INT BIT(7)
3823
3824 /* 2 REG_FWISR                          (Offset 0x0134) */
3825
3826 #define BIT_FS_C2H_W_READY_INT BIT(6)
3827
3828 /* 2 REG_FWISR                          (Offset 0x0134) */
3829
3830 #define BIT_FS_HRCV_INT BIT(5)
3831
3832 /* 2 REG_FWISR                          (Offset 0x0134) */
3833
3834 #define BIT_FS_H2CCMD_INT BIT(4)
3835
3836 /* 2 REG_FWISR                          (Offset 0x0134) */
3837
3838 #define BIT_FS_TXPKTIN_INT BIT(3)
3839
3840 /* 2 REG_FWISR                          (Offset 0x0134) */
3841
3842 #define BIT_FS_ERRORHDL_INT BIT(2)
3843
3844 /* 2 REG_FWISR                          (Offset 0x0134) */
3845
3846 #define BIT_FS_TXCCX_INT BIT(1)
3847
3848 /* 2 REG_FWISR                          (Offset 0x0134) */
3849
3850 #define BIT_FS_TXCLOSE_INT BIT(0)
3851
3852 /* 2 REG_FTIMR                          (Offset 0x0138) */
3853
3854 #define BIT_PS_TIMER_C_EARLY_INT_EN BIT(23)
3855
3856 /* 2 REG_FTIMR                          (Offset 0x0138) */
3857
3858 #define BIT_PS_TIMER_B_EARLY_INT_EN BIT(22)
3859
3860 /* 2 REG_FTIMR                          (Offset 0x0138) */
3861
3862 #define BIT_PS_TIMER_A_EARLY_INT_EN BIT(21)
3863
3864 /* 2 REG_FTIMR                          (Offset 0x0138) */
3865
3866 #define BIT_CPUMGQ_TX_TIMER_EARLY_INT_EN BIT(20)
3867
3868 /* 2 REG_FTIMR                          (Offset 0x0138) */
3869
3870 #define BIT_PS_TIMER_C_INT_EN BIT(19)
3871
3872 /* 2 REG_FTIMR                          (Offset 0x0138) */
3873
3874 #define BIT_PS_TIMER_B_INT_EN BIT(18)
3875
3876 /* 2 REG_FTIMR                          (Offset 0x0138) */
3877
3878 #define BIT_PS_TIMER_A_INT_EN BIT(17)
3879
3880 /* 2 REG_FTIMR                          (Offset 0x0138) */
3881
3882 #define BIT_CPUMGQ_TX_TIMER_INT_EN BIT(16)
3883
3884 /* 2 REG_FTIMR                          (Offset 0x0138) */
3885
3886 #define BIT_FS_PS_TIMEOUT2_EN BIT(15)
3887
3888 /* 2 REG_FTIMR                          (Offset 0x0138) */
3889
3890 #define BIT_FS_PS_TIMEOUT1_EN BIT(14)
3891
3892 /* 2 REG_FTIMR                          (Offset 0x0138) */
3893
3894 #define BIT_FS_PS_TIMEOUT0_EN BIT(13)
3895
3896 /* 2 REG_FTIMR                          (Offset 0x0138) */
3897
3898 #define BIT_FS_GTINT8_EN BIT(8)
3899
3900 /* 2 REG_FTIMR                          (Offset 0x0138) */
3901
3902 #define BIT_FS_GTINT7_EN BIT(7)
3903
3904 /* 2 REG_FTIMR                          (Offset 0x0138) */
3905
3906 #define BIT_FS_GTINT6_EN BIT(6)
3907
3908 /* 2 REG_FTIMR                          (Offset 0x0138) */
3909
3910 #define BIT_FS_GTINT5_EN BIT(5)
3911
3912 /* 2 REG_FTIMR                          (Offset 0x0138) */
3913
3914 #define BIT_FS_GTINT4_EN BIT(4)
3915
3916 /* 2 REG_FTIMR                          (Offset 0x0138) */
3917
3918 #define BIT_FS_GTINT3_EN BIT(3)
3919
3920 /* 2 REG_FTIMR                          (Offset 0x0138) */
3921
3922 #define BIT_FS_GTINT2_EN BIT(2)
3923
3924 /* 2 REG_FTIMR                          (Offset 0x0138) */
3925
3926 #define BIT_FS_GTINT1_EN BIT(1)
3927
3928 /* 2 REG_FTIMR                          (Offset 0x0138) */
3929
3930 #define BIT_FS_GTINT0_EN BIT(0)
3931
3932 /* 2 REG_FTISR                          (Offset 0x013C) */
3933
3934 #define BIT_PS_TIMER_C_EARLY__INT BIT(23)
3935
3936 /* 2 REG_FTISR                          (Offset 0x013C) */
3937
3938 #define BIT_PS_TIMER_B_EARLY__INT BIT(22)
3939
3940 /* 2 REG_FTISR                          (Offset 0x013C) */
3941
3942 #define BIT_PS_TIMER_A_EARLY__INT BIT(21)
3943
3944 /* 2 REG_FTISR                          (Offset 0x013C) */
3945
3946 #define BIT_CPUMGQ_TX_TIMER_EARLY_INT BIT(20)
3947
3948 /* 2 REG_FTISR                          (Offset 0x013C) */
3949
3950 #define BIT_PS_TIMER_C_INT BIT(19)
3951
3952 /* 2 REG_FTISR                          (Offset 0x013C) */
3953
3954 #define BIT_PS_TIMER_B_INT BIT(18)
3955
3956 /* 2 REG_FTISR                          (Offset 0x013C) */
3957
3958 #define BIT_PS_TIMER_A_INT BIT(17)
3959
3960 /* 2 REG_FTISR                          (Offset 0x013C) */
3961
3962 #define BIT_CPUMGQ_TX_TIMER_INT BIT(16)
3963
3964 /* 2 REG_FTISR                          (Offset 0x013C) */
3965
3966 #define BIT_FS_PS_TIMEOUT2_INT BIT(15)
3967
3968 /* 2 REG_FTISR                          (Offset 0x013C) */
3969
3970 #define BIT_FS_PS_TIMEOUT1_INT BIT(14)
3971
3972 /* 2 REG_FTISR                          (Offset 0x013C) */
3973
3974 #define BIT_FS_PS_TIMEOUT0_INT BIT(13)
3975
3976 /* 2 REG_FTISR                          (Offset 0x013C) */
3977
3978 #define BIT_FS_GTINT8_INT BIT(8)
3979
3980 /* 2 REG_FTISR                          (Offset 0x013C) */
3981
3982 #define BIT_FS_GTINT7_INT BIT(7)
3983
3984 /* 2 REG_FTISR                          (Offset 0x013C) */
3985
3986 #define BIT_FS_GTINT6_INT BIT(6)
3987
3988 /* 2 REG_FTISR                          (Offset 0x013C) */
3989
3990 #define BIT_FS_GTINT5_INT BIT(5)
3991
3992 /* 2 REG_FTISR                          (Offset 0x013C) */
3993
3994 #define BIT_FS_GTINT4_INT BIT(4)
3995
3996 /* 2 REG_FTISR                          (Offset 0x013C) */
3997
3998 #define BIT_FS_GTINT3_INT BIT(3)
3999
4000 /* 2 REG_FTISR                          (Offset 0x013C) */
4001
4002 #define BIT_FS_GTINT2_INT BIT(2)
4003
4004 /* 2 REG_FTISR                          (Offset 0x013C) */
4005
4006 #define BIT_FS_GTINT1_INT BIT(1)
4007
4008 /* 2 REG_FTISR                          (Offset 0x013C) */
4009
4010 #define BIT_FS_GTINT0_INT BIT(0)
4011
4012 /* 2 REG_PKTBUF_DBG_CTRL                        (Offset 0x0140) */
4013
4014 #define BIT_SHIFT_PKTBUF_WRITE_EN 24
4015 #define BIT_MASK_PKTBUF_WRITE_EN 0xff
4016 #define BIT_PKTBUF_WRITE_EN(x)                                                 \
4017         (((x) & BIT_MASK_PKTBUF_WRITE_EN) << BIT_SHIFT_PKTBUF_WRITE_EN)
4018 #define BIT_GET_PKTBUF_WRITE_EN(x)                                             \
4019         (((x) >> BIT_SHIFT_PKTBUF_WRITE_EN) & BIT_MASK_PKTBUF_WRITE_EN)
4020
4021 /* 2 REG_PKTBUF_DBG_CTRL                        (Offset 0x0140) */
4022
4023 #define BIT_TXRPTBUF_DBG BIT(23)
4024
4025 /* 2 REG_PKTBUF_DBG_CTRL                        (Offset 0x0140) */
4026
4027 #define BIT_TXPKTBUF_DBG_V2 BIT(20)
4028
4029 /* 2 REG_PKTBUF_DBG_CTRL                        (Offset 0x0140) */
4030
4031 #define BIT_RXPKTBUF_DBG BIT(16)
4032
4033 /* 2 REG_PKTBUF_DBG_CTRL                        (Offset 0x0140) */
4034
4035 #define BIT_SHIFT_PKTBUF_DBG_ADDR 0
4036 #define BIT_MASK_PKTBUF_DBG_ADDR 0x1fff
4037 #define BIT_PKTBUF_DBG_ADDR(x)                                                 \
4038         (((x) & BIT_MASK_PKTBUF_DBG_ADDR) << BIT_SHIFT_PKTBUF_DBG_ADDR)
4039 #define BIT_GET_PKTBUF_DBG_ADDR(x)                                             \
4040         (((x) >> BIT_SHIFT_PKTBUF_DBG_ADDR) & BIT_MASK_PKTBUF_DBG_ADDR)
4041
4042 /* 2 REG_PKTBUF_DBG_DATA_L                      (Offset 0x0144) */
4043
4044 #define BIT_SHIFT_PKTBUF_DBG_DATA_L 0
4045 #define BIT_MASK_PKTBUF_DBG_DATA_L 0xffffffffL
4046 #define BIT_PKTBUF_DBG_DATA_L(x)                                               \
4047         (((x) & BIT_MASK_PKTBUF_DBG_DATA_L) << BIT_SHIFT_PKTBUF_DBG_DATA_L)
4048 #define BIT_GET_PKTBUF_DBG_DATA_L(x)                                           \
4049         (((x) >> BIT_SHIFT_PKTBUF_DBG_DATA_L) & BIT_MASK_PKTBUF_DBG_DATA_L)
4050
4051 /* 2 REG_PKTBUF_DBG_DATA_H                      (Offset 0x0148) */
4052
4053 #define BIT_SHIFT_PKTBUF_DBG_DATA_H 0
4054 #define BIT_MASK_PKTBUF_DBG_DATA_H 0xffffffffL
4055 #define BIT_PKTBUF_DBG_DATA_H(x)                                               \
4056         (((x) & BIT_MASK_PKTBUF_DBG_DATA_H) << BIT_SHIFT_PKTBUF_DBG_DATA_H)
4057 #define BIT_GET_PKTBUF_DBG_DATA_H(x)                                           \
4058         (((x) >> BIT_SHIFT_PKTBUF_DBG_DATA_H) & BIT_MASK_PKTBUF_DBG_DATA_H)
4059
4060 /* 2 REG_CPWM2                          (Offset 0x014C) */
4061
4062 #define BIT_SHIFT_L0S_TO_RCVY_NUM 16
4063 #define BIT_MASK_L0S_TO_RCVY_NUM 0xff
4064 #define BIT_L0S_TO_RCVY_NUM(x)                                                 \
4065         (((x) & BIT_MASK_L0S_TO_RCVY_NUM) << BIT_SHIFT_L0S_TO_RCVY_NUM)
4066 #define BIT_GET_L0S_TO_RCVY_NUM(x)                                             \
4067         (((x) >> BIT_SHIFT_L0S_TO_RCVY_NUM) & BIT_MASK_L0S_TO_RCVY_NUM)
4068
4069 #define BIT_CPWM2_TOGGLING BIT(15)
4070
4071 #define BIT_SHIFT_CPWM2_MOD 0
4072 #define BIT_MASK_CPWM2_MOD 0x7fff
4073 #define BIT_CPWM2_MOD(x) (((x) & BIT_MASK_CPWM2_MOD) << BIT_SHIFT_CPWM2_MOD)
4074 #define BIT_GET_CPWM2_MOD(x) (((x) >> BIT_SHIFT_CPWM2_MOD) & BIT_MASK_CPWM2_MOD)
4075
4076 /* 2 REG_TC0_CTRL                               (Offset 0x0150) */
4077
4078 #define BIT_TC0INT_EN BIT(26)
4079 #define BIT_TC0MODE BIT(25)
4080 #define BIT_TC0EN BIT(24)
4081
4082 #define BIT_SHIFT_TC0DATA 0
4083 #define BIT_MASK_TC0DATA 0xffffff
4084 #define BIT_TC0DATA(x) (((x) & BIT_MASK_TC0DATA) << BIT_SHIFT_TC0DATA)
4085 #define BIT_GET_TC0DATA(x) (((x) >> BIT_SHIFT_TC0DATA) & BIT_MASK_TC0DATA)
4086
4087 /* 2 REG_TC1_CTRL                               (Offset 0x0154) */
4088
4089 #define BIT_TC1INT_EN BIT(26)
4090 #define BIT_TC1MODE BIT(25)
4091 #define BIT_TC1EN BIT(24)
4092
4093 #define BIT_SHIFT_TC1DATA 0
4094 #define BIT_MASK_TC1DATA 0xffffff
4095 #define BIT_TC1DATA(x) (((x) & BIT_MASK_TC1DATA) << BIT_SHIFT_TC1DATA)
4096 #define BIT_GET_TC1DATA(x) (((x) >> BIT_SHIFT_TC1DATA) & BIT_MASK_TC1DATA)
4097
4098 /* 2 REG_TC2_CTRL                               (Offset 0x0158) */
4099
4100 #define BIT_TC2INT_EN BIT(26)
4101 #define BIT_TC2MODE BIT(25)
4102 #define BIT_TC2EN BIT(24)
4103
4104 #define BIT_SHIFT_TC2DATA 0
4105 #define BIT_MASK_TC2DATA 0xffffff
4106 #define BIT_TC2DATA(x) (((x) & BIT_MASK_TC2DATA) << BIT_SHIFT_TC2DATA)
4107 #define BIT_GET_TC2DATA(x) (((x) >> BIT_SHIFT_TC2DATA) & BIT_MASK_TC2DATA)
4108
4109 /* 2 REG_TC3_CTRL                               (Offset 0x015C) */
4110
4111 #define BIT_TC3INT_EN BIT(26)
4112 #define BIT_TC3MODE BIT(25)
4113 #define BIT_TC3EN BIT(24)
4114
4115 #define BIT_SHIFT_TC3DATA 0
4116 #define BIT_MASK_TC3DATA 0xffffff
4117 #define BIT_TC3DATA(x) (((x) & BIT_MASK_TC3DATA) << BIT_SHIFT_TC3DATA)
4118 #define BIT_GET_TC3DATA(x) (((x) >> BIT_SHIFT_TC3DATA) & BIT_MASK_TC3DATA)
4119
4120 /* 2 REG_TC4_CTRL                               (Offset 0x0160) */
4121
4122 #define BIT_TC4INT_EN BIT(26)
4123 #define BIT_TC4MODE BIT(25)
4124 #define BIT_TC4EN BIT(24)
4125
4126 #define BIT_SHIFT_TC4DATA 0
4127 #define BIT_MASK_TC4DATA 0xffffff
4128 #define BIT_TC4DATA(x) (((x) & BIT_MASK_TC4DATA) << BIT_SHIFT_TC4DATA)
4129 #define BIT_GET_TC4DATA(x) (((x) >> BIT_SHIFT_TC4DATA) & BIT_MASK_TC4DATA)
4130
4131 /* 2 REG_TCUNIT_BASE                            (Offset 0x0164) */
4132
4133 #define BIT_SHIFT_TCUNIT_BASE 0
4134 #define BIT_MASK_TCUNIT_BASE 0x3fff
4135 #define BIT_TCUNIT_BASE(x)                                                     \
4136         (((x) & BIT_MASK_TCUNIT_BASE) << BIT_SHIFT_TCUNIT_BASE)
4137 #define BIT_GET_TCUNIT_BASE(x)                                                 \
4138         (((x) >> BIT_SHIFT_TCUNIT_BASE) & BIT_MASK_TCUNIT_BASE)
4139
4140 /* 2 REG_TC5_CTRL                               (Offset 0x0168) */
4141
4142 #define BIT_TC5INT_EN BIT(26)
4143
4144 /* 2 REG_TC5_CTRL                               (Offset 0x0168) */
4145
4146 #define BIT_TC5MODE BIT(25)
4147 #define BIT_TC5EN BIT(24)
4148
4149 #define BIT_SHIFT_TC5DATA 0
4150 #define BIT_MASK_TC5DATA 0xffffff
4151 #define BIT_TC5DATA(x) (((x) & BIT_MASK_TC5DATA) << BIT_SHIFT_TC5DATA)
4152 #define BIT_GET_TC5DATA(x) (((x) >> BIT_SHIFT_TC5DATA) & BIT_MASK_TC5DATA)
4153
4154 /* 2 REG_TC6_CTRL                               (Offset 0x016C) */
4155
4156 #define BIT_TC6INT_EN BIT(26)
4157
4158 /* 2 REG_TC6_CTRL                               (Offset 0x016C) */
4159
4160 #define BIT_TC6MODE BIT(25)
4161 #define BIT_TC6EN BIT(24)
4162
4163 #define BIT_SHIFT_TC6DATA 0
4164 #define BIT_MASK_TC6DATA 0xffffff
4165 #define BIT_TC6DATA(x) (((x) & BIT_MASK_TC6DATA) << BIT_SHIFT_TC6DATA)
4166 #define BIT_GET_TC6DATA(x) (((x) >> BIT_SHIFT_TC6DATA) & BIT_MASK_TC6DATA)
4167
4168 /* 2 REG_MBIST_FAIL                             (Offset 0x0170) */
4169
4170 #define BIT_SHIFT_8051_MBIST_FAIL 26
4171 #define BIT_MASK_8051_MBIST_FAIL 0x7
4172 #define BIT_8051_MBIST_FAIL(x)                                                 \
4173         (((x) & BIT_MASK_8051_MBIST_FAIL) << BIT_SHIFT_8051_MBIST_FAIL)
4174 #define BIT_GET_8051_MBIST_FAIL(x)                                             \
4175         (((x) >> BIT_SHIFT_8051_MBIST_FAIL) & BIT_MASK_8051_MBIST_FAIL)
4176
4177 #define BIT_SHIFT_USB_MBIST_FAIL 24
4178 #define BIT_MASK_USB_MBIST_FAIL 0x3
4179 #define BIT_USB_MBIST_FAIL(x)                                                  \
4180         (((x) & BIT_MASK_USB_MBIST_FAIL) << BIT_SHIFT_USB_MBIST_FAIL)
4181 #define BIT_GET_USB_MBIST_FAIL(x)                                              \
4182         (((x) >> BIT_SHIFT_USB_MBIST_FAIL) & BIT_MASK_USB_MBIST_FAIL)
4183
4184 #define BIT_SHIFT_PCIE_MBIST_FAIL 16
4185 #define BIT_MASK_PCIE_MBIST_FAIL 0x3f
4186 #define BIT_PCIE_MBIST_FAIL(x)                                                 \
4187         (((x) & BIT_MASK_PCIE_MBIST_FAIL) << BIT_SHIFT_PCIE_MBIST_FAIL)
4188 #define BIT_GET_PCIE_MBIST_FAIL(x)                                             \
4189         (((x) >> BIT_SHIFT_PCIE_MBIST_FAIL) & BIT_MASK_PCIE_MBIST_FAIL)
4190
4191 /* 2 REG_MBIST_FAIL                             (Offset 0x0170) */
4192
4193 #define BIT_SHIFT_MAC_MBIST_FAIL 0
4194 #define BIT_MASK_MAC_MBIST_FAIL 0xfff
4195 #define BIT_MAC_MBIST_FAIL(x)                                                  \
4196         (((x) & BIT_MASK_MAC_MBIST_FAIL) << BIT_SHIFT_MAC_MBIST_FAIL)
4197 #define BIT_GET_MAC_MBIST_FAIL(x)                                              \
4198         (((x) >> BIT_SHIFT_MAC_MBIST_FAIL) & BIT_MASK_MAC_MBIST_FAIL)
4199
4200 /* 2 REG_MBIST_START_PAUSE                      (Offset 0x0174) */
4201
4202 #define BIT_SHIFT_8051_MBIST_START_PAUSE 26
4203 #define BIT_MASK_8051_MBIST_START_PAUSE 0x7
4204 #define BIT_8051_MBIST_START_PAUSE(x)                                          \
4205         (((x) & BIT_MASK_8051_MBIST_START_PAUSE)                               \
4206          << BIT_SHIFT_8051_MBIST_START_PAUSE)
4207 #define BIT_GET_8051_MBIST_START_PAUSE(x)                                      \
4208         (((x) >> BIT_SHIFT_8051_MBIST_START_PAUSE) &                           \
4209          BIT_MASK_8051_MBIST_START_PAUSE)
4210
4211 #define BIT_SHIFT_USB_MBIST_START_PAUSE 24
4212 #define BIT_MASK_USB_MBIST_START_PAUSE 0x3
4213 #define BIT_USB_MBIST_START_PAUSE(x)                                           \
4214         (((x) & BIT_MASK_USB_MBIST_START_PAUSE)                                \
4215          << BIT_SHIFT_USB_MBIST_START_PAUSE)
4216 #define BIT_GET_USB_MBIST_START_PAUSE(x)                                       \
4217         (((x) >> BIT_SHIFT_USB_MBIST_START_PAUSE) &                            \
4218          BIT_MASK_USB_MBIST_START_PAUSE)
4219
4220 #define BIT_SHIFT_PCIE_MBIST_START_PAUSE 16
4221 #define BIT_MASK_PCIE_MBIST_START_PAUSE 0x3f
4222 #define BIT_PCIE_MBIST_START_PAUSE(x)                                          \
4223         (((x) & BIT_MASK_PCIE_MBIST_START_PAUSE)                               \
4224          << BIT_SHIFT_PCIE_MBIST_START_PAUSE)
4225 #define BIT_GET_PCIE_MBIST_START_PAUSE(x)                                      \
4226         (((x) >> BIT_SHIFT_PCIE_MBIST_START_PAUSE) &                           \
4227          BIT_MASK_PCIE_MBIST_START_PAUSE)
4228
4229 /* 2 REG_MBIST_START_PAUSE                      (Offset 0x0174) */
4230
4231 #define BIT_SHIFT_MAC_MBIST_START_PAUSE 0
4232 #define BIT_MASK_MAC_MBIST_START_PAUSE 0xfff
4233 #define BIT_MAC_MBIST_START_PAUSE(x)                                           \
4234         (((x) & BIT_MASK_MAC_MBIST_START_PAUSE)                                \
4235          << BIT_SHIFT_MAC_MBIST_START_PAUSE)
4236 #define BIT_GET_MAC_MBIST_START_PAUSE(x)                                       \
4237         (((x) >> BIT_SHIFT_MAC_MBIST_START_PAUSE) &                            \
4238          BIT_MASK_MAC_MBIST_START_PAUSE)
4239
4240 /* 2 REG_MBIST_DONE                             (Offset 0x0178) */
4241
4242 #define BIT_SHIFT_8051_MBIST_DONE 26
4243 #define BIT_MASK_8051_MBIST_DONE 0x7
4244 #define BIT_8051_MBIST_DONE(x)                                                 \
4245         (((x) & BIT_MASK_8051_MBIST_DONE) << BIT_SHIFT_8051_MBIST_DONE)
4246 #define BIT_GET_8051_MBIST_DONE(x)                                             \
4247         (((x) >> BIT_SHIFT_8051_MBIST_DONE) & BIT_MASK_8051_MBIST_DONE)
4248
4249 #define BIT_SHIFT_USB_MBIST_DONE 24
4250 #define BIT_MASK_USB_MBIST_DONE 0x3
4251 #define BIT_USB_MBIST_DONE(x)                                                  \
4252         (((x) & BIT_MASK_USB_MBIST_DONE) << BIT_SHIFT_USB_MBIST_DONE)
4253 #define BIT_GET_USB_MBIST_DONE(x)                                              \
4254         (((x) >> BIT_SHIFT_USB_MBIST_DONE) & BIT_MASK_USB_MBIST_DONE)
4255
4256 #define BIT_SHIFT_PCIE_MBIST_DONE 16
4257 #define BIT_MASK_PCIE_MBIST_DONE 0x3f
4258 #define BIT_PCIE_MBIST_DONE(x)                                                 \
4259         (((x) & BIT_MASK_PCIE_MBIST_DONE) << BIT_SHIFT_PCIE_MBIST_DONE)
4260 #define BIT_GET_PCIE_MBIST_DONE(x)                                             \
4261         (((x) >> BIT_SHIFT_PCIE_MBIST_DONE) & BIT_MASK_PCIE_MBIST_DONE)
4262
4263 /* 2 REG_MBIST_DONE                             (Offset 0x0178) */
4264
4265 #define BIT_SHIFT_MAC_MBIST_DONE 0
4266 #define BIT_MASK_MAC_MBIST_DONE 0xfff
4267 #define BIT_MAC_MBIST_DONE(x)                                                  \
4268         (((x) & BIT_MASK_MAC_MBIST_DONE) << BIT_SHIFT_MAC_MBIST_DONE)
4269 #define BIT_GET_MAC_MBIST_DONE(x)                                              \
4270         (((x) >> BIT_SHIFT_MAC_MBIST_DONE) & BIT_MASK_MAC_MBIST_DONE)
4271
4272 /* 2 REG_MBIST_FAIL_NRML                        (Offset 0x017C) */
4273
4274 #define BIT_SHIFT_MBIST_FAIL_NRML 0
4275 #define BIT_MASK_MBIST_FAIL_NRML 0xffffffffL
4276 #define BIT_MBIST_FAIL_NRML(x)                                                 \
4277         (((x) & BIT_MASK_MBIST_FAIL_NRML) << BIT_SHIFT_MBIST_FAIL_NRML)
4278 #define BIT_GET_MBIST_FAIL_NRML(x)                                             \
4279         (((x) >> BIT_SHIFT_MBIST_FAIL_NRML) & BIT_MASK_MBIST_FAIL_NRML)
4280
4281 /* 2 REG_AES_DECRPT_DATA                        (Offset 0x0180) */
4282
4283 #define BIT_SHIFT_IPS_CFG_ADDR 0
4284 #define BIT_MASK_IPS_CFG_ADDR 0xff
4285 #define BIT_IPS_CFG_ADDR(x)                                                    \
4286         (((x) & BIT_MASK_IPS_CFG_ADDR) << BIT_SHIFT_IPS_CFG_ADDR)
4287 #define BIT_GET_IPS_CFG_ADDR(x)                                                \
4288         (((x) >> BIT_SHIFT_IPS_CFG_ADDR) & BIT_MASK_IPS_CFG_ADDR)
4289
4290 /* 2 REG_AES_DECRPT_CFG                 (Offset 0x0184) */
4291
4292 #define BIT_SHIFT_IPS_CFG_DATA 0
4293 #define BIT_MASK_IPS_CFG_DATA 0xffffffffL
4294 #define BIT_IPS_CFG_DATA(x)                                                    \
4295         (((x) & BIT_MASK_IPS_CFG_DATA) << BIT_SHIFT_IPS_CFG_DATA)
4296 #define BIT_GET_IPS_CFG_DATA(x)                                                \
4297         (((x) >> BIT_SHIFT_IPS_CFG_DATA) & BIT_MASK_IPS_CFG_DATA)
4298
4299 /* 2 REG_TMETER                         (Offset 0x0190) */
4300
4301 #define BIT_TEMP_VALID BIT(31)
4302
4303 #define BIT_SHIFT_TEMP_VALUE 24
4304 #define BIT_MASK_TEMP_VALUE 0x3f
4305 #define BIT_TEMP_VALUE(x) (((x) & BIT_MASK_TEMP_VALUE) << BIT_SHIFT_TEMP_VALUE)
4306 #define BIT_GET_TEMP_VALUE(x)                                                  \
4307         (((x) >> BIT_SHIFT_TEMP_VALUE) & BIT_MASK_TEMP_VALUE)
4308
4309 #define BIT_SHIFT_REG_TMETER_TIMER 8
4310 #define BIT_MASK_REG_TMETER_TIMER 0xfff
4311 #define BIT_REG_TMETER_TIMER(x)                                                \
4312         (((x) & BIT_MASK_REG_TMETER_TIMER) << BIT_SHIFT_REG_TMETER_TIMER)
4313 #define BIT_GET_REG_TMETER_TIMER(x)                                            \
4314         (((x) >> BIT_SHIFT_REG_TMETER_TIMER) & BIT_MASK_REG_TMETER_TIMER)
4315
4316 #define BIT_SHIFT_REG_TEMP_DELTA 2
4317 #define BIT_MASK_REG_TEMP_DELTA 0x3f
4318 #define BIT_REG_TEMP_DELTA(x)                                                  \
4319         (((x) & BIT_MASK_REG_TEMP_DELTA) << BIT_SHIFT_REG_TEMP_DELTA)
4320 #define BIT_GET_REG_TEMP_DELTA(x)                                              \
4321         (((x) >> BIT_SHIFT_REG_TEMP_DELTA) & BIT_MASK_REG_TEMP_DELTA)
4322
4323 #define BIT_REG_TMETER_EN BIT(0)
4324
4325 /* 2 REG_OSC_32K_CTRL                   (Offset 0x0194) */
4326
4327 #define BIT_SHIFT_OSC_32K_CLKGEN_0 16
4328 #define BIT_MASK_OSC_32K_CLKGEN_0 0xffff
4329 #define BIT_OSC_32K_CLKGEN_0(x)                                                \
4330         (((x) & BIT_MASK_OSC_32K_CLKGEN_0) << BIT_SHIFT_OSC_32K_CLKGEN_0)
4331 #define BIT_GET_OSC_32K_CLKGEN_0(x)                                            \
4332         (((x) >> BIT_SHIFT_OSC_32K_CLKGEN_0) & BIT_MASK_OSC_32K_CLKGEN_0)
4333
4334 /* 2 REG_OSC_32K_CTRL                   (Offset 0x0194) */
4335
4336 #define BIT_SHIFT_OSC_32K_RES_COMP 4
4337 #define BIT_MASK_OSC_32K_RES_COMP 0x3
4338 #define BIT_OSC_32K_RES_COMP(x)                                                \
4339         (((x) & BIT_MASK_OSC_32K_RES_COMP) << BIT_SHIFT_OSC_32K_RES_COMP)
4340 #define BIT_GET_OSC_32K_RES_COMP(x)                                            \
4341         (((x) >> BIT_SHIFT_OSC_32K_RES_COMP) & BIT_MASK_OSC_32K_RES_COMP)
4342
4343 #define BIT_OSC_32K_OUT_SEL BIT(3)
4344
4345 /* 2 REG_OSC_32K_CTRL                   (Offset 0x0194) */
4346
4347 #define BIT_ISO_WL_2_OSC_32K BIT(1)
4348
4349 /* 2 REG_OSC_32K_CTRL                   (Offset 0x0194) */
4350
4351 #define BIT_POW_CKGEN BIT(0)
4352
4353 /* 2 REG_32K_CAL_REG1                   (Offset 0x0198) */
4354
4355 #define BIT_CAL_32K_REG_WR BIT(31)
4356 #define BIT_CAL_32K_DBG_SEL BIT(22)
4357
4358 #define BIT_SHIFT_CAL_32K_REG_ADDR 16
4359 #define BIT_MASK_CAL_32K_REG_ADDR 0x3f
4360 #define BIT_CAL_32K_REG_ADDR(x)                                                \
4361         (((x) & BIT_MASK_CAL_32K_REG_ADDR) << BIT_SHIFT_CAL_32K_REG_ADDR)
4362 #define BIT_GET_CAL_32K_REG_ADDR(x)                                            \
4363         (((x) >> BIT_SHIFT_CAL_32K_REG_ADDR) & BIT_MASK_CAL_32K_REG_ADDR)
4364
4365 /* 2 REG_32K_CAL_REG1                   (Offset 0x0198) */
4366
4367 #define BIT_SHIFT_CAL_32K_REG_DATA 0
4368 #define BIT_MASK_CAL_32K_REG_DATA 0xffff
4369 #define BIT_CAL_32K_REG_DATA(x)                                                \
4370         (((x) & BIT_MASK_CAL_32K_REG_DATA) << BIT_SHIFT_CAL_32K_REG_DATA)
4371 #define BIT_GET_CAL_32K_REG_DATA(x)                                            \
4372         (((x) >> BIT_SHIFT_CAL_32K_REG_DATA) & BIT_MASK_CAL_32K_REG_DATA)
4373
4374 /* 2 REG_C2HEVT                         (Offset 0x01A0) */
4375
4376 #define BIT_SHIFT_C2HEVT_MSG 0
4377 #define BIT_MASK_C2HEVT_MSG 0xffffffffffffffffffffffffffffffffL
4378 #define BIT_C2HEVT_MSG(x) (((x) & BIT_MASK_C2HEVT_MSG) << BIT_SHIFT_C2HEVT_MSG)
4379 #define BIT_GET_C2HEVT_MSG(x)                                                  \
4380         (((x) >> BIT_SHIFT_C2HEVT_MSG) & BIT_MASK_C2HEVT_MSG)
4381
4382 /* 2 REG_SW_DEFINED_PAGE1                       (Offset 0x01B8) */
4383
4384 #define BIT_SHIFT_SW_DEFINED_PAGE1 0
4385 #define BIT_MASK_SW_DEFINED_PAGE1 0xffffffffffffffffL
4386 #define BIT_SW_DEFINED_PAGE1(x)                                                \
4387         (((x) & BIT_MASK_SW_DEFINED_PAGE1) << BIT_SHIFT_SW_DEFINED_PAGE1)
4388 #define BIT_GET_SW_DEFINED_PAGE1(x)                                            \
4389         (((x) >> BIT_SHIFT_SW_DEFINED_PAGE1) & BIT_MASK_SW_DEFINED_PAGE1)
4390
4391 /* 2 REG_MCUTST_I                               (Offset 0x01C0) */
4392
4393 #define BIT_SHIFT_MCUDMSG_I 0
4394 #define BIT_MASK_MCUDMSG_I 0xffffffffL
4395 #define BIT_MCUDMSG_I(x) (((x) & BIT_MASK_MCUDMSG_I) << BIT_SHIFT_MCUDMSG_I)
4396 #define BIT_GET_MCUDMSG_I(x) (((x) >> BIT_SHIFT_MCUDMSG_I) & BIT_MASK_MCUDMSG_I)
4397
4398 /* 2 REG_MCUTST_II                              (Offset 0x01C4) */
4399
4400 #define BIT_SHIFT_MCUDMSG_II 0
4401 #define BIT_MASK_MCUDMSG_II 0xffffffffL
4402 #define BIT_MCUDMSG_II(x) (((x) & BIT_MASK_MCUDMSG_II) << BIT_SHIFT_MCUDMSG_II)
4403 #define BIT_GET_MCUDMSG_II(x)                                                  \
4404         (((x) >> BIT_SHIFT_MCUDMSG_II) & BIT_MASK_MCUDMSG_II)
4405
4406 /* 2 REG_FMETHR                         (Offset 0x01C8) */
4407
4408 #define BIT_FMSG_INT BIT(31)
4409
4410 #define BIT_SHIFT_FW_MSG 0
4411 #define BIT_MASK_FW_MSG 0xffffffffL
4412 #define BIT_FW_MSG(x) (((x) & BIT_MASK_FW_MSG) << BIT_SHIFT_FW_MSG)
4413 #define BIT_GET_FW_MSG(x) (((x) >> BIT_SHIFT_FW_MSG) & BIT_MASK_FW_MSG)
4414
4415 /* 2 REG_HMETFR                         (Offset 0x01CC) */
4416
4417 #define BIT_SHIFT_HRCV_MSG 24
4418 #define BIT_MASK_HRCV_MSG 0xff
4419 #define BIT_HRCV_MSG(x) (((x) & BIT_MASK_HRCV_MSG) << BIT_SHIFT_HRCV_MSG)
4420 #define BIT_GET_HRCV_MSG(x) (((x) >> BIT_SHIFT_HRCV_MSG) & BIT_MASK_HRCV_MSG)
4421
4422 #define BIT_INT_BOX3 BIT(3)
4423 #define BIT_INT_BOX2 BIT(2)
4424 #define BIT_INT_BOX1 BIT(1)
4425 #define BIT_INT_BOX0 BIT(0)
4426
4427 /* 2 REG_HMEBOX0                                (Offset 0x01D0) */
4428
4429 #define BIT_SHIFT_HOST_MSG_0 0
4430 #define BIT_MASK_HOST_MSG_0 0xffffffffL
4431 #define BIT_HOST_MSG_0(x) (((x) & BIT_MASK_HOST_MSG_0) << BIT_SHIFT_HOST_MSG_0)
4432 #define BIT_GET_HOST_MSG_0(x)                                                  \
4433         (((x) >> BIT_SHIFT_HOST_MSG_0) & BIT_MASK_HOST_MSG_0)
4434
4435 /* 2 REG_HMEBOX1                                (Offset 0x01D4) */
4436
4437 #define BIT_SHIFT_HOST_MSG_1 0
4438 #define BIT_MASK_HOST_MSG_1 0xffffffffL
4439 #define BIT_HOST_MSG_1(x) (((x) & BIT_MASK_HOST_MSG_1) << BIT_SHIFT_HOST_MSG_1)
4440 #define BIT_GET_HOST_MSG_1(x)                                                  \
4441         (((x) >> BIT_SHIFT_HOST_MSG_1) & BIT_MASK_HOST_MSG_1)
4442
4443 /* 2 REG_HMEBOX2                                (Offset 0x01D8) */
4444
4445 #define BIT_SHIFT_HOST_MSG_2 0
4446 #define BIT_MASK_HOST_MSG_2 0xffffffffL
4447 #define BIT_HOST_MSG_2(x) (((x) & BIT_MASK_HOST_MSG_2) << BIT_SHIFT_HOST_MSG_2)
4448 #define BIT_GET_HOST_MSG_2(x)                                                  \
4449         (((x) >> BIT_SHIFT_HOST_MSG_2) & BIT_MASK_HOST_MSG_2)
4450
4451 /* 2 REG_HMEBOX3                                (Offset 0x01DC) */
4452
4453 #define BIT_SHIFT_HOST_MSG_3 0
4454 #define BIT_MASK_HOST_MSG_3 0xffffffffL
4455 #define BIT_HOST_MSG_3(x) (((x) & BIT_MASK_HOST_MSG_3) << BIT_SHIFT_HOST_MSG_3)
4456 #define BIT_GET_HOST_MSG_3(x)                                                  \
4457         (((x) >> BIT_SHIFT_HOST_MSG_3) & BIT_MASK_HOST_MSG_3)
4458
4459 /* 2 REG_LLT_INIT                               (Offset 0x01E0) */
4460
4461 #define BIT_SHIFT_LLTE_RWM 30
4462 #define BIT_MASK_LLTE_RWM 0x3
4463 #define BIT_LLTE_RWM(x) (((x) & BIT_MASK_LLTE_RWM) << BIT_SHIFT_LLTE_RWM)
4464 #define BIT_GET_LLTE_RWM(x) (((x) >> BIT_SHIFT_LLTE_RWM) & BIT_MASK_LLTE_RWM)
4465
4466 /* 2 REG_LLT_INIT                               (Offset 0x01E0) */
4467
4468 #define BIT_SHIFT_LLTINI_PDATA_V1 16
4469 #define BIT_MASK_LLTINI_PDATA_V1 0xfff
4470 #define BIT_LLTINI_PDATA_V1(x)                                                 \
4471         (((x) & BIT_MASK_LLTINI_PDATA_V1) << BIT_SHIFT_LLTINI_PDATA_V1)
4472 #define BIT_GET_LLTINI_PDATA_V1(x)                                             \
4473         (((x) >> BIT_SHIFT_LLTINI_PDATA_V1) & BIT_MASK_LLTINI_PDATA_V1)
4474
4475 /* 2 REG_LLT_INIT                               (Offset 0x01E0) */
4476
4477 #define BIT_SHIFT_LLTINI_HDATA_V1 0
4478 #define BIT_MASK_LLTINI_HDATA_V1 0xfff
4479 #define BIT_LLTINI_HDATA_V1(x)                                                 \
4480         (((x) & BIT_MASK_LLTINI_HDATA_V1) << BIT_SHIFT_LLTINI_HDATA_V1)
4481 #define BIT_GET_LLTINI_HDATA_V1(x)                                             \
4482         (((x) >> BIT_SHIFT_LLTINI_HDATA_V1) & BIT_MASK_LLTINI_HDATA_V1)
4483
4484 /* 2 REG_LLT_INIT_ADDR                  (Offset 0x01E4) */
4485
4486 #define BIT_SHIFT_LLTINI_ADDR_V1 0
4487 #define BIT_MASK_LLTINI_ADDR_V1 0xfff
4488 #define BIT_LLTINI_ADDR_V1(x)                                                  \
4489         (((x) & BIT_MASK_LLTINI_ADDR_V1) << BIT_SHIFT_LLTINI_ADDR_V1)
4490 #define BIT_GET_LLTINI_ADDR_V1(x)                                              \
4491         (((x) >> BIT_SHIFT_LLTINI_ADDR_V1) & BIT_MASK_LLTINI_ADDR_V1)
4492
4493 /* 2 REG_BB_ACCESS_CTRL                 (Offset 0x01E8) */
4494
4495 #define BIT_SHIFT_BB_WRITE_READ 30
4496 #define BIT_MASK_BB_WRITE_READ 0x3
4497 #define BIT_BB_WRITE_READ(x)                                                   \
4498         (((x) & BIT_MASK_BB_WRITE_READ) << BIT_SHIFT_BB_WRITE_READ)
4499 #define BIT_GET_BB_WRITE_READ(x)                                               \
4500         (((x) >> BIT_SHIFT_BB_WRITE_READ) & BIT_MASK_BB_WRITE_READ)
4501
4502 /* 2 REG_BB_ACCESS_CTRL                 (Offset 0x01E8) */
4503
4504 #define BIT_SHIFT_BB_WRITE_EN 12
4505 #define BIT_MASK_BB_WRITE_EN 0xf
4506 #define BIT_BB_WRITE_EN(x)                                                     \
4507         (((x) & BIT_MASK_BB_WRITE_EN) << BIT_SHIFT_BB_WRITE_EN)
4508 #define BIT_GET_BB_WRITE_EN(x)                                                 \
4509         (((x) >> BIT_SHIFT_BB_WRITE_EN) & BIT_MASK_BB_WRITE_EN)
4510
4511 #define BIT_SHIFT_BB_ADDR 2
4512 #define BIT_MASK_BB_ADDR 0x1ff
4513 #define BIT_BB_ADDR(x) (((x) & BIT_MASK_BB_ADDR) << BIT_SHIFT_BB_ADDR)
4514 #define BIT_GET_BB_ADDR(x) (((x) >> BIT_SHIFT_BB_ADDR) & BIT_MASK_BB_ADDR)
4515
4516 /* 2 REG_BB_ACCESS_CTRL                 (Offset 0x01E8) */
4517
4518 #define BIT_BB_ERRACC BIT(0)
4519
4520 /* 2 REG_BB_ACCESS_DATA                 (Offset 0x01EC) */
4521
4522 #define BIT_SHIFT_BB_DATA 0
4523 #define BIT_MASK_BB_DATA 0xffffffffL
4524 #define BIT_BB_DATA(x) (((x) & BIT_MASK_BB_DATA) << BIT_SHIFT_BB_DATA)
4525 #define BIT_GET_BB_DATA(x) (((x) >> BIT_SHIFT_BB_DATA) & BIT_MASK_BB_DATA)
4526
4527 /* 2 REG_HMEBOX_E0                              (Offset 0x01F0) */
4528
4529 #define BIT_SHIFT_HMEBOX_E0 0
4530 #define BIT_MASK_HMEBOX_E0 0xffffffffL
4531 #define BIT_HMEBOX_E0(x) (((x) & BIT_MASK_HMEBOX_E0) << BIT_SHIFT_HMEBOX_E0)
4532 #define BIT_GET_HMEBOX_E0(x) (((x) >> BIT_SHIFT_HMEBOX_E0) & BIT_MASK_HMEBOX_E0)
4533
4534 /* 2 REG_HMEBOX_E1                              (Offset 0x01F4) */
4535
4536 #define BIT_SHIFT_HMEBOX_E1 0
4537 #define BIT_MASK_HMEBOX_E1 0xffffffffL
4538 #define BIT_HMEBOX_E1(x) (((x) & BIT_MASK_HMEBOX_E1) << BIT_SHIFT_HMEBOX_E1)
4539 #define BIT_GET_HMEBOX_E1(x) (((x) >> BIT_SHIFT_HMEBOX_E1) & BIT_MASK_HMEBOX_E1)
4540
4541 /* 2 REG_HMEBOX_E2                              (Offset 0x01F8) */
4542
4543 #define BIT_SHIFT_HMEBOX_E2 0
4544 #define BIT_MASK_HMEBOX_E2 0xffffffffL
4545 #define BIT_HMEBOX_E2(x) (((x) & BIT_MASK_HMEBOX_E2) << BIT_SHIFT_HMEBOX_E2)
4546 #define BIT_GET_HMEBOX_E2(x) (((x) >> BIT_SHIFT_HMEBOX_E2) & BIT_MASK_HMEBOX_E2)
4547
4548 /* 2 REG_HMEBOX_E3                              (Offset 0x01FC) */
4549
4550 #define BIT_LD_RQPN BIT(31)
4551
4552 #define BIT_SHIFT_HMEBOX_E3 0
4553 #define BIT_MASK_HMEBOX_E3 0xffffffffL
4554 #define BIT_HMEBOX_E3(x) (((x) & BIT_MASK_HMEBOX_E3) << BIT_SHIFT_HMEBOX_E3)
4555 #define BIT_GET_HMEBOX_E3(x) (((x) >> BIT_SHIFT_HMEBOX_E3) & BIT_MASK_HMEBOX_E3)
4556
4557 /* 2 REG_FIFOPAGE_CTRL_1                        (Offset 0x0200) */
4558
4559 #define BIT_SHIFT_TX_OQT_HE_FREE_SPACE_V1 16
4560 #define BIT_MASK_TX_OQT_HE_FREE_SPACE_V1 0xff
4561 #define BIT_TX_OQT_HE_FREE_SPACE_V1(x)                                         \
4562         (((x) & BIT_MASK_TX_OQT_HE_FREE_SPACE_V1)                              \
4563          << BIT_SHIFT_TX_OQT_HE_FREE_SPACE_V1)
4564 #define BIT_GET_TX_OQT_HE_FREE_SPACE_V1(x)                                     \
4565         (((x) >> BIT_SHIFT_TX_OQT_HE_FREE_SPACE_V1) &                          \
4566          BIT_MASK_TX_OQT_HE_FREE_SPACE_V1)
4567
4568 /* 2 REG_FIFOPAGE_CTRL_1                        (Offset 0x0200) */
4569
4570 #define BIT_SHIFT_TX_OQT_NL_FREE_SPACE_V1 0
4571 #define BIT_MASK_TX_OQT_NL_FREE_SPACE_V1 0xff
4572 #define BIT_TX_OQT_NL_FREE_SPACE_V1(x)                                         \
4573         (((x) & BIT_MASK_TX_OQT_NL_FREE_SPACE_V1)                              \
4574          << BIT_SHIFT_TX_OQT_NL_FREE_SPACE_V1)
4575 #define BIT_GET_TX_OQT_NL_FREE_SPACE_V1(x)                                     \
4576         (((x) >> BIT_SHIFT_TX_OQT_NL_FREE_SPACE_V1) &                          \
4577          BIT_MASK_TX_OQT_NL_FREE_SPACE_V1)
4578
4579 /* 2 REG_FIFOPAGE_CTRL_2                        (Offset 0x0204) */
4580
4581 #define BIT_BCN_VALID_1_V1 BIT(31)
4582
4583 /* 2 REG_FIFOPAGE_CTRL_2                        (Offset 0x0204) */
4584
4585 #define BIT_SHIFT_BCN_HEAD_1_V1 16
4586 #define BIT_MASK_BCN_HEAD_1_V1 0xfff
4587 #define BIT_BCN_HEAD_1_V1(x)                                                   \
4588         (((x) & BIT_MASK_BCN_HEAD_1_V1) << BIT_SHIFT_BCN_HEAD_1_V1)
4589 #define BIT_GET_BCN_HEAD_1_V1(x)                                               \
4590         (((x) >> BIT_SHIFT_BCN_HEAD_1_V1) & BIT_MASK_BCN_HEAD_1_V1)
4591
4592 #define BIT_BCN_VALID_V1 BIT(15)
4593
4594 /* 2 REG_FIFOPAGE_CTRL_2                        (Offset 0x0204) */
4595
4596 #define BIT_SHIFT_BCN_HEAD_V1 0
4597 #define BIT_MASK_BCN_HEAD_V1 0xfff
4598 #define BIT_BCN_HEAD_V1(x)                                                     \
4599         (((x) & BIT_MASK_BCN_HEAD_V1) << BIT_SHIFT_BCN_HEAD_V1)
4600 #define BIT_GET_BCN_HEAD_V1(x)                                                 \
4601         (((x) >> BIT_SHIFT_BCN_HEAD_V1) & BIT_MASK_BCN_HEAD_V1)
4602
4603 /* 2 REG_AUTO_LLT_V1                            (Offset 0x0208) */
4604
4605 #define BIT_SHIFT_MAX_TX_PKT_FOR_USB_AND_SDIO_V1 24
4606 #define BIT_MASK_MAX_TX_PKT_FOR_USB_AND_SDIO_V1 0xff
4607 #define BIT_MAX_TX_PKT_FOR_USB_AND_SDIO_V1(x)                                  \
4608         (((x) & BIT_MASK_MAX_TX_PKT_FOR_USB_AND_SDIO_V1)                       \
4609          << BIT_SHIFT_MAX_TX_PKT_FOR_USB_AND_SDIO_V1)
4610 #define BIT_GET_MAX_TX_PKT_FOR_USB_AND_SDIO_V1(x)                              \
4611         (((x) >> BIT_SHIFT_MAX_TX_PKT_FOR_USB_AND_SDIO_V1) &                   \
4612          BIT_MASK_MAX_TX_PKT_FOR_USB_AND_SDIO_V1)
4613
4614 /* 2 REG_AUTO_LLT_V1                            (Offset 0x0208) */
4615
4616 #define BIT_SHIFT_LLT_FREE_PAGE_V1 8
4617 #define BIT_MASK_LLT_FREE_PAGE_V1 0xffff
4618 #define BIT_LLT_FREE_PAGE_V1(x)                                                \
4619         (((x) & BIT_MASK_LLT_FREE_PAGE_V1) << BIT_SHIFT_LLT_FREE_PAGE_V1)
4620 #define BIT_GET_LLT_FREE_PAGE_V1(x)                                            \
4621         (((x) >> BIT_SHIFT_LLT_FREE_PAGE_V1) & BIT_MASK_LLT_FREE_PAGE_V1)
4622
4623 /* 2 REG_DWBCN0_CTRL                            (Offset 0x0208) */
4624
4625 #define BIT_SHIFT_BLK_DESC_NUM 4
4626 #define BIT_MASK_BLK_DESC_NUM 0xf
4627 #define BIT_BLK_DESC_NUM(x)                                                    \
4628         (((x) & BIT_MASK_BLK_DESC_NUM) << BIT_SHIFT_BLK_DESC_NUM)
4629 #define BIT_GET_BLK_DESC_NUM(x)                                                \
4630         (((x) >> BIT_SHIFT_BLK_DESC_NUM) & BIT_MASK_BLK_DESC_NUM)
4631
4632 /* 2 REG_AUTO_LLT_V1                            (Offset 0x0208) */
4633
4634 #define BIT_R_BCN_HEAD_SEL BIT(3)
4635 #define BIT_R_EN_BCN_SW_HEAD_SEL BIT(2)
4636 #define BIT_LLT_DBG_SEL BIT(1)
4637 #define BIT_AUTO_INIT_LLT_V1 BIT(0)
4638
4639 /* 2 REG_TXDMA_OFFSET_CHK                       (Offset 0x020C) */
4640
4641 #define BIT_EM_CHKSUM_FIN BIT(31)
4642 #define BIT_EMN_PCIE_DMA_MOD BIT(30)
4643
4644 /* 2 REG_TXDMA_OFFSET_CHK                       (Offset 0x020C) */
4645
4646 #define BIT_EN_TXQUE_CLR BIT(29)
4647 #define BIT_EN_PCIE_FIFO_MODE BIT(28)
4648
4649 /* 2 REG_TXDMA_OFFSET_CHK                       (Offset 0x020C) */
4650
4651 #define BIT_SHIFT_PG_UNDER_TH_V1 16
4652 #define BIT_MASK_PG_UNDER_TH_V1 0xfff
4653 #define BIT_PG_UNDER_TH_V1(x)                                                  \
4654         (((x) & BIT_MASK_PG_UNDER_TH_V1) << BIT_SHIFT_PG_UNDER_TH_V1)
4655 #define BIT_GET_PG_UNDER_TH_V1(x)                                              \
4656         (((x) >> BIT_SHIFT_PG_UNDER_TH_V1) & BIT_MASK_PG_UNDER_TH_V1)
4657
4658 /* 2 REG_TXDMA_OFFSET_CHK                       (Offset 0x020C) */
4659
4660 #define BIT_RESTORE_H2C_ADDRESS BIT(15)
4661
4662 /* 2 REG_TXDMA_OFFSET_CHK                       (Offset 0x020C) */
4663
4664 #define BIT_SDIO_TXDESC_CHKSUM_EN BIT(13)
4665 #define BIT_RST_RDPTR BIT(12)
4666 #define BIT_RST_WRPTR BIT(11)
4667 #define BIT_CHK_PG_TH_EN BIT(10)
4668 #define BIT_DROP_DATA_EN BIT(9)
4669 #define BIT_CHECK_OFFSET_EN BIT(8)
4670
4671 #define BIT_SHIFT_CHECK_OFFSET 0
4672 #define BIT_MASK_CHECK_OFFSET 0xff
4673 #define BIT_CHECK_OFFSET(x)                                                    \
4674         (((x) & BIT_MASK_CHECK_OFFSET) << BIT_SHIFT_CHECK_OFFSET)
4675 #define BIT_GET_CHECK_OFFSET(x)                                                \
4676         (((x) >> BIT_SHIFT_CHECK_OFFSET) & BIT_MASK_CHECK_OFFSET)
4677
4678 /* 2 REG_TXDMA_STATUS                   (Offset 0x0210) */
4679
4680 #define BIT_HI_OQT_UDN BIT(17)
4681 #define BIT_HI_OQT_OVF BIT(16)
4682 #define BIT_PAYLOAD_CHKSUM_ERR BIT(15)
4683 #define BIT_PAYLOAD_UDN BIT(14)
4684 #define BIT_PAYLOAD_OVF BIT(13)
4685 #define BIT_DSC_CHKSUM_FAIL BIT(12)
4686 #define BIT_UNKNOWN_QSEL BIT(11)
4687 #define BIT_EP_QSEL_DIFF BIT(10)
4688 #define BIT_TX_OFFS_UNMATCH BIT(9)
4689 #define BIT_TXOQT_UDN BIT(8)
4690 #define BIT_TXOQT_OVF BIT(7)
4691 #define BIT_TXDMA_SFF_UDN BIT(6)
4692 #define BIT_TXDMA_SFF_OVF BIT(5)
4693 #define BIT_LLT_NULL_PG BIT(4)
4694 #define BIT_PAGE_UDN BIT(3)
4695 #define BIT_PAGE_OVF BIT(2)
4696 #define BIT_TXFF_PG_UDN BIT(1)
4697 #define BIT_TXFF_PG_OVF BIT(0)
4698
4699 /* 2 REG_TQPNT1                         (Offset 0x0218) */
4700
4701 #define BIT_SHIFT_HPQ_HIGH_TH_V1 16
4702 #define BIT_MASK_HPQ_HIGH_TH_V1 0xfff
4703 #define BIT_HPQ_HIGH_TH_V1(x)                                                  \
4704         (((x) & BIT_MASK_HPQ_HIGH_TH_V1) << BIT_SHIFT_HPQ_HIGH_TH_V1)
4705 #define BIT_GET_HPQ_HIGH_TH_V1(x)                                              \
4706         (((x) >> BIT_SHIFT_HPQ_HIGH_TH_V1) & BIT_MASK_HPQ_HIGH_TH_V1)
4707
4708 /* 2 REG_TQPNT1                         (Offset 0x0218) */
4709
4710 #define BIT_SHIFT_HPQ_LOW_TH_V1 0
4711 #define BIT_MASK_HPQ_LOW_TH_V1 0xfff
4712 #define BIT_HPQ_LOW_TH_V1(x)                                                   \
4713         (((x) & BIT_MASK_HPQ_LOW_TH_V1) << BIT_SHIFT_HPQ_LOW_TH_V1)
4714 #define BIT_GET_HPQ_LOW_TH_V1(x)                                               \
4715         (((x) >> BIT_SHIFT_HPQ_LOW_TH_V1) & BIT_MASK_HPQ_LOW_TH_V1)
4716
4717 /* 2 REG_TQPNT2                         (Offset 0x021C) */
4718
4719 #define BIT_SHIFT_NPQ_HIGH_TH_V1 16
4720 #define BIT_MASK_NPQ_HIGH_TH_V1 0xfff
4721 #define BIT_NPQ_HIGH_TH_V1(x)                                                  \
4722         (((x) & BIT_MASK_NPQ_HIGH_TH_V1) << BIT_SHIFT_NPQ_HIGH_TH_V1)
4723 #define BIT_GET_NPQ_HIGH_TH_V1(x)                                              \
4724         (((x) >> BIT_SHIFT_NPQ_HIGH_TH_V1) & BIT_MASK_NPQ_HIGH_TH_V1)
4725
4726 /* 2 REG_TQPNT2                         (Offset 0x021C) */
4727
4728 #define BIT_SHIFT_NPQ_LOW_TH_V1 0
4729 #define BIT_MASK_NPQ_LOW_TH_V1 0xfff
4730 #define BIT_NPQ_LOW_TH_V1(x)                                                   \
4731         (((x) & BIT_MASK_NPQ_LOW_TH_V1) << BIT_SHIFT_NPQ_LOW_TH_V1)
4732 #define BIT_GET_NPQ_LOW_TH_V1(x)                                               \
4733         (((x) >> BIT_SHIFT_NPQ_LOW_TH_V1) & BIT_MASK_NPQ_LOW_TH_V1)
4734
4735 /* 2 REG_TQPNT3                         (Offset 0x0220) */
4736
4737 #define BIT_SHIFT_LPQ_HIGH_TH_V1 16
4738 #define BIT_MASK_LPQ_HIGH_TH_V1 0xfff
4739 #define BIT_LPQ_HIGH_TH_V1(x)                                                  \
4740         (((x) & BIT_MASK_LPQ_HIGH_TH_V1) << BIT_SHIFT_LPQ_HIGH_TH_V1)
4741 #define BIT_GET_LPQ_HIGH_TH_V1(x)                                              \
4742         (((x) >> BIT_SHIFT_LPQ_HIGH_TH_V1) & BIT_MASK_LPQ_HIGH_TH_V1)
4743
4744 /* 2 REG_TQPNT3                         (Offset 0x0220) */
4745
4746 #define BIT_SHIFT_LPQ_LOW_TH_V1 0
4747 #define BIT_MASK_LPQ_LOW_TH_V1 0xfff
4748 #define BIT_LPQ_LOW_TH_V1(x)                                                   \
4749         (((x) & BIT_MASK_LPQ_LOW_TH_V1) << BIT_SHIFT_LPQ_LOW_TH_V1)
4750 #define BIT_GET_LPQ_LOW_TH_V1(x)                                               \
4751         (((x) >> BIT_SHIFT_LPQ_LOW_TH_V1) & BIT_MASK_LPQ_LOW_TH_V1)
4752
4753 /* 2 REG_TQPNT4                         (Offset 0x0224) */
4754
4755 #define BIT_SHIFT_EXQ_HIGH_TH_V1 16
4756 #define BIT_MASK_EXQ_HIGH_TH_V1 0xfff
4757 #define BIT_EXQ_HIGH_TH_V1(x)                                                  \
4758         (((x) & BIT_MASK_EXQ_HIGH_TH_V1) << BIT_SHIFT_EXQ_HIGH_TH_V1)
4759 #define BIT_GET_EXQ_HIGH_TH_V1(x)                                              \
4760         (((x) >> BIT_SHIFT_EXQ_HIGH_TH_V1) & BIT_MASK_EXQ_HIGH_TH_V1)
4761
4762 /* 2 REG_TQPNT4                         (Offset 0x0224) */
4763
4764 #define BIT_SHIFT_EXQ_LOW_TH_V1 0
4765 #define BIT_MASK_EXQ_LOW_TH_V1 0xfff
4766 #define BIT_EXQ_LOW_TH_V1(x)                                                   \
4767         (((x) & BIT_MASK_EXQ_LOW_TH_V1) << BIT_SHIFT_EXQ_LOW_TH_V1)
4768 #define BIT_GET_EXQ_LOW_TH_V1(x)                                               \
4769         (((x) >> BIT_SHIFT_EXQ_LOW_TH_V1) & BIT_MASK_EXQ_LOW_TH_V1)
4770
4771 /* 2 REG_RQPN_CTRL_1                            (Offset 0x0228) */
4772
4773 #define BIT_SHIFT_TXPKTNUM_H 16
4774 #define BIT_MASK_TXPKTNUM_H 0xffff
4775 #define BIT_TXPKTNUM_H(x) (((x) & BIT_MASK_TXPKTNUM_H) << BIT_SHIFT_TXPKTNUM_H)
4776 #define BIT_GET_TXPKTNUM_H(x)                                                  \
4777         (((x) >> BIT_SHIFT_TXPKTNUM_H) & BIT_MASK_TXPKTNUM_H)
4778
4779 /* 2 REG_RQPN_CTRL_1                            (Offset 0x0228) */
4780
4781 #define BIT_SHIFT_TXPKTNUM_V2 0
4782 #define BIT_MASK_TXPKTNUM_V2 0xffff
4783 #define BIT_TXPKTNUM_V2(x)                                                     \
4784         (((x) & BIT_MASK_TXPKTNUM_V2) << BIT_SHIFT_TXPKTNUM_V2)
4785 #define BIT_GET_TXPKTNUM_V2(x)                                                 \
4786         (((x) >> BIT_SHIFT_TXPKTNUM_V2) & BIT_MASK_TXPKTNUM_V2)
4787
4788 /* 2 REG_RQPN_CTRL_2                            (Offset 0x022C) */
4789
4790 #define BIT_EXQ_PUBLIC_DIS_V1 BIT(19)
4791 #define BIT_NPQ_PUBLIC_DIS_V1 BIT(18)
4792 #define BIT_LPQ_PUBLIC_DIS_V1 BIT(17)
4793 #define BIT_HPQ_PUBLIC_DIS_V1 BIT(16)
4794
4795 /* 2 REG_FIFOPAGE_INFO_1                        (Offset 0x0230) */
4796
4797 #define BIT_SHIFT_HPQ_AVAL_PG_V1 16
4798 #define BIT_MASK_HPQ_AVAL_PG_V1 0xfff
4799 #define BIT_HPQ_AVAL_PG_V1(x)                                                  \
4800         (((x) & BIT_MASK_HPQ_AVAL_PG_V1) << BIT_SHIFT_HPQ_AVAL_PG_V1)
4801 #define BIT_GET_HPQ_AVAL_PG_V1(x)                                              \
4802         (((x) >> BIT_SHIFT_HPQ_AVAL_PG_V1) & BIT_MASK_HPQ_AVAL_PG_V1)
4803
4804 #define BIT_SHIFT_HPQ_V1 0
4805 #define BIT_MASK_HPQ_V1 0xfff
4806 #define BIT_HPQ_V1(x) (((x) & BIT_MASK_HPQ_V1) << BIT_SHIFT_HPQ_V1)
4807 #define BIT_GET_HPQ_V1(x) (((x) >> BIT_SHIFT_HPQ_V1) & BIT_MASK_HPQ_V1)
4808
4809 /* 2 REG_FIFOPAGE_INFO_2                        (Offset 0x0234) */
4810
4811 #define BIT_SHIFT_LPQ_AVAL_PG_V1 16
4812 #define BIT_MASK_LPQ_AVAL_PG_V1 0xfff
4813 #define BIT_LPQ_AVAL_PG_V1(x)                                                  \
4814         (((x) & BIT_MASK_LPQ_AVAL_PG_V1) << BIT_SHIFT_LPQ_AVAL_PG_V1)
4815 #define BIT_GET_LPQ_AVAL_PG_V1(x)                                              \
4816         (((x) >> BIT_SHIFT_LPQ_AVAL_PG_V1) & BIT_MASK_LPQ_AVAL_PG_V1)
4817
4818 #define BIT_SHIFT_LPQ_V1 0
4819 #define BIT_MASK_LPQ_V1 0xfff
4820 #define BIT_LPQ_V1(x) (((x) & BIT_MASK_LPQ_V1) << BIT_SHIFT_LPQ_V1)
4821 #define BIT_GET_LPQ_V1(x) (((x) >> BIT_SHIFT_LPQ_V1) & BIT_MASK_LPQ_V1)
4822
4823 /* 2 REG_FIFOPAGE_INFO_3                        (Offset 0x0238) */
4824
4825 #define BIT_SHIFT_NPQ_AVAL_PG_V1 16
4826 #define BIT_MASK_NPQ_AVAL_PG_V1 0xfff
4827 #define BIT_NPQ_AVAL_PG_V1(x)                                                  \
4828         (((x) & BIT_MASK_NPQ_AVAL_PG_V1) << BIT_SHIFT_NPQ_AVAL_PG_V1)
4829 #define BIT_GET_NPQ_AVAL_PG_V1(x)                                              \
4830         (((x) >> BIT_SHIFT_NPQ_AVAL_PG_V1) & BIT_MASK_NPQ_AVAL_PG_V1)
4831
4832 /* 2 REG_FIFOPAGE_INFO_3                        (Offset 0x0238) */
4833
4834 #define BIT_SHIFT_NPQ_V1 0
4835 #define BIT_MASK_NPQ_V1 0xfff
4836 #define BIT_NPQ_V1(x) (((x) & BIT_MASK_NPQ_V1) << BIT_SHIFT_NPQ_V1)
4837 #define BIT_GET_NPQ_V1(x) (((x) >> BIT_SHIFT_NPQ_V1) & BIT_MASK_NPQ_V1)
4838
4839 /* 2 REG_FIFOPAGE_INFO_4                        (Offset 0x023C) */
4840
4841 #define BIT_SHIFT_EXQ_AVAL_PG_V1 16
4842 #define BIT_MASK_EXQ_AVAL_PG_V1 0xfff
4843 #define BIT_EXQ_AVAL_PG_V1(x)                                                  \
4844         (((x) & BIT_MASK_EXQ_AVAL_PG_V1) << BIT_SHIFT_EXQ_AVAL_PG_V1)
4845 #define BIT_GET_EXQ_AVAL_PG_V1(x)                                              \
4846         (((x) >> BIT_SHIFT_EXQ_AVAL_PG_V1) & BIT_MASK_EXQ_AVAL_PG_V1)
4847
4848 #define BIT_SHIFT_EXQ_V1 0
4849 #define BIT_MASK_EXQ_V1 0xfff
4850 #define BIT_EXQ_V1(x) (((x) & BIT_MASK_EXQ_V1) << BIT_SHIFT_EXQ_V1)
4851 #define BIT_GET_EXQ_V1(x) (((x) >> BIT_SHIFT_EXQ_V1) & BIT_MASK_EXQ_V1)
4852
4853 /* 2 REG_FIFOPAGE_INFO_5                        (Offset 0x0240) */
4854
4855 #define BIT_SHIFT_PUBQ_AVAL_PG_V1 16
4856 #define BIT_MASK_PUBQ_AVAL_PG_V1 0xfff
4857 #define BIT_PUBQ_AVAL_PG_V1(x)                                                 \
4858         (((x) & BIT_MASK_PUBQ_AVAL_PG_V1) << BIT_SHIFT_PUBQ_AVAL_PG_V1)
4859 #define BIT_GET_PUBQ_AVAL_PG_V1(x)                                             \
4860         (((x) >> BIT_SHIFT_PUBQ_AVAL_PG_V1) & BIT_MASK_PUBQ_AVAL_PG_V1)
4861
4862 #define BIT_SHIFT_PUBQ_V1 0
4863 #define BIT_MASK_PUBQ_V1 0xfff
4864 #define BIT_PUBQ_V1(x) (((x) & BIT_MASK_PUBQ_V1) << BIT_SHIFT_PUBQ_V1)
4865 #define BIT_GET_PUBQ_V1(x) (((x) >> BIT_SHIFT_PUBQ_V1) & BIT_MASK_PUBQ_V1)
4866
4867 /* 2 REG_H2C_HEAD                               (Offset 0x0244) */
4868
4869 #define BIT_SHIFT_H2C_HEAD 0
4870 #define BIT_MASK_H2C_HEAD 0x3ffff
4871 #define BIT_H2C_HEAD(x) (((x) & BIT_MASK_H2C_HEAD) << BIT_SHIFT_H2C_HEAD)
4872 #define BIT_GET_H2C_HEAD(x) (((x) >> BIT_SHIFT_H2C_HEAD) & BIT_MASK_H2C_HEAD)
4873
4874 /* 2 REG_H2C_TAIL                               (Offset 0x0248) */
4875
4876 #define BIT_SHIFT_H2C_TAIL 0
4877 #define BIT_MASK_H2C_TAIL 0x3ffff
4878 #define BIT_H2C_TAIL(x) (((x) & BIT_MASK_H2C_TAIL) << BIT_SHIFT_H2C_TAIL)
4879 #define BIT_GET_H2C_TAIL(x) (((x) >> BIT_SHIFT_H2C_TAIL) & BIT_MASK_H2C_TAIL)
4880
4881 /* 2 REG_H2C_READ_ADDR                  (Offset 0x024C) */
4882
4883 #define BIT_SHIFT_H2C_READ_ADDR 0
4884 #define BIT_MASK_H2C_READ_ADDR 0x3ffff
4885 #define BIT_H2C_READ_ADDR(x)                                                   \
4886         (((x) & BIT_MASK_H2C_READ_ADDR) << BIT_SHIFT_H2C_READ_ADDR)
4887 #define BIT_GET_H2C_READ_ADDR(x)                                               \
4888         (((x) >> BIT_SHIFT_H2C_READ_ADDR) & BIT_MASK_H2C_READ_ADDR)
4889
4890 /* 2 REG_H2C_WR_ADDR                            (Offset 0x0250) */
4891
4892 #define BIT_SHIFT_H2C_WR_ADDR 0
4893 #define BIT_MASK_H2C_WR_ADDR 0x3ffff
4894 #define BIT_H2C_WR_ADDR(x)                                                     \
4895         (((x) & BIT_MASK_H2C_WR_ADDR) << BIT_SHIFT_H2C_WR_ADDR)
4896 #define BIT_GET_H2C_WR_ADDR(x)                                                 \
4897         (((x) >> BIT_SHIFT_H2C_WR_ADDR) & BIT_MASK_H2C_WR_ADDR)
4898
4899 /* 2 REG_H2C_INFO                               (Offset 0x0254) */
4900
4901 #define BIT_H2C_SPACE_VLD BIT(3)
4902 #define BIT_H2C_WR_ADDR_RST BIT(2)
4903
4904 #define BIT_SHIFT_H2C_LEN_SEL 0
4905 #define BIT_MASK_H2C_LEN_SEL 0x3
4906 #define BIT_H2C_LEN_SEL(x)                                                     \
4907         (((x) & BIT_MASK_H2C_LEN_SEL) << BIT_SHIFT_H2C_LEN_SEL)
4908 #define BIT_GET_H2C_LEN_SEL(x)                                                 \
4909         (((x) >> BIT_SHIFT_H2C_LEN_SEL) & BIT_MASK_H2C_LEN_SEL)
4910
4911 /* 2 REG_RXDMA_AGG_PG_TH                        (Offset 0x0280) */
4912
4913 #define BIT_SHIFT_RXDMA_AGG_OLD_MOD 24
4914 #define BIT_MASK_RXDMA_AGG_OLD_MOD 0xff
4915 #define BIT_RXDMA_AGG_OLD_MOD(x)                                               \
4916         (((x) & BIT_MASK_RXDMA_AGG_OLD_MOD) << BIT_SHIFT_RXDMA_AGG_OLD_MOD)
4917 #define BIT_GET_RXDMA_AGG_OLD_MOD(x)                                           \
4918         (((x) >> BIT_SHIFT_RXDMA_AGG_OLD_MOD) & BIT_MASK_RXDMA_AGG_OLD_MOD)
4919
4920 /* 2 REG_RXDMA_AGG_PG_TH                        (Offset 0x0280) */
4921
4922 #define BIT_SHIFT_PKT_NUM_WOL 16
4923 #define BIT_MASK_PKT_NUM_WOL 0xff
4924 #define BIT_PKT_NUM_WOL(x)                                                     \
4925         (((x) & BIT_MASK_PKT_NUM_WOL) << BIT_SHIFT_PKT_NUM_WOL)
4926 #define BIT_GET_PKT_NUM_WOL(x)                                                 \
4927         (((x) >> BIT_SHIFT_PKT_NUM_WOL) & BIT_MASK_PKT_NUM_WOL)
4928
4929 /* 2 REG_RXDMA_AGG_PG_TH                        (Offset 0x0280) */
4930
4931 #define BIT_SHIFT_DMA_AGG_TO 8
4932 #define BIT_MASK_DMA_AGG_TO 0xf
4933 #define BIT_DMA_AGG_TO(x) (((x) & BIT_MASK_DMA_AGG_TO) << BIT_SHIFT_DMA_AGG_TO)
4934 #define BIT_GET_DMA_AGG_TO(x)                                                  \
4935         (((x) >> BIT_SHIFT_DMA_AGG_TO) & BIT_MASK_DMA_AGG_TO)
4936
4937 /* 2 REG_RXDMA_AGG_PG_TH                        (Offset 0x0280) */
4938
4939 #define BIT_SHIFT_RXDMA_AGG_PG_TH_V1 0
4940 #define BIT_MASK_RXDMA_AGG_PG_TH_V1 0xf
4941 #define BIT_RXDMA_AGG_PG_TH_V1(x)                                              \
4942         (((x) & BIT_MASK_RXDMA_AGG_PG_TH_V1) << BIT_SHIFT_RXDMA_AGG_PG_TH_V1)
4943 #define BIT_GET_RXDMA_AGG_PG_TH_V1(x)                                          \
4944         (((x) >> BIT_SHIFT_RXDMA_AGG_PG_TH_V1) & BIT_MASK_RXDMA_AGG_PG_TH_V1)
4945
4946 /* 2 REG_RXPKT_NUM                              (Offset 0x0284) */
4947
4948 #define BIT_SHIFT_RXPKT_NUM 24
4949 #define BIT_MASK_RXPKT_NUM 0xff
4950 #define BIT_RXPKT_NUM(x) (((x) & BIT_MASK_RXPKT_NUM) << BIT_SHIFT_RXPKT_NUM)
4951 #define BIT_GET_RXPKT_NUM(x) (((x) >> BIT_SHIFT_RXPKT_NUM) & BIT_MASK_RXPKT_NUM)
4952
4953 /* 2 REG_RXPKT_NUM                              (Offset 0x0284) */
4954
4955 #define BIT_SHIFT_FW_UPD_RDPTR19_TO_16 20
4956 #define BIT_MASK_FW_UPD_RDPTR19_TO_16 0xf
4957 #define BIT_FW_UPD_RDPTR19_TO_16(x)                                            \
4958         (((x) & BIT_MASK_FW_UPD_RDPTR19_TO_16)                                 \
4959          << BIT_SHIFT_FW_UPD_RDPTR19_TO_16)
4960 #define BIT_GET_FW_UPD_RDPTR19_TO_16(x)                                        \
4961         (((x) >> BIT_SHIFT_FW_UPD_RDPTR19_TO_16) &                             \
4962          BIT_MASK_FW_UPD_RDPTR19_TO_16)
4963
4964 /* 2 REG_RXPKT_NUM                              (Offset 0x0284) */
4965
4966 #define BIT_RXDMA_REQ BIT(19)
4967 #define BIT_RW_RELEASE_EN BIT(18)
4968 #define BIT_RXDMA_IDLE BIT(17)
4969 #define BIT_RXPKT_RELEASE_POLL BIT(16)
4970
4971 #define BIT_SHIFT_FW_UPD_RDPTR 0
4972 #define BIT_MASK_FW_UPD_RDPTR 0xffff
4973 #define BIT_FW_UPD_RDPTR(x)                                                    \
4974         (((x) & BIT_MASK_FW_UPD_RDPTR) << BIT_SHIFT_FW_UPD_RDPTR)
4975 #define BIT_GET_FW_UPD_RDPTR(x)                                                \
4976         (((x) >> BIT_SHIFT_FW_UPD_RDPTR) & BIT_MASK_FW_UPD_RDPTR)
4977
4978 /* 2 REG_RXDMA_STATUS                   (Offset 0x0288) */
4979
4980 #define BIT_C2H_PKT_OVF BIT(7)
4981
4982 /* 2 REG_RXDMA_STATUS                   (Offset 0x0288) */
4983
4984 #define BIT_AGG_CONFGI_ISSUE BIT(6)
4985
4986 /* 2 REG_RXDMA_STATUS                   (Offset 0x0288) */
4987
4988 #define BIT_FW_POLL_ISSUE BIT(5)
4989 #define BIT_RX_DATA_UDN BIT(4)
4990 #define BIT_RX_SFF_UDN BIT(3)
4991 #define BIT_RX_SFF_OVF BIT(2)
4992
4993 /* 2 REG_RXDMA_STATUS                   (Offset 0x0288) */
4994
4995 #define BIT_RXPKT_OVF BIT(0)
4996
4997 /* 2 REG_RXDMA_DPR                              (Offset 0x028C) */
4998
4999 #define BIT_SHIFT_RDE_DEBUG 0
5000 #define BIT_MASK_RDE_DEBUG 0xffffffffL
5001 #define BIT_RDE_DEBUG(x) (((x) & BIT_MASK_RDE_DEBUG) << BIT_SHIFT_RDE_DEBUG)
5002 #define BIT_GET_RDE_DEBUG(x) (((x) >> BIT_SHIFT_RDE_DEBUG) & BIT_MASK_RDE_DEBUG)
5003
5004 /* 2 REG_RXDMA_MODE                             (Offset 0x0290) */
5005
5006 #define BIT_SHIFT_PKTNUM_TH_V2 24
5007 #define BIT_MASK_PKTNUM_TH_V2 0x1f
5008 #define BIT_PKTNUM_TH_V2(x)                                                    \
5009         (((x) & BIT_MASK_PKTNUM_TH_V2) << BIT_SHIFT_PKTNUM_TH_V2)
5010 #define BIT_GET_PKTNUM_TH_V2(x)                                                \
5011         (((x) >> BIT_SHIFT_PKTNUM_TH_V2) & BIT_MASK_PKTNUM_TH_V2)
5012
5013 #define BIT_TXBA_BREAK_USBAGG BIT(23)
5014
5015 #define BIT_SHIFT_PKTLEN_PARA 16
5016 #define BIT_MASK_PKTLEN_PARA 0x7
5017 #define BIT_PKTLEN_PARA(x)                                                     \
5018         (((x) & BIT_MASK_PKTLEN_PARA) << BIT_SHIFT_PKTLEN_PARA)
5019 #define BIT_GET_PKTLEN_PARA(x)                                                 \
5020         (((x) >> BIT_SHIFT_PKTLEN_PARA) & BIT_MASK_PKTLEN_PARA)
5021
5022 /* 2 REG_RXDMA_MODE                             (Offset 0x0290) */
5023
5024 #define BIT_SHIFT_BURST_SIZE 4
5025 #define BIT_MASK_BURST_SIZE 0x3
5026 #define BIT_BURST_SIZE(x) (((x) & BIT_MASK_BURST_SIZE) << BIT_SHIFT_BURST_SIZE)
5027 #define BIT_GET_BURST_SIZE(x)                                                  \
5028         (((x) >> BIT_SHIFT_BURST_SIZE) & BIT_MASK_BURST_SIZE)
5029
5030 #define BIT_SHIFT_BURST_CNT 2
5031 #define BIT_MASK_BURST_CNT 0x3
5032 #define BIT_BURST_CNT(x) (((x) & BIT_MASK_BURST_CNT) << BIT_SHIFT_BURST_CNT)
5033 #define BIT_GET_BURST_CNT(x) (((x) >> BIT_SHIFT_BURST_CNT) & BIT_MASK_BURST_CNT)
5034
5035 /* 2 REG_RXDMA_MODE                             (Offset 0x0290) */
5036
5037 #define BIT_DMA_MODE BIT(1)
5038
5039 /* 2 REG_C2H_PKT                                (Offset 0x0294) */
5040
5041 #define BIT_SHIFT_R_C2H_STR_ADDR_16_TO_19 24
5042 #define BIT_MASK_R_C2H_STR_ADDR_16_TO_19 0xf
5043 #define BIT_R_C2H_STR_ADDR_16_TO_19(x)                                         \
5044         (((x) & BIT_MASK_R_C2H_STR_ADDR_16_TO_19)                              \
5045          << BIT_SHIFT_R_C2H_STR_ADDR_16_TO_19)
5046 #define BIT_GET_R_C2H_STR_ADDR_16_TO_19(x)                                     \
5047         (((x) >> BIT_SHIFT_R_C2H_STR_ADDR_16_TO_19) &                          \
5048          BIT_MASK_R_C2H_STR_ADDR_16_TO_19)
5049
5050 #define BIT_SHIFT_MDIO_PHY_ADDR 24
5051 #define BIT_MASK_MDIO_PHY_ADDR 0x1f
5052 #define BIT_MDIO_PHY_ADDR(x)                                                   \
5053         (((x) & BIT_MASK_MDIO_PHY_ADDR) << BIT_SHIFT_MDIO_PHY_ADDR)
5054 #define BIT_GET_MDIO_PHY_ADDR(x)                                               \
5055         (((x) >> BIT_SHIFT_MDIO_PHY_ADDR) & BIT_MASK_MDIO_PHY_ADDR)
5056
5057 /* 2 REG_C2H_PKT                                (Offset 0x0294) */
5058
5059 #define BIT_R_C2H_PKT_REQ BIT(16)
5060 #define BIT_RX_CLOSE_EN BIT(15)
5061 #define BIT_STOP_BCNQ BIT(14)
5062 #define BIT_STOP_MGQ BIT(13)
5063 #define BIT_STOP_VOQ BIT(12)
5064 #define BIT_STOP_VIQ BIT(11)
5065 #define BIT_STOP_BEQ BIT(10)
5066 #define BIT_STOP_BKQ BIT(9)
5067 #define BIT_STOP_RXQ BIT(8)
5068 #define BIT_STOP_HI7Q BIT(7)
5069 #define BIT_STOP_HI6Q BIT(6)
5070 #define BIT_STOP_HI5Q BIT(5)
5071 #define BIT_STOP_HI4Q BIT(4)
5072 #define BIT_STOP_HI3Q BIT(3)
5073 #define BIT_STOP_HI2Q BIT(2)
5074 #define BIT_STOP_HI1Q BIT(1)
5075
5076 #define BIT_SHIFT_R_C2H_STR_ADDR 0
5077 #define BIT_MASK_R_C2H_STR_ADDR 0xffff
5078 #define BIT_R_C2H_STR_ADDR(x)                                                  \
5079         (((x) & BIT_MASK_R_C2H_STR_ADDR) << BIT_SHIFT_R_C2H_STR_ADDR)
5080 #define BIT_GET_R_C2H_STR_ADDR(x)                                              \
5081         (((x) >> BIT_SHIFT_R_C2H_STR_ADDR) & BIT_MASK_R_C2H_STR_ADDR)
5082
5083 #define BIT_STOP_HI0Q BIT(0)
5084
5085 /* 2 REG_FWFF_C2H                               (Offset 0x0298) */
5086
5087 #define BIT_SHIFT_C2H_DMA_ADDR 0
5088 #define BIT_MASK_C2H_DMA_ADDR 0x3ffff
5089 #define BIT_C2H_DMA_ADDR(x)                                                    \
5090         (((x) & BIT_MASK_C2H_DMA_ADDR) << BIT_SHIFT_C2H_DMA_ADDR)
5091 #define BIT_GET_C2H_DMA_ADDR(x)                                                \
5092         (((x) >> BIT_SHIFT_C2H_DMA_ADDR) & BIT_MASK_C2H_DMA_ADDR)
5093
5094 /* 2 REG_FWFF_CTRL                              (Offset 0x029C) */
5095
5096 #define BIT_FWFF_DMAPKT_REQ BIT(31)
5097
5098 #define BIT_SHIFT_FWFF_DMA_PKT_NUM 16
5099 #define BIT_MASK_FWFF_DMA_PKT_NUM 0xff
5100 #define BIT_FWFF_DMA_PKT_NUM(x)                                                \
5101         (((x) & BIT_MASK_FWFF_DMA_PKT_NUM) << BIT_SHIFT_FWFF_DMA_PKT_NUM)
5102 #define BIT_GET_FWFF_DMA_PKT_NUM(x)                                            \
5103         (((x) >> BIT_SHIFT_FWFF_DMA_PKT_NUM) & BIT_MASK_FWFF_DMA_PKT_NUM)
5104
5105 #define BIT_SHIFT_FWFF_STR_ADDR 0
5106 #define BIT_MASK_FWFF_STR_ADDR 0xffff
5107 #define BIT_FWFF_STR_ADDR(x)                                                   \
5108         (((x) & BIT_MASK_FWFF_STR_ADDR) << BIT_SHIFT_FWFF_STR_ADDR)
5109 #define BIT_GET_FWFF_STR_ADDR(x)                                               \
5110         (((x) >> BIT_SHIFT_FWFF_STR_ADDR) & BIT_MASK_FWFF_STR_ADDR)
5111
5112 /* 2 REG_FWFF_PKT_INFO                  (Offset 0x02A0) */
5113
5114 #define BIT_SHIFT_FWFF_PKT_QUEUED 16
5115 #define BIT_MASK_FWFF_PKT_QUEUED 0xff
5116 #define BIT_FWFF_PKT_QUEUED(x)                                                 \
5117         (((x) & BIT_MASK_FWFF_PKT_QUEUED) << BIT_SHIFT_FWFF_PKT_QUEUED)
5118 #define BIT_GET_FWFF_PKT_QUEUED(x)                                             \
5119         (((x) >> BIT_SHIFT_FWFF_PKT_QUEUED) & BIT_MASK_FWFF_PKT_QUEUED)
5120
5121 /* 2 REG_FWFF_PKT_INFO                  (Offset 0x02A0) */
5122
5123 #define BIT_SHIFT_FWFF_PKT_STR_ADDR 0
5124 #define BIT_MASK_FWFF_PKT_STR_ADDR 0xffff
5125 #define BIT_FWFF_PKT_STR_ADDR(x)                                               \
5126         (((x) & BIT_MASK_FWFF_PKT_STR_ADDR) << BIT_SHIFT_FWFF_PKT_STR_ADDR)
5127 #define BIT_GET_FWFF_PKT_STR_ADDR(x)                                           \
5128         (((x) >> BIT_SHIFT_FWFF_PKT_STR_ADDR) & BIT_MASK_FWFF_PKT_STR_ADDR)
5129
5130 /* 2 REG_PCIE_CTRL                              (Offset 0x0300) */
5131
5132 #define BIT_PCIEIO_PERSTB_SEL BIT(31)
5133
5134 /* 2 REG_PCIE_CTRL                              (Offset 0x0300) */
5135
5136 #define BIT_SHIFT_PCIE_MAX_RXDMA 28
5137 #define BIT_MASK_PCIE_MAX_RXDMA 0x7
5138 #define BIT_PCIE_MAX_RXDMA(x)                                                  \
5139         (((x) & BIT_MASK_PCIE_MAX_RXDMA) << BIT_SHIFT_PCIE_MAX_RXDMA)
5140 #define BIT_GET_PCIE_MAX_RXDMA(x)                                              \
5141         (((x) >> BIT_SHIFT_PCIE_MAX_RXDMA) & BIT_MASK_PCIE_MAX_RXDMA)
5142
5143 /* 2 REG_PCIE_CTRL                              (Offset 0x0300) */
5144
5145 #define BIT_SHIFT_PCIE_MAX_TXDMA 24
5146 #define BIT_MASK_PCIE_MAX_TXDMA 0x7
5147 #define BIT_PCIE_MAX_TXDMA(x)                                                  \
5148         (((x) & BIT_MASK_PCIE_MAX_TXDMA) << BIT_SHIFT_PCIE_MAX_TXDMA)
5149 #define BIT_GET_PCIE_MAX_TXDMA(x)                                              \
5150         (((x) >> BIT_SHIFT_PCIE_MAX_TXDMA) & BIT_MASK_PCIE_MAX_TXDMA)
5151
5152 /* 2 REG_PCIE_CTRL                              (Offset 0x0300) */
5153
5154 #define BIT_PCIE_RST_TRXDMA_INTF BIT(20)
5155
5156 /* 2 REG_PCIE_CTRL                              (Offset 0x0300) */
5157
5158 #define BIT_PCIE_EN_SWENT_L23 BIT(17)
5159
5160 /* 2 REG_PCIE_CTRL                              (Offset 0x0300) */
5161
5162 #define BIT_PCIE_EN_HWEXT_L1 BIT(16)
5163
5164 /* 2 REG_INT_MIG                                (Offset 0x0304) */
5165
5166 #define BIT_SHIFT_TXTTIMER_MATCH_NUM 28
5167 #define BIT_MASK_TXTTIMER_MATCH_NUM 0xf
5168 #define BIT_TXTTIMER_MATCH_NUM(x)                                              \
5169         (((x) & BIT_MASK_TXTTIMER_MATCH_NUM) << BIT_SHIFT_TXTTIMER_MATCH_NUM)
5170 #define BIT_GET_TXTTIMER_MATCH_NUM(x)                                          \
5171         (((x) >> BIT_SHIFT_TXTTIMER_MATCH_NUM) & BIT_MASK_TXTTIMER_MATCH_NUM)
5172
5173 #define BIT_SHIFT_TXPKT_NUM_MATCH 24
5174 #define BIT_MASK_TXPKT_NUM_MATCH 0xf
5175 #define BIT_TXPKT_NUM_MATCH(x)                                                 \
5176         (((x) & BIT_MASK_TXPKT_NUM_MATCH) << BIT_SHIFT_TXPKT_NUM_MATCH)
5177 #define BIT_GET_TXPKT_NUM_MATCH(x)                                             \
5178         (((x) >> BIT_SHIFT_TXPKT_NUM_MATCH) & BIT_MASK_TXPKT_NUM_MATCH)
5179
5180 #define BIT_SHIFT_RXTTIMER_MATCH_NUM 20
5181 #define BIT_MASK_RXTTIMER_MATCH_NUM 0xf
5182 #define BIT_RXTTIMER_MATCH_NUM(x)                                              \
5183         (((x) & BIT_MASK_RXTTIMER_MATCH_NUM) << BIT_SHIFT_RXTTIMER_MATCH_NUM)
5184 #define BIT_GET_RXTTIMER_MATCH_NUM(x)                                          \
5185         (((x) >> BIT_SHIFT_RXTTIMER_MATCH_NUM) & BIT_MASK_RXTTIMER_MATCH_NUM)
5186
5187 #define BIT_SHIFT_RXPKT_NUM_MATCH 16
5188 #define BIT_MASK_RXPKT_NUM_MATCH 0xf
5189 #define BIT_RXPKT_NUM_MATCH(x)                                                 \
5190         (((x) & BIT_MASK_RXPKT_NUM_MATCH) << BIT_SHIFT_RXPKT_NUM_MATCH)
5191 #define BIT_GET_RXPKT_NUM_MATCH(x)                                             \
5192         (((x) >> BIT_SHIFT_RXPKT_NUM_MATCH) & BIT_MASK_RXPKT_NUM_MATCH)
5193
5194 #define BIT_SHIFT_MIGRATE_TIMER 0
5195 #define BIT_MASK_MIGRATE_TIMER 0xffff
5196 #define BIT_MIGRATE_TIMER(x)                                                   \
5197         (((x) & BIT_MASK_MIGRATE_TIMER) << BIT_SHIFT_MIGRATE_TIMER)
5198 #define BIT_GET_MIGRATE_TIMER(x)                                               \
5199         (((x) >> BIT_SHIFT_MIGRATE_TIMER) & BIT_MASK_MIGRATE_TIMER)
5200
5201 /* 2 REG_BCNQ_TXBD_DESA                 (Offset 0x0308) */
5202
5203 #define BIT_SHIFT_BCNQ_TXBD_DESA 0
5204 #define BIT_MASK_BCNQ_TXBD_DESA 0xffffffffffffffffL
5205 #define BIT_BCNQ_TXBD_DESA(x)                                                  \
5206         (((x) & BIT_MASK_BCNQ_TXBD_DESA) << BIT_SHIFT_BCNQ_TXBD_DESA)
5207 #define BIT_GET_BCNQ_TXBD_DESA(x)                                              \
5208         (((x) >> BIT_SHIFT_BCNQ_TXBD_DESA) & BIT_MASK_BCNQ_TXBD_DESA)
5209
5210 /* 2 REG_MGQ_TXBD_DESA                  (Offset 0x0310) */
5211
5212 #define BIT_SHIFT_MGQ_TXBD_DESA 0
5213 #define BIT_MASK_MGQ_TXBD_DESA 0xffffffffffffffffL
5214 #define BIT_MGQ_TXBD_DESA(x)                                                   \
5215         (((x) & BIT_MASK_MGQ_TXBD_DESA) << BIT_SHIFT_MGQ_TXBD_DESA)
5216 #define BIT_GET_MGQ_TXBD_DESA(x)                                               \
5217         (((x) >> BIT_SHIFT_MGQ_TXBD_DESA) & BIT_MASK_MGQ_TXBD_DESA)
5218
5219 /* 2 REG_VOQ_TXBD_DESA                  (Offset 0x0318) */
5220
5221 #define BIT_SHIFT_VOQ_TXBD_DESA 0
5222 #define BIT_MASK_VOQ_TXBD_DESA 0xffffffffffffffffL
5223 #define BIT_VOQ_TXBD_DESA(x)                                                   \
5224         (((x) & BIT_MASK_VOQ_TXBD_DESA) << BIT_SHIFT_VOQ_TXBD_DESA)
5225 #define BIT_GET_VOQ_TXBD_DESA(x)                                               \
5226         (((x) >> BIT_SHIFT_VOQ_TXBD_DESA) & BIT_MASK_VOQ_TXBD_DESA)
5227
5228 /* 2 REG_VIQ_TXBD_DESA                  (Offset 0x0320) */
5229
5230 #define BIT_SHIFT_VIQ_TXBD_DESA 0
5231 #define BIT_MASK_VIQ_TXBD_DESA 0xffffffffffffffffL
5232 #define BIT_VIQ_TXBD_DESA(x)                                                   \
5233         (((x) & BIT_MASK_VIQ_TXBD_DESA) << BIT_SHIFT_VIQ_TXBD_DESA)
5234 #define BIT_GET_VIQ_TXBD_DESA(x)                                               \
5235         (((x) >> BIT_SHIFT_VIQ_TXBD_DESA) & BIT_MASK_VIQ_TXBD_DESA)
5236
5237 /* 2 REG_BEQ_TXBD_DESA                  (Offset 0x0328) */
5238
5239 #define BIT_SHIFT_BEQ_TXBD_DESA 0
5240 #define BIT_MASK_BEQ_TXBD_DESA 0xffffffffffffffffL
5241 #define BIT_BEQ_TXBD_DESA(x)                                                   \
5242         (((x) & BIT_MASK_BEQ_TXBD_DESA) << BIT_SHIFT_BEQ_TXBD_DESA)
5243 #define BIT_GET_BEQ_TXBD_DESA(x)                                               \
5244         (((x) >> BIT_SHIFT_BEQ_TXBD_DESA) & BIT_MASK_BEQ_TXBD_DESA)
5245
5246 /* 2 REG_BKQ_TXBD_DESA                  (Offset 0x0330) */
5247
5248 #define BIT_SHIFT_BKQ_TXBD_DESA 0
5249 #define BIT_MASK_BKQ_TXBD_DESA 0xffffffffffffffffL
5250 #define BIT_BKQ_TXBD_DESA(x)                                                   \
5251         (((x) & BIT_MASK_BKQ_TXBD_DESA) << BIT_SHIFT_BKQ_TXBD_DESA)
5252 #define BIT_GET_BKQ_TXBD_DESA(x)                                               \
5253         (((x) >> BIT_SHIFT_BKQ_TXBD_DESA) & BIT_MASK_BKQ_TXBD_DESA)
5254
5255 /* 2 REG_RXQ_RXBD_DESA                  (Offset 0x0338) */
5256
5257 #define BIT_SHIFT_RXQ_RXBD_DESA 0
5258 #define BIT_MASK_RXQ_RXBD_DESA 0xffffffffffffffffL
5259 #define BIT_RXQ_RXBD_DESA(x)                                                   \
5260         (((x) & BIT_MASK_RXQ_RXBD_DESA) << BIT_SHIFT_RXQ_RXBD_DESA)
5261 #define BIT_GET_RXQ_RXBD_DESA(x)                                               \
5262         (((x) >> BIT_SHIFT_RXQ_RXBD_DESA) & BIT_MASK_RXQ_RXBD_DESA)
5263
5264 /* 2 REG_HI0Q_TXBD_DESA                 (Offset 0x0340) */
5265
5266 #define BIT_SHIFT_HI0Q_TXBD_DESA 0
5267 #define BIT_MASK_HI0Q_TXBD_DESA 0xffffffffffffffffL
5268 #define BIT_HI0Q_TXBD_DESA(x)                                                  \
5269         (((x) & BIT_MASK_HI0Q_TXBD_DESA) << BIT_SHIFT_HI0Q_TXBD_DESA)
5270 #define BIT_GET_HI0Q_TXBD_DESA(x)                                              \
5271         (((x) >> BIT_SHIFT_HI0Q_TXBD_DESA) & BIT_MASK_HI0Q_TXBD_DESA)
5272
5273 /* 2 REG_HI1Q_TXBD_DESA                 (Offset 0x0348) */
5274
5275 #define BIT_SHIFT_HI1Q_TXBD_DESA 0
5276 #define BIT_MASK_HI1Q_TXBD_DESA 0xffffffffffffffffL
5277 #define BIT_HI1Q_TXBD_DESA(x)                                                  \
5278         (((x) & BIT_MASK_HI1Q_TXBD_DESA) << BIT_SHIFT_HI1Q_TXBD_DESA)
5279 #define BIT_GET_HI1Q_TXBD_DESA(x)                                              \
5280         (((x) >> BIT_SHIFT_HI1Q_TXBD_DESA) & BIT_MASK_HI1Q_TXBD_DESA)
5281
5282 /* 2 REG_HI2Q_TXBD_DESA                 (Offset 0x0350) */
5283
5284 #define BIT_SHIFT_HI2Q_TXBD_DESA 0
5285 #define BIT_MASK_HI2Q_TXBD_DESA 0xffffffffffffffffL
5286 #define BIT_HI2Q_TXBD_DESA(x)                                                  \
5287         (((x) & BIT_MASK_HI2Q_TXBD_DESA) << BIT_SHIFT_HI2Q_TXBD_DESA)
5288 #define BIT_GET_HI2Q_TXBD_DESA(x)                                              \
5289         (((x) >> BIT_SHIFT_HI2Q_TXBD_DESA) & BIT_MASK_HI2Q_TXBD_DESA)
5290
5291 /* 2 REG_HI3Q_TXBD_DESA                 (Offset 0x0358) */
5292
5293 #define BIT_SHIFT_HI3Q_TXBD_DESA 0
5294 #define BIT_MASK_HI3Q_TXBD_DESA 0xffffffffffffffffL
5295 #define BIT_HI3Q_TXBD_DESA(x)                                                  \
5296         (((x) & BIT_MASK_HI3Q_TXBD_DESA) << BIT_SHIFT_HI3Q_TXBD_DESA)
5297 #define BIT_GET_HI3Q_TXBD_DESA(x)                                              \
5298         (((x) >> BIT_SHIFT_HI3Q_TXBD_DESA) & BIT_MASK_HI3Q_TXBD_DESA)
5299
5300 /* 2 REG_HI4Q_TXBD_DESA                 (Offset 0x0360) */
5301
5302 #define BIT_SHIFT_HI4Q_TXBD_DESA 0
5303 #define BIT_MASK_HI4Q_TXBD_DESA 0xffffffffffffffffL
5304 #define BIT_HI4Q_TXBD_DESA(x)                                                  \
5305         (((x) & BIT_MASK_HI4Q_TXBD_DESA) << BIT_SHIFT_HI4Q_TXBD_DESA)
5306 #define BIT_GET_HI4Q_TXBD_DESA(x)                                              \
5307         (((x) >> BIT_SHIFT_HI4Q_TXBD_DESA) & BIT_MASK_HI4Q_TXBD_DESA)
5308
5309 /* 2 REG_HI5Q_TXBD_DESA                 (Offset 0x0368) */
5310
5311 #define BIT_SHIFT_HI5Q_TXBD_DESA 0
5312 #define BIT_MASK_HI5Q_TXBD_DESA 0xffffffffffffffffL
5313 #define BIT_HI5Q_TXBD_DESA(x)                                                  \
5314         (((x) & BIT_MASK_HI5Q_TXBD_DESA) << BIT_SHIFT_HI5Q_TXBD_DESA)
5315 #define BIT_GET_HI5Q_TXBD_DESA(x)                                              \
5316         (((x) >> BIT_SHIFT_HI5Q_TXBD_DESA) & BIT_MASK_HI5Q_TXBD_DESA)
5317
5318 /* 2 REG_HI6Q_TXBD_DESA                 (Offset 0x0370) */
5319
5320 #define BIT_SHIFT_HI6Q_TXBD_DESA 0
5321 #define BIT_MASK_HI6Q_TXBD_DESA 0xffffffffffffffffL
5322 #define BIT_HI6Q_TXBD_DESA(x)                                                  \
5323         (((x) & BIT_MASK_HI6Q_TXBD_DESA) << BIT_SHIFT_HI6Q_TXBD_DESA)
5324 #define BIT_GET_HI6Q_TXBD_DESA(x)                                              \
5325         (((x) >> BIT_SHIFT_HI6Q_TXBD_DESA) & BIT_MASK_HI6Q_TXBD_DESA)
5326
5327 /* 2 REG_HI7Q_TXBD_DESA                 (Offset 0x0378) */
5328
5329 #define BIT_SHIFT_HI7Q_TXBD_DESA 0
5330 #define BIT_MASK_HI7Q_TXBD_DESA 0xffffffffffffffffL
5331 #define BIT_HI7Q_TXBD_DESA(x)                                                  \
5332         (((x) & BIT_MASK_HI7Q_TXBD_DESA) << BIT_SHIFT_HI7Q_TXBD_DESA)
5333 #define BIT_GET_HI7Q_TXBD_DESA(x)                                              \
5334         (((x) >> BIT_SHIFT_HI7Q_TXBD_DESA) & BIT_MASK_HI7Q_TXBD_DESA)
5335
5336 /* 2 REG_MGQ_TXBD_NUM                   (Offset 0x0380) */
5337
5338 #define BIT_PCIE_MGQ_FLAG BIT(14)
5339
5340 /* 2 REG_MGQ_TXBD_NUM                   (Offset 0x0380) */
5341
5342 #define BIT_SHIFT_MGQ_DESC_MODE 12
5343 #define BIT_MASK_MGQ_DESC_MODE 0x3
5344 #define BIT_MGQ_DESC_MODE(x)                                                   \
5345         (((x) & BIT_MASK_MGQ_DESC_MODE) << BIT_SHIFT_MGQ_DESC_MODE)
5346 #define BIT_GET_MGQ_DESC_MODE(x)                                               \
5347         (((x) >> BIT_SHIFT_MGQ_DESC_MODE) & BIT_MASK_MGQ_DESC_MODE)
5348
5349 #define BIT_SHIFT_MGQ_DESC_NUM 0
5350 #define BIT_MASK_MGQ_DESC_NUM 0xfff
5351 #define BIT_MGQ_DESC_NUM(x)                                                    \
5352         (((x) & BIT_MASK_MGQ_DESC_NUM) << BIT_SHIFT_MGQ_DESC_NUM)
5353 #define BIT_GET_MGQ_DESC_NUM(x)                                                \
5354         (((x) >> BIT_SHIFT_MGQ_DESC_NUM) & BIT_MASK_MGQ_DESC_NUM)
5355
5356 /* 2 REG_RX_RXBD_NUM                            (Offset 0x0382) */
5357
5358 #define BIT_SYS_32_64 BIT(15)
5359
5360 #define BIT_SHIFT_BCNQ_DESC_MODE 13
5361 #define BIT_MASK_BCNQ_DESC_MODE 0x3
5362 #define BIT_BCNQ_DESC_MODE(x)                                                  \
5363         (((x) & BIT_MASK_BCNQ_DESC_MODE) << BIT_SHIFT_BCNQ_DESC_MODE)
5364 #define BIT_GET_BCNQ_DESC_MODE(x)                                              \
5365         (((x) >> BIT_SHIFT_BCNQ_DESC_MODE) & BIT_MASK_BCNQ_DESC_MODE)
5366
5367 /* 2 REG_RX_RXBD_NUM                            (Offset 0x0382) */
5368
5369 #define BIT_PCIE_BCNQ_FLAG BIT(12)
5370
5371 /* 2 REG_RX_RXBD_NUM                            (Offset 0x0382) */
5372
5373 #define BIT_SHIFT_RXQ_DESC_NUM 0
5374 #define BIT_MASK_RXQ_DESC_NUM 0xfff
5375 #define BIT_RXQ_DESC_NUM(x)                                                    \
5376         (((x) & BIT_MASK_RXQ_DESC_NUM) << BIT_SHIFT_RXQ_DESC_NUM)
5377 #define BIT_GET_RXQ_DESC_NUM(x)                                                \
5378         (((x) >> BIT_SHIFT_RXQ_DESC_NUM) & BIT_MASK_RXQ_DESC_NUM)
5379
5380 /* 2 REG_VOQ_TXBD_NUM                   (Offset 0x0384) */
5381
5382 #define BIT_PCIE_VOQ_FLAG BIT(14)
5383
5384 /* 2 REG_VOQ_TXBD_NUM                   (Offset 0x0384) */
5385
5386 #define BIT_SHIFT_VOQ_DESC_MODE 12
5387 #define BIT_MASK_VOQ_DESC_MODE 0x3
5388 #define BIT_VOQ_DESC_MODE(x)                                                   \
5389         (((x) & BIT_MASK_VOQ_DESC_MODE) << BIT_SHIFT_VOQ_DESC_MODE)
5390 #define BIT_GET_VOQ_DESC_MODE(x)                                               \
5391         (((x) >> BIT_SHIFT_VOQ_DESC_MODE) & BIT_MASK_VOQ_DESC_MODE)
5392
5393 #define BIT_SHIFT_VOQ_DESC_NUM 0
5394 #define BIT_MASK_VOQ_DESC_NUM 0xfff
5395 #define BIT_VOQ_DESC_NUM(x)                                                    \
5396         (((x) & BIT_MASK_VOQ_DESC_NUM) << BIT_SHIFT_VOQ_DESC_NUM)
5397 #define BIT_GET_VOQ_DESC_NUM(x)                                                \
5398         (((x) >> BIT_SHIFT_VOQ_DESC_NUM) & BIT_MASK_VOQ_DESC_NUM)
5399
5400 /* 2 REG_VIQ_TXBD_NUM                   (Offset 0x0386) */
5401
5402 #define BIT_PCIE_VIQ_FLAG BIT(14)
5403
5404 /* 2 REG_VIQ_TXBD_NUM                   (Offset 0x0386) */
5405
5406 #define BIT_SHIFT_VIQ_DESC_MODE 12
5407 #define BIT_MASK_VIQ_DESC_MODE 0x3
5408 #define BIT_VIQ_DESC_MODE(x)                                                   \
5409         (((x) & BIT_MASK_VIQ_DESC_MODE) << BIT_SHIFT_VIQ_DESC_MODE)
5410 #define BIT_GET_VIQ_DESC_MODE(x)                                               \
5411         (((x) >> BIT_SHIFT_VIQ_DESC_MODE) & BIT_MASK_VIQ_DESC_MODE)
5412
5413 #define BIT_SHIFT_VIQ_DESC_NUM 0
5414 #define BIT_MASK_VIQ_DESC_NUM 0xfff
5415 #define BIT_VIQ_DESC_NUM(x)                                                    \
5416         (((x) & BIT_MASK_VIQ_DESC_NUM) << BIT_SHIFT_VIQ_DESC_NUM)
5417 #define BIT_GET_VIQ_DESC_NUM(x)                                                \
5418         (((x) >> BIT_SHIFT_VIQ_DESC_NUM) & BIT_MASK_VIQ_DESC_NUM)
5419
5420 /* 2 REG_BEQ_TXBD_NUM                   (Offset 0x0388) */
5421
5422 #define BIT_PCIE_BEQ_FLAG BIT(14)
5423
5424 /* 2 REG_BEQ_TXBD_NUM                   (Offset 0x0388) */
5425
5426 #define BIT_SHIFT_BEQ_DESC_MODE 12
5427 #define BIT_MASK_BEQ_DESC_MODE 0x3
5428 #define BIT_BEQ_DESC_MODE(x)                                                   \
5429         (((x) & BIT_MASK_BEQ_DESC_MODE) << BIT_SHIFT_BEQ_DESC_MODE)
5430 #define BIT_GET_BEQ_DESC_MODE(x)                                               \
5431         (((x) >> BIT_SHIFT_BEQ_DESC_MODE) & BIT_MASK_BEQ_DESC_MODE)
5432
5433 #define BIT_SHIFT_BEQ_DESC_NUM 0
5434 #define BIT_MASK_BEQ_DESC_NUM 0xfff
5435 #define BIT_BEQ_DESC_NUM(x)                                                    \
5436         (((x) & BIT_MASK_BEQ_DESC_NUM) << BIT_SHIFT_BEQ_DESC_NUM)
5437 #define BIT_GET_BEQ_DESC_NUM(x)                                                \
5438         (((x) >> BIT_SHIFT_BEQ_DESC_NUM) & BIT_MASK_BEQ_DESC_NUM)
5439
5440 /* 2 REG_BKQ_TXBD_NUM                   (Offset 0x038A) */
5441
5442 #define BIT_PCIE_BKQ_FLAG BIT(14)
5443
5444 /* 2 REG_BKQ_TXBD_NUM                   (Offset 0x038A) */
5445
5446 #define BIT_SHIFT_BKQ_DESC_MODE 12
5447 #define BIT_MASK_BKQ_DESC_MODE 0x3
5448 #define BIT_BKQ_DESC_MODE(x)                                                   \
5449         (((x) & BIT_MASK_BKQ_DESC_MODE) << BIT_SHIFT_BKQ_DESC_MODE)
5450 #define BIT_GET_BKQ_DESC_MODE(x)                                               \
5451         (((x) >> BIT_SHIFT_BKQ_DESC_MODE) & BIT_MASK_BKQ_DESC_MODE)
5452
5453 #define BIT_SHIFT_BKQ_DESC_NUM 0
5454 #define BIT_MASK_BKQ_DESC_NUM 0xfff
5455 #define BIT_BKQ_DESC_NUM(x)                                                    \
5456         (((x) & BIT_MASK_BKQ_DESC_NUM) << BIT_SHIFT_BKQ_DESC_NUM)
5457 #define BIT_GET_BKQ_DESC_NUM(x)                                                \
5458         (((x) >> BIT_SHIFT_BKQ_DESC_NUM) & BIT_MASK_BKQ_DESC_NUM)
5459
5460 /* 2 REG_HI0Q_TXBD_NUM                  (Offset 0x038C) */
5461
5462 #define BIT_HI0Q_FLAG BIT(14)
5463
5464 #define BIT_SHIFT_HI0Q_DESC_MODE 12
5465 #define BIT_MASK_HI0Q_DESC_MODE 0x3
5466 #define BIT_HI0Q_DESC_MODE(x)                                                  \
5467         (((x) & BIT_MASK_HI0Q_DESC_MODE) << BIT_SHIFT_HI0Q_DESC_MODE)
5468 #define BIT_GET_HI0Q_DESC_MODE(x)                                              \
5469         (((x) >> BIT_SHIFT_HI0Q_DESC_MODE) & BIT_MASK_HI0Q_DESC_MODE)
5470
5471 #define BIT_SHIFT_HI0Q_DESC_NUM 0
5472 #define BIT_MASK_HI0Q_DESC_NUM 0xfff
5473 #define BIT_HI0Q_DESC_NUM(x)                                                   \
5474         (((x) & BIT_MASK_HI0Q_DESC_NUM) << BIT_SHIFT_HI0Q_DESC_NUM)
5475 #define BIT_GET_HI0Q_DESC_NUM(x)                                               \
5476         (((x) >> BIT_SHIFT_HI0Q_DESC_NUM) & BIT_MASK_HI0Q_DESC_NUM)
5477
5478 /* 2 REG_HI1Q_TXBD_NUM                  (Offset 0x038E) */
5479
5480 #define BIT_HI1Q_FLAG BIT(14)
5481
5482 #define BIT_SHIFT_HI1Q_DESC_MODE 12
5483 #define BIT_MASK_HI1Q_DESC_MODE 0x3
5484 #define BIT_HI1Q_DESC_MODE(x)                                                  \
5485         (((x) & BIT_MASK_HI1Q_DESC_MODE) << BIT_SHIFT_HI1Q_DESC_MODE)
5486 #define BIT_GET_HI1Q_DESC_MODE(x)                                              \
5487         (((x) >> BIT_SHIFT_HI1Q_DESC_MODE) & BIT_MASK_HI1Q_DESC_MODE)
5488
5489 #define BIT_SHIFT_HI1Q_DESC_NUM 0
5490 #define BIT_MASK_HI1Q_DESC_NUM 0xfff
5491 #define BIT_HI1Q_DESC_NUM(x)                                                   \
5492         (((x) & BIT_MASK_HI1Q_DESC_NUM) << BIT_SHIFT_HI1Q_DESC_NUM)
5493 #define BIT_GET_HI1Q_DESC_NUM(x)                                               \
5494         (((x) >> BIT_SHIFT_HI1Q_DESC_NUM) & BIT_MASK_HI1Q_DESC_NUM)
5495
5496 /* 2 REG_HI2Q_TXBD_NUM                  (Offset 0x0390) */
5497
5498 #define BIT_HI2Q_FLAG BIT(14)
5499
5500 #define BIT_SHIFT_HI2Q_DESC_MODE 12
5501 #define BIT_MASK_HI2Q_DESC_MODE 0x3
5502 #define BIT_HI2Q_DESC_MODE(x)                                                  \
5503         (((x) & BIT_MASK_HI2Q_DESC_MODE) << BIT_SHIFT_HI2Q_DESC_MODE)
5504 #define BIT_GET_HI2Q_DESC_MODE(x)                                              \
5505         (((x) >> BIT_SHIFT_HI2Q_DESC_MODE) & BIT_MASK_HI2Q_DESC_MODE)
5506
5507 #define BIT_SHIFT_HI2Q_DESC_NUM 0
5508 #define BIT_MASK_HI2Q_DESC_NUM 0xfff
5509 #define BIT_HI2Q_DESC_NUM(x)                                                   \
5510         (((x) & BIT_MASK_HI2Q_DESC_NUM) << BIT_SHIFT_HI2Q_DESC_NUM)
5511 #define BIT_GET_HI2Q_DESC_NUM(x)                                               \
5512         (((x) >> BIT_SHIFT_HI2Q_DESC_NUM) & BIT_MASK_HI2Q_DESC_NUM)
5513
5514 /* 2 REG_HI3Q_TXBD_NUM                  (Offset 0x0392) */
5515
5516 #define BIT_HI3Q_FLAG BIT(14)
5517
5518 #define BIT_SHIFT_HI3Q_DESC_MODE 12
5519 #define BIT_MASK_HI3Q_DESC_MODE 0x3
5520 #define BIT_HI3Q_DESC_MODE(x)                                                  \
5521         (((x) & BIT_MASK_HI3Q_DESC_MODE) << BIT_SHIFT_HI3Q_DESC_MODE)
5522 #define BIT_GET_HI3Q_DESC_MODE(x)                                              \
5523         (((x) >> BIT_SHIFT_HI3Q_DESC_MODE) & BIT_MASK_HI3Q_DESC_MODE)
5524
5525 #define BIT_SHIFT_HI3Q_DESC_NUM 0
5526 #define BIT_MASK_HI3Q_DESC_NUM 0xfff
5527 #define BIT_HI3Q_DESC_NUM(x)                                                   \
5528         (((x) & BIT_MASK_HI3Q_DESC_NUM) << BIT_SHIFT_HI3Q_DESC_NUM)
5529 #define BIT_GET_HI3Q_DESC_NUM(x)                                               \
5530         (((x) >> BIT_SHIFT_HI3Q_DESC_NUM) & BIT_MASK_HI3Q_DESC_NUM)
5531
5532 /* 2 REG_HI4Q_TXBD_NUM                  (Offset 0x0394) */
5533
5534 #define BIT_HI4Q_FLAG BIT(14)
5535
5536 #define BIT_SHIFT_HI4Q_DESC_MODE 12
5537 #define BIT_MASK_HI4Q_DESC_MODE 0x3
5538 #define BIT_HI4Q_DESC_MODE(x)                                                  \
5539         (((x) & BIT_MASK_HI4Q_DESC_MODE) << BIT_SHIFT_HI4Q_DESC_MODE)
5540 #define BIT_GET_HI4Q_DESC_MODE(x)                                              \
5541         (((x) >> BIT_SHIFT_HI4Q_DESC_MODE) & BIT_MASK_HI4Q_DESC_MODE)
5542
5543 #define BIT_SHIFT_HI4Q_DESC_NUM 0
5544 #define BIT_MASK_HI4Q_DESC_NUM 0xfff
5545 #define BIT_HI4Q_DESC_NUM(x)                                                   \
5546         (((x) & BIT_MASK_HI4Q_DESC_NUM) << BIT_SHIFT_HI4Q_DESC_NUM)
5547 #define BIT_GET_HI4Q_DESC_NUM(x)                                               \
5548         (((x) >> BIT_SHIFT_HI4Q_DESC_NUM) & BIT_MASK_HI4Q_DESC_NUM)
5549
5550 /* 2 REG_HI5Q_TXBD_NUM                  (Offset 0x0396) */
5551
5552 #define BIT_HI5Q_FLAG BIT(14)
5553
5554 #define BIT_SHIFT_HI5Q_DESC_MODE 12
5555 #define BIT_MASK_HI5Q_DESC_MODE 0x3
5556 #define BIT_HI5Q_DESC_MODE(x)                                                  \
5557         (((x) & BIT_MASK_HI5Q_DESC_MODE) << BIT_SHIFT_HI5Q_DESC_MODE)
5558 #define BIT_GET_HI5Q_DESC_MODE(x)                                              \
5559         (((x) >> BIT_SHIFT_HI5Q_DESC_MODE) & BIT_MASK_HI5Q_DESC_MODE)
5560
5561 #define BIT_SHIFT_HI5Q_DESC_NUM 0
5562 #define BIT_MASK_HI5Q_DESC_NUM 0xfff
5563 #define BIT_HI5Q_DESC_NUM(x)                                                   \
5564         (((x) & BIT_MASK_HI5Q_DESC_NUM) << BIT_SHIFT_HI5Q_DESC_NUM)
5565 #define BIT_GET_HI5Q_DESC_NUM(x)                                               \
5566         (((x) >> BIT_SHIFT_HI5Q_DESC_NUM) & BIT_MASK_HI5Q_DESC_NUM)
5567
5568 /* 2 REG_HI6Q_TXBD_NUM                  (Offset 0x0398) */
5569
5570 #define BIT_HI6Q_FLAG BIT(14)
5571
5572 #define BIT_SHIFT_HI6Q_DESC_MODE 12
5573 #define BIT_MASK_HI6Q_DESC_MODE 0x3
5574 #define BIT_HI6Q_DESC_MODE(x)                                                  \
5575         (((x) & BIT_MASK_HI6Q_DESC_MODE) << BIT_SHIFT_HI6Q_DESC_MODE)
5576 #define BIT_GET_HI6Q_DESC_MODE(x)                                              \
5577         (((x) >> BIT_SHIFT_HI6Q_DESC_MODE) & BIT_MASK_HI6Q_DESC_MODE)
5578
5579 #define BIT_SHIFT_HI6Q_DESC_NUM 0
5580 #define BIT_MASK_HI6Q_DESC_NUM 0xfff
5581 #define BIT_HI6Q_DESC_NUM(x)                                                   \
5582         (((x) & BIT_MASK_HI6Q_DESC_NUM) << BIT_SHIFT_HI6Q_DESC_NUM)
5583 #define BIT_GET_HI6Q_DESC_NUM(x)                                               \
5584         (((x) >> BIT_SHIFT_HI6Q_DESC_NUM) & BIT_MASK_HI6Q_DESC_NUM)
5585
5586 /* 2 REG_HI7Q_TXBD_NUM                  (Offset 0x039A) */
5587
5588 #define BIT_HI7Q_FLAG BIT(14)
5589
5590 #define BIT_SHIFT_HI7Q_DESC_MODE 12
5591 #define BIT_MASK_HI7Q_DESC_MODE 0x3
5592 #define BIT_HI7Q_DESC_MODE(x)                                                  \
5593         (((x) & BIT_MASK_HI7Q_DESC_MODE) << BIT_SHIFT_HI7Q_DESC_MODE)
5594 #define BIT_GET_HI7Q_DESC_MODE(x)                                              \
5595         (((x) >> BIT_SHIFT_HI7Q_DESC_MODE) & BIT_MASK_HI7Q_DESC_MODE)
5596
5597 #define BIT_SHIFT_HI7Q_DESC_NUM 0
5598 #define BIT_MASK_HI7Q_DESC_NUM 0xfff
5599 #define BIT_HI7Q_DESC_NUM(x)                                                   \
5600         (((x) & BIT_MASK_HI7Q_DESC_NUM) << BIT_SHIFT_HI7Q_DESC_NUM)
5601 #define BIT_GET_HI7Q_DESC_NUM(x)                                               \
5602         (((x) >> BIT_SHIFT_HI7Q_DESC_NUM) & BIT_MASK_HI7Q_DESC_NUM)
5603
5604 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5605
5606 #define BIT_CLR_HI7Q_HW_IDX BIT(29)
5607 #define BIT_CLR_HI6Q_HW_IDX BIT(28)
5608 #define BIT_CLR_HI5Q_HW_IDX BIT(27)
5609 #define BIT_CLR_HI4Q_HW_IDX BIT(26)
5610 #define BIT_CLR_HI3Q_HW_IDX BIT(25)
5611 #define BIT_CLR_HI2Q_HW_IDX BIT(24)
5612 #define BIT_CLR_HI1Q_HW_IDX BIT(23)
5613
5614 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5615
5616 #define BIT_CLR_HI0Q_HW_IDX BIT(22)
5617
5618 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5619
5620 #define BIT_CLR_BKQ_HW_IDX BIT(21)
5621
5622 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5623
5624 #define BIT_CLR_BEQ_HW_IDX BIT(20)
5625
5626 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5627
5628 #define BIT_CLR_VIQ_HW_IDX BIT(19)
5629
5630 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5631
5632 #define BIT_CLR_VOQ_HW_IDX BIT(18)
5633
5634 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5635
5636 #define BIT_CLR_MGQ_HW_IDX BIT(17)
5637
5638 /* 2 REG_TSFTIMER_HCI                   (Offset 0x039C) */
5639
5640 #define BIT_SHIFT_TSFT2_HCI 16
5641 #define BIT_MASK_TSFT2_HCI 0xffff
5642 #define BIT_TSFT2_HCI(x) (((x) & BIT_MASK_TSFT2_HCI) << BIT_SHIFT_TSFT2_HCI)
5643 #define BIT_GET_TSFT2_HCI(x) (((x) >> BIT_SHIFT_TSFT2_HCI) & BIT_MASK_TSFT2_HCI)
5644
5645 #define BIT_CLR_RXQ_HW_IDX BIT(16)
5646
5647 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5648
5649 #define BIT_CLR_HI7Q_HOST_IDX BIT(13)
5650
5651 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5652
5653 #define BIT_CLR_HI6Q_HOST_IDX BIT(12)
5654
5655 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5656
5657 #define BIT_CLR_HI5Q_HOST_IDX BIT(11)
5658
5659 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5660
5661 #define BIT_CLR_HI4Q_HOST_IDX BIT(10)
5662
5663 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5664
5665 #define BIT_CLR_HI3Q_HOST_IDX BIT(9)
5666
5667 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5668
5669 #define BIT_CLR_HI2Q_HOST_IDX BIT(8)
5670
5671 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5672
5673 #define BIT_CLR_HI1Q_HOST_IDX BIT(7)
5674 #define BIT_CLR_HI0Q_HOST_IDX BIT(6)
5675
5676 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5677
5678 #define BIT_CLR_BKQ_HOST_IDX BIT(5)
5679
5680 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5681
5682 #define BIT_CLR_BEQ_HOST_IDX BIT(4)
5683
5684 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5685
5686 #define BIT_CLR_VIQ_HOST_IDX BIT(3)
5687
5688 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5689
5690 #define BIT_CLR_VOQ_HOST_IDX BIT(2)
5691
5692 /* 2 REG_BD_RWPTR_CLR                   (Offset 0x039C) */
5693
5694 #define BIT_CLR_MGQ_HOST_IDX BIT(1)
5695
5696 /* 2 REG_TSFTIMER_HCI                   (Offset 0x039C) */
5697
5698 #define BIT_SHIFT_TSFT1_HCI 0
5699 #define BIT_MASK_TSFT1_HCI 0xffff
5700 #define BIT_TSFT1_HCI(x) (((x) & BIT_MASK_TSFT1_HCI) << BIT_SHIFT_TSFT1_HCI)
5701 #define BIT_GET_TSFT1_HCI(x) (((x) >> BIT_SHIFT_TSFT1_HCI) & BIT_MASK_TSFT1_HCI)
5702
5703 #define BIT_CLR_RXQ_HOST_IDX BIT(0)
5704
5705 /* 2 REG_VOQ_TXBD_IDX                   (Offset 0x03A0) */
5706
5707 #define BIT_SHIFT_VOQ_HW_IDX 16
5708 #define BIT_MASK_VOQ_HW_IDX 0xfff
5709 #define BIT_VOQ_HW_IDX(x) (((x) & BIT_MASK_VOQ_HW_IDX) << BIT_SHIFT_VOQ_HW_IDX)
5710 #define BIT_GET_VOQ_HW_IDX(x)                                                  \
5711         (((x) >> BIT_SHIFT_VOQ_HW_IDX) & BIT_MASK_VOQ_HW_IDX)
5712
5713 #define BIT_SHIFT_VOQ_HOST_IDX 0
5714 #define BIT_MASK_VOQ_HOST_IDX 0xfff
5715 #define BIT_VOQ_HOST_IDX(x)                                                    \
5716         (((x) & BIT_MASK_VOQ_HOST_IDX) << BIT_SHIFT_VOQ_HOST_IDX)
5717 #define BIT_GET_VOQ_HOST_IDX(x)                                                \
5718         (((x) >> BIT_SHIFT_VOQ_HOST_IDX) & BIT_MASK_VOQ_HOST_IDX)
5719
5720 /* 2 REG_VIQ_TXBD_IDX                   (Offset 0x03A4) */
5721
5722 #define BIT_SHIFT_VIQ_HW_IDX 16
5723 #define BIT_MASK_VIQ_HW_IDX 0xfff
5724 #define BIT_VIQ_HW_IDX(x) (((x) & BIT_MASK_VIQ_HW_IDX) << BIT_SHIFT_VIQ_HW_IDX)
5725 #define BIT_GET_VIQ_HW_IDX(x)                                                  \
5726         (((x) >> BIT_SHIFT_VIQ_HW_IDX) & BIT_MASK_VIQ_HW_IDX)
5727
5728 #define BIT_SHIFT_VIQ_HOST_IDX 0
5729 #define BIT_MASK_VIQ_HOST_IDX 0xfff
5730 #define BIT_VIQ_HOST_IDX(x)                                                    \
5731         (((x) & BIT_MASK_VIQ_HOST_IDX) << BIT_SHIFT_VIQ_HOST_IDX)
5732 #define BIT_GET_VIQ_HOST_IDX(x)                                                \
5733         (((x) >> BIT_SHIFT_VIQ_HOST_IDX) & BIT_MASK_VIQ_HOST_IDX)
5734
5735 /* 2 REG_BEQ_TXBD_IDX                   (Offset 0x03A8) */
5736
5737 #define BIT_SHIFT_BEQ_HW_IDX 16
5738 #define BIT_MASK_BEQ_HW_IDX 0xfff
5739 #define BIT_BEQ_HW_IDX(x) (((x) & BIT_MASK_BEQ_HW_IDX) << BIT_SHIFT_BEQ_HW_IDX)
5740 #define BIT_GET_BEQ_HW_IDX(x)                                                  \
5741         (((x) >> BIT_SHIFT_BEQ_HW_IDX) & BIT_MASK_BEQ_HW_IDX)
5742
5743 #define BIT_SHIFT_BEQ_HOST_IDX 0
5744 #define BIT_MASK_BEQ_HOST_IDX 0xfff
5745 #define BIT_BEQ_HOST_IDX(x)                                                    \
5746         (((x) & BIT_MASK_BEQ_HOST_IDX) << BIT_SHIFT_BEQ_HOST_IDX)
5747 #define BIT_GET_BEQ_HOST_IDX(x)                                                \
5748         (((x) >> BIT_SHIFT_BEQ_HOST_IDX) & BIT_MASK_BEQ_HOST_IDX)
5749
5750 /* 2 REG_BKQ_TXBD_IDX                   (Offset 0x03AC) */
5751
5752 #define BIT_SHIFT_BKQ_HW_IDX 16
5753 #define BIT_MASK_BKQ_HW_IDX 0xfff
5754 #define BIT_BKQ_HW_IDX(x) (((x) & BIT_MASK_BKQ_HW_IDX) << BIT_SHIFT_BKQ_HW_IDX)
5755 #define BIT_GET_BKQ_HW_IDX(x)                                                  \
5756         (((x) >> BIT_SHIFT_BKQ_HW_IDX) & BIT_MASK_BKQ_HW_IDX)
5757
5758 #define BIT_SHIFT_BKQ_HOST_IDX 0
5759 #define BIT_MASK_BKQ_HOST_IDX 0xfff
5760 #define BIT_BKQ_HOST_IDX(x)                                                    \
5761         (((x) & BIT_MASK_BKQ_HOST_IDX) << BIT_SHIFT_BKQ_HOST_IDX)
5762 #define BIT_GET_BKQ_HOST_IDX(x)                                                \
5763         (((x) >> BIT_SHIFT_BKQ_HOST_IDX) & BIT_MASK_BKQ_HOST_IDX)
5764
5765 /* 2 REG_MGQ_TXBD_IDX                   (Offset 0x03B0) */
5766
5767 #define BIT_SHIFT_MGQ_HW_IDX 16
5768 #define BIT_MASK_MGQ_HW_IDX 0xfff
5769 #define BIT_MGQ_HW_IDX(x) (((x) & BIT_MASK_MGQ_HW_IDX) << BIT_SHIFT_MGQ_HW_IDX)
5770 #define BIT_GET_MGQ_HW_IDX(x)                                                  \
5771         (((x) >> BIT_SHIFT_MGQ_HW_IDX) & BIT_MASK_MGQ_HW_IDX)
5772
5773 #define BIT_SHIFT_MGQ_HOST_IDX 0
5774 #define BIT_MASK_MGQ_HOST_IDX 0xfff
5775 #define BIT_MGQ_HOST_IDX(x)                                                    \
5776         (((x) & BIT_MASK_MGQ_HOST_IDX) << BIT_SHIFT_MGQ_HOST_IDX)
5777 #define BIT_GET_MGQ_HOST_IDX(x)                                                \
5778         (((x) >> BIT_SHIFT_MGQ_HOST_IDX) & BIT_MASK_MGQ_HOST_IDX)
5779
5780 /* 2 REG_RXQ_RXBD_IDX                   (Offset 0x03B4) */
5781
5782 #define BIT_SHIFT_RXQ_HW_IDX 16
5783 #define BIT_MASK_RXQ_HW_IDX 0xfff
5784 #define BIT_RXQ_HW_IDX(x) (((x) & BIT_MASK_RXQ_HW_IDX) << BIT_SHIFT_RXQ_HW_IDX)
5785 #define BIT_GET_RXQ_HW_IDX(x)                                                  \
5786         (((x) >> BIT_SHIFT_RXQ_HW_IDX) & BIT_MASK_RXQ_HW_IDX)
5787
5788 #define BIT_SHIFT_RXQ_HOST_IDX 0
5789 #define BIT_MASK_RXQ_HOST_IDX 0xfff
5790 #define BIT_RXQ_HOST_IDX(x)                                                    \
5791         (((x) & BIT_MASK_RXQ_HOST_IDX) << BIT_SHIFT_RXQ_HOST_IDX)
5792 #define BIT_GET_RXQ_HOST_IDX(x)                                                \
5793         (((x) >> BIT_SHIFT_RXQ_HOST_IDX) & BIT_MASK_RXQ_HOST_IDX)
5794
5795 /* 2 REG_HI0Q_TXBD_IDX                  (Offset 0x03B8) */
5796
5797 #define BIT_SHIFT_HI0Q_HW_IDX 16
5798 #define BIT_MASK_HI0Q_HW_IDX 0xfff
5799 #define BIT_HI0Q_HW_IDX(x)                                                     \
5800         (((x) & BIT_MASK_HI0Q_HW_IDX) << BIT_SHIFT_HI0Q_HW_IDX)
5801 #define BIT_GET_HI0Q_HW_IDX(x)                                                 \
5802         (((x) >> BIT_SHIFT_HI0Q_HW_IDX) & BIT_MASK_HI0Q_HW_IDX)
5803
5804 #define BIT_SHIFT_HI0Q_HOST_IDX 0
5805 #define BIT_MASK_HI0Q_HOST_IDX 0xfff
5806 #define BIT_HI0Q_HOST_IDX(x)                                                   \
5807         (((x) & BIT_MASK_HI0Q_HOST_IDX) << BIT_SHIFT_HI0Q_HOST_IDX)
5808 #define BIT_GET_HI0Q_HOST_IDX(x)                                               \
5809         (((x) >> BIT_SHIFT_HI0Q_HOST_IDX) & BIT_MASK_HI0Q_HOST_IDX)
5810
5811 /* 2 REG_HI1Q_TXBD_IDX                  (Offset 0x03BC) */
5812
5813 #define BIT_SHIFT_HI1Q_HW_IDX 16
5814 #define BIT_MASK_HI1Q_HW_IDX 0xfff
5815 #define BIT_HI1Q_HW_IDX(x)                                                     \
5816         (((x) & BIT_MASK_HI1Q_HW_IDX) << BIT_SHIFT_HI1Q_HW_IDX)
5817 #define BIT_GET_HI1Q_HW_IDX(x)                                                 \
5818         (((x) >> BIT_SHIFT_HI1Q_HW_IDX) & BIT_MASK_HI1Q_HW_IDX)
5819
5820 #define BIT_SHIFT_HI1Q_HOST_IDX 0
5821 #define BIT_MASK_HI1Q_HOST_IDX 0xfff
5822 #define BIT_HI1Q_HOST_IDX(x)                                                   \
5823         (((x) & BIT_MASK_HI1Q_HOST_IDX) << BIT_SHIFT_HI1Q_HOST_IDX)
5824 #define BIT_GET_HI1Q_HOST_IDX(x)                                               \
5825         (((x) >> BIT_SHIFT_HI1Q_HOST_IDX) & BIT_MASK_HI1Q_HOST_IDX)
5826
5827 /* 2 REG_HI2Q_TXBD_IDX                  (Offset 0x03C0) */
5828
5829 #define BIT_SHIFT_HI2Q_HW_IDX 16
5830 #define BIT_MASK_HI2Q_HW_IDX 0xfff
5831 #define BIT_HI2Q_HW_IDX(x)                                                     \
5832         (((x) & BIT_MASK_HI2Q_HW_IDX) << BIT_SHIFT_HI2Q_HW_IDX)
5833 #define BIT_GET_HI2Q_HW_IDX(x)                                                 \
5834         (((x) >> BIT_SHIFT_HI2Q_HW_IDX) & BIT_MASK_HI2Q_HW_IDX)
5835
5836 #define BIT_SHIFT_HI2Q_HOST_IDX 0
5837 #define BIT_MASK_HI2Q_HOST_IDX 0xfff
5838 #define BIT_HI2Q_HOST_IDX(x)                                                   \
5839         (((x) & BIT_MASK_HI2Q_HOST_IDX) << BIT_SHIFT_HI2Q_HOST_IDX)
5840 #define BIT_GET_HI2Q_HOST_IDX(x)                                               \
5841         (((x) >> BIT_SHIFT_HI2Q_HOST_IDX) & BIT_MASK_HI2Q_HOST_IDX)
5842
5843 /* 2 REG_HI3Q_TXBD_IDX                  (Offset 0x03C4) */
5844
5845 #define BIT_SHIFT_HI3Q_HW_IDX 16
5846 #define BIT_MASK_HI3Q_HW_IDX 0xfff
5847 #define BIT_HI3Q_HW_IDX(x)                                                     \
5848         (((x) & BIT_MASK_HI3Q_HW_IDX) << BIT_SHIFT_HI3Q_HW_IDX)
5849 #define BIT_GET_HI3Q_HW_IDX(x)                                                 \
5850         (((x) >> BIT_SHIFT_HI3Q_HW_IDX) & BIT_MASK_HI3Q_HW_IDX)
5851
5852 #define BIT_SHIFT_HI3Q_HOST_IDX 0
5853 #define BIT_MASK_HI3Q_HOST_IDX 0xfff
5854 #define BIT_HI3Q_HOST_IDX(x)                                                   \
5855         (((x) & BIT_MASK_HI3Q_HOST_IDX) << BIT_SHIFT_HI3Q_HOST_IDX)
5856 #define BIT_GET_HI3Q_HOST_IDX(x)                                               \
5857         (((x) >> BIT_SHIFT_HI3Q_HOST_IDX) & BIT_MASK_HI3Q_HOST_IDX)
5858
5859 /* 2 REG_HI4Q_TXBD_IDX                  (Offset 0x03C8) */
5860
5861 #define BIT_SHIFT_HI4Q_HW_IDX 16
5862 #define BIT_MASK_HI4Q_HW_IDX 0xfff
5863 #define BIT_HI4Q_HW_IDX(x)                                                     \
5864         (((x) & BIT_MASK_HI4Q_HW_IDX) << BIT_SHIFT_HI4Q_HW_IDX)
5865 #define BIT_GET_HI4Q_HW_IDX(x)                                                 \
5866         (((x) >> BIT_SHIFT_HI4Q_HW_IDX) & BIT_MASK_HI4Q_HW_IDX)
5867
5868 #define BIT_SHIFT_HI4Q_HOST_IDX 0
5869 #define BIT_MASK_HI4Q_HOST_IDX 0xfff
5870 #define BIT_HI4Q_HOST_IDX(x)                                                   \
5871         (((x) & BIT_MASK_HI4Q_HOST_IDX) << BIT_SHIFT_HI4Q_HOST_IDX)
5872 #define BIT_GET_HI4Q_HOST_IDX(x)                                               \
5873         (((x) >> BIT_SHIFT_HI4Q_HOST_IDX) & BIT_MASK_HI4Q_HOST_IDX)
5874
5875 /* 2 REG_HI5Q_TXBD_IDX                  (Offset 0x03CC) */
5876
5877 #define BIT_SHIFT_HI5Q_HW_IDX 16
5878 #define BIT_MASK_HI5Q_HW_IDX 0xfff
5879 #define BIT_HI5Q_HW_IDX(x)                                                     \
5880         (((x) & BIT_MASK_HI5Q_HW_IDX) << BIT_SHIFT_HI5Q_HW_IDX)
5881 #define BIT_GET_HI5Q_HW_IDX(x)                                                 \
5882         (((x) >> BIT_SHIFT_HI5Q_HW_IDX) & BIT_MASK_HI5Q_HW_IDX)
5883
5884 #define BIT_SHIFT_HI5Q_HOST_IDX 0
5885 #define BIT_MASK_HI5Q_HOST_IDX 0xfff
5886 #define BIT_HI5Q_HOST_IDX(x)                                                   \
5887         (((x) & BIT_MASK_HI5Q_HOST_IDX) << BIT_SHIFT_HI5Q_HOST_IDX)
5888 #define BIT_GET_HI5Q_HOST_IDX(x)                                               \
5889         (((x) >> BIT_SHIFT_HI5Q_HOST_IDX) & BIT_MASK_HI5Q_HOST_IDX)
5890
5891 /* 2 REG_HI6Q_TXBD_IDX                  (Offset 0x03D0) */
5892
5893 #define BIT_SHIFT_HI6Q_HW_IDX 16
5894 #define BIT_MASK_HI6Q_HW_IDX 0xfff
5895 #define BIT_HI6Q_HW_IDX(x)                                                     \
5896         (((x) & BIT_MASK_HI6Q_HW_IDX) << BIT_SHIFT_HI6Q_HW_IDX)
5897 #define BIT_GET_HI6Q_HW_IDX(x)                                                 \
5898         (((x) >> BIT_SHIFT_HI6Q_HW_IDX) & BIT_MASK_HI6Q_HW_IDX)
5899
5900 #define BIT_SHIFT_HI6Q_HOST_IDX 0
5901 #define BIT_MASK_HI6Q_HOST_IDX 0xfff
5902 #define BIT_HI6Q_HOST_IDX(x)                                                   \
5903         (((x) & BIT_MASK_HI6Q_HOST_IDX) << BIT_SHIFT_HI6Q_HOST_IDX)
5904 #define BIT_GET_HI6Q_HOST_IDX(x)                                               \
5905         (((x) >> BIT_SHIFT_HI6Q_HOST_IDX) & BIT_MASK_HI6Q_HOST_IDX)
5906
5907 /* 2 REG_HI7Q_TXBD_IDX                  (Offset 0x03D4) */
5908
5909 #define BIT_SHIFT_HI7Q_HW_IDX 16
5910 #define BIT_MASK_HI7Q_HW_IDX 0xfff
5911 #define BIT_HI7Q_HW_IDX(x)                                                     \
5912         (((x) & BIT_MASK_HI7Q_HW_IDX) << BIT_SHIFT_HI7Q_HW_IDX)
5913 #define BIT_GET_HI7Q_HW_IDX(x)                                                 \
5914         (((x) >> BIT_SHIFT_HI7Q_HW_IDX) & BIT_MASK_HI7Q_HW_IDX)
5915
5916 #define BIT_SHIFT_HI7Q_HOST_IDX 0
5917 #define BIT_MASK_HI7Q_HOST_IDX 0xfff
5918 #define BIT_HI7Q_HOST_IDX(x)                                                   \
5919         (((x) & BIT_MASK_HI7Q_HOST_IDX) << BIT_SHIFT_HI7Q_HOST_IDX)
5920 #define BIT_GET_HI7Q_HOST_IDX(x)                                               \
5921         (((x) >> BIT_SHIFT_HI7Q_HOST_IDX) & BIT_MASK_HI7Q_HOST_IDX)
5922
5923 /* 2 REG_DBG_SEL_V1                             (Offset 0x03D8) */
5924
5925 #define BIT_DIS_TXDMA_PRE BIT(7)
5926 #define BIT_DIS_RXDMA_PRE BIT(6)
5927 #define BIT_TXFLAG_EXIT_L1_EN BIT(2)
5928
5929 #define BIT_SHIFT_DBG_SEL 0
5930 #define BIT_MASK_DBG_SEL 0xff
5931 #define BIT_DBG_SEL(x) (((x) & BIT_MASK_DBG_SEL) << BIT_SHIFT_DBG_SEL)
5932 #define BIT_GET_DBG_SEL(x) (((x) >> BIT_SHIFT_DBG_SEL) & BIT_MASK_DBG_SEL)
5933
5934 /* 2 REG_PCIE_HRPWM1_V1                 (Offset 0x03D9) */
5935
5936 #define BIT_SHIFT_PCIE_HRPWM 0
5937 #define BIT_MASK_PCIE_HRPWM 0xff
5938 #define BIT_PCIE_HRPWM(x) (((x) & BIT_MASK_PCIE_HRPWM) << BIT_SHIFT_PCIE_HRPWM)
5939 #define BIT_GET_PCIE_HRPWM(x)                                                  \
5940         (((x) >> BIT_SHIFT_PCIE_HRPWM) & BIT_MASK_PCIE_HRPWM)
5941
5942 /* 2 REG_PCIE_HCPWM1_V1                 (Offset 0x03DA) */
5943
5944 #define BIT_SHIFT_PCIE_HCPWM 0
5945 #define BIT_MASK_PCIE_HCPWM 0xff
5946 #define BIT_PCIE_HCPWM(x) (((x) & BIT_MASK_PCIE_HCPWM) << BIT_SHIFT_PCIE_HCPWM)
5947 #define BIT_GET_PCIE_HCPWM(x)                                                  \
5948         (((x) >> BIT_SHIFT_PCIE_HCPWM) & BIT_MASK_PCIE_HCPWM)
5949
5950 /* 2 REG_PCIE_CTRL2                             (Offset 0x03DB) */
5951
5952 #define BIT_SHIFT_HPS_CLKR_PCIE 4
5953 #define BIT_MASK_HPS_CLKR_PCIE 0x3
5954 #define BIT_HPS_CLKR_PCIE(x)                                                   \
5955         (((x) & BIT_MASK_HPS_CLKR_PCIE) << BIT_SHIFT_HPS_CLKR_PCIE)
5956 #define BIT_GET_HPS_CLKR_PCIE(x)                                               \
5957         (((x) >> BIT_SHIFT_HPS_CLKR_PCIE) & BIT_MASK_HPS_CLKR_PCIE)
5958
5959 /* 2 REG_PCIE_CTRL2                             (Offset 0x03DB) */
5960
5961 #define BIT_PCIE_INT BIT(3)
5962
5963 /* 2 REG_PCIE_CTRL2                             (Offset 0x03DB) */
5964
5965 #define BIT_EN_RXDMA_ALIGN BIT(1)
5966 #define BIT_EN_TXDMA_ALIGN BIT(0)
5967
5968 /* 2 REG_PCIE_HRPWM2_V1                 (Offset 0x03DC) */
5969
5970 #define BIT_SHIFT_PCIE_HRPWM2 0
5971 #define BIT_MASK_PCIE_HRPWM2 0xffff
5972 #define BIT_PCIE_HRPWM2(x)                                                     \
5973         (((x) & BIT_MASK_PCIE_HRPWM2) << BIT_SHIFT_PCIE_HRPWM2)
5974 #define BIT_GET_PCIE_HRPWM2(x)                                                 \
5975         (((x) >> BIT_SHIFT_PCIE_HRPWM2) & BIT_MASK_PCIE_HRPWM2)
5976
5977 /* 2 REG_PCIE_HCPWM2_V1                 (Offset 0x03DE) */
5978
5979 #define BIT_SHIFT_PCIE_HCPWM2 0
5980 #define BIT_MASK_PCIE_HCPWM2 0xffff
5981 #define BIT_PCIE_HCPWM2(x)                                                     \
5982         (((x) & BIT_MASK_PCIE_HCPWM2) << BIT_SHIFT_PCIE_HCPWM2)
5983 #define BIT_GET_PCIE_HCPWM2(x)                                                 \
5984         (((x) >> BIT_SHIFT_PCIE_HCPWM2) & BIT_MASK_PCIE_HCPWM2)
5985
5986 /* 2 REG_PCIE_H2C_MSG_V1                        (Offset 0x03E0) */
5987
5988 #define BIT_SHIFT_DRV2FW_INFO 0
5989 #define BIT_MASK_DRV2FW_INFO 0xffffffffL
5990 #define BIT_DRV2FW_INFO(x)                                                     \
5991         (((x) & BIT_MASK_DRV2FW_INFO) << BIT_SHIFT_DRV2FW_INFO)
5992 #define BIT_GET_DRV2FW_INFO(x)                                                 \
5993         (((x) >> BIT_SHIFT_DRV2FW_INFO) & BIT_MASK_DRV2FW_INFO)
5994
5995 /* 2 REG_PCIE_C2H_MSG_V1                        (Offset 0x03E4) */
5996
5997 #define BIT_SHIFT_HCI_PCIE_C2H_MSG 0
5998 #define BIT_MASK_HCI_PCIE_C2H_MSG 0xffffffffL
5999 #define BIT_HCI_PCIE_C2H_MSG(x)                                                \
6000         (((x) & BIT_MASK_HCI_PCIE_C2H_MSG) << BIT_SHIFT_HCI_PCIE_C2H_MSG)
6001 #define BIT_GET_HCI_PCIE_C2H_MSG(x)                                            \
6002         (((x) >> BIT_SHIFT_HCI_PCIE_C2H_MSG) & BIT_MASK_HCI_PCIE_C2H_MSG)
6003
6004 /* 2 REG_DBI_WDATA_V1                   (Offset 0x03E8) */
6005
6006 #define BIT_SHIFT_DBI_WDATA 0
6007 #define BIT_MASK_DBI_WDATA 0xffffffffL
6008 #define BIT_DBI_WDATA(x) (((x) & BIT_MASK_DBI_WDATA) << BIT_SHIFT_DBI_WDATA)
6009 #define BIT_GET_DBI_WDATA(x) (((x) >> BIT_SHIFT_DBI_WDATA) & BIT_MASK_DBI_WDATA)
6010
6011 /* 2 REG_DBI_RDATA_V1                   (Offset 0x03EC) */
6012
6013 #define BIT_SHIFT_DBI_RDATA 0
6014 #define BIT_MASK_DBI_RDATA 0xffffffffL
6015 #define BIT_DBI_RDATA(x) (((x) & BIT_MASK_DBI_RDATA) << BIT_SHIFT_DBI_RDATA)
6016 #define BIT_GET_DBI_RDATA(x) (((x) >> BIT_SHIFT_DBI_RDATA) & BIT_MASK_DBI_RDATA)
6017
6018 /* 2 REG_DBI_FLAG_V1                            (Offset 0x03F0) */
6019
6020 #define BIT_EN_STUCK_DBG BIT(26)
6021 #define BIT_RX_STUCK BIT(25)
6022 #define BIT_TX_STUCK BIT(24)
6023 #define BIT_DBI_RFLAG BIT(17)
6024 #define BIT_DBI_WFLAG BIT(16)
6025
6026 #define BIT_SHIFT_DBI_WREN 12
6027 #define BIT_MASK_DBI_WREN 0xf
6028 #define BIT_DBI_WREN(x) (((x) & BIT_MASK_DBI_WREN) << BIT_SHIFT_DBI_WREN)
6029 #define BIT_GET_DBI_WREN(x) (((x) >> BIT_SHIFT_DBI_WREN) & BIT_MASK_DBI_WREN)
6030
6031 #define BIT_SHIFT_DBI_ADDR 0
6032 #define BIT_MASK_DBI_ADDR 0xfff
6033 #define BIT_DBI_ADDR(x) (((x) & BIT_MASK_DBI_ADDR) << BIT_SHIFT_DBI_ADDR)
6034 #define BIT_GET_DBI_ADDR(x) (((x) >> BIT_SHIFT_DBI_ADDR) & BIT_MASK_DBI_ADDR)
6035
6036 /* 2 REG_MDIO_V1                                (Offset 0x03F4) */
6037
6038 #define BIT_SHIFT_MDIO_RDATA 16
6039 #define BIT_MASK_MDIO_RDATA 0xffff
6040 #define BIT_MDIO_RDATA(x) (((x) & BIT_MASK_MDIO_RDATA) << BIT_SHIFT_MDIO_RDATA)
6041 #define BIT_GET_MDIO_RDATA(x)                                                  \
6042         (((x) >> BIT_SHIFT_MDIO_RDATA) & BIT_MASK_MDIO_RDATA)
6043
6044 #define BIT_SHIFT_MDIO_WDATA 0
6045 #define BIT_MASK_MDIO_WDATA 0xffff
6046 #define BIT_MDIO_WDATA(x) (((x) & BIT_MASK_MDIO_WDATA) << BIT_SHIFT_MDIO_WDATA)
6047 #define BIT_GET_MDIO_WDATA(x)                                                  \
6048         (((x) >> BIT_SHIFT_MDIO_WDATA) & BIT_MASK_MDIO_WDATA)
6049
6050 /* 2 REG_PCIE_MIX_CFG                   (Offset 0x03F8) */
6051
6052 #define BIT_EN_WATCH_DOG BIT(8)
6053
6054 /* 2 REG_PCIE_MIX_CFG                   (Offset 0x03F8) */
6055
6056 #define BIT_SHIFT_MDIO_REG_ADDR_V1 0
6057 #define BIT_MASK_MDIO_REG_ADDR_V1 0x1f
6058 #define BIT_MDIO_REG_ADDR_V1(x)                                                \
6059         (((x) & BIT_MASK_MDIO_REG_ADDR_V1) << BIT_SHIFT_MDIO_REG_ADDR_V1)
6060 #define BIT_GET_MDIO_REG_ADDR_V1(x)                                            \
6061         (((x) >> BIT_SHIFT_MDIO_REG_ADDR_V1) & BIT_MASK_MDIO_REG_ADDR_V1)
6062
6063 /* 2 REG_HCI_MIX_CFG                            (Offset 0x03FC) */
6064
6065 #define BIT_HOST_GEN2_SUPPORT BIT(20)
6066
6067 #define BIT_SHIFT_TXDMA_ERR_FLAG 16
6068 #define BIT_MASK_TXDMA_ERR_FLAG 0xf
6069 #define BIT_TXDMA_ERR_FLAG(x)                                                  \
6070         (((x) & BIT_MASK_TXDMA_ERR_FLAG) << BIT_SHIFT_TXDMA_ERR_FLAG)
6071 #define BIT_GET_TXDMA_ERR_FLAG(x)                                              \
6072         (((x) >> BIT_SHIFT_TXDMA_ERR_FLAG) & BIT_MASK_TXDMA_ERR_FLAG)
6073
6074 #define BIT_SHIFT_EARLY_MODE_SEL 12
6075 #define BIT_MASK_EARLY_MODE_SEL 0xf
6076 #define BIT_EARLY_MODE_SEL(x)                                                  \
6077         (((x) & BIT_MASK_EARLY_MODE_SEL) << BIT_SHIFT_EARLY_MODE_SEL)
6078 #define BIT_GET_EARLY_MODE_SEL(x)                                              \
6079         (((x) >> BIT_SHIFT_EARLY_MODE_SEL) & BIT_MASK_EARLY_MODE_SEL)
6080
6081 #define BIT_EPHY_RX50_EN BIT(11)
6082
6083 #define BIT_SHIFT_MSI_TIMEOUT_ID_V1 8
6084 #define BIT_MASK_MSI_TIMEOUT_ID_V1 0x7
6085 #define BIT_MSI_TIMEOUT_ID_V1(x)                                               \
6086         (((x) & BIT_MASK_MSI_TIMEOUT_ID_V1) << BIT_SHIFT_MSI_TIMEOUT_ID_V1)
6087 #define BIT_GET_MSI_TIMEOUT_ID_V1(x)                                           \
6088         (((x) >> BIT_SHIFT_MSI_TIMEOUT_ID_V1) & BIT_MASK_MSI_TIMEOUT_ID_V1)
6089
6090 #define BIT_RADDR_RD BIT(7)
6091 #define BIT_EN_MUL_TAG BIT(6)
6092 #define BIT_EN_EARLY_MODE BIT(5)
6093 #define BIT_L0S_LINK_OFF BIT(4)
6094 #define BIT_ACT_LINK_OFF BIT(3)
6095
6096 /* 2 REG_HCI_MIX_CFG                            (Offset 0x03FC) */
6097
6098 #define BIT_EN_SLOW_MAC_TX BIT(2)
6099 #define BIT_EN_SLOW_MAC_RX BIT(1)
6100
6101 /* 2 REG_Q0_INFO                                (Offset 0x0400) */
6102
6103 #define BIT_SHIFT_QUEUEMACID_Q0_V1 25
6104 #define BIT_MASK_QUEUEMACID_Q0_V1 0x7f
6105 #define BIT_QUEUEMACID_Q0_V1(x)                                                \
6106         (((x) & BIT_MASK_QUEUEMACID_Q0_V1) << BIT_SHIFT_QUEUEMACID_Q0_V1)
6107 #define BIT_GET_QUEUEMACID_Q0_V1(x)                                            \
6108         (((x) >> BIT_SHIFT_QUEUEMACID_Q0_V1) & BIT_MASK_QUEUEMACID_Q0_V1)
6109
6110 #define BIT_SHIFT_QUEUEAC_Q0_V1 23
6111 #define BIT_MASK_QUEUEAC_Q0_V1 0x3
6112 #define BIT_QUEUEAC_Q0_V1(x)                                                   \
6113         (((x) & BIT_MASK_QUEUEAC_Q0_V1) << BIT_SHIFT_QUEUEAC_Q0_V1)
6114 #define BIT_GET_QUEUEAC_Q0_V1(x)                                               \
6115         (((x) >> BIT_SHIFT_QUEUEAC_Q0_V1) & BIT_MASK_QUEUEAC_Q0_V1)
6116
6117 /* 2 REG_Q0_INFO                                (Offset 0x0400) */
6118
6119 #define BIT_TIDEMPTY_Q0_V1 BIT(22)
6120
6121 /* 2 REG_Q0_INFO                                (Offset 0x0400) */
6122
6123 #define BIT_SHIFT_TAIL_PKT_Q0_V2 11
6124 #define BIT_MASK_TAIL_PKT_Q0_V2 0x7ff
6125 #define BIT_TAIL_PKT_Q0_V2(x)                                                  \
6126         (((x) & BIT_MASK_TAIL_PKT_Q0_V2) << BIT_SHIFT_TAIL_PKT_Q0_V2)
6127 #define BIT_GET_TAIL_PKT_Q0_V2(x)                                              \
6128         (((x) >> BIT_SHIFT_TAIL_PKT_Q0_V2) & BIT_MASK_TAIL_PKT_Q0_V2)
6129
6130 /* 2 REG_Q0_INFO                                (Offset 0x0400) */
6131
6132 #define BIT_SHIFT_HEAD_PKT_Q0_V1 0
6133 #define BIT_MASK_HEAD_PKT_Q0_V1 0x7ff
6134 #define BIT_HEAD_PKT_Q0_V1(x)                                                  \
6135         (((x) & BIT_MASK_HEAD_PKT_Q0_V1) << BIT_SHIFT_HEAD_PKT_Q0_V1)
6136 #define BIT_GET_HEAD_PKT_Q0_V1(x)                                              \
6137         (((x) >> BIT_SHIFT_HEAD_PKT_Q0_V1) & BIT_MASK_HEAD_PKT_Q0_V1)
6138
6139 /* 2 REG_Q1_INFO                                (Offset 0x0404) */
6140
6141 #define BIT_SHIFT_QUEUEMACID_Q1_V1 25
6142 #define BIT_MASK_QUEUEMACID_Q1_V1 0x7f
6143 #define BIT_QUEUEMACID_Q1_V1(x)                                                \
6144         (((x) & BIT_MASK_QUEUEMACID_Q1_V1) << BIT_SHIFT_QUEUEMACID_Q1_V1)
6145 #define BIT_GET_QUEUEMACID_Q1_V1(x)                                            \
6146         (((x) >> BIT_SHIFT_QUEUEMACID_Q1_V1) & BIT_MASK_QUEUEMACID_Q1_V1)
6147
6148 #define BIT_SHIFT_QUEUEAC_Q1_V1 23
6149 #define BIT_MASK_QUEUEAC_Q1_V1 0x3
6150 #define BIT_QUEUEAC_Q1_V1(x)                                                   \
6151         (((x) & BIT_MASK_QUEUEAC_Q1_V1) << BIT_SHIFT_QUEUEAC_Q1_V1)
6152 #define BIT_GET_QUEUEAC_Q1_V1(x)                                               \
6153         (((x) >> BIT_SHIFT_QUEUEAC_Q1_V1) & BIT_MASK_QUEUEAC_Q1_V1)
6154
6155 /* 2 REG_Q1_INFO                                (Offset 0x0404) */
6156
6157 #define BIT_TIDEMPTY_Q1_V1 BIT(22)
6158
6159 /* 2 REG_Q1_INFO                                (Offset 0x0404) */
6160
6161 #define BIT_SHIFT_TAIL_PKT_Q1_V2 11
6162 #define BIT_MASK_TAIL_PKT_Q1_V2 0x7ff
6163 #define BIT_TAIL_PKT_Q1_V2(x)                                                  \
6164         (((x) & BIT_MASK_TAIL_PKT_Q1_V2) << BIT_SHIFT_TAIL_PKT_Q1_V2)
6165 #define BIT_GET_TAIL_PKT_Q1_V2(x)                                              \
6166         (((x) >> BIT_SHIFT_TAIL_PKT_Q1_V2) & BIT_MASK_TAIL_PKT_Q1_V2)
6167
6168 /* 2 REG_Q1_INFO                                (Offset 0x0404) */
6169
6170 #define BIT_SHIFT_HEAD_PKT_Q1_V1 0
6171 #define BIT_MASK_HEAD_PKT_Q1_V1 0x7ff
6172 #define BIT_HEAD_PKT_Q1_V1(x)                                                  \
6173         (((x) & BIT_MASK_HEAD_PKT_Q1_V1) << BIT_SHIFT_HEAD_PKT_Q1_V1)
6174 #define BIT_GET_HEAD_PKT_Q1_V1(x)                                              \
6175         (((x) >> BIT_SHIFT_HEAD_PKT_Q1_V1) & BIT_MASK_HEAD_PKT_Q1_V1)
6176
6177 /* 2 REG_Q2_INFO                                (Offset 0x0408) */
6178
6179 #define BIT_SHIFT_QUEUEMACID_Q2_V1 25
6180 #define BIT_MASK_QUEUEMACID_Q2_V1 0x7f
6181 #define BIT_QUEUEMACID_Q2_V1(x)                                                \
6182         (((x) & BIT_MASK_QUEUEMACID_Q2_V1) << BIT_SHIFT_QUEUEMACID_Q2_V1)
6183 #define BIT_GET_QUEUEMACID_Q2_V1(x)                                            \
6184         (((x) >> BIT_SHIFT_QUEUEMACID_Q2_V1) & BIT_MASK_QUEUEMACID_Q2_V1)
6185
6186 #define BIT_SHIFT_QUEUEAC_Q2_V1 23
6187 #define BIT_MASK_QUEUEAC_Q2_V1 0x3
6188 #define BIT_QUEUEAC_Q2_V1(x)                                                   \
6189         (((x) & BIT_MASK_QUEUEAC_Q2_V1) << BIT_SHIFT_QUEUEAC_Q2_V1)
6190 #define BIT_GET_QUEUEAC_Q2_V1(x)                                               \
6191         (((x) >> BIT_SHIFT_QUEUEAC_Q2_V1) & BIT_MASK_QUEUEAC_Q2_V1)
6192
6193 /* 2 REG_Q2_INFO                                (Offset 0x0408) */
6194
6195 #define BIT_TIDEMPTY_Q2_V1 BIT(22)
6196
6197 /* 2 REG_Q2_INFO                                (Offset 0x0408) */
6198
6199 #define BIT_SHIFT_TAIL_PKT_Q2_V2 11
6200 #define BIT_MASK_TAIL_PKT_Q2_V2 0x7ff
6201 #define BIT_TAIL_PKT_Q2_V2(x)                                                  \
6202         (((x) & BIT_MASK_TAIL_PKT_Q2_V2) << BIT_SHIFT_TAIL_PKT_Q2_V2)
6203 #define BIT_GET_TAIL_PKT_Q2_V2(x)                                              \
6204         (((x) >> BIT_SHIFT_TAIL_PKT_Q2_V2) & BIT_MASK_TAIL_PKT_Q2_V2)
6205
6206 /* 2 REG_Q2_INFO                                (Offset 0x0408) */
6207
6208 #define BIT_SHIFT_HEAD_PKT_Q2_V1 0
6209 #define BIT_MASK_HEAD_PKT_Q2_V1 0x7ff
6210 #define BIT_HEAD_PKT_Q2_V1(x)                                                  \
6211         (((x) & BIT_MASK_HEAD_PKT_Q2_V1) << BIT_SHIFT_HEAD_PKT_Q2_V1)
6212 #define BIT_GET_HEAD_PKT_Q2_V1(x)                                              \
6213         (((x) >> BIT_SHIFT_HEAD_PKT_Q2_V1) & BIT_MASK_HEAD_PKT_Q2_V1)
6214
6215 /* 2 REG_Q3_INFO                                (Offset 0x040C) */
6216
6217 #define BIT_SHIFT_QUEUEMACID_Q3_V1 25
6218 #define BIT_MASK_QUEUEMACID_Q3_V1 0x7f
6219 #define BIT_QUEUEMACID_Q3_V1(x)                                                \
6220         (((x) & BIT_MASK_QUEUEMACID_Q3_V1) << BIT_SHIFT_QUEUEMACID_Q3_V1)
6221 #define BIT_GET_QUEUEMACID_Q3_V1(x)                                            \
6222         (((x) >> BIT_SHIFT_QUEUEMACID_Q3_V1) & BIT_MASK_QUEUEMACID_Q3_V1)
6223
6224 #define BIT_SHIFT_QUEUEAC_Q3_V1 23
6225 #define BIT_MASK_QUEUEAC_Q3_V1 0x3
6226 #define BIT_QUEUEAC_Q3_V1(x)                                                   \
6227         (((x) & BIT_MASK_QUEUEAC_Q3_V1) << BIT_SHIFT_QUEUEAC_Q3_V1)
6228 #define BIT_GET_QUEUEAC_Q3_V1(x)                                               \
6229         (((x) >> BIT_SHIFT_QUEUEAC_Q3_V1) & BIT_MASK_QUEUEAC_Q3_V1)
6230
6231 /* 2 REG_Q3_INFO                                (Offset 0x040C) */
6232
6233 #define BIT_TIDEMPTY_Q3_V1 BIT(22)
6234
6235 /* 2 REG_Q3_INFO                                (Offset 0x040C) */
6236
6237 #define BIT_SHIFT_TAIL_PKT_Q3_V2 11
6238 #define BIT_MASK_TAIL_PKT_Q3_V2 0x7ff
6239 #define BIT_TAIL_PKT_Q3_V2(x)                                                  \
6240         (((x) & BIT_MASK_TAIL_PKT_Q3_V2) << BIT_SHIFT_TAIL_PKT_Q3_V2)
6241 #define BIT_GET_TAIL_PKT_Q3_V2(x)                                              \
6242         (((x) >> BIT_SHIFT_TAIL_PKT_Q3_V2) & BIT_MASK_TAIL_PKT_Q3_V2)
6243
6244 /* 2 REG_Q3_INFO                                (Offset 0x040C) */
6245
6246 #define BIT_SHIFT_HEAD_PKT_Q3_V1 0
6247 #define BIT_MASK_HEAD_PKT_Q3_V1 0x7ff
6248 #define BIT_HEAD_PKT_Q3_V1(x)                                                  \
6249         (((x) & BIT_MASK_HEAD_PKT_Q3_V1) << BIT_SHIFT_HEAD_PKT_Q3_V1)
6250 #define BIT_GET_HEAD_PKT_Q3_V1(x)                                              \
6251         (((x) >> BIT_SHIFT_HEAD_PKT_Q3_V1) & BIT_MASK_HEAD_PKT_Q3_V1)
6252
6253 /* 2 REG_MGQ_INFO                               (Offset 0x0410) */
6254
6255 #define BIT_SHIFT_QUEUEMACID_MGQ_V1 25
6256 #define BIT_MASK_QUEUEMACID_MGQ_V1 0x7f
6257 #define BIT_QUEUEMACID_MGQ_V1(x)                                               \
6258         (((x) & BIT_MASK_QUEUEMACID_MGQ_V1) << BIT_SHIFT_QUEUEMACID_MGQ_V1)
6259 #define BIT_GET_QUEUEMACID_MGQ_V1(x)                                           \
6260         (((x) >> BIT_SHIFT_QUEUEMACID_MGQ_V1) & BIT_MASK_QUEUEMACID_MGQ_V1)
6261
6262 #define BIT_SHIFT_QUEUEAC_MGQ_V1 23
6263 #define BIT_MASK_QUEUEAC_MGQ_V1 0x3
6264 #define BIT_QUEUEAC_MGQ_V1(x)                                                  \
6265         (((x) & BIT_MASK_QUEUEAC_MGQ_V1) << BIT_SHIFT_QUEUEAC_MGQ_V1)
6266 #define BIT_GET_QUEUEAC_MGQ_V1(x)                                              \
6267         (((x) >> BIT_SHIFT_QUEUEAC_MGQ_V1) & BIT_MASK_QUEUEAC_MGQ_V1)
6268
6269 /* 2 REG_MGQ_INFO                               (Offset 0x0410) */
6270
6271 #define BIT_TIDEMPTY_MGQ_V1 BIT(22)
6272
6273 /* 2 REG_MGQ_INFO                               (Offset 0x0410) */
6274
6275 #define BIT_SHIFT_TAIL_PKT_MGQ_V2 11
6276 #define BIT_MASK_TAIL_PKT_MGQ_V2 0x7ff
6277 #define BIT_TAIL_PKT_MGQ_V2(x)                                                 \
6278         (((x) & BIT_MASK_TAIL_PKT_MGQ_V2) << BIT_SHIFT_TAIL_PKT_MGQ_V2)
6279 #define BIT_GET_TAIL_PKT_MGQ_V2(x)                                             \
6280         (((x) >> BIT_SHIFT_TAIL_PKT_MGQ_V2) & BIT_MASK_TAIL_PKT_MGQ_V2)
6281
6282 /* 2 REG_MGQ_INFO                               (Offset 0x0410) */
6283
6284 #define BIT_SHIFT_HEAD_PKT_MGQ_V1 0
6285 #define BIT_MASK_HEAD_PKT_MGQ_V1 0x7ff
6286 #define BIT_HEAD_PKT_MGQ_V1(x)                                                 \
6287         (((x) & BIT_MASK_HEAD_PKT_MGQ_V1) << BIT_SHIFT_HEAD_PKT_MGQ_V1)
6288 #define BIT_GET_HEAD_PKT_MGQ_V1(x)                                             \
6289         (((x) >> BIT_SHIFT_HEAD_PKT_MGQ_V1) & BIT_MASK_HEAD_PKT_MGQ_V1)
6290
6291 /* 2 REG_HIQ_INFO                               (Offset 0x0414) */
6292
6293 #define BIT_SHIFT_QUEUEMACID_HIQ_V1 25
6294 #define BIT_MASK_QUEUEMACID_HIQ_V1 0x7f
6295 #define BIT_QUEUEMACID_HIQ_V1(x)                                               \
6296         (((x) & BIT_MASK_QUEUEMACID_HIQ_V1) << BIT_SHIFT_QUEUEMACID_HIQ_V1)
6297 #define BIT_GET_QUEUEMACID_HIQ_V1(x)                                           \
6298         (((x) >> BIT_SHIFT_QUEUEMACID_HIQ_V1) & BIT_MASK_QUEUEMACID_HIQ_V1)
6299
6300 #define BIT_SHIFT_QUEUEAC_HIQ_V1 23
6301 #define BIT_MASK_QUEUEAC_HIQ_V1 0x3
6302 #define BIT_QUEUEAC_HIQ_V1(x)                                                  \
6303         (((x) & BIT_MASK_QUEUEAC_HIQ_V1) << BIT_SHIFT_QUEUEAC_HIQ_V1)
6304 #define BIT_GET_QUEUEAC_HIQ_V1(x)                                              \
6305         (((x) >> BIT_SHIFT_QUEUEAC_HIQ_V1) & BIT_MASK_QUEUEAC_HIQ_V1)
6306
6307 /* 2 REG_HIQ_INFO                               (Offset 0x0414) */
6308
6309 #define BIT_TIDEMPTY_HIQ_V1 BIT(22)
6310
6311 /* 2 REG_HIQ_INFO                               (Offset 0x0414) */
6312
6313 #define BIT_SHIFT_TAIL_PKT_HIQ_V2 11
6314 #define BIT_MASK_TAIL_PKT_HIQ_V2 0x7ff
6315 #define BIT_TAIL_PKT_HIQ_V2(x)                                                 \
6316         (((x) & BIT_MASK_TAIL_PKT_HIQ_V2) << BIT_SHIFT_TAIL_PKT_HIQ_V2)
6317 #define BIT_GET_TAIL_PKT_HIQ_V2(x)                                             \
6318         (((x) >> BIT_SHIFT_TAIL_PKT_HIQ_V2) & BIT_MASK_TAIL_PKT_HIQ_V2)
6319
6320 /* 2 REG_HIQ_INFO                               (Offset 0x0414) */
6321
6322 #define BIT_SHIFT_HEAD_PKT_HIQ_V1 0
6323 #define BIT_MASK_HEAD_PKT_HIQ_V1 0x7ff
6324 #define BIT_HEAD_PKT_HIQ_V1(x)                                                 \
6325         (((x) & BIT_MASK_HEAD_PKT_HIQ_V1) << BIT_SHIFT_HEAD_PKT_HIQ_V1)
6326 #define BIT_GET_HEAD_PKT_HIQ_V1(x)                                             \
6327         (((x) >> BIT_SHIFT_HEAD_PKT_HIQ_V1) & BIT_MASK_HEAD_PKT_HIQ_V1)
6328
6329 /* 2 REG_BCNQ_INFO                              (Offset 0x0418) */
6330
6331 #define BIT_SHIFT_BCNQ_HEAD_PG_V1 0
6332 #define BIT_MASK_BCNQ_HEAD_PG_V1 0xfff
6333 #define BIT_BCNQ_HEAD_PG_V1(x)                                                 \
6334         (((x) & BIT_MASK_BCNQ_HEAD_PG_V1) << BIT_SHIFT_BCNQ_HEAD_PG_V1)
6335 #define BIT_GET_BCNQ_HEAD_PG_V1(x)                                             \
6336         (((x) >> BIT_SHIFT_BCNQ_HEAD_PG_V1) & BIT_MASK_BCNQ_HEAD_PG_V1)
6337
6338 /* 2 REG_TXPKT_EMPTY                            (Offset 0x041A) */
6339
6340 #define BIT_BCNQ_EMPTY BIT(11)
6341 #define BIT_HQQ_EMPTY BIT(10)
6342 #define BIT_MQQ_EMPTY BIT(9)
6343 #define BIT_MGQ_CPU_EMPTY BIT(8)
6344 #define BIT_AC7Q_EMPTY BIT(7)
6345 #define BIT_AC6Q_EMPTY BIT(6)
6346 #define BIT_AC5Q_EMPTY BIT(5)
6347 #define BIT_AC4Q_EMPTY BIT(4)
6348 #define BIT_AC3Q_EMPTY BIT(3)
6349 #define BIT_AC2Q_EMPTY BIT(2)
6350 #define BIT_AC1Q_EMPTY BIT(1)
6351 #define BIT_AC0Q_EMPTY BIT(0)
6352
6353 /* 2 REG_CPU_MGQ_INFO                   (Offset 0x041C) */
6354
6355 #define BIT_BCN1_POLL BIT(30)
6356
6357 /* 2 REG_CPU_MGQ_INFO                   (Offset 0x041C) */
6358
6359 #define BIT_CPUMGT_POLL BIT(29)
6360 #define BIT_BCN_POLL BIT(28)
6361
6362 /* 2 REG_CPU_MGQ_INFO                   (Offset 0x041C) */
6363
6364 #define BIT_CPUMGQ_FW_NUM_V1 BIT(12)
6365
6366 /* 2 REG_CPU_MGQ_INFO                   (Offset 0x041C) */
6367
6368 #define BIT_SHIFT_FW_FREE_TAIL_V1 0
6369 #define BIT_MASK_FW_FREE_TAIL_V1 0xfff
6370 #define BIT_FW_FREE_TAIL_V1(x)                                                 \
6371         (((x) & BIT_MASK_FW_FREE_TAIL_V1) << BIT_SHIFT_FW_FREE_TAIL_V1)
6372 #define BIT_GET_FW_FREE_TAIL_V1(x)                                             \
6373         (((x) >> BIT_SHIFT_FW_FREE_TAIL_V1) & BIT_MASK_FW_FREE_TAIL_V1)
6374
6375 /* 2 REG_FWHW_TXQ_CTRL                  (Offset 0x0420) */
6376
6377 #define BIT_RTS_LIMIT_IN_OFDM BIT(23)
6378 #define BIT_EN_BCNQ_DL BIT(22)
6379 #define BIT_EN_RD_RESP_NAV_BK BIT(21)
6380 #define BIT_EN_WR_FREE_TAIL BIT(20)
6381
6382 #define BIT_SHIFT_EN_QUEUE_RPT 8
6383 #define BIT_MASK_EN_QUEUE_RPT 0xff
6384 #define BIT_EN_QUEUE_RPT(x)                                                    \
6385         (((x) & BIT_MASK_EN_QUEUE_RPT) << BIT_SHIFT_EN_QUEUE_RPT)
6386 #define BIT_GET_EN_QUEUE_RPT(x)                                                \
6387         (((x) >> BIT_SHIFT_EN_QUEUE_RPT) & BIT_MASK_EN_QUEUE_RPT)
6388
6389 #define BIT_EN_RTY_BK BIT(7)
6390 #define BIT_EN_USE_INI_RAT BIT(6)
6391 #define BIT_EN_RTS_NAV_BK BIT(5)
6392 #define BIT_DIS_SSN_CHECK BIT(4)
6393 #define BIT_MACID_MATCH_RTS BIT(3)
6394
6395 /* 2 REG_FWHW_TXQ_CTRL                  (Offset 0x0420) */
6396
6397 #define BIT_EN_BCN_TRXRPT_V1 BIT(2)
6398
6399 /* 2 REG_FWHW_TXQ_CTRL                  (Offset 0x0420) */
6400
6401 #define BIT_EN_FTMACKRPT BIT(1)
6402
6403 /* 2 REG_FWHW_TXQ_CTRL                  (Offset 0x0420) */
6404
6405 #define BIT_EN_FTMRPT BIT(0)
6406
6407 /* 2 REG_DATAFB_SEL                             (Offset 0x0423) */
6408
6409 #define BIT__R_EN_RTY_BK_COD BIT(2)
6410
6411 /* 2 REG_DATAFB_SEL                             (Offset 0x0423) */
6412
6413 #define BIT_SHIFT__R_DATA_FALLBACK_SEL 0
6414 #define BIT_MASK__R_DATA_FALLBACK_SEL 0x3
6415 #define BIT__R_DATA_FALLBACK_SEL(x)                                            \
6416         (((x) & BIT_MASK__R_DATA_FALLBACK_SEL)                                 \
6417          << BIT_SHIFT__R_DATA_FALLBACK_SEL)
6418 #define BIT_GET__R_DATA_FALLBACK_SEL(x)                                        \
6419         (((x) >> BIT_SHIFT__R_DATA_FALLBACK_SEL) &                             \
6420          BIT_MASK__R_DATA_FALLBACK_SEL)
6421
6422 /* 2 REG_BCNQ_BDNY_V1                   (Offset 0x0424) */
6423
6424 #define BIT_SHIFT_BCNQ_PGBNDY_V1 0
6425 #define BIT_MASK_BCNQ_PGBNDY_V1 0xfff
6426 #define BIT_BCNQ_PGBNDY_V1(x)                                                  \
6427         (((x) & BIT_MASK_BCNQ_PGBNDY_V1) << BIT_SHIFT_BCNQ_PGBNDY_V1)
6428 #define BIT_GET_BCNQ_PGBNDY_V1(x)                                              \
6429         (((x) >> BIT_SHIFT_BCNQ_PGBNDY_V1) & BIT_MASK_BCNQ_PGBNDY_V1)
6430
6431 /* 2 REG_LIFETIME_EN                            (Offset 0x0426) */
6432
6433 #define BIT_BT_INT_CPU BIT(7)
6434 #define BIT_BT_INT_PTA BIT(6)
6435
6436 /* 2 REG_LIFETIME_EN                            (Offset 0x0426) */
6437
6438 #define BIT_EN_CTRL_RTYBIT BIT(4)
6439
6440 /* 2 REG_LIFETIME_EN                            (Offset 0x0426) */
6441
6442 #define BIT_LIFETIME_BK_EN BIT(3)
6443 #define BIT_LIFETIME_BE_EN BIT(2)
6444 #define BIT_LIFETIME_VI_EN BIT(1)
6445 #define BIT_LIFETIME_VO_EN BIT(0)
6446
6447 /* 2 REG_SPEC_SIFS                              (Offset 0x0428) */
6448
6449 #define BIT_SHIFT_SPEC_SIFS_OFDM_PTCL 8
6450 #define BIT_MASK_SPEC_SIFS_OFDM_PTCL 0xff
6451 #define BIT_SPEC_SIFS_OFDM_PTCL(x)                                             \
6452         (((x) & BIT_MASK_SPEC_SIFS_OFDM_PTCL) << BIT_SHIFT_SPEC_SIFS_OFDM_PTCL)
6453 #define BIT_GET_SPEC_SIFS_OFDM_PTCL(x)                                         \
6454         (((x) >> BIT_SHIFT_SPEC_SIFS_OFDM_PTCL) & BIT_MASK_SPEC_SIFS_OFDM_PTCL)
6455
6456 #define BIT_SHIFT_SPEC_SIFS_CCK_PTCL 0
6457 #define BIT_MASK_SPEC_SIFS_CCK_PTCL 0xff
6458 #define BIT_SPEC_SIFS_CCK_PTCL(x)                                              \
6459         (((x) & BIT_MASK_SPEC_SIFS_CCK_PTCL) << BIT_SHIFT_SPEC_SIFS_CCK_PTCL)
6460 #define BIT_GET_SPEC_SIFS_CCK_PTCL(x)                                          \
6461         (((x) >> BIT_SHIFT_SPEC_SIFS_CCK_PTCL) & BIT_MASK_SPEC_SIFS_CCK_PTCL)
6462
6463 /* 2 REG_RETRY_LIMIT                            (Offset 0x042A) */
6464
6465 #define BIT_SHIFT_SRL 8
6466 #define BIT_MASK_SRL 0x3f
6467 #define BIT_SRL(x) (((x) & BIT_MASK_SRL) << BIT_SHIFT_SRL)
6468 #define BIT_GET_SRL(x) (((x) >> BIT_SHIFT_SRL) & BIT_MASK_SRL)
6469
6470 #define BIT_SHIFT_LRL 0
6471 #define BIT_MASK_LRL 0x3f
6472 #define BIT_LRL(x) (((x) & BIT_MASK_LRL) << BIT_SHIFT_LRL)
6473 #define BIT_GET_LRL(x) (((x) >> BIT_SHIFT_LRL) & BIT_MASK_LRL)
6474
6475 /* 2 REG_TXBF_CTRL                              (Offset 0x042C) */
6476
6477 #define BIT_R_ENABLE_NDPA BIT(31)
6478 #define BIT_USE_NDPA_PARAMETER BIT(30)
6479 #define BIT_R_PROP_TXBF BIT(29)
6480 #define BIT_R_EN_NDPA_INT BIT(28)
6481 #define BIT_R_TXBF1_80M BIT(27)
6482 #define BIT_R_TXBF1_40M BIT(26)
6483 #define BIT_R_TXBF1_20M BIT(25)
6484
6485 #define BIT_SHIFT_R_TXBF1_AID 16
6486 #define BIT_MASK_R_TXBF1_AID 0x1ff
6487 #define BIT_R_TXBF1_AID(x)                                                     \
6488         (((x) & BIT_MASK_R_TXBF1_AID) << BIT_SHIFT_R_TXBF1_AID)
6489 #define BIT_GET_R_TXBF1_AID(x)                                                 \
6490         (((x) >> BIT_SHIFT_R_TXBF1_AID) & BIT_MASK_R_TXBF1_AID)
6491
6492 /* 2 REG_TXBF_CTRL                              (Offset 0x042C) */
6493
6494 #define BIT_DIS_NDP_BFEN BIT(15)
6495
6496 /* 2 REG_TXBF_CTRL                              (Offset 0x042C) */
6497
6498 #define BIT_R_TXBCN_NOBLOCK_NDP BIT(14)
6499
6500 /* 2 REG_TXBF_CTRL                              (Offset 0x042C) */
6501
6502 #define BIT_R_TXBF0_80M BIT(11)
6503 #define BIT_R_TXBF0_40M BIT(10)
6504 #define BIT_R_TXBF0_20M BIT(9)
6505
6506 #define BIT_SHIFT_R_TXBF0_AID 0
6507 #define BIT_MASK_R_TXBF0_AID 0x1ff
6508 #define BIT_R_TXBF0_AID(x)                                                     \
6509         (((x) & BIT_MASK_R_TXBF0_AID) << BIT_SHIFT_R_TXBF0_AID)
6510 #define BIT_GET_R_TXBF0_AID(x)                                                 \
6511         (((x) >> BIT_SHIFT_R_TXBF0_AID) & BIT_MASK_R_TXBF0_AID)
6512
6513 /* 2 REG_DARFRC                         (Offset 0x0430) */
6514
6515 #define BIT_SHIFT_DARF_RC8 (56 & CPU_OPT_WIDTH)
6516 #define BIT_MASK_DARF_RC8 0x1f
6517 #define BIT_DARF_RC8(x) (((x) & BIT_MASK_DARF_RC8) << BIT_SHIFT_DARF_RC8)
6518 #define BIT_GET_DARF_RC8(x) (((x) >> BIT_SHIFT_DARF_RC8) & BIT_MASK_DARF_RC8)
6519
6520 #define BIT_SHIFT_DARF_RC7 (48 & CPU_OPT_WIDTH)
6521 #define BIT_MASK_DARF_RC7 0x1f
6522 #define BIT_DARF_RC7(x) (((x) & BIT_MASK_DARF_RC7) << BIT_SHIFT_DARF_RC7)
6523 #define BIT_GET_DARF_RC7(x) (((x) >> BIT_SHIFT_DARF_RC7) & BIT_MASK_DARF_RC7)
6524
6525 #define BIT_SHIFT_DARF_RC6 (40 & CPU_OPT_WIDTH)
6526 #define BIT_MASK_DARF_RC6 0x1f
6527 #define BIT_DARF_RC6(x) (((x) & BIT_MASK_DARF_RC6) << BIT_SHIFT_DARF_RC6)
6528 #define BIT_GET_DARF_RC6(x) (((x) >> BIT_SHIFT_DARF_RC6) & BIT_MASK_DARF_RC6)
6529
6530 #define BIT_SHIFT_DARF_RC5 (32 & CPU_OPT_WIDTH)
6531 #define BIT_MASK_DARF_RC5 0x1f
6532 #define BIT_DARF_RC5(x) (((x) & BIT_MASK_DARF_RC5) << BIT_SHIFT_DARF_RC5)
6533 #define BIT_GET_DARF_RC5(x) (((x) >> BIT_SHIFT_DARF_RC5) & BIT_MASK_DARF_RC5)
6534
6535 #define BIT_SHIFT_DARF_RC4 24
6536 #define BIT_MASK_DARF_RC4 0x1f
6537 #define BIT_DARF_RC4(x) (((x) & BIT_MASK_DARF_RC4) << BIT_SHIFT_DARF_RC4)
6538 #define BIT_GET_DARF_RC4(x) (((x) >> BIT_SHIFT_DARF_RC4) & BIT_MASK_DARF_RC4)
6539
6540 #define BIT_SHIFT_DARF_RC3 16
6541 #define BIT_MASK_DARF_RC3 0x1f
6542 #define BIT_DARF_RC3(x) (((x) & BIT_MASK_DARF_RC3) << BIT_SHIFT_DARF_RC3)
6543 #define BIT_GET_DARF_RC3(x) (((x) >> BIT_SHIFT_DARF_RC3) & BIT_MASK_DARF_RC3)
6544
6545 #define BIT_SHIFT_DARF_RC2 8
6546 #define BIT_MASK_DARF_RC2 0x1f
6547 #define BIT_DARF_RC2(x) (((x) & BIT_MASK_DARF_RC2) << BIT_SHIFT_DARF_RC2)
6548 #define BIT_GET_DARF_RC2(x) (((x) >> BIT_SHIFT_DARF_RC2) & BIT_MASK_DARF_RC2)
6549
6550 #define BIT_SHIFT_DARF_RC1 0
6551 #define BIT_MASK_DARF_RC1 0x1f
6552 #define BIT_DARF_RC1(x) (((x) & BIT_MASK_DARF_RC1) << BIT_SHIFT_DARF_RC1)
6553 #define BIT_GET_DARF_RC1(x) (((x) >> BIT_SHIFT_DARF_RC1) & BIT_MASK_DARF_RC1)
6554
6555 /* 2 REG_RARFRC                         (Offset 0x0438) */
6556
6557 #define BIT_SHIFT_RARF_RC8 (56 & CPU_OPT_WIDTH)
6558 #define BIT_MASK_RARF_RC8 0x1f
6559 #define BIT_RARF_RC8(x) (((x) & BIT_MASK_RARF_RC8) << BIT_SHIFT_RARF_RC8)
6560 #define BIT_GET_RARF_RC8(x) (((x) >> BIT_SHIFT_RARF_RC8) & BIT_MASK_RARF_RC8)
6561
6562 #define BIT_SHIFT_RARF_RC7 (48 & CPU_OPT_WIDTH)
6563 #define BIT_MASK_RARF_RC7 0x1f
6564 #define BIT_RARF_RC7(x) (((x) & BIT_MASK_RARF_RC7) << BIT_SHIFT_RARF_RC7)
6565 #define BIT_GET_RARF_RC7(x) (((x) >> BIT_SHIFT_RARF_RC7) & BIT_MASK_RARF_RC7)
6566
6567 #define BIT_SHIFT_RARF_RC6 (40 & CPU_OPT_WIDTH)
6568 #define BIT_MASK_RARF_RC6 0x1f
6569 #define BIT_RARF_RC6(x) (((x) & BIT_MASK_RARF_RC6) << BIT_SHIFT_RARF_RC6)
6570 #define BIT_GET_RARF_RC6(x) (((x) >> BIT_SHIFT_RARF_RC6) & BIT_MASK_RARF_RC6)
6571
6572 #define BIT_SHIFT_RARF_RC5 (32 & CPU_OPT_WIDTH)
6573 #define BIT_MASK_RARF_RC5 0x1f
6574 #define BIT_RARF_RC5(x) (((x) & BIT_MASK_RARF_RC5) << BIT_SHIFT_RARF_RC5)
6575 #define BIT_GET_RARF_RC5(x) (((x) >> BIT_SHIFT_RARF_RC5) & BIT_MASK_RARF_RC5)
6576
6577 #define BIT_SHIFT_RARF_RC4 24
6578 #define BIT_MASK_RARF_RC4 0x1f
6579 #define BIT_RARF_RC4(x) (((x) & BIT_MASK_RARF_RC4) << BIT_SHIFT_RARF_RC4)
6580 #define BIT_GET_RARF_RC4(x) (((x) >> BIT_SHIFT_RARF_RC4) & BIT_MASK_RARF_RC4)
6581
6582 #define BIT_SHIFT_RARF_RC3 16
6583 #define BIT_MASK_RARF_RC3 0x1f
6584 #define BIT_RARF_RC3(x) (((x) & BIT_MASK_RARF_RC3) << BIT_SHIFT_RARF_RC3)
6585 #define BIT_GET_RARF_RC3(x) (((x) >> BIT_SHIFT_RARF_RC3) & BIT_MASK_RARF_RC3)
6586
6587 #define BIT_SHIFT_RARF_RC2 8
6588 #define BIT_MASK_RARF_RC2 0x1f
6589 #define BIT_RARF_RC2(x) (((x) & BIT_MASK_RARF_RC2) << BIT_SHIFT_RARF_RC2)
6590 #define BIT_GET_RARF_RC2(x) (((x) >> BIT_SHIFT_RARF_RC2) & BIT_MASK_RARF_RC2)
6591
6592 #define BIT_SHIFT_RARF_RC1 0
6593 #define BIT_MASK_RARF_RC1 0x1f
6594 #define BIT_RARF_RC1(x) (((x) & BIT_MASK_RARF_RC1) << BIT_SHIFT_RARF_RC1)
6595 #define BIT_GET_RARF_RC1(x) (((x) >> BIT_SHIFT_RARF_RC1) & BIT_MASK_RARF_RC1)
6596
6597 /* 2 REG_RRSR                           (Offset 0x0440) */
6598
6599 #define BIT_SHIFT_RRSR_RSC 21
6600 #define BIT_MASK_RRSR_RSC 0x3
6601 #define BIT_RRSR_RSC(x) (((x) & BIT_MASK_RRSR_RSC) << BIT_SHIFT_RRSR_RSC)
6602 #define BIT_GET_RRSR_RSC(x) (((x) >> BIT_SHIFT_RRSR_RSC) & BIT_MASK_RRSR_RSC)
6603
6604 #define BIT_RRSR_BW BIT(20)
6605
6606 #define BIT_SHIFT_RRSC_BITMAP 0
6607 #define BIT_MASK_RRSC_BITMAP 0xfffff
6608 #define BIT_RRSC_BITMAP(x)                                                     \
6609         (((x) & BIT_MASK_RRSC_BITMAP) << BIT_SHIFT_RRSC_BITMAP)
6610 #define BIT_GET_RRSC_BITMAP(x)                                                 \
6611         (((x) >> BIT_SHIFT_RRSC_BITMAP) & BIT_MASK_RRSC_BITMAP)
6612
6613 /* 2 REG_ARFR0                          (Offset 0x0444) */
6614
6615 #define BIT_SHIFT_ARFR0_V1 0
6616 #define BIT_MASK_ARFR0_V1 0xffffffffffffffffL
6617 #define BIT_ARFR0_V1(x) (((x) & BIT_MASK_ARFR0_V1) << BIT_SHIFT_ARFR0_V1)
6618 #define BIT_GET_ARFR0_V1(x) (((x) >> BIT_SHIFT_ARFR0_V1) & BIT_MASK_ARFR0_V1)
6619
6620 /* 2 REG_ARFR1_V1                               (Offset 0x044C) */
6621
6622 #define BIT_SHIFT_ARFR1_V1 0
6623 #define BIT_MASK_ARFR1_V1 0xffffffffffffffffL
6624 #define BIT_ARFR1_V1(x) (((x) & BIT_MASK_ARFR1_V1) << BIT_SHIFT_ARFR1_V1)
6625 #define BIT_GET_ARFR1_V1(x) (((x) >> BIT_SHIFT_ARFR1_V1) & BIT_MASK_ARFR1_V1)
6626
6627 /* 2 REG_CCK_CHECK                              (Offset 0x0454) */
6628
6629 #define BIT_CHECK_CCK_EN BIT(7)
6630 #define BIT_EN_BCN_PKT_REL BIT(6)
6631 #define BIT_BCN_PORT_SEL BIT(5)
6632 #define BIT_MOREDATA_BYPASS BIT(4)
6633 #define BIT_EN_CLR_CMD_REL_BCN_PKT BIT(3)
6634
6635 /* 2 REG_CCK_CHECK                              (Offset 0x0454) */
6636
6637 #define BIT_R_EN_SET_MOREDATA BIT(2)
6638 #define BIT__R_DIS_CLEAR_MACID_RELEASE BIT(1)
6639 #define BIT__R_MACID_RELEASE_EN BIT(0)
6640
6641 /* 2 REG_AMPDU_MAX_TIME                 (Offset 0x0456) */
6642
6643 #define BIT_SHIFT_AMPDU_MAX_TIME 0
6644 #define BIT_MASK_AMPDU_MAX_TIME 0xff
6645 #define BIT_AMPDU_MAX_TIME(x)                                                  \
6646         (((x) & BIT_MASK_AMPDU_MAX_TIME) << BIT_SHIFT_AMPDU_MAX_TIME)
6647 #define BIT_GET_AMPDU_MAX_TIME(x)                                              \
6648         (((x) >> BIT_SHIFT_AMPDU_MAX_TIME) & BIT_MASK_AMPDU_MAX_TIME)
6649
6650 /* 2 REG_BCNQ1_BDNY_V1                  (Offset 0x0456) */
6651
6652 #define BIT_SHIFT_BCNQ1_PGBNDY_V1 0
6653 #define BIT_MASK_BCNQ1_PGBNDY_V1 0xfff
6654 #define BIT_BCNQ1_PGBNDY_V1(x)                                                 \
6655         (((x) & BIT_MASK_BCNQ1_PGBNDY_V1) << BIT_SHIFT_BCNQ1_PGBNDY_V1)
6656 #define BIT_GET_BCNQ1_PGBNDY_V1(x)                                             \
6657         (((x) >> BIT_SHIFT_BCNQ1_PGBNDY_V1) & BIT_MASK_BCNQ1_PGBNDY_V1)
6658
6659 /* 2 REG_AMPDU_MAX_LENGTH                       (Offset 0x0458) */
6660
6661 #define BIT_SHIFT_AMPDU_MAX_LENGTH 0
6662 #define BIT_MASK_AMPDU_MAX_LENGTH 0xffffffffL
6663 #define BIT_AMPDU_MAX_LENGTH(x)                                                \
6664         (((x) & BIT_MASK_AMPDU_MAX_LENGTH) << BIT_SHIFT_AMPDU_MAX_LENGTH)
6665 #define BIT_GET_AMPDU_MAX_LENGTH(x)                                            \
6666         (((x) >> BIT_SHIFT_AMPDU_MAX_LENGTH) & BIT_MASK_AMPDU_MAX_LENGTH)
6667
6668 /* 2 REG_ACQ_STOP                               (Offset 0x045C) */
6669
6670 #define BIT_AC7Q_STOP BIT(7)
6671 #define BIT_AC6Q_STOP BIT(6)
6672 #define BIT_AC5Q_STOP BIT(5)
6673 #define BIT_AC4Q_STOP BIT(4)
6674 #define BIT_AC3Q_STOP BIT(3)
6675 #define BIT_AC2Q_STOP BIT(2)
6676 #define BIT_AC1Q_STOP BIT(1)
6677 #define BIT_AC0Q_STOP BIT(0)
6678
6679 /* 2 REG_NDPA_RATE                              (Offset 0x045D) */
6680
6681 #define BIT_SHIFT_R_NDPA_RATE_V1 0
6682 #define BIT_MASK_R_NDPA_RATE_V1 0xff
6683 #define BIT_R_NDPA_RATE_V1(x)                                                  \
6684         (((x) & BIT_MASK_R_NDPA_RATE_V1) << BIT_SHIFT_R_NDPA_RATE_V1)
6685 #define BIT_GET_R_NDPA_RATE_V1(x)                                              \
6686         (((x) >> BIT_SHIFT_R_NDPA_RATE_V1) & BIT_MASK_R_NDPA_RATE_V1)
6687
6688 /* 2 REG_TX_HANG_CTRL                   (Offset 0x045E) */
6689
6690 #define BIT_R_EN_GNT_BT_AWAKE BIT(3)
6691
6692 /* 2 REG_TX_HANG_CTRL                   (Offset 0x045E) */
6693
6694 #define BIT_EN_EOF_V1 BIT(2)
6695
6696 /* 2 REG_TX_HANG_CTRL                   (Offset 0x045E) */
6697
6698 #define BIT_DIS_OQT_BLOCK BIT(1)
6699 #define BIT_SEARCH_QUEUE_EN BIT(0)
6700
6701 /* 2 REG_NDPA_OPT_CTRL                  (Offset 0x045F) */
6702
6703 #define BIT_R_DIS_MACID_RELEASE_RTY BIT(5)
6704
6705 /* 2 REG_NDPA_OPT_CTRL                  (Offset 0x045F) */
6706
6707 #define BIT_SHIFT_BW_SIGTA 3
6708 #define BIT_MASK_BW_SIGTA 0x3
6709 #define BIT_BW_SIGTA(x) (((x) & BIT_MASK_BW_SIGTA) << BIT_SHIFT_BW_SIGTA)
6710 #define BIT_GET_BW_SIGTA(x) (((x) >> BIT_SHIFT_BW_SIGTA) & BIT_MASK_BW_SIGTA)
6711
6712 /* 2 REG_NDPA_OPT_CTRL                  (Offset 0x045F) */
6713
6714 #define BIT_EN_BAR_SIGTA BIT(2)
6715
6716 /* 2 REG_NDPA_OPT_CTRL                  (Offset 0x045F) */
6717
6718 #define BIT_SHIFT_R_NDPA_BW 0
6719 #define BIT_MASK_R_NDPA_BW 0x3
6720 #define BIT_R_NDPA_BW(x) (((x) & BIT_MASK_R_NDPA_BW) << BIT_SHIFT_R_NDPA_BW)
6721 #define BIT_GET_R_NDPA_BW(x) (((x) >> BIT_SHIFT_R_NDPA_BW) & BIT_MASK_R_NDPA_BW)
6722
6723 /* 2 REG_RD_RESP_PKT_TH                 (Offset 0x0463) */
6724
6725 #define BIT_SHIFT_RD_RESP_PKT_TH_V1 0
6726 #define BIT_MASK_RD_RESP_PKT_TH_V1 0x3f
6727 #define BIT_RD_RESP_PKT_TH_V1(x)                                               \
6728         (((x) & BIT_MASK_RD_RESP_PKT_TH_V1) << BIT_SHIFT_RD_RESP_PKT_TH_V1)
6729 #define BIT_GET_RD_RESP_PKT_TH_V1(x)                                           \
6730         (((x) >> BIT_SHIFT_RD_RESP_PKT_TH_V1) & BIT_MASK_RD_RESP_PKT_TH_V1)
6731
6732 /* 2 REG_CMDQ_INFO                              (Offset 0x0464) */
6733
6734 #define BIT_SHIFT_QUEUEMACID_CMDQ_V1 25
6735 #define BIT_MASK_QUEUEMACID_CMDQ_V1 0x7f
6736 #define BIT_QUEUEMACID_CMDQ_V1(x)                                              \
6737         (((x) & BIT_MASK_QUEUEMACID_CMDQ_V1) << BIT_SHIFT_QUEUEMACID_CMDQ_V1)
6738 #define BIT_GET_QUEUEMACID_CMDQ_V1(x)                                          \
6739         (((x) >> BIT_SHIFT_QUEUEMACID_CMDQ_V1) & BIT_MASK_QUEUEMACID_CMDQ_V1)
6740
6741 /* 2 REG_CMDQ_INFO                              (Offset 0x0464) */
6742
6743 #define BIT_SHIFT_QUEUEAC_CMDQ_V1 23
6744 #define BIT_MASK_QUEUEAC_CMDQ_V1 0x3
6745 #define BIT_QUEUEAC_CMDQ_V1(x)                                                 \
6746         (((x) & BIT_MASK_QUEUEAC_CMDQ_V1) << BIT_SHIFT_QUEUEAC_CMDQ_V1)
6747 #define BIT_GET_QUEUEAC_CMDQ_V1(x)                                             \
6748         (((x) >> BIT_SHIFT_QUEUEAC_CMDQ_V1) & BIT_MASK_QUEUEAC_CMDQ_V1)
6749
6750 /* 2 REG_CMDQ_INFO                              (Offset 0x0464) */
6751
6752 #define BIT_TIDEMPTY_CMDQ_V1 BIT(22)
6753
6754 /* 2 REG_CMDQ_INFO                              (Offset 0x0464) */
6755
6756 #define BIT_SHIFT_TAIL_PKT_CMDQ_V2 11
6757 #define BIT_MASK_TAIL_PKT_CMDQ_V2 0x7ff
6758 #define BIT_TAIL_PKT_CMDQ_V2(x)                                                \
6759         (((x) & BIT_MASK_TAIL_PKT_CMDQ_V2) << BIT_SHIFT_TAIL_PKT_CMDQ_V2)
6760 #define BIT_GET_TAIL_PKT_CMDQ_V2(x)                                            \
6761         (((x) >> BIT_SHIFT_TAIL_PKT_CMDQ_V2) & BIT_MASK_TAIL_PKT_CMDQ_V2)
6762
6763 /* 2 REG_CMDQ_INFO                              (Offset 0x0464) */
6764
6765 #define BIT_SHIFT_HEAD_PKT_CMDQ_V1 0
6766 #define BIT_MASK_HEAD_PKT_CMDQ_V1 0x7ff
6767 #define BIT_HEAD_PKT_CMDQ_V1(x)                                                \
6768         (((x) & BIT_MASK_HEAD_PKT_CMDQ_V1) << BIT_SHIFT_HEAD_PKT_CMDQ_V1)
6769 #define BIT_GET_HEAD_PKT_CMDQ_V1(x)                                            \
6770         (((x) >> BIT_SHIFT_HEAD_PKT_CMDQ_V1) & BIT_MASK_HEAD_PKT_CMDQ_V1)
6771
6772 /* 2 REG_Q4_INFO                                (Offset 0x0468) */
6773
6774 #define BIT_SHIFT_QUEUEMACID_Q4_V1 25
6775 #define BIT_MASK_QUEUEMACID_Q4_V1 0x7f
6776 #define BIT_QUEUEMACID_Q4_V1(x)                                                \
6777         (((x) & BIT_MASK_QUEUEMACID_Q4_V1) << BIT_SHIFT_QUEUEMACID_Q4_V1)
6778 #define BIT_GET_QUEUEMACID_Q4_V1(x)                                            \
6779         (((x) >> BIT_SHIFT_QUEUEMACID_Q4_V1) & BIT_MASK_QUEUEMACID_Q4_V1)
6780
6781 #define BIT_SHIFT_QUEUEAC_Q4_V1 23
6782 #define BIT_MASK_QUEUEAC_Q4_V1 0x3
6783 #define BIT_QUEUEAC_Q4_V1(x)                                                   \
6784         (((x) & BIT_MASK_QUEUEAC_Q4_V1) << BIT_SHIFT_QUEUEAC_Q4_V1)
6785 #define BIT_GET_QUEUEAC_Q4_V1(x)                                               \
6786         (((x) >> BIT_SHIFT_QUEUEAC_Q4_V1) & BIT_MASK_QUEUEAC_Q4_V1)
6787
6788 /* 2 REG_Q4_INFO                                (Offset 0x0468) */
6789
6790 #define BIT_TIDEMPTY_Q4_V1 BIT(22)
6791
6792 /* 2 REG_Q4_INFO                                (Offset 0x0468) */
6793
6794 #define BIT_SHIFT_TAIL_PKT_Q4_V2 11
6795 #define BIT_MASK_TAIL_PKT_Q4_V2 0x7ff
6796 #define BIT_TAIL_PKT_Q4_V2(x)                                                  \
6797         (((x) & BIT_MASK_TAIL_PKT_Q4_V2) << BIT_SHIFT_TAIL_PKT_Q4_V2)
6798 #define BIT_GET_TAIL_PKT_Q4_V2(x)                                              \
6799         (((x) >> BIT_SHIFT_TAIL_PKT_Q4_V2) & BIT_MASK_TAIL_PKT_Q4_V2)
6800
6801 /* 2 REG_Q4_INFO                                (Offset 0x0468) */
6802
6803 #define BIT_SHIFT_HEAD_PKT_Q4_V1 0
6804 #define BIT_MASK_HEAD_PKT_Q4_V1 0x7ff
6805 #define BIT_HEAD_PKT_Q4_V1(x)                                                  \
6806         (((x) & BIT_MASK_HEAD_PKT_Q4_V1) << BIT_SHIFT_HEAD_PKT_Q4_V1)
6807 #define BIT_GET_HEAD_PKT_Q4_V1(x)                                              \
6808         (((x) >> BIT_SHIFT_HEAD_PKT_Q4_V1) & BIT_MASK_HEAD_PKT_Q4_V1)
6809
6810 /* 2 REG_Q5_INFO                                (Offset 0x046C) */
6811
6812 #define BIT_SHIFT_QUEUEMACID_Q5_V1 25
6813 #define BIT_MASK_QUEUEMACID_Q5_V1 0x7f
6814 #define BIT_QUEUEMACID_Q5_V1(x)                                                \
6815         (((x) & BIT_MASK_QUEUEMACID_Q5_V1) << BIT_SHIFT_QUEUEMACID_Q5_V1)
6816 #define BIT_GET_QUEUEMACID_Q5_V1(x)                                            \
6817         (((x) >> BIT_SHIFT_QUEUEMACID_Q5_V1) & BIT_MASK_QUEUEMACID_Q5_V1)
6818
6819 #define BIT_SHIFT_QUEUEAC_Q5_V1 23
6820 #define BIT_MASK_QUEUEAC_Q5_V1 0x3
6821 #define BIT_QUEUEAC_Q5_V1(x)                                                   \
6822         (((x) & BIT_MASK_QUEUEAC_Q5_V1) << BIT_SHIFT_QUEUEAC_Q5_V1)
6823 #define BIT_GET_QUEUEAC_Q5_V1(x)                                               \
6824         (((x) >> BIT_SHIFT_QUEUEAC_Q5_V1) & BIT_MASK_QUEUEAC_Q5_V1)
6825
6826 /* 2 REG_Q5_INFO                                (Offset 0x046C) */
6827
6828 #define BIT_TIDEMPTY_Q5_V1 BIT(22)
6829
6830 /* 2 REG_Q5_INFO                                (Offset 0x046C) */
6831
6832 #define BIT_SHIFT_TAIL_PKT_Q5_V2 11
6833 #define BIT_MASK_TAIL_PKT_Q5_V2 0x7ff
6834 #define BIT_TAIL_PKT_Q5_V2(x)                                                  \
6835         (((x) & BIT_MASK_TAIL_PKT_Q5_V2) << BIT_SHIFT_TAIL_PKT_Q5_V2)
6836 #define BIT_GET_TAIL_PKT_Q5_V2(x)                                              \
6837         (((x) >> BIT_SHIFT_TAIL_PKT_Q5_V2) & BIT_MASK_TAIL_PKT_Q5_V2)
6838
6839 /* 2 REG_Q5_INFO                                (Offset 0x046C) */
6840
6841 #define BIT_SHIFT_HEAD_PKT_Q5_V1 0
6842 #define BIT_MASK_HEAD_PKT_Q5_V1 0x7ff
6843 #define BIT_HEAD_PKT_Q5_V1(x)                                                  \
6844         (((x) & BIT_MASK_HEAD_PKT_Q5_V1) << BIT_SHIFT_HEAD_PKT_Q5_V1)
6845 #define BIT_GET_HEAD_PKT_Q5_V1(x)                                              \
6846         (((x) >> BIT_SHIFT_HEAD_PKT_Q5_V1) & BIT_MASK_HEAD_PKT_Q5_V1)
6847
6848 /* 2 REG_Q6_INFO                                (Offset 0x0470) */
6849
6850 #define BIT_SHIFT_QUEUEMACID_Q6_V1 25
6851 #define BIT_MASK_QUEUEMACID_Q6_V1 0x7f
6852 #define BIT_QUEUEMACID_Q6_V1(x)                                                \
6853         (((x) & BIT_MASK_QUEUEMACID_Q6_V1) << BIT_SHIFT_QUEUEMACID_Q6_V1)
6854 #define BIT_GET_QUEUEMACID_Q6_V1(x)                                            \
6855         (((x) >> BIT_SHIFT_QUEUEMACID_Q6_V1) & BIT_MASK_QUEUEMACID_Q6_V1)
6856
6857 #define BIT_SHIFT_QUEUEAC_Q6_V1 23
6858 #define BIT_MASK_QUEUEAC_Q6_V1 0x3
6859 #define BIT_QUEUEAC_Q6_V1(x)                                                   \
6860         (((x) & BIT_MASK_QUEUEAC_Q6_V1) << BIT_SHIFT_QUEUEAC_Q6_V1)
6861 #define BIT_GET_QUEUEAC_Q6_V1(x)                                               \
6862         (((x) >> BIT_SHIFT_QUEUEAC_Q6_V1) & BIT_MASK_QUEUEAC_Q6_V1)
6863
6864 /* 2 REG_Q6_INFO                                (Offset 0x0470) */
6865
6866 #define BIT_TIDEMPTY_Q6_V1 BIT(22)
6867
6868 /* 2 REG_Q6_INFO                                (Offset 0x0470) */
6869
6870 #define BIT_SHIFT_TAIL_PKT_Q6_V2 11
6871 #define BIT_MASK_TAIL_PKT_Q6_V2 0x7ff
6872 #define BIT_TAIL_PKT_Q6_V2(x)                                                  \
6873         (((x) & BIT_MASK_TAIL_PKT_Q6_V2) << BIT_SHIFT_TAIL_PKT_Q6_V2)
6874 #define BIT_GET_TAIL_PKT_Q6_V2(x)                                              \
6875         (((x) >> BIT_SHIFT_TAIL_PKT_Q6_V2) & BIT_MASK_TAIL_PKT_Q6_V2)
6876
6877 /* 2 REG_Q6_INFO                                (Offset 0x0470) */
6878
6879 #define BIT_SHIFT_HEAD_PKT_Q6_V1 0
6880 #define BIT_MASK_HEAD_PKT_Q6_V1 0x7ff
6881 #define BIT_HEAD_PKT_Q6_V1(x)                                                  \
6882         (((x) & BIT_MASK_HEAD_PKT_Q6_V1) << BIT_SHIFT_HEAD_PKT_Q6_V1)
6883 #define BIT_GET_HEAD_PKT_Q6_V1(x)                                              \
6884         (((x) >> BIT_SHIFT_HEAD_PKT_Q6_V1) & BIT_MASK_HEAD_PKT_Q6_V1)
6885
6886 /* 2 REG_Q7_INFO                                (Offset 0x0474) */
6887
6888 #define BIT_SHIFT_QUEUEMACID_Q7_V1 25
6889 #define BIT_MASK_QUEUEMACID_Q7_V1 0x7f
6890 #define BIT_QUEUEMACID_Q7_V1(x)                                                \
6891         (((x) & BIT_MASK_QUEUEMACID_Q7_V1) << BIT_SHIFT_QUEUEMACID_Q7_V1)
6892 #define BIT_GET_QUEUEMACID_Q7_V1(x)                                            \
6893         (((x) >> BIT_SHIFT_QUEUEMACID_Q7_V1) & BIT_MASK_QUEUEMACID_Q7_V1)
6894
6895 #define BIT_SHIFT_QUEUEAC_Q7_V1 23
6896 #define BIT_MASK_QUEUEAC_Q7_V1 0x3
6897 #define BIT_QUEUEAC_Q7_V1(x)                                                   \
6898         (((x) & BIT_MASK_QUEUEAC_Q7_V1) << BIT_SHIFT_QUEUEAC_Q7_V1)
6899 #define BIT_GET_QUEUEAC_Q7_V1(x)                                               \
6900         (((x) >> BIT_SHIFT_QUEUEAC_Q7_V1) & BIT_MASK_QUEUEAC_Q7_V1)
6901
6902 /* 2 REG_Q7_INFO                                (Offset 0x0474) */
6903
6904 #define BIT_TIDEMPTY_Q7_V1 BIT(22)
6905
6906 /* 2 REG_Q7_INFO                                (Offset 0x0474) */
6907
6908 #define BIT_SHIFT_TAIL_PKT_Q7_V2 11
6909 #define BIT_MASK_TAIL_PKT_Q7_V2 0x7ff
6910 #define BIT_TAIL_PKT_Q7_V2(x)                                                  \
6911         (((x) & BIT_MASK_TAIL_PKT_Q7_V2) << BIT_SHIFT_TAIL_PKT_Q7_V2)
6912 #define BIT_GET_TAIL_PKT_Q7_V2(x)                                              \
6913         (((x) >> BIT_SHIFT_TAIL_PKT_Q7_V2) & BIT_MASK_TAIL_PKT_Q7_V2)
6914
6915 /* 2 REG_Q7_INFO                                (Offset 0x0474) */
6916
6917 #define BIT_SHIFT_HEAD_PKT_Q7_V1 0
6918 #define BIT_MASK_HEAD_PKT_Q7_V1 0x7ff
6919 #define BIT_HEAD_PKT_Q7_V1(x)                                                  \
6920         (((x) & BIT_MASK_HEAD_PKT_Q7_V1) << BIT_SHIFT_HEAD_PKT_Q7_V1)
6921 #define BIT_GET_HEAD_PKT_Q7_V1(x)                                              \
6922         (((x) >> BIT_SHIFT_HEAD_PKT_Q7_V1) & BIT_MASK_HEAD_PKT_Q7_V1)
6923
6924 /* 2 REG_WMAC_LBK_BUF_HD_V1                     (Offset 0x0478) */
6925
6926 #define BIT_SHIFT_WMAC_LBK_BUF_HEAD_V1 0
6927 #define BIT_MASK_WMAC_LBK_BUF_HEAD_V1 0xfff
6928 #define BIT_WMAC_LBK_BUF_HEAD_V1(x)                                            \
6929         (((x) & BIT_MASK_WMAC_LBK_BUF_HEAD_V1)                                 \
6930          << BIT_SHIFT_WMAC_LBK_BUF_HEAD_V1)
6931 #define BIT_GET_WMAC_LBK_BUF_HEAD_V1(x)                                        \
6932         (((x) >> BIT_SHIFT_WMAC_LBK_BUF_HEAD_V1) &                             \
6933          BIT_MASK_WMAC_LBK_BUF_HEAD_V1)
6934
6935 /* 2 REG_MGQ_BDNY_V1                            (Offset 0x047A) */
6936
6937 #define BIT_SHIFT_MGQ_PGBNDY_V1 0
6938 #define BIT_MASK_MGQ_PGBNDY_V1 0xfff
6939 #define BIT_MGQ_PGBNDY_V1(x)                                                   \
6940         (((x) & BIT_MASK_MGQ_PGBNDY_V1) << BIT_SHIFT_MGQ_PGBNDY_V1)
6941 #define BIT_GET_MGQ_PGBNDY_V1(x)                                               \
6942         (((x) >> BIT_SHIFT_MGQ_PGBNDY_V1) & BIT_MASK_MGQ_PGBNDY_V1)
6943
6944 /* 2 REG_TXRPT_CTRL                             (Offset 0x047C) */
6945
6946 #define BIT_SHIFT_TRXRPT_TIMER_TH 24
6947 #define BIT_MASK_TRXRPT_TIMER_TH 0xff
6948 #define BIT_TRXRPT_TIMER_TH(x)                                                 \
6949         (((x) & BIT_MASK_TRXRPT_TIMER_TH) << BIT_SHIFT_TRXRPT_TIMER_TH)
6950 #define BIT_GET_TRXRPT_TIMER_TH(x)                                             \
6951         (((x) >> BIT_SHIFT_TRXRPT_TIMER_TH) & BIT_MASK_TRXRPT_TIMER_TH)
6952
6953 /* 2 REG_TXRPT_CTRL                             (Offset 0x047C) */
6954
6955 #define BIT_SHIFT_TRXRPT_LEN_TH 16
6956 #define BIT_MASK_TRXRPT_LEN_TH 0xff
6957 #define BIT_TRXRPT_LEN_TH(x)                                                   \
6958         (((x) & BIT_MASK_TRXRPT_LEN_TH) << BIT_SHIFT_TRXRPT_LEN_TH)
6959 #define BIT_GET_TRXRPT_LEN_TH(x)                                               \
6960         (((x) >> BIT_SHIFT_TRXRPT_LEN_TH) & BIT_MASK_TRXRPT_LEN_TH)
6961
6962 /* 2 REG_TXRPT_CTRL                             (Offset 0x047C) */
6963
6964 #define BIT_SHIFT_TRXRPT_READ_PTR 8
6965 #define BIT_MASK_TRXRPT_READ_PTR 0xff
6966 #define BIT_TRXRPT_READ_PTR(x)                                                 \
6967         (((x) & BIT_MASK_TRXRPT_READ_PTR) << BIT_SHIFT_TRXRPT_READ_PTR)
6968 #define BIT_GET_TRXRPT_READ_PTR(x)                                             \
6969         (((x) >> BIT_SHIFT_TRXRPT_READ_PTR) & BIT_MASK_TRXRPT_READ_PTR)
6970
6971 /* 2 REG_TXRPT_CTRL                             (Offset 0x047C) */
6972
6973 #define BIT_SHIFT_TRXRPT_WRITE_PTR 0
6974 #define BIT_MASK_TRXRPT_WRITE_PTR 0xff
6975 #define BIT_TRXRPT_WRITE_PTR(x)                                                \
6976         (((x) & BIT_MASK_TRXRPT_WRITE_PTR) << BIT_SHIFT_TRXRPT_WRITE_PTR)
6977 #define BIT_GET_TRXRPT_WRITE_PTR(x)                                            \
6978         (((x) >> BIT_SHIFT_TRXRPT_WRITE_PTR) & BIT_MASK_TRXRPT_WRITE_PTR)
6979
6980 /* 2 REG_INIRTS_RATE_SEL                        (Offset 0x0480) */
6981
6982 #define BIT_LEAG_RTS_BW_DUP BIT(5)
6983
6984 /* 2 REG_BASIC_CFEND_RATE                       (Offset 0x0481) */
6985
6986 #define BIT_SHIFT_BASIC_CFEND_RATE 0
6987 #define BIT_MASK_BASIC_CFEND_RATE 0x1f
6988 #define BIT_BASIC_CFEND_RATE(x)                                                \
6989         (((x) & BIT_MASK_BASIC_CFEND_RATE) << BIT_SHIFT_BASIC_CFEND_RATE)
6990 #define BIT_GET_BASIC_CFEND_RATE(x)                                            \
6991         (((x) >> BIT_SHIFT_BASIC_CFEND_RATE) & BIT_MASK_BASIC_CFEND_RATE)
6992
6993 /* 2 REG_STBC_CFEND_RATE                        (Offset 0x0482) */
6994
6995 #define BIT_SHIFT_STBC_CFEND_RATE 0
6996 #define BIT_MASK_STBC_CFEND_RATE 0x1f
6997 #define BIT_STBC_CFEND_RATE(x)                                                 \
6998         (((x) & BIT_MASK_STBC_CFEND_RATE) << BIT_SHIFT_STBC_CFEND_RATE)
6999 #define BIT_GET_STBC_CFEND_RATE(x)                                             \
7000         (((x) >> BIT_SHIFT_STBC_CFEND_RATE) & BIT_MASK_STBC_CFEND_RATE)
7001
7002 /* 2 REG_DATA_SC                                (Offset 0x0483) */
7003
7004 #define BIT_SHIFT_TXSC_40M 4
7005 #define BIT_MASK_TXSC_40M 0xf
7006 #define BIT_TXSC_40M(x) (((x) & BIT_MASK_TXSC_40M) << BIT_SHIFT_TXSC_40M)
7007 #define BIT_GET_TXSC_40M(x) (((x) >> BIT_SHIFT_TXSC_40M) & BIT_MASK_TXSC_40M)
7008
7009 #define BIT_SHIFT_TXSC_20M 0
7010 #define BIT_MASK_TXSC_20M 0xf
7011 #define BIT_TXSC_20M(x) (((x) & BIT_MASK_TXSC_20M) << BIT_SHIFT_TXSC_20M)
7012 #define BIT_GET_TXSC_20M(x) (((x) >> BIT_SHIFT_TXSC_20M) & BIT_MASK_TXSC_20M)
7013
7014 /* 2 REG_MACID_SLEEP3                   (Offset 0x0484) */
7015
7016 #define BIT_SHIFT_MACID127_96_PKTSLEEP 0
7017 #define BIT_MASK_MACID127_96_PKTSLEEP 0xffffffffL
7018 #define BIT_MACID127_96_PKTSLEEP(x)                                            \
7019         (((x) & BIT_MASK_MACID127_96_PKTSLEEP)                                 \
7020          << BIT_SHIFT_MACID127_96_PKTSLEEP)
7021 #define BIT_GET_MACID127_96_PKTSLEEP(x)                                        \
7022         (((x) >> BIT_SHIFT_MACID127_96_PKTSLEEP) &                             \
7023          BIT_MASK_MACID127_96_PKTSLEEP)
7024
7025 /* 2 REG_MACID_SLEEP1                   (Offset 0x0488) */
7026
7027 #define BIT_SHIFT_MACID63_32_PKTSLEEP 0
7028 #define BIT_MASK_MACID63_32_PKTSLEEP 0xffffffffL
7029 #define BIT_MACID63_32_PKTSLEEP(x)                                             \
7030         (((x) & BIT_MASK_MACID63_32_PKTSLEEP) << BIT_SHIFT_MACID63_32_PKTSLEEP)
7031 #define BIT_GET_MACID63_32_PKTSLEEP(x)                                         \
7032         (((x) >> BIT_SHIFT_MACID63_32_PKTSLEEP) & BIT_MASK_MACID63_32_PKTSLEEP)
7033
7034 /* 2 REG_ARFR2_V1                               (Offset 0x048C) */
7035
7036 #define BIT_SHIFT_ARFR2_V1 0
7037 #define BIT_MASK_ARFR2_V1 0xffffffffffffffffL
7038 #define BIT_ARFR2_V1(x) (((x) & BIT_MASK_ARFR2_V1) << BIT_SHIFT_ARFR2_V1)
7039 #define BIT_GET_ARFR2_V1(x) (((x) >> BIT_SHIFT_ARFR2_V1) & BIT_MASK_ARFR2_V1)
7040
7041 /* 2 REG_ARFR3_V1                               (Offset 0x0494) */
7042
7043 #define BIT_SHIFT_ARFR3_V1 0
7044 #define BIT_MASK_ARFR3_V1 0xffffffffffffffffL
7045 #define BIT_ARFR3_V1(x) (((x) & BIT_MASK_ARFR3_V1) << BIT_SHIFT_ARFR3_V1)
7046 #define BIT_GET_ARFR3_V1(x) (((x) >> BIT_SHIFT_ARFR3_V1) & BIT_MASK_ARFR3_V1)
7047
7048 /* 2 REG_ARFR4                          (Offset 0x049C) */
7049
7050 #define BIT_SHIFT_ARFR4 0
7051 #define BIT_MASK_ARFR4 0xffffffffffffffffL
7052 #define BIT_ARFR4(x) (((x) & BIT_MASK_ARFR4) << BIT_SHIFT_ARFR4)
7053 #define BIT_GET_ARFR4(x) (((x) >> BIT_SHIFT_ARFR4) & BIT_MASK_ARFR4)
7054
7055 /* 2 REG_ARFR5                          (Offset 0x04A4) */
7056
7057 #define BIT_SHIFT_ARFR5 0
7058 #define BIT_MASK_ARFR5 0xffffffffffffffffL
7059 #define BIT_ARFR5(x) (((x) & BIT_MASK_ARFR5) << BIT_SHIFT_ARFR5)
7060 #define BIT_GET_ARFR5(x) (((x) >> BIT_SHIFT_ARFR5) & BIT_MASK_ARFR5)
7061
7062 /* 2 REG_TXRPT_START_OFFSET                     (Offset 0x04AC) */
7063
7064 #define BIT_SHIFT_MACID_MURATE_OFFSET 24
7065 #define BIT_MASK_MACID_MURATE_OFFSET 0xff
7066 #define BIT_MACID_MURATE_OFFSET(x)                                             \
7067         (((x) & BIT_MASK_MACID_MURATE_OFFSET) << BIT_SHIFT_MACID_MURATE_OFFSET)
7068 #define BIT_GET_MACID_MURATE_OFFSET(x)                                         \
7069         (((x) >> BIT_SHIFT_MACID_MURATE_OFFSET) & BIT_MASK_MACID_MURATE_OFFSET)
7070
7071 /* 2 REG_TXRPT_START_OFFSET                     (Offset 0x04AC) */
7072
7073 #define BIT_RPTFIFO_SIZE_OPT BIT(16)
7074
7075 /* 2 REG_TXRPT_START_OFFSET                     (Offset 0x04AC) */
7076
7077 #define BIT_SHIFT_MACID_CTRL_OFFSET 8
7078 #define BIT_MASK_MACID_CTRL_OFFSET 0xff
7079 #define BIT_MACID_CTRL_OFFSET(x)                                               \
7080         (((x) & BIT_MASK_MACID_CTRL_OFFSET) << BIT_SHIFT_MACID_CTRL_OFFSET)
7081 #define BIT_GET_MACID_CTRL_OFFSET(x)                                           \
7082         (((x) >> BIT_SHIFT_MACID_CTRL_OFFSET) & BIT_MASK_MACID_CTRL_OFFSET)
7083
7084 /* 2 REG_TXRPT_START_OFFSET                     (Offset 0x04AC) */
7085
7086 #define BIT_SHIFT_AMPDU_TXRPT_OFFSET 0
7087 #define BIT_MASK_AMPDU_TXRPT_OFFSET 0xff
7088 #define BIT_AMPDU_TXRPT_OFFSET(x)                                              \
7089         (((x) & BIT_MASK_AMPDU_TXRPT_OFFSET) << BIT_SHIFT_AMPDU_TXRPT_OFFSET)
7090 #define BIT_GET_AMPDU_TXRPT_OFFSET(x)                                          \
7091         (((x) >> BIT_SHIFT_AMPDU_TXRPT_OFFSET) & BIT_MASK_AMPDU_TXRPT_OFFSET)
7092
7093 /* 2 REG_POWER_STAGE1                   (Offset 0x04B4) */
7094
7095 #define BIT_PTA_WL_PRI_MASK_CPU_MGQ BIT(31)
7096 #define BIT_PTA_WL_PRI_MASK_BCNQ BIT(30)
7097 #define BIT_PTA_WL_PRI_MASK_HIQ BIT(29)
7098 #define BIT_PTA_WL_PRI_MASK_MGQ BIT(28)
7099 #define BIT_PTA_WL_PRI_MASK_BK BIT(27)
7100 #define BIT_PTA_WL_PRI_MASK_BE BIT(26)
7101 #define BIT_PTA_WL_PRI_MASK_VI BIT(25)
7102 #define BIT_PTA_WL_PRI_MASK_VO BIT(24)
7103
7104 /* 2 REG_POWER_STAGE1                   (Offset 0x04B4) */
7105
7106 #define BIT_SHIFT_POWER_STAGE1 0
7107 #define BIT_MASK_POWER_STAGE1 0xffffff
7108 #define BIT_POWER_STAGE1(x)                                                    \
7109         (((x) & BIT_MASK_POWER_STAGE1) << BIT_SHIFT_POWER_STAGE1)
7110 #define BIT_GET_POWER_STAGE1(x)                                                \
7111         (((x) >> BIT_SHIFT_POWER_STAGE1) & BIT_MASK_POWER_STAGE1)
7112
7113 /* 2 REG_POWER_STAGE2                   (Offset 0x04B8) */
7114
7115 #define BIT__R_CTRL_PKT_POW_ADJ BIT(24)
7116
7117 /* 2 REG_POWER_STAGE2                   (Offset 0x04B8) */
7118
7119 #define BIT_SHIFT_POWER_STAGE2 0
7120 #define BIT_MASK_POWER_STAGE2 0xffffff
7121 #define BIT_POWER_STAGE2(x)                                                    \
7122         (((x) & BIT_MASK_POWER_STAGE2) << BIT_SHIFT_POWER_STAGE2)
7123 #define BIT_GET_POWER_STAGE2(x)                                                \
7124         (((x) >> BIT_SHIFT_POWER_STAGE2) & BIT_MASK_POWER_STAGE2)
7125
7126 /* 2 REG_SW_AMPDU_BURST_MODE_CTRL               (Offset 0x04BC) */
7127
7128 #define BIT_SHIFT_PAD_NUM_THRES 24
7129 #define BIT_MASK_PAD_NUM_THRES 0x3f
7130 #define BIT_PAD_NUM_THRES(x)                                                   \
7131         (((x) & BIT_MASK_PAD_NUM_THRES) << BIT_SHIFT_PAD_NUM_THRES)
7132 #define BIT_GET_PAD_NUM_THRES(x)                                               \
7133         (((x) >> BIT_SHIFT_PAD_NUM_THRES) & BIT_MASK_PAD_NUM_THRES)
7134
7135 /* 2 REG_SW_AMPDU_BURST_MODE_CTRL               (Offset 0x04BC) */
7136
7137 #define BIT_R_DMA_THIS_QUEUE_BK BIT(23)
7138 #define BIT_R_DMA_THIS_QUEUE_BE BIT(22)
7139 #define BIT_R_DMA_THIS_QUEUE_VI BIT(21)
7140 #define BIT_R_DMA_THIS_QUEUE_VO BIT(20)
7141
7142 #define BIT_SHIFT_R_TOTAL_LEN_TH 8
7143 #define BIT_MASK_R_TOTAL_LEN_TH 0xfff
7144 #define BIT_R_TOTAL_LEN_TH(x)                                                  \
7145         (((x) & BIT_MASK_R_TOTAL_LEN_TH) << BIT_SHIFT_R_TOTAL_LEN_TH)
7146 #define BIT_GET_R_TOTAL_LEN_TH(x)                                              \
7147         (((x) >> BIT_SHIFT_R_TOTAL_LEN_TH) & BIT_MASK_R_TOTAL_LEN_TH)
7148
7149 /* 2 REG_SW_AMPDU_BURST_MODE_CTRL               (Offset 0x04BC) */
7150
7151 #define BIT_EN_NEW_EARLY BIT(7)
7152
7153 /* 2 REG_SW_AMPDU_BURST_MODE_CTRL               (Offset 0x04BC) */
7154
7155 #define BIT_PRE_TX_CMD BIT(6)
7156
7157 #define BIT_SHIFT_NUM_SCL_EN 4
7158 #define BIT_MASK_NUM_SCL_EN 0x3
7159 #define BIT_NUM_SCL_EN(x) (((x) & BIT_MASK_NUM_SCL_EN) << BIT_SHIFT_NUM_SCL_EN)
7160 #define BIT_GET_NUM_SCL_EN(x)                                                  \
7161         (((x) >> BIT_SHIFT_NUM_SCL_EN) & BIT_MASK_NUM_SCL_EN)
7162
7163 #define BIT_BK_EN BIT(3)
7164 #define BIT_BE_EN BIT(2)
7165 #define BIT_VI_EN BIT(1)
7166 #define BIT_VO_EN BIT(0)
7167
7168 /* 2 REG_PKT_LIFE_TIME                  (Offset 0x04C0) */
7169
7170 #define BIT_SHIFT_PKT_LIFTIME_BEBK 16
7171 #define BIT_MASK_PKT_LIFTIME_BEBK 0xffff
7172 #define BIT_PKT_LIFTIME_BEBK(x)                                                \
7173         (((x) & BIT_MASK_PKT_LIFTIME_BEBK) << BIT_SHIFT_PKT_LIFTIME_BEBK)
7174 #define BIT_GET_PKT_LIFTIME_BEBK(x)                                            \
7175         (((x) >> BIT_SHIFT_PKT_LIFTIME_BEBK) & BIT_MASK_PKT_LIFTIME_BEBK)
7176
7177 #define BIT_SHIFT_PKT_LIFTIME_VOVI 0
7178 #define BIT_MASK_PKT_LIFTIME_VOVI 0xffff
7179 #define BIT_PKT_LIFTIME_VOVI(x)                                                \
7180         (((x) & BIT_MASK_PKT_LIFTIME_VOVI) << BIT_SHIFT_PKT_LIFTIME_VOVI)
7181 #define BIT_GET_PKT_LIFTIME_VOVI(x)                                            \
7182         (((x) >> BIT_SHIFT_PKT_LIFTIME_VOVI) & BIT_MASK_PKT_LIFTIME_VOVI)
7183
7184 /* 2 REG_STBC_SETTING                   (Offset 0x04C4) */
7185
7186 #define BIT_SHIFT_CDEND_TXTIME_L 4
7187 #define BIT_MASK_CDEND_TXTIME_L 0xf
7188 #define BIT_CDEND_TXTIME_L(x)                                                  \
7189         (((x) & BIT_MASK_CDEND_TXTIME_L) << BIT_SHIFT_CDEND_TXTIME_L)
7190 #define BIT_GET_CDEND_TXTIME_L(x)                                              \
7191         (((x) >> BIT_SHIFT_CDEND_TXTIME_L) & BIT_MASK_CDEND_TXTIME_L)
7192
7193 #define BIT_SHIFT_NESS 2
7194 #define BIT_MASK_NESS 0x3
7195 #define BIT_NESS(x) (((x) & BIT_MASK_NESS) << BIT_SHIFT_NESS)
7196 #define BIT_GET_NESS(x) (((x) >> BIT_SHIFT_NESS) & BIT_MASK_NESS)
7197
7198 #define BIT_SHIFT_STBC_CFEND 0
7199 #define BIT_MASK_STBC_CFEND 0x3
7200 #define BIT_STBC_CFEND(x) (((x) & BIT_MASK_STBC_CFEND) << BIT_SHIFT_STBC_CFEND)
7201 #define BIT_GET_STBC_CFEND(x)                                                  \
7202         (((x) >> BIT_SHIFT_STBC_CFEND) & BIT_MASK_STBC_CFEND)
7203
7204 /* 2 REG_STBC_SETTING2                  (Offset 0x04C5) */
7205
7206 #define BIT_SHIFT_CDEND_TXTIME_H 0
7207 #define BIT_MASK_CDEND_TXTIME_H 0x1f
7208 #define BIT_CDEND_TXTIME_H(x)                                                  \
7209         (((x) & BIT_MASK_CDEND_TXTIME_H) << BIT_SHIFT_CDEND_TXTIME_H)
7210 #define BIT_GET_CDEND_TXTIME_H(x)                                              \
7211         (((x) >> BIT_SHIFT_CDEND_TXTIME_H) & BIT_MASK_CDEND_TXTIME_H)
7212
7213 /* 2 REG_QUEUE_CTRL                             (Offset 0x04C6) */
7214
7215 #define BIT_PTA_EDCCA_EN BIT(5)
7216 #define BIT_PTA_WL_TX_EN BIT(4)
7217
7218 /* 2 REG_QUEUE_CTRL                             (Offset 0x04C6) */
7219
7220 #define BIT_R_USE_DATA_BW BIT(3)
7221 #define BIT_TRI_PKT_INT_MODE1 BIT(2)
7222 #define BIT_TRI_PKT_INT_MODE0 BIT(1)
7223 #define BIT_ACQ_MODE_SEL BIT(0)
7224
7225 /* 2 REG_SINGLE_AMPDU_CTRL                      (Offset 0x04C7) */
7226
7227 #define BIT_EN_SINGLE_APMDU BIT(7)
7228
7229 /* 2 REG_PROT_MODE_CTRL                 (Offset 0x04C8) */
7230
7231 #define BIT_SHIFT_RTS_MAX_AGG_NUM 24
7232 #define BIT_MASK_RTS_MAX_AGG_NUM 0x3f
7233 #define BIT_RTS_MAX_AGG_NUM(x)                                                 \
7234         (((x) & BIT_MASK_RTS_MAX_AGG_NUM) << BIT_SHIFT_RTS_MAX_AGG_NUM)
7235 #define BIT_GET_RTS_MAX_AGG_NUM(x)                                             \
7236         (((x) >> BIT_SHIFT_RTS_MAX_AGG_NUM) & BIT_MASK_RTS_MAX_AGG_NUM)
7237
7238 #define BIT_SHIFT_MAX_AGG_NUM 16
7239 #define BIT_MASK_MAX_AGG_NUM 0x3f
7240 #define BIT_MAX_AGG_NUM(x)                                                     \
7241         (((x) & BIT_MASK_MAX_AGG_NUM) << BIT_SHIFT_MAX_AGG_NUM)
7242 #define BIT_GET_MAX_AGG_NUM(x)                                                 \
7243         (((x) >> BIT_SHIFT_MAX_AGG_NUM) & BIT_MASK_MAX_AGG_NUM)
7244
7245 #define BIT_SHIFT_RTS_TXTIME_TH 8
7246 #define BIT_MASK_RTS_TXTIME_TH 0xff
7247 #define BIT_RTS_TXTIME_TH(x)                                                   \
7248         (((x) & BIT_MASK_RTS_TXTIME_TH) << BIT_SHIFT_RTS_TXTIME_TH)
7249 #define BIT_GET_RTS_TXTIME_TH(x)                                               \
7250         (((x) >> BIT_SHIFT_RTS_TXTIME_TH) & BIT_MASK_RTS_TXTIME_TH)
7251
7252 #define BIT_SHIFT_RTS_LEN_TH 0
7253 #define BIT_MASK_RTS_LEN_TH 0xff
7254 #define BIT_RTS_LEN_TH(x) (((x) & BIT_MASK_RTS_LEN_TH) << BIT_SHIFT_RTS_LEN_TH)
7255 #define BIT_GET_RTS_LEN_TH(x)                                                  \
7256         (((x) >> BIT_SHIFT_RTS_LEN_TH) & BIT_MASK_RTS_LEN_TH)
7257
7258 /* 2 REG_BAR_MODE_CTRL                  (Offset 0x04CC) */
7259
7260 #define BIT_SHIFT_BAR_RTY_LMT 16
7261 #define BIT_MASK_BAR_RTY_LMT 0x3
7262 #define BIT_BAR_RTY_LMT(x)                                                     \
7263         (((x) & BIT_MASK_BAR_RTY_LMT) << BIT_SHIFT_BAR_RTY_LMT)
7264 #define BIT_GET_BAR_RTY_LMT(x)                                                 \
7265         (((x) >> BIT_SHIFT_BAR_RTY_LMT) & BIT_MASK_BAR_RTY_LMT)
7266
7267 #define BIT_SHIFT_BAR_PKT_TXTIME_TH 8
7268 #define BIT_MASK_BAR_PKT_TXTIME_TH 0xff
7269 #define BIT_BAR_PKT_TXTIME_TH(x)                                               \
7270         (((x) & BIT_MASK_BAR_PKT_TXTIME_TH) << BIT_SHIFT_BAR_PKT_TXTIME_TH)
7271 #define BIT_GET_BAR_PKT_TXTIME_TH(x)                                           \
7272         (((x) >> BIT_SHIFT_BAR_PKT_TXTIME_TH) & BIT_MASK_BAR_PKT_TXTIME_TH)
7273
7274 #define BIT_BAR_EN_V1 BIT(6)
7275
7276 #define BIT_SHIFT_BAR_PKTNUM_TH_V1 0
7277 #define BIT_MASK_BAR_PKTNUM_TH_V1 0x3f
7278 #define BIT_BAR_PKTNUM_TH_V1(x)                                                \
7279         (((x) & BIT_MASK_BAR_PKTNUM_TH_V1) << BIT_SHIFT_BAR_PKTNUM_TH_V1)
7280 #define BIT_GET_BAR_PKTNUM_TH_V1(x)                                            \
7281         (((x) >> BIT_SHIFT_BAR_PKTNUM_TH_V1) & BIT_MASK_BAR_PKTNUM_TH_V1)
7282
7283 /* 2 REG_RA_TRY_RATE_AGG_LMT                    (Offset 0x04CF) */
7284
7285 #define BIT_SHIFT_RA_TRY_RATE_AGG_LMT_V1 0
7286 #define BIT_MASK_RA_TRY_RATE_AGG_LMT_V1 0x3f
7287 #define BIT_RA_TRY_RATE_AGG_LMT_V1(x)                                          \
7288         (((x) & BIT_MASK_RA_TRY_RATE_AGG_LMT_V1)                               \
7289          << BIT_SHIFT_RA_TRY_RATE_AGG_LMT_V1)
7290 #define BIT_GET_RA_TRY_RATE_AGG_LMT_V1(x)                                      \
7291         (((x) >> BIT_SHIFT_RA_TRY_RATE_AGG_LMT_V1) &                           \
7292          BIT_MASK_RA_TRY_RATE_AGG_LMT_V1)
7293
7294 /* 2 REG_MACID_SLEEP2                   (Offset 0x04D0) */
7295
7296 #define BIT_SHIFT_MACID95_64PKTSLEEP 0
7297 #define BIT_MASK_MACID95_64PKTSLEEP 0xffffffffL
7298 #define BIT_MACID95_64PKTSLEEP(x)                                              \
7299         (((x) & BIT_MASK_MACID95_64PKTSLEEP) << BIT_SHIFT_MACID95_64PKTSLEEP)
7300 #define BIT_GET_MACID95_64PKTSLEEP(x)                                          \
7301         (((x) >> BIT_SHIFT_MACID95_64PKTSLEEP) & BIT_MASK_MACID95_64PKTSLEEP)
7302
7303 /* 2 REG_MACID_SLEEP                            (Offset 0x04D4) */
7304
7305 #define BIT_SHIFT_MACID31_0_PKTSLEEP 0
7306 #define BIT_MASK_MACID31_0_PKTSLEEP 0xffffffffL
7307 #define BIT_MACID31_0_PKTSLEEP(x)                                              \
7308         (((x) & BIT_MASK_MACID31_0_PKTSLEEP) << BIT_SHIFT_MACID31_0_PKTSLEEP)
7309 #define BIT_GET_MACID31_0_PKTSLEEP(x)                                          \
7310         (((x) >> BIT_SHIFT_MACID31_0_PKTSLEEP) & BIT_MASK_MACID31_0_PKTSLEEP)
7311
7312 /* 2 REG_HW_SEQ0                                (Offset 0x04D8) */
7313
7314 #define BIT_SHIFT_HW_SSN_SEQ0 0
7315 #define BIT_MASK_HW_SSN_SEQ0 0xfff
7316 #define BIT_HW_SSN_SEQ0(x)                                                     \
7317         (((x) & BIT_MASK_HW_SSN_SEQ0) << BIT_SHIFT_HW_SSN_SEQ0)
7318 #define BIT_GET_HW_SSN_SEQ0(x)                                                 \
7319         (((x) >> BIT_SHIFT_HW_SSN_SEQ0) & BIT_MASK_HW_SSN_SEQ0)
7320
7321 /* 2 REG_HW_SEQ1                                (Offset 0x04DA) */
7322
7323 #define BIT_SHIFT_HW_SSN_SEQ1 0
7324 #define BIT_MASK_HW_SSN_SEQ1 0xfff
7325 #define BIT_HW_SSN_SEQ1(x)                                                     \
7326         (((x) & BIT_MASK_HW_SSN_SEQ1) << BIT_SHIFT_HW_SSN_SEQ1)
7327 #define BIT_GET_HW_SSN_SEQ1(x)                                                 \
7328         (((x) >> BIT_SHIFT_HW_SSN_SEQ1) & BIT_MASK_HW_SSN_SEQ1)
7329
7330 /* 2 REG_HW_SEQ2                                (Offset 0x04DC) */
7331
7332 #define BIT_SHIFT_HW_SSN_SEQ2 0
7333 #define BIT_MASK_HW_SSN_SEQ2 0xfff
7334 #define BIT_HW_SSN_SEQ2(x)                                                     \
7335         (((x) & BIT_MASK_HW_SSN_SEQ2) << BIT_SHIFT_HW_SSN_SEQ2)
7336 #define BIT_GET_HW_SSN_SEQ2(x)                                                 \
7337         (((x) >> BIT_SHIFT_HW_SSN_SEQ2) & BIT_MASK_HW_SSN_SEQ2)
7338
7339 /* 2 REG_HW_SEQ3                                (Offset 0x04DE) */
7340
7341 #define BIT_SHIFT_HW_SSN_SEQ3 0
7342 #define BIT_MASK_HW_SSN_SEQ3 0xfff
7343 #define BIT_HW_SSN_SEQ3(x)                                                     \
7344         (((x) & BIT_MASK_HW_SSN_SEQ3) << BIT_SHIFT_HW_SSN_SEQ3)
7345 #define BIT_GET_HW_SSN_SEQ3(x)                                                 \
7346         (((x) >> BIT_SHIFT_HW_SSN_SEQ3) & BIT_MASK_HW_SSN_SEQ3)
7347
7348 /* 2 REG_NULL_PKT_STATUS_V1                     (Offset 0x04E0) */
7349
7350 #define BIT_SHIFT_PTCL_TOTAL_PG_V2 2
7351 #define BIT_MASK_PTCL_TOTAL_PG_V2 0x3fff
7352 #define BIT_PTCL_TOTAL_PG_V2(x)                                                \
7353         (((x) & BIT_MASK_PTCL_TOTAL_PG_V2) << BIT_SHIFT_PTCL_TOTAL_PG_V2)
7354 #define BIT_GET_PTCL_TOTAL_PG_V2(x)                                            \
7355         (((x) >> BIT_SHIFT_PTCL_TOTAL_PG_V2) & BIT_MASK_PTCL_TOTAL_PG_V2)
7356
7357 /* 2 REG_NULL_PKT_STATUS                        (Offset 0x04E0) */
7358
7359 #define BIT_TX_NULL_1 BIT(1)
7360 #define BIT_TX_NULL_0 BIT(0)
7361
7362 /* 2 REG_PTCL_ERR_STATUS                        (Offset 0x04E2) */
7363
7364 #define BIT_PTCL_RATE_TABLE_INVALID BIT(7)
7365 #define BIT_FTM_T2R_ERROR BIT(6)
7366
7367 /* 2 REG_PTCL_ERR_STATUS                        (Offset 0x04E2) */
7368
7369 #define BIT_PTCL_ERR0 BIT(5)
7370 #define BIT_PTCL_ERR1 BIT(4)
7371 #define BIT_PTCL_ERR2 BIT(3)
7372 #define BIT_PTCL_ERR3 BIT(2)
7373 #define BIT_PTCL_ERR4 BIT(1)
7374 #define BIT_PTCL_ERR5 BIT(0)
7375
7376 /* 2 REG_NULL_PKT_STATUS_EXTEND         (Offset 0x04E3) */
7377
7378 #define BIT_CLI3_TX_NULL_1 BIT(7)
7379 #define BIT_CLI3_TX_NULL_0 BIT(6)
7380 #define BIT_CLI2_TX_NULL_1 BIT(5)
7381 #define BIT_CLI2_TX_NULL_0 BIT(4)
7382 #define BIT_CLI1_TX_NULL_1 BIT(3)
7383 #define BIT_CLI1_TX_NULL_0 BIT(2)
7384 #define BIT_CLI0_TX_NULL_1 BIT(1)
7385
7386 /* 2 REG_NULL_PKT_STATUS_EXTEND         (Offset 0x04E3) */
7387
7388 #define BIT_CLI0_TX_NULL_0 BIT(0)
7389
7390 /* 2 REG_VIDEO_ENHANCEMENT_FUN          (Offset 0x04E4) */
7391
7392 #define BIT_VIDEO_JUST_DROP BIT(1)
7393 #define BIT_VIDEO_ENHANCEMENT_FUN_EN BIT(0)
7394
7395 /* 2 REG_BT_POLLUTE_PKT_CNT                     (Offset 0x04E8) */
7396
7397 #define BIT_SHIFT_BT_POLLUTE_PKT_CNT 0
7398 #define BIT_MASK_BT_POLLUTE_PKT_CNT 0xffff
7399 #define BIT_BT_POLLUTE_PKT_CNT(x)                                              \
7400         (((x) & BIT_MASK_BT_POLLUTE_PKT_CNT) << BIT_SHIFT_BT_POLLUTE_PKT_CNT)
7401 #define BIT_GET_BT_POLLUTE_PKT_CNT(x)                                          \
7402         (((x) >> BIT_SHIFT_BT_POLLUTE_PKT_CNT) & BIT_MASK_BT_POLLUTE_PKT_CNT)
7403
7404 /* 2 REG_PTCL_DBG                               (Offset 0x04EC) */
7405
7406 #define BIT_SHIFT_PTCL_DBG 0
7407 #define BIT_MASK_PTCL_DBG 0xffffffffL
7408 #define BIT_PTCL_DBG(x) (((x) & BIT_MASK_PTCL_DBG) << BIT_SHIFT_PTCL_DBG)
7409 #define BIT_GET_PTCL_DBG(x) (((x) >> BIT_SHIFT_PTCL_DBG) & BIT_MASK_PTCL_DBG)
7410
7411 /* 2 REG_CPUMGQ_TIMER_CTRL2                     (Offset 0x04F4) */
7412
7413 #define BIT_QUEUE_MACID_AC_NOT_THE_SAME BIT(31)
7414
7415 #define BIT_SHIFT_GTAB_ID 28
7416 #define BIT_MASK_GTAB_ID 0x7
7417 #define BIT_GTAB_ID(x) (((x) & BIT_MASK_GTAB_ID) << BIT_SHIFT_GTAB_ID)
7418 #define BIT_GET_GTAB_ID(x) (((x) >> BIT_SHIFT_GTAB_ID) & BIT_MASK_GTAB_ID)
7419
7420 #define BIT_SHIFT_TRI_HEAD_ADDR 16
7421 #define BIT_MASK_TRI_HEAD_ADDR 0xfff
7422 #define BIT_TRI_HEAD_ADDR(x)                                                   \
7423         (((x) & BIT_MASK_TRI_HEAD_ADDR) << BIT_SHIFT_TRI_HEAD_ADDR)
7424 #define BIT_GET_TRI_HEAD_ADDR(x)                                               \
7425         (((x) >> BIT_SHIFT_TRI_HEAD_ADDR) & BIT_MASK_TRI_HEAD_ADDR)
7426
7427 #define BIT_QUEUE_MACID_AC_NOT_THE_SAME_V1 BIT(15)
7428
7429 #define BIT_SHIFT_GTAB_ID_V1 12
7430 #define BIT_MASK_GTAB_ID_V1 0x7
7431 #define BIT_GTAB_ID_V1(x) (((x) & BIT_MASK_GTAB_ID_V1) << BIT_SHIFT_GTAB_ID_V1)
7432 #define BIT_GET_GTAB_ID_V1(x)                                                  \
7433         (((x) >> BIT_SHIFT_GTAB_ID_V1) & BIT_MASK_GTAB_ID_V1)
7434
7435 #define BIT_DROP_TH_EN BIT(8)
7436
7437 #define BIT_SHIFT_DROP_TH 0
7438 #define BIT_MASK_DROP_TH 0xff
7439 #define BIT_DROP_TH(x) (((x) & BIT_MASK_DROP_TH) << BIT_SHIFT_DROP_TH)
7440 #define BIT_GET_DROP_TH(x) (((x) >> BIT_SHIFT_DROP_TH) & BIT_MASK_DROP_TH)
7441
7442 /* 2 REG_DUMMY_PAGE4_V1                 (Offset 0x04FC) */
7443
7444 #define BIT_BCN_EN_EXTHWSEQ BIT(1)
7445 #define BIT_BCN_EN_HWSEQ BIT(0)
7446
7447 /* 2 REG_MOREDATA                               (Offset 0x04FE) */
7448
7449 #define BIT_MOREDATA_CTRL2_EN_V1 BIT(3)
7450 #define BIT_MOREDATA_CTRL1_EN_V1 BIT(2)
7451 #define BIT_PKTIN_MOREDATA_REPLACE_ENABLE_V1 BIT(0)
7452
7453 /* 2 REG_EDCA_VO_PARAM                  (Offset 0x0500) */
7454
7455 #define BIT_SHIFT_TXOPLIMIT 16
7456 #define BIT_MASK_TXOPLIMIT 0x7ff
7457 #define BIT_TXOPLIMIT(x) (((x) & BIT_MASK_TXOPLIMIT) << BIT_SHIFT_TXOPLIMIT)
7458 #define BIT_GET_TXOPLIMIT(x) (((x) >> BIT_SHIFT_TXOPLIMIT) & BIT_MASK_TXOPLIMIT)
7459
7460 #define BIT_SHIFT_CW 8
7461 #define BIT_MASK_CW 0xff
7462 #define BIT_CW(x) (((x) & BIT_MASK_CW) << BIT_SHIFT_CW)
7463 #define BIT_GET_CW(x) (((x) >> BIT_SHIFT_CW) & BIT_MASK_CW)
7464
7465 #define BIT_SHIFT_AIFS 0
7466 #define BIT_MASK_AIFS 0xff
7467 #define BIT_AIFS(x) (((x) & BIT_MASK_AIFS) << BIT_SHIFT_AIFS)
7468 #define BIT_GET_AIFS(x) (((x) >> BIT_SHIFT_AIFS) & BIT_MASK_AIFS)
7469
7470 /* 2 REG_BCNTCFG                                (Offset 0x0510) */
7471
7472 #define BIT_SHIFT_BCNCW_MAX 12
7473 #define BIT_MASK_BCNCW_MAX 0xf
7474 #define BIT_BCNCW_MAX(x) (((x) & BIT_MASK_BCNCW_MAX) << BIT_SHIFT_BCNCW_MAX)
7475 #define BIT_GET_BCNCW_MAX(x) (((x) >> BIT_SHIFT_BCNCW_MAX) & BIT_MASK_BCNCW_MAX)
7476
7477 #define BIT_SHIFT_BCNCW_MIN 8
7478 #define BIT_MASK_BCNCW_MIN 0xf
7479 #define BIT_BCNCW_MIN(x) (((x) & BIT_MASK_BCNCW_MIN) << BIT_SHIFT_BCNCW_MIN)
7480 #define BIT_GET_BCNCW_MIN(x) (((x) >> BIT_SHIFT_BCNCW_MIN) & BIT_MASK_BCNCW_MIN)
7481
7482 #define BIT_SHIFT_BCNIFS 0
7483 #define BIT_MASK_BCNIFS 0xff
7484 #define BIT_BCNIFS(x) (((x) & BIT_MASK_BCNIFS) << BIT_SHIFT_BCNIFS)
7485 #define BIT_GET_BCNIFS(x) (((x) >> BIT_SHIFT_BCNIFS) & BIT_MASK_BCNIFS)
7486
7487 /* 2 REG_PIFS                           (Offset 0x0512) */
7488
7489 #define BIT_SHIFT_PIFS 0
7490 #define BIT_MASK_PIFS 0xff
7491 #define BIT_PIFS(x) (((x) & BIT_MASK_PIFS) << BIT_SHIFT_PIFS)
7492 #define BIT_GET_PIFS(x) (((x) >> BIT_SHIFT_PIFS) & BIT_MASK_PIFS)
7493
7494 /* 2 REG_RDG_PIFS                               (Offset 0x0513) */
7495
7496 #define BIT_SHIFT_RDG_PIFS 0
7497 #define BIT_MASK_RDG_PIFS 0xff
7498 #define BIT_RDG_PIFS(x) (((x) & BIT_MASK_RDG_PIFS) << BIT_SHIFT_RDG_PIFS)
7499 #define BIT_GET_RDG_PIFS(x) (((x) >> BIT_SHIFT_RDG_PIFS) & BIT_MASK_RDG_PIFS)
7500
7501 /* 2 REG_SIFS                           (Offset 0x0514) */
7502
7503 #define BIT_SHIFT_SIFS_OFDM_TRX 24
7504 #define BIT_MASK_SIFS_OFDM_TRX 0xff
7505 #define BIT_SIFS_OFDM_TRX(x)                                                   \
7506         (((x) & BIT_MASK_SIFS_OFDM_TRX) << BIT_SHIFT_SIFS_OFDM_TRX)
7507 #define BIT_GET_SIFS_OFDM_TRX(x)                                               \
7508         (((x) >> BIT_SHIFT_SIFS_OFDM_TRX) & BIT_MASK_SIFS_OFDM_TRX)
7509
7510 #define BIT_SHIFT_SIFS_CCK_TRX 16
7511 #define BIT_MASK_SIFS_CCK_TRX 0xff
7512 #define BIT_SIFS_CCK_TRX(x)                                                    \
7513         (((x) & BIT_MASK_SIFS_CCK_TRX) << BIT_SHIFT_SIFS_CCK_TRX)
7514 #define BIT_GET_SIFS_CCK_TRX(x)                                                \
7515         (((x) >> BIT_SHIFT_SIFS_CCK_TRX) & BIT_MASK_SIFS_CCK_TRX)
7516
7517 #define BIT_SHIFT_SIFS_OFDM_CTX 8
7518 #define BIT_MASK_SIFS_OFDM_CTX 0xff
7519 #define BIT_SIFS_OFDM_CTX(x)                                                   \
7520         (((x) & BIT_MASK_SIFS_OFDM_CTX) << BIT_SHIFT_SIFS_OFDM_CTX)
7521 #define BIT_GET_SIFS_OFDM_CTX(x)                                               \
7522         (((x) >> BIT_SHIFT_SIFS_OFDM_CTX) & BIT_MASK_SIFS_OFDM_CTX)
7523
7524 #define BIT_SHIFT_SIFS_CCK_CTX 0
7525 #define BIT_MASK_SIFS_CCK_CTX 0xff
7526 #define BIT_SIFS_CCK_CTX(x)                                                    \
7527         (((x) & BIT_MASK_SIFS_CCK_CTX) << BIT_SHIFT_SIFS_CCK_CTX)
7528 #define BIT_GET_SIFS_CCK_CTX(x)                                                \
7529         (((x) >> BIT_SHIFT_SIFS_CCK_CTX) & BIT_MASK_SIFS_CCK_CTX)
7530
7531 /* 2 REG_TSFTR_SYN_OFFSET                       (Offset 0x0518) */
7532
7533 #define BIT_SHIFT_TSFTR_SNC_OFFSET 0
7534 #define BIT_MASK_TSFTR_SNC_OFFSET 0xffff
7535 #define BIT_TSFTR_SNC_OFFSET(x)                                                \
7536         (((x) & BIT_MASK_TSFTR_SNC_OFFSET) << BIT_SHIFT_TSFTR_SNC_OFFSET)
7537 #define BIT_GET_TSFTR_SNC_OFFSET(x)                                            \
7538         (((x) >> BIT_SHIFT_TSFTR_SNC_OFFSET) & BIT_MASK_TSFTR_SNC_OFFSET)
7539
7540 /* 2 REG_AGGR_BREAK_TIME                        (Offset 0x051A) */
7541
7542 #define BIT_SHIFT_AGGR_BK_TIME 0
7543 #define BIT_MASK_AGGR_BK_TIME 0xff
7544 #define BIT_AGGR_BK_TIME(x)                                                    \
7545         (((x) & BIT_MASK_AGGR_BK_TIME) << BIT_SHIFT_AGGR_BK_TIME)
7546 #define BIT_GET_AGGR_BK_TIME(x)                                                \
7547         (((x) >> BIT_SHIFT_AGGR_BK_TIME) & BIT_MASK_AGGR_BK_TIME)
7548
7549 /* 2 REG_SLOT                           (Offset 0x051B) */
7550
7551 #define BIT_SHIFT_SLOT 0
7552 #define BIT_MASK_SLOT 0xff
7553 #define BIT_SLOT(x) (((x) & BIT_MASK_SLOT) << BIT_SHIFT_SLOT)
7554 #define BIT_GET_SLOT(x) (((x) >> BIT_SHIFT_SLOT) & BIT_MASK_SLOT)
7555
7556 /* 2 REG_TX_PTCL_CTRL                   (Offset 0x0520) */
7557
7558 #define BIT_DIS_EDCCA BIT(15)
7559 #define BIT_DIS_CCA BIT(14)
7560 #define BIT_LSIG_TXOP_TXCMD_NAV BIT(13)
7561 #define BIT_SIFS_BK_EN BIT(12)
7562
7563 #define BIT_SHIFT_TXQ_NAV_MSK 8
7564 #define BIT_MASK_TXQ_NAV_MSK 0xf
7565 #define BIT_TXQ_NAV_MSK(x)                                                     \
7566         (((x) & BIT_MASK_TXQ_NAV_MSK) << BIT_SHIFT_TXQ_NAV_MSK)
7567 #define BIT_GET_TXQ_NAV_MSK(x)                                                 \
7568         (((x) >> BIT_SHIFT_TXQ_NAV_MSK) & BIT_MASK_TXQ_NAV_MSK)
7569
7570 #define BIT_DIS_CW BIT(7)
7571 #define BIT_NAV_END_TXOP BIT(6)
7572 #define BIT_RDG_END_TXOP BIT(5)
7573 #define BIT_AC_INBCN_HOLD BIT(4)
7574 #define BIT_MGTQ_TXOP_EN BIT(3)
7575 #define BIT_MGTQ_RTSMF_EN BIT(2)
7576 #define BIT_HIQ_RTSMF_EN BIT(1)
7577 #define BIT_BCN_RTSMF_EN BIT(0)
7578
7579 /* 2 REG_TXPAUSE                                (Offset 0x0522) */
7580
7581 #define BIT_STOP_BCN_HI_MGT BIT(7)
7582 #define BIT_MAC_STOPBCNQ BIT(6)
7583 #define BIT_MAC_STOPHIQ BIT(5)
7584 #define BIT_MAC_STOPMGQ BIT(4)
7585 #define BIT_MAC_STOPBK BIT(3)
7586 #define BIT_MAC_STOPBE BIT(2)
7587 #define BIT_MAC_STOPVI BIT(1)
7588 #define BIT_MAC_STOPVO BIT(0)
7589
7590 /* 2 REG_DIS_TXREQ_CLR                  (Offset 0x0523) */
7591
7592 #define BIT_DIS_BT_CCA BIT(7)
7593
7594 /* 2 REG_DIS_TXREQ_CLR                  (Offset 0x0523) */
7595
7596 #define BIT_DIS_TXREQ_CLR_HI BIT(5)
7597 #define BIT_DIS_TXREQ_CLR_MGQ BIT(4)
7598 #define BIT_DIS_TXREQ_CLR_VO BIT(3)
7599 #define BIT_DIS_TXREQ_CLR_VI BIT(2)
7600 #define BIT_DIS_TXREQ_CLR_BE BIT(1)
7601 #define BIT_DIS_TXREQ_CLR_BK BIT(0)
7602
7603 /* 2 REG_RD_CTRL                                (Offset 0x0524) */
7604
7605 #define BIT_EN_CLR_TXREQ_INCCA BIT(15)
7606 #define BIT_DIS_TX_OVER_BCNQ BIT(14)
7607
7608 /* 2 REG_RD_CTRL                                (Offset 0x0524) */
7609
7610 #define BIT_EN_BCNERR_INCCCA BIT(13)
7611
7612 /* 2 REG_RD_CTRL                                (Offset 0x0524) */
7613
7614 #define BIT_EDCCA_MSK_CNTDOWN_EN BIT(11)
7615 #define BIT_DIS_TXOP_CFE BIT(10)
7616 #define BIT_DIS_LSIG_CFE BIT(9)
7617 #define BIT_DIS_STBC_CFE BIT(8)
7618 #define BIT_BKQ_RD_INIT_EN BIT(7)
7619 #define BIT_BEQ_RD_INIT_EN BIT(6)
7620 #define BIT_VIQ_RD_INIT_EN BIT(5)
7621 #define BIT_VOQ_RD_INIT_EN BIT(4)
7622 #define BIT_BKQ_RD_RESP_EN BIT(3)
7623 #define BIT_BEQ_RD_RESP_EN BIT(2)
7624 #define BIT_VIQ_RD_RESP_EN BIT(1)
7625 #define BIT_VOQ_RD_RESP_EN BIT(0)
7626
7627 /* 2 REG_MBSSID_CTRL                            (Offset 0x0526) */
7628
7629 #define BIT_MBID_BCNQ7_EN BIT(7)
7630 #define BIT_MBID_BCNQ6_EN BIT(6)
7631 #define BIT_MBID_BCNQ5_EN BIT(5)
7632 #define BIT_MBID_BCNQ4_EN BIT(4)
7633 #define BIT_MBID_BCNQ3_EN BIT(3)
7634 #define BIT_MBID_BCNQ2_EN BIT(2)
7635 #define BIT_MBID_BCNQ1_EN BIT(1)
7636 #define BIT_MBID_BCNQ0_EN BIT(0)
7637
7638 /* 2 REG_P2PPS_CTRL                             (Offset 0x0527) */
7639
7640 #define BIT_P2P_CTW_ALLSTASLEEP BIT(7)
7641 #define BIT_P2P_OFF_DISTX_EN BIT(6)
7642 #define BIT_PWR_MGT_EN BIT(5)
7643
7644 /* 2 REG_P2PPS_CTRL                             (Offset 0x0527) */
7645
7646 #define BIT_P2P_NOA1_EN BIT(2)
7647 #define BIT_P2P_NOA0_EN BIT(1)
7648
7649 /* 2 REG_PKT_LIFETIME_CTRL                      (Offset 0x0528) */
7650
7651 #define BIT_EN_P2P_CTWND1 BIT(23)
7652
7653 /* 2 REG_PKT_LIFETIME_CTRL                      (Offset 0x0528) */
7654
7655 #define BIT_EN_BKF_CLR_TXREQ BIT(22)
7656 #define BIT_EN_TSFBIT32_RST_P2P BIT(21)
7657 #define BIT_EN_BCN_TX_BTCCA BIT(20)
7658 #define BIT_DIS_PKT_TX_ATIM BIT(19)
7659 #define BIT_DIS_BCN_DIS_CTN BIT(18)
7660 #define BIT_EN_NAVEND_RST_TXOP BIT(17)
7661 #define BIT_EN_FILTER_CCA BIT(16)
7662
7663 #define BIT_SHIFT_CCA_FILTER_THRS 8
7664 #define BIT_MASK_CCA_FILTER_THRS 0xff
7665 #define BIT_CCA_FILTER_THRS(x)                                                 \
7666         (((x) & BIT_MASK_CCA_FILTER_THRS) << BIT_SHIFT_CCA_FILTER_THRS)
7667 #define BIT_GET_CCA_FILTER_THRS(x)                                             \
7668         (((x) >> BIT_SHIFT_CCA_FILTER_THRS) & BIT_MASK_CCA_FILTER_THRS)
7669
7670 #define BIT_SHIFT_EDCCA_THRS 0
7671 #define BIT_MASK_EDCCA_THRS 0xff
7672 #define BIT_EDCCA_THRS(x) (((x) & BIT_MASK_EDCCA_THRS) << BIT_SHIFT_EDCCA_THRS)
7673 #define BIT_GET_EDCCA_THRS(x)                                                  \
7674         (((x) >> BIT_SHIFT_EDCCA_THRS) & BIT_MASK_EDCCA_THRS)
7675
7676 /* 2 REG_P2PPS_SPEC_STATE                       (Offset 0x052B) */
7677
7678 #define BIT_SPEC_POWER_STATE BIT(7)
7679 #define BIT_SPEC_CTWINDOW_ON BIT(6)
7680 #define BIT_SPEC_BEACON_AREA_ON BIT(5)
7681 #define BIT_SPEC_CTWIN_EARLY_DISTX BIT(4)
7682 #define BIT_SPEC_NOA1_OFF_PERIOD BIT(3)
7683 #define BIT_SPEC_FORCE_DOZE1 BIT(2)
7684 #define BIT_SPEC_NOA0_OFF_PERIOD BIT(1)
7685 #define BIT_SPEC_FORCE_DOZE0 BIT(0)
7686
7687 /* 2 REG_QUEUE_INCOL_THR                        (Offset 0x0538) */
7688
7689 #define BIT_SHIFT_BK_QUEUE_THR 24
7690 #define BIT_MASK_BK_QUEUE_THR 0xff
7691 #define BIT_BK_QUEUE_THR(x)                                                    \
7692         (((x) & BIT_MASK_BK_QUEUE_THR) << BIT_SHIFT_BK_QUEUE_THR)
7693 #define BIT_GET_BK_QUEUE_THR(x)                                                \
7694         (((x) >> BIT_SHIFT_BK_QUEUE_THR) & BIT_MASK_BK_QUEUE_THR)
7695
7696 #define BIT_SHIFT_BE_QUEUE_THR 16
7697 #define BIT_MASK_BE_QUEUE_THR 0xff
7698 #define BIT_BE_QUEUE_THR(x)                                                    \
7699         (((x) & BIT_MASK_BE_QUEUE_THR) << BIT_SHIFT_BE_QUEUE_THR)
7700 #define BIT_GET_BE_QUEUE_THR(x)                                                \
7701         (((x) >> BIT_SHIFT_BE_QUEUE_THR) & BIT_MASK_BE_QUEUE_THR)
7702
7703 #define BIT_SHIFT_VI_QUEUE_THR 8
7704 #define BIT_MASK_VI_QUEUE_THR 0xff
7705 #define BIT_VI_QUEUE_THR(x)                                                    \
7706         (((x) & BIT_MASK_VI_QUEUE_THR) << BIT_SHIFT_VI_QUEUE_THR)
7707 #define BIT_GET_VI_QUEUE_THR(x)                                                \
7708         (((x) >> BIT_SHIFT_VI_QUEUE_THR) & BIT_MASK_VI_QUEUE_THR)
7709
7710 #define BIT_SHIFT_VO_QUEUE_THR 0
7711 #define BIT_MASK_VO_QUEUE_THR 0xff
7712 #define BIT_VO_QUEUE_THR(x)                                                    \
7713         (((x) & BIT_MASK_VO_QUEUE_THR) << BIT_SHIFT_VO_QUEUE_THR)
7714 #define BIT_GET_VO_QUEUE_THR(x)                                                \
7715         (((x) >> BIT_SHIFT_VO_QUEUE_THR) & BIT_MASK_VO_QUEUE_THR)
7716
7717 /* 2 REG_QUEUE_INCOL_EN                 (Offset 0x053C) */
7718
7719 #define BIT_QUEUE_INCOL_EN BIT(16)
7720
7721 /* 2 REG_QUEUE_INCOL_EN                 (Offset 0x053C) */
7722
7723 #define BIT_SHIFT_BE_TRIGGER_NUM 12
7724 #define BIT_MASK_BE_TRIGGER_NUM 0xf
7725 #define BIT_BE_TRIGGER_NUM(x)                                                  \
7726         (((x) & BIT_MASK_BE_TRIGGER_NUM) << BIT_SHIFT_BE_TRIGGER_NUM)
7727 #define BIT_GET_BE_TRIGGER_NUM(x)                                              \
7728         (((x) >> BIT_SHIFT_BE_TRIGGER_NUM) & BIT_MASK_BE_TRIGGER_NUM)
7729
7730 /* 2 REG_QUEUE_INCOL_EN                 (Offset 0x053C) */
7731
7732 #define BIT_SHIFT_BK_TRIGGER_NUM 8
7733 #define BIT_MASK_BK_TRIGGER_NUM 0xf
7734 #define BIT_BK_TRIGGER_NUM(x)                                                  \
7735         (((x) & BIT_MASK_BK_TRIGGER_NUM) << BIT_SHIFT_BK_TRIGGER_NUM)
7736 #define BIT_GET_BK_TRIGGER_NUM(x)                                              \
7737         (((x) >> BIT_SHIFT_BK_TRIGGER_NUM) & BIT_MASK_BK_TRIGGER_NUM)
7738
7739 /* 2 REG_QUEUE_INCOL_EN                 (Offset 0x053C) */
7740
7741 #define BIT_SHIFT_VI_TRIGGER_NUM 4
7742 #define BIT_MASK_VI_TRIGGER_NUM 0xf
7743 #define BIT_VI_TRIGGER_NUM(x)                                                  \
7744         (((x) & BIT_MASK_VI_TRIGGER_NUM) << BIT_SHIFT_VI_TRIGGER_NUM)
7745 #define BIT_GET_VI_TRIGGER_NUM(x)                                              \
7746         (((x) >> BIT_SHIFT_VI_TRIGGER_NUM) & BIT_MASK_VI_TRIGGER_NUM)
7747
7748 #define BIT_SHIFT_VO_TRIGGER_NUM 0
7749 #define BIT_MASK_VO_TRIGGER_NUM 0xf
7750 #define BIT_VO_TRIGGER_NUM(x)                                                  \
7751         (((x) & BIT_MASK_VO_TRIGGER_NUM) << BIT_SHIFT_VO_TRIGGER_NUM)
7752 #define BIT_GET_VO_TRIGGER_NUM(x)                                              \
7753         (((x) >> BIT_SHIFT_VO_TRIGGER_NUM) & BIT_MASK_VO_TRIGGER_NUM)
7754
7755 /* 2 REG_TBTT_PROHIBIT                  (Offset 0x0540) */
7756
7757 #define BIT_SHIFT_TBTT_HOLD_TIME_AP 8
7758 #define BIT_MASK_TBTT_HOLD_TIME_AP 0xfff
7759 #define BIT_TBTT_HOLD_TIME_AP(x)                                               \
7760         (((x) & BIT_MASK_TBTT_HOLD_TIME_AP) << BIT_SHIFT_TBTT_HOLD_TIME_AP)
7761 #define BIT_GET_TBTT_HOLD_TIME_AP(x)                                           \
7762         (((x) >> BIT_SHIFT_TBTT_HOLD_TIME_AP) & BIT_MASK_TBTT_HOLD_TIME_AP)
7763
7764 /* 2 REG_TBTT_PROHIBIT                  (Offset 0x0540) */
7765
7766 #define BIT_SHIFT_TBTT_PROHIBIT_SETUP 0
7767 #define BIT_MASK_TBTT_PROHIBIT_SETUP 0xf
7768 #define BIT_TBTT_PROHIBIT_SETUP(x)                                             \
7769         (((x) & BIT_MASK_TBTT_PROHIBIT_SETUP) << BIT_SHIFT_TBTT_PROHIBIT_SETUP)
7770 #define BIT_GET_TBTT_PROHIBIT_SETUP(x)                                         \
7771         (((x) >> BIT_SHIFT_TBTT_PROHIBIT_SETUP) & BIT_MASK_TBTT_PROHIBIT_SETUP)
7772
7773 /* 2 REG_P2PPS_STATE                            (Offset 0x0543) */
7774
7775 #define BIT_POWER_STATE BIT(7)
7776 #define BIT_CTWINDOW_ON BIT(6)
7777 #define BIT_BEACON_AREA_ON BIT(5)
7778 #define BIT_CTWIN_EARLY_DISTX BIT(4)
7779 #define BIT_NOA1_OFF_PERIOD BIT(3)
7780 #define BIT_FORCE_DOZE1 BIT(2)
7781 #define BIT_NOA0_OFF_PERIOD BIT(1)
7782 #define BIT_FORCE_DOZE0 BIT(0)
7783
7784 /* 2 REG_RD_NAV_NXT                             (Offset 0x0544) */
7785
7786 #define BIT_SHIFT_RD_NAV_PROT_NXT 0
7787 #define BIT_MASK_RD_NAV_PROT_NXT 0xffff
7788 #define BIT_RD_NAV_PROT_NXT(x)                                                 \
7789         (((x) & BIT_MASK_RD_NAV_PROT_NXT) << BIT_SHIFT_RD_NAV_PROT_NXT)
7790 #define BIT_GET_RD_NAV_PROT_NXT(x)                                             \
7791         (((x) >> BIT_SHIFT_RD_NAV_PROT_NXT) & BIT_MASK_RD_NAV_PROT_NXT)
7792
7793 /* 2 REG_NAV_PROT_LEN                   (Offset 0x0546) */
7794
7795 #define BIT_SHIFT_NAV_PROT_LEN 0
7796 #define BIT_MASK_NAV_PROT_LEN 0xffff
7797 #define BIT_NAV_PROT_LEN(x)                                                    \
7798         (((x) & BIT_MASK_NAV_PROT_LEN) << BIT_SHIFT_NAV_PROT_LEN)
7799 #define BIT_GET_NAV_PROT_LEN(x)                                                \
7800         (((x) >> BIT_SHIFT_NAV_PROT_LEN) & BIT_MASK_NAV_PROT_LEN)
7801
7802 /* 2 REG_BCN_CTRL                               (Offset 0x0550) */
7803
7804 #define BIT_DIS_RX_BSSID_FIT BIT(6)
7805
7806 /* 2 REG_BCN_CTRL                               (Offset 0x0550) */
7807
7808 #define BIT_P0_EN_TXBCN_RPT BIT(5)
7809
7810 /* 2 REG_BCN_CTRL                               (Offset 0x0550) */
7811
7812 #define BIT_DIS_TSF_UDT BIT(4)
7813 #define BIT_EN_BCN_FUNCTION BIT(3)
7814
7815 /* 2 REG_BCN_CTRL                               (Offset 0x0550) */
7816
7817 #define BIT_P0_EN_RXBCN_RPT BIT(2)
7818
7819 /* 2 REG_BCN_CTRL                               (Offset 0x0550) */
7820
7821 #define BIT_EN_P2P_CTWINDOW BIT(1)
7822 #define BIT_EN_P2P_BCNQ_AREA BIT(0)
7823
7824 /* 2 REG_BCN_CTRL_CLINT0                        (Offset 0x0551) */
7825
7826 #define BIT_CLI0_DIS_RX_BSSID_FIT BIT(6)
7827
7828 /* 2 REG_BCN_CTRL_CLINT0                        (Offset 0x0551) */
7829
7830 #define BIT_CLI0_DIS_TSF_UDT BIT(4)
7831
7832 /* 2 REG_BCN_CTRL_CLINT0                        (Offset 0x0551) */
7833
7834 #define BIT_CLI0_EN_BCN_FUNCTION BIT(3)
7835
7836 /* 2 REG_BCN_CTRL_CLINT0                        (Offset 0x0551) */
7837
7838 #define BIT_CLI0_EN_RXBCN_RPT BIT(2)
7839
7840 /* 2 REG_BCN_CTRL_CLINT0                        (Offset 0x0551) */
7841
7842 #define BIT_CLI0_ENP2P_CTWINDOW BIT(1)
7843 #define BIT_CLI0_ENP2P_BCNQ_AREA BIT(0)
7844
7845 /* 2 REG_MBID_NUM                               (Offset 0x0552) */
7846
7847 #define BIT_EN_PRE_DL_BEACON BIT(3)
7848
7849 #define BIT_SHIFT_MBID_BCN_NUM 0
7850 #define BIT_MASK_MBID_BCN_NUM 0x7
7851 #define BIT_MBID_BCN_NUM(x)                                                    \
7852         (((x) & BIT_MASK_MBID_BCN_NUM) << BIT_SHIFT_MBID_BCN_NUM)
7853 #define BIT_GET_MBID_BCN_NUM(x)                                                \
7854         (((x) >> BIT_SHIFT_MBID_BCN_NUM) & BIT_MASK_MBID_BCN_NUM)
7855
7856 /* 2 REG_DUAL_TSF_RST                   (Offset 0x0553) */
7857
7858 #define BIT_FREECNT_RST BIT(5)
7859
7860 /* 2 REG_DUAL_TSF_RST                   (Offset 0x0553) */
7861
7862 #define BIT_TSFTR_CLI3_RST BIT(4)
7863
7864 /* 2 REG_DUAL_TSF_RST                   (Offset 0x0553) */
7865
7866 #define BIT_TSFTR_CLI2_RST BIT(3)
7867
7868 /* 2 REG_DUAL_TSF_RST                   (Offset 0x0553) */
7869
7870 #define BIT_TSFTR_CLI1_RST BIT(2)
7871
7872 /* 2 REG_DUAL_TSF_RST                   (Offset 0x0553) */
7873
7874 #define BIT_TSFTR_CLI0_RST BIT(1)
7875
7876 /* 2 REG_DUAL_TSF_RST                   (Offset 0x0553) */
7877
7878 #define BIT_TSFTR_RST BIT(0)
7879
7880 /* 2 REG_MBSSID_BCN_SPACE                       (Offset 0x0554) */
7881
7882 #define BIT_SHIFT_BCN_TIMER_SEL_FWRD 28
7883 #define BIT_MASK_BCN_TIMER_SEL_FWRD 0x7
7884 #define BIT_BCN_TIMER_SEL_FWRD(x)                                              \
7885         (((x) & BIT_MASK_BCN_TIMER_SEL_FWRD) << BIT_SHIFT_BCN_TIMER_SEL_FWRD)
7886 #define BIT_GET_BCN_TIMER_SEL_FWRD(x)                                          \
7887         (((x) >> BIT_SHIFT_BCN_TIMER_SEL_FWRD) & BIT_MASK_BCN_TIMER_SEL_FWRD)
7888
7889 /* 2 REG_MBSSID_BCN_SPACE                       (Offset 0x0554) */
7890
7891 #define BIT_SHIFT_BCN_SPACE_CLINT0 16
7892 #define BIT_MASK_BCN_SPACE_CLINT0 0xfff
7893 #define BIT_BCN_SPACE_CLINT0(x)                                                \
7894         (((x) & BIT_MASK_BCN_SPACE_CLINT0) << BIT_SHIFT_BCN_SPACE_CLINT0)
7895 #define BIT_GET_BCN_SPACE_CLINT0(x)                                            \
7896         (((x) >> BIT_SHIFT_BCN_SPACE_CLINT0) & BIT_MASK_BCN_SPACE_CLINT0)
7897
7898 /* 2 REG_MBSSID_BCN_SPACE                       (Offset 0x0554) */
7899
7900 #define BIT_SHIFT_BCN_SPACE0 0
7901 #define BIT_MASK_BCN_SPACE0 0xffff
7902 #define BIT_BCN_SPACE0(x) (((x) & BIT_MASK_BCN_SPACE0) << BIT_SHIFT_BCN_SPACE0)
7903 #define BIT_GET_BCN_SPACE0(x)                                                  \
7904         (((x) >> BIT_SHIFT_BCN_SPACE0) & BIT_MASK_BCN_SPACE0)
7905
7906 /* 2 REG_DRVERLYINT                             (Offset 0x0558) */
7907
7908 #define BIT_SHIFT_DRVERLYITV 0
7909 #define BIT_MASK_DRVERLYITV 0xff
7910 #define BIT_DRVERLYITV(x) (((x) & BIT_MASK_DRVERLYITV) << BIT_SHIFT_DRVERLYITV)
7911 #define BIT_GET_DRVERLYITV(x)                                                  \
7912         (((x) >> BIT_SHIFT_DRVERLYITV) & BIT_MASK_DRVERLYITV)
7913
7914 /* 2 REG_BCNDMATIM                              (Offset 0x0559) */
7915
7916 #define BIT_SHIFT_BCNDMATIM 0
7917 #define BIT_MASK_BCNDMATIM 0xff
7918 #define BIT_BCNDMATIM(x) (((x) & BIT_MASK_BCNDMATIM) << BIT_SHIFT_BCNDMATIM)
7919 #define BIT_GET_BCNDMATIM(x) (((x) >> BIT_SHIFT_BCNDMATIM) & BIT_MASK_BCNDMATIM)
7920
7921 /* 2 REG_ATIMWND                                (Offset 0x055A) */
7922
7923 #define BIT_SHIFT_ATIMWND0 0
7924 #define BIT_MASK_ATIMWND0 0xffff
7925 #define BIT_ATIMWND0(x) (((x) & BIT_MASK_ATIMWND0) << BIT_SHIFT_ATIMWND0)
7926 #define BIT_GET_ATIMWND0(x) (((x) >> BIT_SHIFT_ATIMWND0) & BIT_MASK_ATIMWND0)
7927
7928 /* 2 REG_USTIME_TSF                             (Offset 0x055C) */
7929
7930 #define BIT_SHIFT_USTIME_TSF_V1 0
7931 #define BIT_MASK_USTIME_TSF_V1 0xff
7932 #define BIT_USTIME_TSF_V1(x)                                                   \
7933         (((x) & BIT_MASK_USTIME_TSF_V1) << BIT_SHIFT_USTIME_TSF_V1)
7934 #define BIT_GET_USTIME_TSF_V1(x)                                               \
7935         (((x) >> BIT_SHIFT_USTIME_TSF_V1) & BIT_MASK_USTIME_TSF_V1)
7936
7937 /* 2 REG_BCN_MAX_ERR                            (Offset 0x055D) */
7938
7939 #define BIT_SHIFT_BCN_MAX_ERR 0
7940 #define BIT_MASK_BCN_MAX_ERR 0xff
7941 #define BIT_BCN_MAX_ERR(x)                                                     \
7942         (((x) & BIT_MASK_BCN_MAX_ERR) << BIT_SHIFT_BCN_MAX_ERR)
7943 #define BIT_GET_BCN_MAX_ERR(x)                                                 \
7944         (((x) >> BIT_SHIFT_BCN_MAX_ERR) & BIT_MASK_BCN_MAX_ERR)
7945
7946 /* 2 REG_RXTSF_OFFSET_CCK                       (Offset 0x055E) */
7947
7948 #define BIT_SHIFT_CCK_RXTSF_OFFSET 0
7949 #define BIT_MASK_CCK_RXTSF_OFFSET 0xff
7950 #define BIT_CCK_RXTSF_OFFSET(x)                                                \
7951         (((x) & BIT_MASK_CCK_RXTSF_OFFSET) << BIT_SHIFT_CCK_RXTSF_OFFSET)
7952 #define BIT_GET_CCK_RXTSF_OFFSET(x)                                            \
7953         (((x) >> BIT_SHIFT_CCK_RXTSF_OFFSET) & BIT_MASK_CCK_RXTSF_OFFSET)
7954
7955 /* 2 REG_RXTSF_OFFSET_OFDM                      (Offset 0x055F) */
7956
7957 #define BIT_SHIFT_OFDM_RXTSF_OFFSET 0
7958 #define BIT_MASK_OFDM_RXTSF_OFFSET 0xff
7959 #define BIT_OFDM_RXTSF_OFFSET(x)                                               \
7960         (((x) & BIT_MASK_OFDM_RXTSF_OFFSET) << BIT_SHIFT_OFDM_RXTSF_OFFSET)
7961 #define BIT_GET_OFDM_RXTSF_OFFSET(x)                                           \
7962         (((x) >> BIT_SHIFT_OFDM_RXTSF_OFFSET) & BIT_MASK_OFDM_RXTSF_OFFSET)
7963
7964 /* 2 REG_TSFTR                          (Offset 0x0560) */
7965
7966 #define BIT_SHIFT_TSF_TIMER 0
7967 #define BIT_MASK_TSF_TIMER 0xffffffffffffffffL
7968 #define BIT_TSF_TIMER(x) (((x) & BIT_MASK_TSF_TIMER) << BIT_SHIFT_TSF_TIMER)
7969 #define BIT_GET_TSF_TIMER(x) (((x) >> BIT_SHIFT_TSF_TIMER) & BIT_MASK_TSF_TIMER)
7970
7971 /* 2 REG_FREERUN_CNT                            (Offset 0x0568) */
7972
7973 #define BIT_SHIFT_FREERUN_CNT 0
7974 #define BIT_MASK_FREERUN_CNT 0xffffffffffffffffL
7975 #define BIT_FREERUN_CNT(x)                                                     \
7976         (((x) & BIT_MASK_FREERUN_CNT) << BIT_SHIFT_FREERUN_CNT)
7977 #define BIT_GET_FREERUN_CNT(x)                                                 \
7978         (((x) >> BIT_SHIFT_FREERUN_CNT) & BIT_MASK_FREERUN_CNT)
7979
7980 /* 2 REG_ATIMWND1_V1                            (Offset 0x0570) */
7981
7982 #define BIT_SHIFT_ATIMWND1_V1 0
7983 #define BIT_MASK_ATIMWND1_V1 0xff
7984 #define BIT_ATIMWND1_V1(x)                                                     \
7985         (((x) & BIT_MASK_ATIMWND1_V1) << BIT_SHIFT_ATIMWND1_V1)
7986 #define BIT_GET_ATIMWND1_V1(x)                                                 \
7987         (((x) >> BIT_SHIFT_ATIMWND1_V1) & BIT_MASK_ATIMWND1_V1)
7988
7989 /* 2 REG_TBTT_PROHIBIT_INFRA                    (Offset 0x0571) */
7990
7991 #define BIT_SHIFT_TBTT_PROHIBIT_INFRA 0
7992 #define BIT_MASK_TBTT_PROHIBIT_INFRA 0xff
7993 #define BIT_TBTT_PROHIBIT_INFRA(x)                                             \
7994         (((x) & BIT_MASK_TBTT_PROHIBIT_INFRA) << BIT_SHIFT_TBTT_PROHIBIT_INFRA)
7995 #define BIT_GET_TBTT_PROHIBIT_INFRA(x)                                         \
7996         (((x) >> BIT_SHIFT_TBTT_PROHIBIT_INFRA) & BIT_MASK_TBTT_PROHIBIT_INFRA)
7997
7998 /* 2 REG_CTWND                          (Offset 0x0572) */
7999
8000 #define BIT_SHIFT_CTWND 0
8001 #define BIT_MASK_CTWND 0xff
8002 #define BIT_CTWND(x) (((x) & BIT_MASK_CTWND) << BIT_SHIFT_CTWND)
8003 #define BIT_GET_CTWND(x) (((x) >> BIT_SHIFT_CTWND) & BIT_MASK_CTWND)
8004
8005 /* 2 REG_BCNIVLCUNT                             (Offset 0x0573) */
8006
8007 #define BIT_SHIFT_BCNIVLCUNT 0
8008 #define BIT_MASK_BCNIVLCUNT 0x7f
8009 #define BIT_BCNIVLCUNT(x) (((x) & BIT_MASK_BCNIVLCUNT) << BIT_SHIFT_BCNIVLCUNT)
8010 #define BIT_GET_BCNIVLCUNT(x)                                                  \
8011         (((x) >> BIT_SHIFT_BCNIVLCUNT) & BIT_MASK_BCNIVLCUNT)
8012
8013 /* 2 REG_BCNDROPCTRL                            (Offset 0x0574) */
8014
8015 #define BIT_BEACON_DROP_EN BIT(7)
8016
8017 #define BIT_SHIFT_BEACON_DROP_IVL 0
8018 #define BIT_MASK_BEACON_DROP_IVL 0x7f
8019 #define BIT_BEACON_DROP_IVL(x)                                                 \
8020         (((x) & BIT_MASK_BEACON_DROP_IVL) << BIT_SHIFT_BEACON_DROP_IVL)
8021 #define BIT_GET_BEACON_DROP_IVL(x)                                             \
8022         (((x) >> BIT_SHIFT_BEACON_DROP_IVL) & BIT_MASK_BEACON_DROP_IVL)
8023
8024 /* 2 REG_HGQ_TIMEOUT_PERIOD                     (Offset 0x0575) */
8025
8026 #define BIT_SHIFT_HGQ_TIMEOUT_PERIOD 0
8027 #define BIT_MASK_HGQ_TIMEOUT_PERIOD 0xff
8028 #define BIT_HGQ_TIMEOUT_PERIOD(x)                                              \
8029         (((x) & BIT_MASK_HGQ_TIMEOUT_PERIOD) << BIT_SHIFT_HGQ_TIMEOUT_PERIOD)
8030 #define BIT_GET_HGQ_TIMEOUT_PERIOD(x)                                          \
8031         (((x) >> BIT_SHIFT_HGQ_TIMEOUT_PERIOD) & BIT_MASK_HGQ_TIMEOUT_PERIOD)
8032
8033 /* 2 REG_TXCMD_TIMEOUT_PERIOD           (Offset 0x0576) */
8034
8035 #define BIT_SHIFT_TXCMD_TIMEOUT_PERIOD 0
8036 #define BIT_MASK_TXCMD_TIMEOUT_PERIOD 0xff
8037 #define BIT_TXCMD_TIMEOUT_PERIOD(x)                                            \
8038         (((x) & BIT_MASK_TXCMD_TIMEOUT_PERIOD)                                 \
8039          << BIT_SHIFT_TXCMD_TIMEOUT_PERIOD)
8040 #define BIT_GET_TXCMD_TIMEOUT_PERIOD(x)                                        \
8041         (((x) >> BIT_SHIFT_TXCMD_TIMEOUT_PERIOD) &                             \
8042          BIT_MASK_TXCMD_TIMEOUT_PERIOD)
8043
8044 /* 2 REG_MISC_CTRL                              (Offset 0x0577) */
8045
8046 #define BIT_DIS_TRX_CAL_BCN BIT(5)
8047 #define BIT_DIS_TX_CAL_TBTT BIT(4)
8048 #define BIT_EN_FREECNT BIT(3)
8049 #define BIT_BCN_AGGRESSION BIT(2)
8050
8051 #define BIT_SHIFT_DIS_SECONDARY_CCA 0
8052 #define BIT_MASK_DIS_SECONDARY_CCA 0x3
8053 #define BIT_DIS_SECONDARY_CCA(x)                                               \
8054         (((x) & BIT_MASK_DIS_SECONDARY_CCA) << BIT_SHIFT_DIS_SECONDARY_CCA)
8055 #define BIT_GET_DIS_SECONDARY_CCA(x)                                           \
8056         (((x) >> BIT_SHIFT_DIS_SECONDARY_CCA) & BIT_MASK_DIS_SECONDARY_CCA)
8057
8058 /* 2 REG_BCN_CTRL_CLINT1                        (Offset 0x0578) */
8059
8060 #define BIT_CLI1_DIS_RX_BSSID_FIT BIT(6)
8061 #define BIT_CLI1_DIS_TSF_UDT BIT(4)
8062 #define BIT_CLI1_EN_BCN_FUNCTION BIT(3)
8063
8064 /* 2 REG_BCN_CTRL_CLINT1                        (Offset 0x0578) */
8065
8066 #define BIT_CLI1_EN_RXBCN_RPT BIT(2)
8067
8068 /* 2 REG_BCN_CTRL_CLINT1                        (Offset 0x0578) */
8069
8070 #define BIT_CLI1_ENP2P_CTWINDOW BIT(1)
8071 #define BIT_CLI1_ENP2P_BCNQ_AREA BIT(0)
8072
8073 /* 2 REG_BCN_CTRL_CLINT2                        (Offset 0x0579) */
8074
8075 #define BIT_CLI2_DIS_RX_BSSID_FIT BIT(6)
8076 #define BIT_CLI2_DIS_TSF_UDT BIT(4)
8077 #define BIT_CLI2_EN_BCN_FUNCTION BIT(3)
8078
8079 /* 2 REG_BCN_CTRL_CLINT2                        (Offset 0x0579) */
8080
8081 #define BIT_CLI2_EN_RXBCN_RPT BIT(2)
8082
8083 /* 2 REG_BCN_CTRL_CLINT2                        (Offset 0x0579) */
8084
8085 #define BIT_CLI2_ENP2P_CTWINDOW BIT(1)
8086 #define BIT_CLI2_ENP2P_BCNQ_AREA BIT(0)
8087
8088 /* 2 REG_BCN_CTRL_CLINT3                        (Offset 0x057A) */
8089
8090 #define BIT_CLI3_DIS_RX_BSSID_FIT BIT(6)
8091 #define BIT_CLI3_DIS_TSF_UDT BIT(4)
8092 #define BIT_CLI3_EN_BCN_FUNCTION BIT(3)
8093
8094 /* 2 REG_BCN_CTRL_CLINT3                        (Offset 0x057A) */
8095
8096 #define BIT_CLI3_EN_RXBCN_RPT BIT(2)
8097
8098 /* 2 REG_BCN_CTRL_CLINT3                        (Offset 0x057A) */
8099
8100 #define BIT_CLI3_ENP2P_CTWINDOW BIT(1)
8101 #define BIT_CLI3_ENP2P_BCNQ_AREA BIT(0)
8102
8103 /* 2 REG_EXTEND_CTRL                            (Offset 0x057B) */
8104
8105 #define BIT_EN_TSFBIT32_RST_P2P2 BIT(5)
8106 #define BIT_EN_TSFBIT32_RST_P2P1 BIT(4)
8107
8108 #define BIT_SHIFT_PORT_SEL 0
8109 #define BIT_MASK_PORT_SEL 0x7
8110 #define BIT_PORT_SEL(x) (((x) & BIT_MASK_PORT_SEL) << BIT_SHIFT_PORT_SEL)
8111 #define BIT_GET_PORT_SEL(x) (((x) >> BIT_SHIFT_PORT_SEL) & BIT_MASK_PORT_SEL)
8112
8113 /* 2 REG_P2PPS1_SPEC_STATE                      (Offset 0x057C) */
8114
8115 #define BIT_P2P1_SPEC_POWER_STATE BIT(7)
8116 #define BIT_P2P1_SPEC_CTWINDOW_ON BIT(6)
8117 #define BIT_P2P1_SPEC_BCN_AREA_ON BIT(5)
8118 #define BIT_P2P1_SPEC_CTWIN_EARLY_DISTX BIT(4)
8119 #define BIT_P2P1_SPEC_NOA1_OFF_PERIOD BIT(3)
8120 #define BIT_P2P1_SPEC_FORCE_DOZE1 BIT(2)
8121 #define BIT_P2P1_SPEC_NOA0_OFF_PERIOD BIT(1)
8122 #define BIT_P2P1_SPEC_FORCE_DOZE0 BIT(0)
8123
8124 /* 2 REG_P2PPS1_STATE                   (Offset 0x057D) */
8125
8126 #define BIT_P2P1_POWER_STATE BIT(7)
8127 #define BIT_P2P1_CTWINDOW_ON BIT(6)
8128 #define BIT_P2P1_BEACON_AREA_ON BIT(5)
8129 #define BIT_P2P1_CTWIN_EARLY_DISTX BIT(4)
8130 #define BIT_P2P1_NOA1_OFF_PERIOD BIT(3)
8131 #define BIT_P2P1_FORCE_DOZE1 BIT(2)
8132 #define BIT_P2P1_NOA0_OFF_PERIOD BIT(1)
8133 #define BIT_P2P1_FORCE_DOZE0 BIT(0)
8134
8135 /* 2 REG_P2PPS2_SPEC_STATE                      (Offset 0x057E) */
8136
8137 #define BIT_P2P2_SPEC_POWER_STATE BIT(7)
8138 #define BIT_P2P2_SPEC_CTWINDOW_ON BIT(6)
8139 #define BIT_P2P2_SPEC_BCN_AREA_ON BIT(5)
8140 #define BIT_P2P2_SPEC_CTWIN_EARLY_DISTX BIT(4)
8141 #define BIT_P2P2_SPEC_NOA1_OFF_PERIOD BIT(3)
8142 #define BIT_P2P2_SPEC_FORCE_DOZE1 BIT(2)
8143 #define BIT_P2P2_SPEC_NOA0_OFF_PERIOD BIT(1)
8144 #define BIT_P2P2_SPEC_FORCE_DOZE0 BIT(0)
8145
8146 /* 2 REG_P2PPS2_STATE                   (Offset 0x057F) */
8147
8148 #define BIT_P2P2_POWER_STATE BIT(7)
8149 #define BIT_P2P2_CTWINDOW_ON BIT(6)
8150 #define BIT_P2P2_BEACON_AREA_ON BIT(5)
8151 #define BIT_P2P2_CTWIN_EARLY_DISTX BIT(4)
8152 #define BIT_P2P2_NOA1_OFF_PERIOD BIT(3)
8153 #define BIT_P2P2_FORCE_DOZE1 BIT(2)
8154 #define BIT_P2P2_NOA0_OFF_PERIOD BIT(1)
8155 #define BIT_P2P2_FORCE_DOZE0 BIT(0)
8156
8157 /* 2 REG_PS_TIMER0                              (Offset 0x0580) */
8158
8159 #define BIT_SHIFT_PSTIMER0_INT 5
8160 #define BIT_MASK_PSTIMER0_INT 0x7ffffff
8161 #define BIT_PSTIMER0_INT(x)                                                    \
8162         (((x) & BIT_MASK_PSTIMER0_INT) << BIT_SHIFT_PSTIMER0_INT)
8163 #define BIT_GET_PSTIMER0_INT(x)                                                \
8164         (((x) >> BIT_SHIFT_PSTIMER0_INT) & BIT_MASK_PSTIMER0_INT)
8165
8166 /* 2 REG_PS_TIMER1                              (Offset 0x0584) */
8167
8168 #define BIT_SHIFT_PSTIMER1_INT 5
8169 #define BIT_MASK_PSTIMER1_INT 0x7ffffff
8170 #define BIT_PSTIMER1_INT(x)                                                    \
8171         (((x) & BIT_MASK_PSTIMER1_INT) << BIT_SHIFT_PSTIMER1_INT)
8172 #define BIT_GET_PSTIMER1_INT(x)                                                \
8173         (((x) >> BIT_SHIFT_PSTIMER1_INT) & BIT_MASK_PSTIMER1_INT)
8174
8175 /* 2 REG_PS_TIMER2                              (Offset 0x0588) */
8176
8177 #define BIT_SHIFT_PSTIMER2_INT 5
8178 #define BIT_MASK_PSTIMER2_INT 0x7ffffff
8179 #define BIT_PSTIMER2_INT(x)                                                    \
8180         (((x) & BIT_MASK_PSTIMER2_INT) << BIT_SHIFT_PSTIMER2_INT)
8181 #define BIT_GET_PSTIMER2_INT(x)                                                \
8182         (((x) >> BIT_SHIFT_PSTIMER2_INT) & BIT_MASK_PSTIMER2_INT)
8183
8184 /* 2 REG_TBTT_CTN_AREA                  (Offset 0x058C) */
8185
8186 #define BIT_SHIFT_TBTT_CTN_AREA 0
8187 #define BIT_MASK_TBTT_CTN_AREA 0xff
8188 #define BIT_TBTT_CTN_AREA(x)                                                   \
8189         (((x) & BIT_MASK_TBTT_CTN_AREA) << BIT_SHIFT_TBTT_CTN_AREA)
8190 #define BIT_GET_TBTT_CTN_AREA(x)                                               \
8191         (((x) >> BIT_SHIFT_TBTT_CTN_AREA) & BIT_MASK_TBTT_CTN_AREA)
8192
8193 /* 2 REG_FORCE_BCN_IFS                  (Offset 0x058E) */
8194
8195 #define BIT_SHIFT_FORCE_BCN_IFS 0
8196 #define BIT_MASK_FORCE_BCN_IFS 0xff
8197 #define BIT_FORCE_BCN_IFS(x)                                                   \
8198         (((x) & BIT_MASK_FORCE_BCN_IFS) << BIT_SHIFT_FORCE_BCN_IFS)
8199 #define BIT_GET_FORCE_BCN_IFS(x)                                               \
8200         (((x) >> BIT_SHIFT_FORCE_BCN_IFS) & BIT_MASK_FORCE_BCN_IFS)
8201
8202 /* 2 REG_TXOP_MIN                               (Offset 0x0590) */
8203
8204 #define BIT_SHIFT_TXOP_MIN 0
8205 #define BIT_MASK_TXOP_MIN 0x3fff
8206 #define BIT_TXOP_MIN(x) (((x) & BIT_MASK_TXOP_MIN) << BIT_SHIFT_TXOP_MIN)
8207 #define BIT_GET_TXOP_MIN(x) (((x) >> BIT_SHIFT_TXOP_MIN) & BIT_MASK_TXOP_MIN)
8208
8209 /* 2 REG_PRE_BKF_TIME                   (Offset 0x0592) */
8210
8211 #define BIT_SHIFT_PRE_BKF_TIME 0
8212 #define BIT_MASK_PRE_BKF_TIME 0xff
8213 #define BIT_PRE_BKF_TIME(x)                                                    \
8214         (((x) & BIT_MASK_PRE_BKF_TIME) << BIT_SHIFT_PRE_BKF_TIME)
8215 #define BIT_GET_PRE_BKF_TIME(x)                                                \
8216         (((x) >> BIT_SHIFT_PRE_BKF_TIME) & BIT_MASK_PRE_BKF_TIME)
8217
8218 /* 2 REG_CROSS_TXOP_CTRL                        (Offset 0x0593) */
8219
8220 #define BIT_DTIM_BYPASS BIT(2)
8221 #define BIT_RTS_NAV_TXOP BIT(1)
8222 #define BIT_NOT_CROSS_TXOP BIT(0)
8223
8224 /* 2 REG_ATIMWND2                               (Offset 0x05A0) */
8225
8226 #define BIT_SHIFT_ATIMWND2 0
8227 #define BIT_MASK_ATIMWND2 0xff
8228 #define BIT_ATIMWND2(x) (((x) & BIT_MASK_ATIMWND2) << BIT_SHIFT_ATIMWND2)
8229 #define BIT_GET_ATIMWND2(x) (((x) >> BIT_SHIFT_ATIMWND2) & BIT_MASK_ATIMWND2)
8230
8231 /* 2 REG_ATIMWND3                               (Offset 0x05A1) */
8232
8233 #define BIT_SHIFT_ATIMWND3 0
8234 #define BIT_MASK_ATIMWND3 0xff
8235 #define BIT_ATIMWND3(x) (((x) & BIT_MASK_ATIMWND3) << BIT_SHIFT_ATIMWND3)
8236 #define BIT_GET_ATIMWND3(x) (((x) >> BIT_SHIFT_ATIMWND3) & BIT_MASK_ATIMWND3)
8237
8238 /* 2 REG_ATIMWND4                               (Offset 0x05A2) */
8239
8240 #define BIT_SHIFT_ATIMWND4 0
8241 #define BIT_MASK_ATIMWND4 0xff
8242 #define BIT_ATIMWND4(x) (((x) & BIT_MASK_ATIMWND4) << BIT_SHIFT_ATIMWND4)
8243 #define BIT_GET_ATIMWND4(x) (((x) >> BIT_SHIFT_ATIMWND4) & BIT_MASK_ATIMWND4)
8244
8245 /* 2 REG_ATIMWND5                               (Offset 0x05A3) */
8246
8247 #define BIT_SHIFT_ATIMWND5 0
8248 #define BIT_MASK_ATIMWND5 0xff
8249 #define BIT_ATIMWND5(x) (((x) & BIT_MASK_ATIMWND5) << BIT_SHIFT_ATIMWND5)
8250 #define BIT_GET_ATIMWND5(x) (((x) >> BIT_SHIFT_ATIMWND5) & BIT_MASK_ATIMWND5)
8251
8252 /* 2 REG_ATIMWND6                               (Offset 0x05A4) */
8253
8254 #define BIT_SHIFT_ATIMWND6 0
8255 #define BIT_MASK_ATIMWND6 0xff
8256 #define BIT_ATIMWND6(x) (((x) & BIT_MASK_ATIMWND6) << BIT_SHIFT_ATIMWND6)
8257 #define BIT_GET_ATIMWND6(x) (((x) >> BIT_SHIFT_ATIMWND6) & BIT_MASK_ATIMWND6)
8258
8259 /* 2 REG_ATIMWND7                               (Offset 0x05A5) */
8260
8261 #define BIT_SHIFT_ATIMWND7 0
8262 #define BIT_MASK_ATIMWND7 0xff
8263 #define BIT_ATIMWND7(x) (((x) & BIT_MASK_ATIMWND7) << BIT_SHIFT_ATIMWND7)
8264 #define BIT_GET_ATIMWND7(x) (((x) >> BIT_SHIFT_ATIMWND7) & BIT_MASK_ATIMWND7)
8265
8266 /* 2 REG_ATIMUGT                                (Offset 0x05A6) */
8267
8268 #define BIT_SHIFT_ATIM_URGENT 0
8269 #define BIT_MASK_ATIM_URGENT 0xff
8270 #define BIT_ATIM_URGENT(x)                                                     \
8271         (((x) & BIT_MASK_ATIM_URGENT) << BIT_SHIFT_ATIM_URGENT)
8272 #define BIT_GET_ATIM_URGENT(x)                                                 \
8273         (((x) >> BIT_SHIFT_ATIM_URGENT) & BIT_MASK_ATIM_URGENT)
8274
8275 /* 2 REG_HIQ_NO_LMT_EN                  (Offset 0x05A7) */
8276
8277 #define BIT_HIQ_NO_LMT_EN_VAP7 BIT(7)
8278 #define BIT_HIQ_NO_LMT_EN_VAP6 BIT(6)
8279 #define BIT_HIQ_NO_LMT_EN_VAP5 BIT(5)
8280 #define BIT_HIQ_NO_LMT_EN_VAP4 BIT(4)
8281 #define BIT_HIQ_NO_LMT_EN_VAP3 BIT(3)
8282 #define BIT_HIQ_NO_LMT_EN_VAP2 BIT(2)
8283 #define BIT_HIQ_NO_LMT_EN_VAP1 BIT(1)
8284 #define BIT_HIQ_NO_LMT_EN_ROOT BIT(0)
8285
8286 /* 2 REG_DTIM_COUNTER_ROOT                      (Offset 0x05A8) */
8287
8288 #define BIT_SHIFT_DTIM_COUNT_ROOT 0
8289 #define BIT_MASK_DTIM_COUNT_ROOT 0xff
8290 #define BIT_DTIM_COUNT_ROOT(x)                                                 \
8291         (((x) & BIT_MASK_DTIM_COUNT_ROOT) << BIT_SHIFT_DTIM_COUNT_ROOT)
8292 #define BIT_GET_DTIM_COUNT_ROOT(x)                                             \
8293         (((x) >> BIT_SHIFT_DTIM_COUNT_ROOT) & BIT_MASK_DTIM_COUNT_ROOT)
8294
8295 /* 2 REG_DTIM_COUNTER_VAP1                      (Offset 0x05A9) */
8296
8297 #define BIT_SHIFT_DTIM_COUNT_VAP1 0
8298 #define BIT_MASK_DTIM_COUNT_VAP1 0xff
8299 #define BIT_DTIM_COUNT_VAP1(x)                                                 \
8300         (((x) & BIT_MASK_DTIM_COUNT_VAP1) << BIT_SHIFT_DTIM_COUNT_VAP1)
8301 #define BIT_GET_DTIM_COUNT_VAP1(x)                                             \
8302         (((x) >> BIT_SHIFT_DTIM_COUNT_VAP1) & BIT_MASK_DTIM_COUNT_VAP1)
8303
8304 /* 2 REG_DTIM_COUNTER_VAP2                      (Offset 0x05AA) */
8305
8306 #define BIT_SHIFT_DTIM_COUNT_VAP2 0
8307 #define BIT_MASK_DTIM_COUNT_VAP2 0xff
8308 #define BIT_DTIM_COUNT_VAP2(x)                                                 \
8309         (((x) & BIT_MASK_DTIM_COUNT_VAP2) << BIT_SHIFT_DTIM_COUNT_VAP2)
8310 #define BIT_GET_DTIM_COUNT_VAP2(x)                                             \
8311         (((x) >> BIT_SHIFT_DTIM_COUNT_VAP2) & BIT_MASK_DTIM_COUNT_VAP2)
8312
8313 /* 2 REG_DTIM_COUNTER_VAP3                      (Offset 0x05AB) */
8314
8315 #define BIT_SHIFT_DTIM_COUNT_VAP3 0
8316 #define BIT_MASK_DTIM_COUNT_VAP3 0xff
8317 #define BIT_DTIM_COUNT_VAP3(x)                                                 \
8318         (((x) & BIT_MASK_DTIM_COUNT_VAP3) << BIT_SHIFT_DTIM_COUNT_VAP3)
8319 #define BIT_GET_DTIM_COUNT_VAP3(x)                                             \
8320         (((x) >> BIT_SHIFT_DTIM_COUNT_VAP3) & BIT_MASK_DTIM_COUNT_VAP3)
8321
8322 /* 2 REG_DTIM_COUNTER_VAP4                      (Offset 0x05AC) */
8323
8324 #define BIT_SHIFT_DTIM_COUNT_VAP4 0
8325 #define BIT_MASK_DTIM_COUNT_VAP4 0xff
8326 #define BIT_DTIM_COUNT_VAP4(x)                                                 \
8327         (((x) & BIT_MASK_DTIM_COUNT_VAP4) << BIT_SHIFT_DTIM_COUNT_VAP4)
8328 #define BIT_GET_DTIM_COUNT_VAP4(x)                                             \
8329         (((x) >> BIT_SHIFT_DTIM_COUNT_VAP4) & BIT_MASK_DTIM_COUNT_VAP4)
8330
8331 /* 2 REG_DTIM_COUNTER_VAP5                      (Offset 0x05AD) */
8332
8333 #define BIT_SHIFT_DTIM_COUNT_VAP5 0
8334 #define BIT_MASK_DTIM_COUNT_VAP5 0xff
8335 #define BIT_DTIM_COUNT_VAP5(x)                                                 \
8336         (((x) & BIT_MASK_DTIM_COUNT_VAP5) << BIT_SHIFT_DTIM_COUNT_VAP5)
8337 #define BIT_GET_DTIM_COUNT_VAP5(x)                                             \
8338         (((x) >> BIT_SHIFT_DTIM_COUNT_VAP5) & BIT_MASK_DTIM_COUNT_VAP5)
8339
8340 /* 2 REG_DTIM_COUNTER_VAP6                      (Offset 0x05AE) */
8341
8342 #define BIT_SHIFT_DTIM_COUNT_VAP6 0
8343 #define BIT_MASK_DTIM_COUNT_VAP6 0xff
8344 #define BIT_DTIM_COUNT_VAP6(x)                                                 \
8345         (((x) & BIT_MASK_DTIM_COUNT_VAP6) << BIT_SHIFT_DTIM_COUNT_VAP6)
8346 #define BIT_GET_DTIM_COUNT_VAP6(x)                                             \
8347         (((x) >> BIT_SHIFT_DTIM_COUNT_VAP6) & BIT_MASK_DTIM_COUNT_VAP6)
8348
8349 /* 2 REG_DTIM_COUNTER_VAP7                      (Offset 0x05AF) */
8350
8351 #define BIT_SHIFT_DTIM_COUNT_VAP7 0
8352 #define BIT_MASK_DTIM_COUNT_VAP7 0xff
8353 #define BIT_DTIM_COUNT_VAP7(x)                                                 \
8354         (((x) & BIT_MASK_DTIM_COUNT_VAP7) << BIT_SHIFT_DTIM_COUNT_VAP7)
8355 #define BIT_GET_DTIM_COUNT_VAP7(x)                                             \
8356         (((x) >> BIT_SHIFT_DTIM_COUNT_VAP7) & BIT_MASK_DTIM_COUNT_VAP7)
8357
8358 /* 2 REG_DIS_ATIM                               (Offset 0x05B0) */
8359
8360 #define BIT_DIS_ATIM_VAP7 BIT(7)
8361 #define BIT_DIS_ATIM_VAP6 BIT(6)
8362 #define BIT_DIS_ATIM_VAP5 BIT(5)
8363 #define BIT_DIS_ATIM_VAP4 BIT(4)
8364 #define BIT_DIS_ATIM_VAP3 BIT(3)
8365 #define BIT_DIS_ATIM_VAP2 BIT(2)
8366 #define BIT_DIS_ATIM_VAP1 BIT(1)
8367 #define BIT_DIS_ATIM_ROOT BIT(0)
8368
8369 /* 2 REG_EARLY_128US                            (Offset 0x05B1) */
8370
8371 #define BIT_SHIFT_TSFT_SEL_TIMER1 3
8372 #define BIT_MASK_TSFT_SEL_TIMER1 0x7
8373 #define BIT_TSFT_SEL_TIMER1(x)                                                 \
8374         (((x) & BIT_MASK_TSFT_SEL_TIMER1) << BIT_SHIFT_TSFT_SEL_TIMER1)
8375 #define BIT_GET_TSFT_SEL_TIMER1(x)                                             \
8376         (((x) >> BIT_SHIFT_TSFT_SEL_TIMER1) & BIT_MASK_TSFT_SEL_TIMER1)
8377
8378 #define BIT_SHIFT_EARLY_128US 0
8379 #define BIT_MASK_EARLY_128US 0x7
8380 #define BIT_EARLY_128US(x)                                                     \
8381         (((x) & BIT_MASK_EARLY_128US) << BIT_SHIFT_EARLY_128US)
8382 #define BIT_GET_EARLY_128US(x)                                                 \
8383         (((x) >> BIT_SHIFT_EARLY_128US) & BIT_MASK_EARLY_128US)
8384
8385 /* 2 REG_P2PPS1_CTRL                            (Offset 0x05B2) */
8386
8387 #define BIT_P2P1_CTW_ALLSTASLEEP BIT(7)
8388 #define BIT_P2P1_OFF_DISTX_EN BIT(6)
8389 #define BIT_P2P1_PWR_MGT_EN BIT(5)
8390 #define BIT_P2P1_NOA1_EN BIT(2)
8391 #define BIT_P2P1_NOA0_EN BIT(1)
8392
8393 /* 2 REG_P2PPS2_CTRL                            (Offset 0x05B3) */
8394
8395 #define BIT_P2P2_CTW_ALLSTASLEEP BIT(7)
8396 #define BIT_P2P2_OFF_DISTX_EN BIT(6)
8397 #define BIT_P2P2_PWR_MGT_EN BIT(5)
8398 #define BIT_P2P2_NOA1_EN BIT(2)
8399 #define BIT_P2P2_NOA0_EN BIT(1)
8400
8401 /* 2 REG_TIMER0_SRC_SEL                 (Offset 0x05B4) */
8402
8403 #define BIT_SHIFT_SYNC_CLI_SEL 4
8404 #define BIT_MASK_SYNC_CLI_SEL 0x7
8405 #define BIT_SYNC_CLI_SEL(x)                                                    \
8406         (((x) & BIT_MASK_SYNC_CLI_SEL) << BIT_SHIFT_SYNC_CLI_SEL)
8407 #define BIT_GET_SYNC_CLI_SEL(x)                                                \
8408         (((x) >> BIT_SHIFT_SYNC_CLI_SEL) & BIT_MASK_SYNC_CLI_SEL)
8409
8410 #define BIT_SHIFT_TSFT_SEL_TIMER0 0
8411 #define BIT_MASK_TSFT_SEL_TIMER0 0x7
8412 #define BIT_TSFT_SEL_TIMER0(x)                                                 \
8413         (((x) & BIT_MASK_TSFT_SEL_TIMER0) << BIT_SHIFT_TSFT_SEL_TIMER0)
8414 #define BIT_GET_TSFT_SEL_TIMER0(x)                                             \
8415         (((x) >> BIT_SHIFT_TSFT_SEL_TIMER0) & BIT_MASK_TSFT_SEL_TIMER0)
8416
8417 /* 2 REG_NOA_UNIT_SEL                   (Offset 0x05B5) */
8418
8419 #define BIT_SHIFT_NOA_UNIT2_SEL 8
8420 #define BIT_MASK_NOA_UNIT2_SEL 0x7
8421 #define BIT_NOA_UNIT2_SEL(x)                                                   \
8422         (((x) & BIT_MASK_NOA_UNIT2_SEL) << BIT_SHIFT_NOA_UNIT2_SEL)
8423 #define BIT_GET_NOA_UNIT2_SEL(x)                                               \
8424         (((x) >> BIT_SHIFT_NOA_UNIT2_SEL) & BIT_MASK_NOA_UNIT2_SEL)
8425
8426 #define BIT_SHIFT_NOA_UNIT1_SEL 4
8427 #define BIT_MASK_NOA_UNIT1_SEL 0x7
8428 #define BIT_NOA_UNIT1_SEL(x)                                                   \
8429         (((x) & BIT_MASK_NOA_UNIT1_SEL) << BIT_SHIFT_NOA_UNIT1_SEL)
8430 #define BIT_GET_NOA_UNIT1_SEL(x)                                               \
8431         (((x) >> BIT_SHIFT_NOA_UNIT1_SEL) & BIT_MASK_NOA_UNIT1_SEL)
8432
8433 #define BIT_SHIFT_NOA_UNIT0_SEL 0
8434 #define BIT_MASK_NOA_UNIT0_SEL 0x7
8435 #define BIT_NOA_UNIT0_SEL(x)                                                   \
8436         (((x) & BIT_MASK_NOA_UNIT0_SEL) << BIT_SHIFT_NOA_UNIT0_SEL)
8437 #define BIT_GET_NOA_UNIT0_SEL(x)                                               \
8438         (((x) >> BIT_SHIFT_NOA_UNIT0_SEL) & BIT_MASK_NOA_UNIT0_SEL)
8439
8440 /* 2 REG_P2POFF_DIS_TXTIME                      (Offset 0x05B7) */
8441
8442 #define BIT_SHIFT_P2POFF_DIS_TXTIME 0
8443 #define BIT_MASK_P2POFF_DIS_TXTIME 0xff
8444 #define BIT_P2POFF_DIS_TXTIME(x)                                               \
8445         (((x) & BIT_MASK_P2POFF_DIS_TXTIME) << BIT_SHIFT_P2POFF_DIS_TXTIME)
8446 #define BIT_GET_P2POFF_DIS_TXTIME(x)                                           \
8447         (((x) >> BIT_SHIFT_P2POFF_DIS_TXTIME) & BIT_MASK_P2POFF_DIS_TXTIME)
8448
8449 /* 2 REG_MBSSID_BCN_SPACE2                      (Offset 0x05B8) */
8450
8451 #define BIT_SHIFT_BCN_SPACE_CLINT2 16
8452 #define BIT_MASK_BCN_SPACE_CLINT2 0xfff
8453 #define BIT_BCN_SPACE_CLINT2(x)                                                \
8454         (((x) & BIT_MASK_BCN_SPACE_CLINT2) << BIT_SHIFT_BCN_SPACE_CLINT2)
8455 #define BIT_GET_BCN_SPACE_CLINT2(x)                                            \
8456         (((x) >> BIT_SHIFT_BCN_SPACE_CLINT2) & BIT_MASK_BCN_SPACE_CLINT2)
8457
8458 #define BIT_SHIFT_BCN_SPACE_CLINT1 0
8459 #define BIT_MASK_BCN_SPACE_CLINT1 0xfff
8460 #define BIT_BCN_SPACE_CLINT1(x)                                                \
8461         (((x) & BIT_MASK_BCN_SPACE_CLINT1) << BIT_SHIFT_BCN_SPACE_CLINT1)
8462 #define BIT_GET_BCN_SPACE_CLINT1(x)                                            \
8463         (((x) >> BIT_SHIFT_BCN_SPACE_CLINT1) & BIT_MASK_BCN_SPACE_CLINT1)
8464
8465 /* 2 REG_MBSSID_BCN_SPACE3                      (Offset 0x05BC) */
8466
8467 #define BIT_SHIFT_SUB_BCN_SPACE 16
8468 #define BIT_MASK_SUB_BCN_SPACE 0xff
8469 #define BIT_SUB_BCN_SPACE(x)                                                   \
8470         (((x) & BIT_MASK_SUB_BCN_SPACE) << BIT_SHIFT_SUB_BCN_SPACE)
8471 #define BIT_GET_SUB_BCN_SPACE(x)                                               \
8472         (((x) >> BIT_SHIFT_SUB_BCN_SPACE) & BIT_MASK_SUB_BCN_SPACE)
8473
8474 /* 2 REG_MBSSID_BCN_SPACE3                      (Offset 0x05BC) */
8475
8476 #define BIT_SHIFT_BCN_SPACE_CLINT3 0
8477 #define BIT_MASK_BCN_SPACE_CLINT3 0xfff
8478 #define BIT_BCN_SPACE_CLINT3(x)                                                \
8479         (((x) & BIT_MASK_BCN_SPACE_CLINT3) << BIT_SHIFT_BCN_SPACE_CLINT3)
8480 #define BIT_GET_BCN_SPACE_CLINT3(x)                                            \
8481         (((x) >> BIT_SHIFT_BCN_SPACE_CLINT3) & BIT_MASK_BCN_SPACE_CLINT3)
8482
8483 /* 2 REG_ACMHWCTRL                              (Offset 0x05C0) */
8484
8485 #define BIT_BEQ_ACM_STATUS BIT(7)
8486 #define BIT_VIQ_ACM_STATUS BIT(6)
8487 #define BIT_VOQ_ACM_STATUS BIT(5)
8488 #define BIT_BEQ_ACM_EN BIT(3)
8489 #define BIT_VIQ_ACM_EN BIT(2)
8490 #define BIT_VOQ_ACM_EN BIT(1)
8491 #define BIT_ACMHWEN BIT(0)
8492
8493 /* 2 REG_ACMRSTCTRL                             (Offset 0x05C1) */
8494
8495 #define BIT_BE_ACM_RESET_USED_TIME BIT(2)
8496 #define BIT_VI_ACM_RESET_USED_TIME BIT(1)
8497 #define BIT_VO_ACM_RESET_USED_TIME BIT(0)
8498
8499 /* 2 REG_ACMAVG                         (Offset 0x05C2) */
8500
8501 #define BIT_SHIFT_AVGPERIOD 0
8502 #define BIT_MASK_AVGPERIOD 0xffff
8503 #define BIT_AVGPERIOD(x) (((x) & BIT_MASK_AVGPERIOD) << BIT_SHIFT_AVGPERIOD)
8504 #define BIT_GET_AVGPERIOD(x) (((x) >> BIT_SHIFT_AVGPERIOD) & BIT_MASK_AVGPERIOD)
8505
8506 /* 2 REG_VO_ADMTIME                             (Offset 0x05C4) */
8507
8508 #define BIT_SHIFT_VO_ADMITTED_TIME 0
8509 #define BIT_MASK_VO_ADMITTED_TIME 0xffff
8510 #define BIT_VO_ADMITTED_TIME(x)                                                \
8511         (((x) & BIT_MASK_VO_ADMITTED_TIME) << BIT_SHIFT_VO_ADMITTED_TIME)
8512 #define BIT_GET_VO_ADMITTED_TIME(x)                                            \
8513         (((x) >> BIT_SHIFT_VO_ADMITTED_TIME) & BIT_MASK_VO_ADMITTED_TIME)
8514
8515 /* 2 REG_VI_ADMTIME                             (Offset 0x05C6) */
8516
8517 #define BIT_SHIFT_VI_ADMITTED_TIME 0
8518 #define BIT_MASK_VI_ADMITTED_TIME 0xffff
8519 #define BIT_VI_ADMITTED_TIME(x)                                                \
8520         (((x) & BIT_MASK_VI_ADMITTED_TIME) << BIT_SHIFT_VI_ADMITTED_TIME)
8521 #define BIT_GET_VI_ADMITTED_TIME(x)                                            \
8522         (((x) >> BIT_SHIFT_VI_ADMITTED_TIME) & BIT_MASK_VI_ADMITTED_TIME)
8523
8524 /* 2 REG_BE_ADMTIME                             (Offset 0x05C8) */
8525
8526 #define BIT_SHIFT_BE_ADMITTED_TIME 0
8527 #define BIT_MASK_BE_ADMITTED_TIME 0xffff
8528 #define BIT_BE_ADMITTED_TIME(x)                                                \
8529         (((x) & BIT_MASK_BE_ADMITTED_TIME) << BIT_SHIFT_BE_ADMITTED_TIME)
8530 #define BIT_GET_BE_ADMITTED_TIME(x)                                            \
8531         (((x) >> BIT_SHIFT_BE_ADMITTED_TIME) & BIT_MASK_BE_ADMITTED_TIME)
8532
8533 /* 2 REG_EDCA_RANDOM_GEN                        (Offset 0x05CC) */
8534
8535 #define BIT_SHIFT_RANDOM_GEN 0
8536 #define BIT_MASK_RANDOM_GEN 0xffffff
8537 #define BIT_RANDOM_GEN(x) (((x) & BIT_MASK_RANDOM_GEN) << BIT_SHIFT_RANDOM_GEN)
8538 #define BIT_GET_RANDOM_GEN(x)                                                  \
8539         (((x) >> BIT_SHIFT_RANDOM_GEN) & BIT_MASK_RANDOM_GEN)
8540
8541 /* 2 REG_TXCMD_NOA_SEL                  (Offset 0x05CF) */
8542
8543 #define BIT_SHIFT_NOA_SEL 4
8544 #define BIT_MASK_NOA_SEL 0x7
8545 #define BIT_NOA_SEL(x) (((x) & BIT_MASK_NOA_SEL) << BIT_SHIFT_NOA_SEL)
8546 #define BIT_GET_NOA_SEL(x) (((x) >> BIT_SHIFT_NOA_SEL) & BIT_MASK_NOA_SEL)
8547
8548 /* 2 REG_TXCMD_NOA_SEL                  (Offset 0x05CF) */
8549
8550 #define BIT_SHIFT_TXCMD_SEG_SEL 0
8551 #define BIT_MASK_TXCMD_SEG_SEL 0xf
8552 #define BIT_TXCMD_SEG_SEL(x)                                                   \
8553         (((x) & BIT_MASK_TXCMD_SEG_SEL) << BIT_SHIFT_TXCMD_SEG_SEL)
8554 #define BIT_GET_TXCMD_SEG_SEL(x)                                               \
8555         (((x) >> BIT_SHIFT_TXCMD_SEG_SEL) & BIT_MASK_TXCMD_SEG_SEL)
8556
8557 /* 2 REG_NOA_PARAM                              (Offset 0x05E0) */
8558
8559 #define BIT_SHIFT_NOA_COUNT (96 & CPU_OPT_WIDTH)
8560 #define BIT_MASK_NOA_COUNT 0xff
8561 #define BIT_NOA_COUNT(x) (((x) & BIT_MASK_NOA_COUNT) << BIT_SHIFT_NOA_COUNT)
8562 #define BIT_GET_NOA_COUNT(x) (((x) >> BIT_SHIFT_NOA_COUNT) & BIT_MASK_NOA_COUNT)
8563
8564 #define BIT_SHIFT_NOA_START_TIME (64 & CPU_OPT_WIDTH)
8565 #define BIT_MASK_NOA_START_TIME 0xffffffffL
8566 #define BIT_NOA_START_TIME(x)                                                  \
8567         (((x) & BIT_MASK_NOA_START_TIME) << BIT_SHIFT_NOA_START_TIME)
8568 #define BIT_GET_NOA_START_TIME(x)                                              \
8569         (((x) >> BIT_SHIFT_NOA_START_TIME) & BIT_MASK_NOA_START_TIME)
8570
8571 #define BIT_SHIFT_NOA_INTERVAL (32 & CPU_OPT_WIDTH)
8572 #define BIT_MASK_NOA_INTERVAL 0xffffffffL
8573 #define BIT_NOA_INTERVAL(x)                                                    \
8574         (((x) & BIT_MASK_NOA_INTERVAL) << BIT_SHIFT_NOA_INTERVAL)
8575 #define BIT_GET_NOA_INTERVAL(x)                                                \
8576         (((x) >> BIT_SHIFT_NOA_INTERVAL) & BIT_MASK_NOA_INTERVAL)
8577
8578 #define BIT_SHIFT_NOA_DURATION 0
8579 #define BIT_MASK_NOA_DURATION 0xffffffffL
8580 #define BIT_NOA_DURATION(x)                                                    \
8581         (((x) & BIT_MASK_NOA_DURATION) << BIT_SHIFT_NOA_DURATION)
8582 #define BIT_GET_NOA_DURATION(x)                                                \
8583         (((x) >> BIT_SHIFT_NOA_DURATION) & BIT_MASK_NOA_DURATION)
8584
8585 /* 2 REG_P2P_RST                                (Offset 0x05F0) */
8586
8587 #define BIT_P2P2_PWR_RST1 BIT(5)
8588 #define BIT_P2P2_PWR_RST0 BIT(4)
8589 #define BIT_P2P1_PWR_RST1 BIT(3)
8590 #define BIT_P2P1_PWR_RST0 BIT(2)
8591 #define BIT_P2P_PWR_RST1_V1 BIT(1)
8592 #define BIT_P2P_PWR_RST0_V1 BIT(0)
8593
8594 /* 2 REG_SCHEDULER_RST                  (Offset 0x05F1) */
8595
8596 #define BIT_SYNC_CLI BIT(1)
8597 #define BIT_SCHEDULER_RST_V1 BIT(0)
8598
8599 /* 2 REG_SCH_TXCMD                              (Offset 0x05F8) */
8600
8601 #define BIT_SHIFT_SCH_TXCMD 0
8602 #define BIT_MASK_SCH_TXCMD 0xffffffffL
8603 #define BIT_SCH_TXCMD(x) (((x) & BIT_MASK_SCH_TXCMD) << BIT_SHIFT_SCH_TXCMD)
8604 #define BIT_GET_SCH_TXCMD(x) (((x) >> BIT_SHIFT_SCH_TXCMD) & BIT_MASK_SCH_TXCMD)
8605
8606 /* 2 REG_WMAC_CR                                (Offset 0x0600) */
8607
8608 #define BIT_IC_MACPHY_M BIT(0)
8609
8610 /* 2 REG_WMAC_FWPKT_CR                  (Offset 0x0601) */
8611
8612 #define BIT_FWEN BIT(7)
8613
8614 /* 2 REG_WMAC_FWPKT_CR                  (Offset 0x0601) */
8615
8616 #define BIT_PHYSTS_PKT_CTRL BIT(6)
8617
8618 /* 2 REG_WMAC_FWPKT_CR                  (Offset 0x0601) */
8619
8620 #define BIT_APPHDR_MIDSRCH_FAIL BIT(4)
8621 #define BIT_FWPARSING_EN BIT(3)
8622
8623 #define BIT_SHIFT_APPEND_MHDR_LEN 0
8624 #define BIT_MASK_APPEND_MHDR_LEN 0x7
8625 #define BIT_APPEND_MHDR_LEN(x)                                                 \
8626         (((x) & BIT_MASK_APPEND_MHDR_LEN) << BIT_SHIFT_APPEND_MHDR_LEN)
8627 #define BIT_GET_APPEND_MHDR_LEN(x)                                             \
8628         (((x) >> BIT_SHIFT_APPEND_MHDR_LEN) & BIT_MASK_APPEND_MHDR_LEN)
8629
8630 /* 2 REG_TCR                                    (Offset 0x0604) */
8631
8632 #define BIT_WMAC_EN_RTS_ADDR BIT(31)
8633 #define BIT_WMAC_DISABLE_CCK BIT(30)
8634 #define BIT_WMAC_RAW_LEN BIT(29)
8635 #define BIT_WMAC_NOTX_IN_RXNDP BIT(28)
8636 #define BIT_WMAC_EN_EOF BIT(27)
8637 #define BIT_WMAC_BF_SEL BIT(26)
8638 #define BIT_WMAC_ANTMODE_SEL BIT(25)
8639
8640 /* 2 REG_TCR                                    (Offset 0x0604) */
8641
8642 #define BIT_WMAC_TCRPWRMGT_HWCTL BIT(24)
8643
8644 /* 2 REG_TCR                                    (Offset 0x0604) */
8645
8646 #define BIT_WMAC_SMOOTH_VAL BIT(23)
8647
8648 /* 2 REG_TCR                                    (Offset 0x0604) */
8649
8650 #define BIT_FETCH_MPDU_AFTER_WSEC_RDY BIT(20)
8651
8652 /* 2 REG_TCR                                    (Offset 0x0604) */
8653
8654 #define BIT_WMAC_TCR_EN_20MST BIT(19)
8655 #define BIT_WMAC_DIS_SIGTA BIT(18)
8656 #define BIT_WMAC_DIS_A2B0 BIT(17)
8657 #define BIT_WMAC_MSK_SIGBCRC BIT(16)
8658
8659 /* 2 REG_TCR                                    (Offset 0x0604) */
8660
8661 #define BIT_WMAC_TCR_ERRSTEN_3 BIT(15)
8662 #define BIT_WMAC_TCR_ERRSTEN_2 BIT(14)
8663 #define BIT_WMAC_TCR_ERRSTEN_1 BIT(13)
8664 #define BIT_WMAC_TCR_ERRSTEN_0 BIT(12)
8665 #define BIT_WMAC_TCR_TXSK_PERPKT BIT(11)
8666 #define BIT_ICV BIT(10)
8667 #define BIT_CFEND_FORMAT BIT(9)
8668 #define BIT_CRC BIT(8)
8669 #define BIT_PWRBIT_OW_EN BIT(7)
8670 #define BIT_PWR_ST BIT(6)
8671 #define BIT_WMAC_TCR_UPD_TIMIE BIT(5)
8672 #define BIT_WMAC_TCR_UPD_HGQMD BIT(4)
8673
8674 /* 2 REG_TCR                                    (Offset 0x0604) */
8675
8676 #define BIT_VHTSIGA1_TXPS BIT(3)
8677
8678 /* 2 REG_TCR                                    (Offset 0x0604) */
8679
8680 #define BIT_PAD_SEL BIT(2)
8681 #define BIT_DIS_GCLK BIT(1)
8682
8683 /* 2 REG_RCR                                    (Offset 0x0608) */
8684
8685 #define BIT_APP_FCS BIT(31)
8686 #define BIT_APP_MIC BIT(30)
8687 #define BIT_APP_ICV BIT(29)
8688 #define BIT_APP_PHYSTS BIT(28)
8689 #define BIT_APP_BASSN BIT(27)
8690
8691 /* 2 REG_RCR                                    (Offset 0x0608) */
8692
8693 #define BIT_VHT_DACK BIT(26)
8694
8695 /* 2 REG_RCR                                    (Offset 0x0608) */
8696
8697 #define BIT_TCPOFLD_EN BIT(25)
8698 #define BIT_ENMBID BIT(24)
8699 #define BIT_LSIGEN BIT(23)
8700 #define BIT_MFBEN BIT(22)
8701 #define BIT_DISCHKPPDLLEN BIT(21)
8702 #define BIT_PKTCTL_DLEN BIT(20)
8703 #define BIT_TIM_PARSER_EN BIT(18)
8704 #define BIT_BC_MD_EN BIT(17)
8705 #define BIT_UC_MD_EN BIT(16)
8706 #define BIT_RXSK_PERPKT BIT(15)
8707 #define BIT_HTC_LOC_CTRL BIT(14)
8708
8709 /* 2 REG_RCR                                    (Offset 0x0608) */
8710
8711 #define BIT_RPFM_CAM_ENABLE BIT(12)
8712
8713 /* 2 REG_RCR                                    (Offset 0x0608) */
8714
8715 #define BIT_TA_BCN BIT(11)
8716
8717 /* 2 REG_RCR                                    (Offset 0x0608) */
8718
8719 #define BIT_DISDECMYPKT BIT(10)
8720 #define BIT_AICV BIT(9)
8721 #define BIT_ACRC32 BIT(8)
8722 #define BIT_CBSSID_BCN BIT(7)
8723 #define BIT_CBSSID_DATA BIT(6)
8724 #define BIT_APWRMGT BIT(5)
8725 #define BIT_ADD3 BIT(4)
8726 #define BIT_AB BIT(3)
8727 #define BIT_AM BIT(2)
8728 #define BIT_APM BIT(1)
8729 #define BIT_AAP BIT(0)
8730
8731 /* 2 REG_RX_PKT_LIMIT                   (Offset 0x060C) */
8732
8733 #define BIT_SHIFT_RXPKTLMT 0
8734 #define BIT_MASK_RXPKTLMT 0x3f
8735 #define BIT_RXPKTLMT(x) (((x) & BIT_MASK_RXPKTLMT) << BIT_SHIFT_RXPKTLMT)
8736 #define BIT_GET_RXPKTLMT(x) (((x) >> BIT_SHIFT_RXPKTLMT) & BIT_MASK_RXPKTLMT)
8737
8738 /* 2 REG_RX_DLK_TIME                            (Offset 0x060D) */
8739
8740 #define BIT_SHIFT_RX_DLK_TIME 0
8741 #define BIT_MASK_RX_DLK_TIME 0xff
8742 #define BIT_RX_DLK_TIME(x)                                                     \
8743         (((x) & BIT_MASK_RX_DLK_TIME) << BIT_SHIFT_RX_DLK_TIME)
8744 #define BIT_GET_RX_DLK_TIME(x)                                                 \
8745         (((x) >> BIT_SHIFT_RX_DLK_TIME) & BIT_MASK_RX_DLK_TIME)
8746
8747 /* 2 REG_RX_DRVINFO_SZ                  (Offset 0x060F) */
8748
8749 #define BIT_DATA_RPFM15EN BIT(15)
8750 #define BIT_DATA_RPFM14EN BIT(14)
8751 #define BIT_DATA_RPFM13EN BIT(13)
8752 #define BIT_DATA_RPFM12EN BIT(12)
8753 #define BIT_DATA_RPFM11EN BIT(11)
8754 #define BIT_DATA_RPFM10EN BIT(10)
8755 #define BIT_DATA_RPFM9EN BIT(9)
8756 #define BIT_DATA_RPFM8EN BIT(8)
8757
8758 /* 2 REG_RX_DRVINFO_SZ                  (Offset 0x060F) */
8759
8760 #define BIT_PHYSTS_PER_PKT_MODE BIT(7)
8761 #define BIT_DATA_RPFM7EN BIT(7)
8762
8763 /* 2 REG_RX_DRVINFO_SZ                  (Offset 0x060F) */
8764
8765 #define BIT_DATA_RPFM6EN BIT(6)
8766
8767 /* 2 REG_RX_DRVINFO_SZ                  (Offset 0x060F) */
8768
8769 #define BIT_DATA_RPFM5EN BIT(5)
8770 #define BIT_DATA_RPFM4EN BIT(4)
8771 #define BIT_DATA_RPFM3EN BIT(3)
8772 #define BIT_DATA_RPFM2EN BIT(2)
8773 #define BIT_DATA_RPFM1EN BIT(1)
8774
8775 /* 2 REG_RX_DRVINFO_SZ                  (Offset 0x060F) */
8776
8777 #define BIT_SHIFT_DRVINFO_SZ_V1 0
8778 #define BIT_MASK_DRVINFO_SZ_V1 0xf
8779 #define BIT_DRVINFO_SZ_V1(x)                                                   \
8780         (((x) & BIT_MASK_DRVINFO_SZ_V1) << BIT_SHIFT_DRVINFO_SZ_V1)
8781 #define BIT_GET_DRVINFO_SZ_V1(x)                                               \
8782         (((x) >> BIT_SHIFT_DRVINFO_SZ_V1) & BIT_MASK_DRVINFO_SZ_V1)
8783
8784 /* 2 REG_RX_DRVINFO_SZ                  (Offset 0x060F) */
8785
8786 #define BIT_DATA_RPFM0EN BIT(0)
8787
8788 /* 2 REG_MACID                          (Offset 0x0610) */
8789
8790 #define BIT_SHIFT_MACID 0
8791 #define BIT_MASK_MACID 0xffffffffffffL
8792 #define BIT_MACID(x) (((x) & BIT_MASK_MACID) << BIT_SHIFT_MACID)
8793 #define BIT_GET_MACID(x) (((x) >> BIT_SHIFT_MACID) & BIT_MASK_MACID)
8794
8795 /* 2 REG_BSSID                          (Offset 0x0618) */
8796
8797 #define BIT_SHIFT_BSSID 0
8798 #define BIT_MASK_BSSID 0xffffffffffffL
8799 #define BIT_BSSID(x) (((x) & BIT_MASK_BSSID) << BIT_SHIFT_BSSID)
8800 #define BIT_GET_BSSID(x) (((x) >> BIT_SHIFT_BSSID) & BIT_MASK_BSSID)
8801
8802 /* 2 REG_MAR                                    (Offset 0x0620) */
8803
8804 #define BIT_SHIFT_MAR 0
8805 #define BIT_MASK_MAR 0xffffffffffffffffL
8806 #define BIT_MAR(x) (((x) & BIT_MASK_MAR) << BIT_SHIFT_MAR)
8807 #define BIT_GET_MAR(x) (((x) >> BIT_SHIFT_MAR) & BIT_MASK_MAR)
8808
8809 /* 2 REG_MBIDCAMCFG_1                   (Offset 0x0628) */
8810
8811 #define BIT_SHIFT_MBIDCAM_RWDATA_L 0
8812 #define BIT_MASK_MBIDCAM_RWDATA_L 0xffffffffL
8813 #define BIT_MBIDCAM_RWDATA_L(x)                                                \
8814         (((x) & BIT_MASK_MBIDCAM_RWDATA_L) << BIT_SHIFT_MBIDCAM_RWDATA_L)
8815 #define BIT_GET_MBIDCAM_RWDATA_L(x)                                            \
8816         (((x) >> BIT_SHIFT_MBIDCAM_RWDATA_L) & BIT_MASK_MBIDCAM_RWDATA_L)
8817
8818 /* 2 REG_MBIDCAMCFG_2                   (Offset 0x062C) */
8819
8820 #define BIT_MBIDCAM_POLL BIT(31)
8821 #define BIT_MBIDCAM_WT_EN BIT(30)
8822
8823 #define BIT_SHIFT_MBIDCAM_ADDR 24
8824 #define BIT_MASK_MBIDCAM_ADDR 0x1f
8825 #define BIT_MBIDCAM_ADDR(x)                                                    \
8826         (((x) & BIT_MASK_MBIDCAM_ADDR) << BIT_SHIFT_MBIDCAM_ADDR)
8827 #define BIT_GET_MBIDCAM_ADDR(x)                                                \
8828         (((x) >> BIT_SHIFT_MBIDCAM_ADDR) & BIT_MASK_MBIDCAM_ADDR)
8829
8830 #define BIT_MBIDCAM_VALID BIT(23)
8831 #define BIT_LSIC_TXOP_EN BIT(17)
8832
8833 /* 2 REG_MBIDCAMCFG_2                   (Offset 0x062C) */
8834
8835 #define BIT_CTS_EN BIT(16)
8836
8837 /* 2 REG_MBIDCAMCFG_2                   (Offset 0x062C) */
8838
8839 #define BIT_SHIFT_MBIDCAM_RWDATA_H 0
8840 #define BIT_MASK_MBIDCAM_RWDATA_H 0xffff
8841 #define BIT_MBIDCAM_RWDATA_H(x)                                                \
8842         (((x) & BIT_MASK_MBIDCAM_RWDATA_H) << BIT_SHIFT_MBIDCAM_RWDATA_H)
8843 #define BIT_GET_MBIDCAM_RWDATA_H(x)                                            \
8844         (((x) >> BIT_SHIFT_MBIDCAM_RWDATA_H) & BIT_MASK_MBIDCAM_RWDATA_H)
8845
8846 /* 2 REG_WMAC_TCR_TSFT_OFS                      (Offset 0x0630) */
8847
8848 #define BIT_SHIFT_WMAC_TCR_TSFT_OFS 0
8849 #define BIT_MASK_WMAC_TCR_TSFT_OFS 0xffff
8850 #define BIT_WMAC_TCR_TSFT_OFS(x)                                               \
8851         (((x) & BIT_MASK_WMAC_TCR_TSFT_OFS) << BIT_SHIFT_WMAC_TCR_TSFT_OFS)
8852 #define BIT_GET_WMAC_TCR_TSFT_OFS(x)                                           \
8853         (((x) >> BIT_SHIFT_WMAC_TCR_TSFT_OFS) & BIT_MASK_WMAC_TCR_TSFT_OFS)
8854
8855 /* 2 REG_UDF_THSD                               (Offset 0x0632) */
8856
8857 #define BIT_SHIFT_UDF_THSD 0
8858 #define BIT_MASK_UDF_THSD 0xff
8859 #define BIT_UDF_THSD(x) (((x) & BIT_MASK_UDF_THSD) << BIT_SHIFT_UDF_THSD)
8860 #define BIT_GET_UDF_THSD(x) (((x) >> BIT_SHIFT_UDF_THSD) & BIT_MASK_UDF_THSD)
8861
8862 /* 2 REG_ZLD_NUM                                (Offset 0x0633) */
8863
8864 #define BIT_SHIFT_ZLD_NUM 0
8865 #define BIT_MASK_ZLD_NUM 0xff
8866 #define BIT_ZLD_NUM(x) (((x) & BIT_MASK_ZLD_NUM) << BIT_SHIFT_ZLD_NUM)
8867 #define BIT_GET_ZLD_NUM(x) (((x) >> BIT_SHIFT_ZLD_NUM) & BIT_MASK_ZLD_NUM)
8868
8869 /* 2 REG_STMP_THSD                              (Offset 0x0634) */
8870
8871 #define BIT_SHIFT_STMP_THSD 0
8872 #define BIT_MASK_STMP_THSD 0xff
8873 #define BIT_STMP_THSD(x) (((x) & BIT_MASK_STMP_THSD) << BIT_SHIFT_STMP_THSD)
8874 #define BIT_GET_STMP_THSD(x) (((x) >> BIT_SHIFT_STMP_THSD) & BIT_MASK_STMP_THSD)
8875
8876 /* 2 REG_WMAC_TXTIMEOUT                 (Offset 0x0635) */
8877
8878 #define BIT_SHIFT_WMAC_TXTIMEOUT 0
8879 #define BIT_MASK_WMAC_TXTIMEOUT 0xff
8880 #define BIT_WMAC_TXTIMEOUT(x)                                                  \
8881         (((x) & BIT_MASK_WMAC_TXTIMEOUT) << BIT_SHIFT_WMAC_TXTIMEOUT)
8882 #define BIT_GET_WMAC_TXTIMEOUT(x)                                              \
8883         (((x) >> BIT_SHIFT_WMAC_TXTIMEOUT) & BIT_MASK_WMAC_TXTIMEOUT)
8884
8885 /* 2 REG_MCU_TEST_2_V1                  (Offset 0x0636) */
8886
8887 #define BIT_SHIFT_MCU_RSVD_2_V1 0
8888 #define BIT_MASK_MCU_RSVD_2_V1 0xffff
8889 #define BIT_MCU_RSVD_2_V1(x)                                                   \
8890         (((x) & BIT_MASK_MCU_RSVD_2_V1) << BIT_SHIFT_MCU_RSVD_2_V1)
8891 #define BIT_GET_MCU_RSVD_2_V1(x)                                               \
8892         (((x) >> BIT_SHIFT_MCU_RSVD_2_V1) & BIT_MASK_MCU_RSVD_2_V1)
8893
8894 /* 2 REG_USTIME_EDCA                            (Offset 0x0638) */
8895
8896 #define BIT_SHIFT_USTIME_EDCA_V1 0
8897 #define BIT_MASK_USTIME_EDCA_V1 0x1ff
8898 #define BIT_USTIME_EDCA_V1(x)                                                  \
8899         (((x) & BIT_MASK_USTIME_EDCA_V1) << BIT_SHIFT_USTIME_EDCA_V1)
8900 #define BIT_GET_USTIME_EDCA_V1(x)                                              \
8901         (((x) >> BIT_SHIFT_USTIME_EDCA_V1) & BIT_MASK_USTIME_EDCA_V1)
8902
8903 /* 2 REG_MAC_SPEC_SIFS                  (Offset 0x063A) */
8904
8905 #define BIT_SHIFT_SPEC_SIFS_OFDM 8
8906 #define BIT_MASK_SPEC_SIFS_OFDM 0xff
8907 #define BIT_SPEC_SIFS_OFDM(x)                                                  \
8908         (((x) & BIT_MASK_SPEC_SIFS_OFDM) << BIT_SHIFT_SPEC_SIFS_OFDM)
8909 #define BIT_GET_SPEC_SIFS_OFDM(x)                                              \
8910         (((x) >> BIT_SHIFT_SPEC_SIFS_OFDM) & BIT_MASK_SPEC_SIFS_OFDM)
8911
8912 #define BIT_SHIFT_SPEC_SIFS_CCK 0
8913 #define BIT_MASK_SPEC_SIFS_CCK 0xff
8914 #define BIT_SPEC_SIFS_CCK(x)                                                   \
8915         (((x) & BIT_MASK_SPEC_SIFS_CCK) << BIT_SHIFT_SPEC_SIFS_CCK)
8916 #define BIT_GET_SPEC_SIFS_CCK(x)                                               \
8917         (((x) >> BIT_SHIFT_SPEC_SIFS_CCK) & BIT_MASK_SPEC_SIFS_CCK)
8918
8919 /* 2 REG_RESP_SIFS_CCK                  (Offset 0x063C) */
8920
8921 #define BIT_SHIFT_SIFS_R2T_CCK 8
8922 #define BIT_MASK_SIFS_R2T_CCK 0xff
8923 #define BIT_SIFS_R2T_CCK(x)                                                    \
8924         (((x) & BIT_MASK_SIFS_R2T_CCK) << BIT_SHIFT_SIFS_R2T_CCK)
8925 #define BIT_GET_SIFS_R2T_CCK(x)                                                \
8926         (((x) >> BIT_SHIFT_SIFS_R2T_CCK) & BIT_MASK_SIFS_R2T_CCK)
8927
8928 #define BIT_SHIFT_SIFS_T2T_CCK 0
8929 #define BIT_MASK_SIFS_T2T_CCK 0xff
8930 #define BIT_SIFS_T2T_CCK(x)                                                    \
8931         (((x) & BIT_MASK_SIFS_T2T_CCK) << BIT_SHIFT_SIFS_T2T_CCK)
8932 #define BIT_GET_SIFS_T2T_CCK(x)                                                \
8933         (((x) >> BIT_SHIFT_SIFS_T2T_CCK) & BIT_MASK_SIFS_T2T_CCK)
8934
8935 /* 2 REG_RESP_SIFS_OFDM                 (Offset 0x063E) */
8936
8937 #define BIT_SHIFT_SIFS_R2T_OFDM 8
8938 #define BIT_MASK_SIFS_R2T_OFDM 0xff
8939 #define BIT_SIFS_R2T_OFDM(x)                                                   \
8940         (((x) & BIT_MASK_SIFS_R2T_OFDM) << BIT_SHIFT_SIFS_R2T_OFDM)
8941 #define BIT_GET_SIFS_R2T_OFDM(x)                                               \
8942         (((x) >> BIT_SHIFT_SIFS_R2T_OFDM) & BIT_MASK_SIFS_R2T_OFDM)
8943
8944 #define BIT_SHIFT_SIFS_T2T_OFDM 0
8945 #define BIT_MASK_SIFS_T2T_OFDM 0xff
8946 #define BIT_SIFS_T2T_OFDM(x)                                                   \
8947         (((x) & BIT_MASK_SIFS_T2T_OFDM) << BIT_SHIFT_SIFS_T2T_OFDM)
8948 #define BIT_GET_SIFS_T2T_OFDM(x)                                               \
8949         (((x) >> BIT_SHIFT_SIFS_T2T_OFDM) & BIT_MASK_SIFS_T2T_OFDM)
8950
8951 /* 2 REG_ACKTO                          (Offset 0x0640) */
8952
8953 #define BIT_SHIFT_ACKTO 0
8954 #define BIT_MASK_ACKTO 0xff
8955 #define BIT_ACKTO(x) (((x) & BIT_MASK_ACKTO) << BIT_SHIFT_ACKTO)
8956 #define BIT_GET_ACKTO(x) (((x) >> BIT_SHIFT_ACKTO) & BIT_MASK_ACKTO)
8957
8958 /* 2 REG_CTS2TO                         (Offset 0x0641) */
8959
8960 #define BIT_SHIFT_CTS2TO 0
8961 #define BIT_MASK_CTS2TO 0xff
8962 #define BIT_CTS2TO(x) (((x) & BIT_MASK_CTS2TO) << BIT_SHIFT_CTS2TO)
8963 #define BIT_GET_CTS2TO(x) (((x) >> BIT_SHIFT_CTS2TO) & BIT_MASK_CTS2TO)
8964
8965 /* 2 REG_EIFS                           (Offset 0x0642) */
8966
8967 #define BIT_SHIFT_EIFS 0
8968 #define BIT_MASK_EIFS 0xffff
8969 #define BIT_EIFS(x) (((x) & BIT_MASK_EIFS) << BIT_SHIFT_EIFS)
8970 #define BIT_GET_EIFS(x) (((x) >> BIT_SHIFT_EIFS) & BIT_MASK_EIFS)
8971
8972 /* 2 REG_NAV_CTRL                               (Offset 0x0650) */
8973
8974 #define BIT_SHIFT_NAV_UPPER 16
8975 #define BIT_MASK_NAV_UPPER 0xff
8976 #define BIT_NAV_UPPER(x) (((x) & BIT_MASK_NAV_UPPER) << BIT_SHIFT_NAV_UPPER)
8977 #define BIT_GET_NAV_UPPER(x) (((x) >> BIT_SHIFT_NAV_UPPER) & BIT_MASK_NAV_UPPER)
8978
8979 #define BIT_SHIFT_RXMYRTS_NAV 8
8980 #define BIT_MASK_RXMYRTS_NAV 0xf
8981 #define BIT_RXMYRTS_NAV(x)                                                     \
8982         (((x) & BIT_MASK_RXMYRTS_NAV) << BIT_SHIFT_RXMYRTS_NAV)
8983 #define BIT_GET_RXMYRTS_NAV(x)                                                 \
8984         (((x) >> BIT_SHIFT_RXMYRTS_NAV) & BIT_MASK_RXMYRTS_NAV)
8985
8986 #define BIT_SHIFT_RTSRST 0
8987 #define BIT_MASK_RTSRST 0xff
8988 #define BIT_RTSRST(x) (((x) & BIT_MASK_RTSRST) << BIT_SHIFT_RTSRST)
8989 #define BIT_GET_RTSRST(x) (((x) >> BIT_SHIFT_RTSRST) & BIT_MASK_RTSRST)
8990
8991 /* 2 REG_BACAMCMD                               (Offset 0x0654) */
8992
8993 #define BIT_BACAM_POLL BIT(31)
8994 #define BIT_BACAM_RST BIT(17)
8995 #define BIT_BACAM_RW BIT(16)
8996
8997 #define BIT_SHIFT_TXSBM 14
8998 #define BIT_MASK_TXSBM 0x3
8999 #define BIT_TXSBM(x) (((x) & BIT_MASK_TXSBM) << BIT_SHIFT_TXSBM)
9000 #define BIT_GET_TXSBM(x) (((x) >> BIT_SHIFT_TXSBM) & BIT_MASK_TXSBM)
9001
9002 #define BIT_SHIFT_BACAM_ADDR 0
9003 #define BIT_MASK_BACAM_ADDR 0x3f
9004 #define BIT_BACAM_ADDR(x) (((x) & BIT_MASK_BACAM_ADDR) << BIT_SHIFT_BACAM_ADDR)
9005 #define BIT_GET_BACAM_ADDR(x)                                                  \
9006         (((x) >> BIT_SHIFT_BACAM_ADDR) & BIT_MASK_BACAM_ADDR)
9007
9008 /* 2 REG_BACAMCONTENT                   (Offset 0x0658) */
9009
9010 #define BIT_SHIFT_BA_CONTENT_H (32 & CPU_OPT_WIDTH)
9011 #define BIT_MASK_BA_CONTENT_H 0xffffffffL
9012 #define BIT_BA_CONTENT_H(x)                                                    \
9013         (((x) & BIT_MASK_BA_CONTENT_H) << BIT_SHIFT_BA_CONTENT_H)
9014 #define BIT_GET_BA_CONTENT_H(x)                                                \
9015         (((x) >> BIT_SHIFT_BA_CONTENT_H) & BIT_MASK_BA_CONTENT_H)
9016
9017 #define BIT_SHIFT_BA_CONTENT_L 0
9018 #define BIT_MASK_BA_CONTENT_L 0xffffffffL
9019 #define BIT_BA_CONTENT_L(x)                                                    \
9020         (((x) & BIT_MASK_BA_CONTENT_L) << BIT_SHIFT_BA_CONTENT_L)
9021 #define BIT_GET_BA_CONTENT_L(x)                                                \
9022         (((x) >> BIT_SHIFT_BA_CONTENT_L) & BIT_MASK_BA_CONTENT_L)
9023
9024 /* 2 REG_LBDLY                          (Offset 0x0660) */
9025
9026 #define BIT_SHIFT_LBDLY 0
9027 #define BIT_MASK_LBDLY 0x1f
9028 #define BIT_LBDLY(x) (((x) & BIT_MASK_LBDLY) << BIT_SHIFT_LBDLY)
9029 #define BIT_GET_LBDLY(x) (((x) >> BIT_SHIFT_LBDLY) & BIT_MASK_LBDLY)
9030
9031 /* 2 REG_WMAC_BACAM_RPMEN                       (Offset 0x0661) */
9032
9033 #define BIT_SHIFT_BITMAP_SSNBK_COUNTER 2
9034 #define BIT_MASK_BITMAP_SSNBK_COUNTER 0x3f
9035 #define BIT_BITMAP_SSNBK_COUNTER(x)                                            \
9036         (((x) & BIT_MASK_BITMAP_SSNBK_COUNTER)                                 \
9037          << BIT_SHIFT_BITMAP_SSNBK_COUNTER)
9038 #define BIT_GET_BITMAP_SSNBK_COUNTER(x)                                        \
9039         (((x) >> BIT_SHIFT_BITMAP_SSNBK_COUNTER) &                             \
9040          BIT_MASK_BITMAP_SSNBK_COUNTER)
9041
9042 #define BIT_BITMAP_EN BIT(1)
9043
9044 /* 2 REG_WMAC_BACAM_RPMEN                       (Offset 0x0661) */
9045
9046 #define BIT_WMAC_BACAM_RPMEN BIT(0)
9047
9048 /* 2 REG_TX_RX                          (Offset 0x0662) */
9049
9050 #define BIT_SHIFT_RXPKT_TYPE 2
9051 #define BIT_MASK_RXPKT_TYPE 0x3f
9052 #define BIT_RXPKT_TYPE(x) (((x) & BIT_MASK_RXPKT_TYPE) << BIT_SHIFT_RXPKT_TYPE)
9053 #define BIT_GET_RXPKT_TYPE(x)                                                  \
9054         (((x) >> BIT_SHIFT_RXPKT_TYPE) & BIT_MASK_RXPKT_TYPE)
9055
9056 #define BIT_TXACT_IND BIT(1)
9057 #define BIT_RXACT_IND BIT(0)
9058
9059 /* 2 REG_WMAC_BITMAP_CTL                        (Offset 0x0663) */
9060
9061 #define BIT_BITMAP_VO BIT(7)
9062 #define BIT_BITMAP_VI BIT(6)
9063 #define BIT_BITMAP_BE BIT(5)
9064 #define BIT_BITMAP_BK BIT(4)
9065
9066 #define BIT_SHIFT_BITMAP_CONDITION 2
9067 #define BIT_MASK_BITMAP_CONDITION 0x3
9068 #define BIT_BITMAP_CONDITION(x)                                                \
9069         (((x) & BIT_MASK_BITMAP_CONDITION) << BIT_SHIFT_BITMAP_CONDITION)
9070 #define BIT_GET_BITMAP_CONDITION(x)                                            \
9071         (((x) >> BIT_SHIFT_BITMAP_CONDITION) & BIT_MASK_BITMAP_CONDITION)
9072
9073 #define BIT_BITMAP_SSNBK_COUNTER_CLR BIT(1)
9074 #define BIT_BITMAP_FORCE BIT(0)
9075
9076 /* 2 REG_RXERR_RPT                              (Offset 0x0664) */
9077
9078 #define BIT_SHIFT_RXERR_RPT_SEL_V1_3_0 28
9079 #define BIT_MASK_RXERR_RPT_SEL_V1_3_0 0xf
9080 #define BIT_RXERR_RPT_SEL_V1_3_0(x)                                            \
9081         (((x) & BIT_MASK_RXERR_RPT_SEL_V1_3_0)                                 \
9082          << BIT_SHIFT_RXERR_RPT_SEL_V1_3_0)
9083 #define BIT_GET_RXERR_RPT_SEL_V1_3_0(x)                                        \
9084         (((x) >> BIT_SHIFT_RXERR_RPT_SEL_V1_3_0) &                             \
9085          BIT_MASK_RXERR_RPT_SEL_V1_3_0)
9086
9087 /* 2 REG_RXERR_RPT                              (Offset 0x0664) */
9088
9089 #define BIT_RXERR_RPT_RST BIT(27)
9090
9091 /* 2 REG_RXERR_RPT                              (Offset 0x0664) */
9092
9093 #define BIT_RXERR_RPT_SEL_V1_4 BIT(26)
9094
9095 /* 2 REG_RXERR_RPT                              (Offset 0x0664) */
9096
9097 #define BIT_W1S BIT(23)
9098
9099 /* 2 REG_RXERR_RPT                              (Offset 0x0664) */
9100
9101 #define BIT_UD_SELECT_BSSID BIT(22)
9102
9103 /* 2 REG_RXERR_RPT                              (Offset 0x0664) */
9104
9105 #define BIT_SHIFT_UD_SUB_TYPE 18
9106 #define BIT_MASK_UD_SUB_TYPE 0xf
9107 #define BIT_UD_SUB_TYPE(x)                                                     \
9108         (((x) & BIT_MASK_UD_SUB_TYPE) << BIT_SHIFT_UD_SUB_TYPE)
9109 #define BIT_GET_UD_SUB_TYPE(x)                                                 \
9110         (((x) >> BIT_SHIFT_UD_SUB_TYPE) & BIT_MASK_UD_SUB_TYPE)
9111
9112 #define BIT_SHIFT_UD_TYPE 16
9113 #define BIT_MASK_UD_TYPE 0x3
9114 #define BIT_UD_TYPE(x) (((x) & BIT_MASK_UD_TYPE) << BIT_SHIFT_UD_TYPE)
9115 #define BIT_GET_UD_TYPE(x) (((x) >> BIT_SHIFT_UD_TYPE) & BIT_MASK_UD_TYPE)
9116
9117 #define BIT_SHIFT_RPT_COUNTER 0
9118 #define BIT_MASK_RPT_COUNTER 0xffff
9119 #define BIT_RPT_COUNTER(x)                                                     \
9120         (((x) & BIT_MASK_RPT_COUNTER) << BIT_SHIFT_RPT_COUNTER)
9121 #define BIT_GET_RPT_COUNTER(x)                                                 \
9122         (((x) >> BIT_SHIFT_RPT_COUNTER) & BIT_MASK_RPT_COUNTER)
9123
9124 /* 2 REG_WMAC_TRXPTCL_CTL                       (Offset 0x0668) */
9125
9126 #define BIT_SHIFT_ACKBA_TYPSEL (60 & CPU_OPT_WIDTH)
9127 #define BIT_MASK_ACKBA_TYPSEL 0xf
9128 #define BIT_ACKBA_TYPSEL(x)                                                    \
9129         (((x) & BIT_MASK_ACKBA_TYPSEL) << BIT_SHIFT_ACKBA_TYPSEL)
9130 #define BIT_GET_ACKBA_TYPSEL(x)                                                \
9131         (((x) >> BIT_SHIFT_ACKBA_TYPSEL) & BIT_MASK_ACKBA_TYPSEL)
9132
9133 #define BIT_SHIFT_ACKBA_ACKPCHK (56 & CPU_OPT_WIDTH)
9134 #define BIT_MASK_ACKBA_ACKPCHK 0xf
9135 #define BIT_ACKBA_ACKPCHK(x)                                                   \
9136         (((x) & BIT_MASK_ACKBA_ACKPCHK) << BIT_SHIFT_ACKBA_ACKPCHK)
9137 #define BIT_GET_ACKBA_ACKPCHK(x)                                               \
9138         (((x) >> BIT_SHIFT_ACKBA_ACKPCHK) & BIT_MASK_ACKBA_ACKPCHK)
9139
9140 #define BIT_SHIFT_ACKBAR_TYPESEL (48 & CPU_OPT_WIDTH)
9141 #define BIT_MASK_ACKBAR_TYPESEL 0xff
9142 #define BIT_ACKBAR_TYPESEL(x)                                                  \
9143         (((x) & BIT_MASK_ACKBAR_TYPESEL) << BIT_SHIFT_ACKBAR_TYPESEL)
9144 #define BIT_GET_ACKBAR_TYPESEL(x)                                              \
9145         (((x) >> BIT_SHIFT_ACKBAR_TYPESEL) & BIT_MASK_ACKBAR_TYPESEL)
9146
9147 #define BIT_SHIFT_ACKBAR_ACKPCHK (44 & CPU_OPT_WIDTH)
9148 #define BIT_MASK_ACKBAR_ACKPCHK 0xf
9149 #define BIT_ACKBAR_ACKPCHK(x)                                                  \
9150         (((x) & BIT_MASK_ACKBAR_ACKPCHK) << BIT_SHIFT_ACKBAR_ACKPCHK)
9151 #define BIT_GET_ACKBAR_ACKPCHK(x)                                              \
9152         (((x) >> BIT_SHIFT_ACKBAR_ACKPCHK) & BIT_MASK_ACKBAR_ACKPCHK)
9153
9154 /* 2 REG_WMAC_TRXPTCL_CTL                       (Offset 0x0668) */
9155
9156 #define BIT_RXBA_IGNOREA2 BIT(42)
9157 #define BIT_EN_SAVE_ALL_TXOPADDR BIT(41)
9158 #define BIT_EN_TXCTS_TO_TXOPOWNER_INRXNAV BIT(40)
9159
9160 /* 2 REG_WMAC_TRXPTCL_CTL                       (Offset 0x0668) */
9161
9162 #define BIT_DIS_TXBA_AMPDUFCSERR BIT(39)
9163 #define BIT_DIS_TXBA_RXBARINFULL BIT(38)
9164 #define BIT_DIS_TXCFE_INFULL BIT(37)
9165 #define BIT_DIS_TXCTS_INFULL BIT(36)
9166 #define BIT_EN_TXACKBA_IN_TX_RDG BIT(35)
9167 #define BIT_EN_TXACKBA_IN_TXOP BIT(34)
9168 #define BIT_EN_TXCTS_IN_RXNAV BIT(33)
9169 #define BIT_EN_TXCTS_INTXOP BIT(32)
9170 #define BIT_BLK_EDCA_BBSLP BIT(31)
9171 #define BIT_BLK_EDCA_BBSBY BIT(30)
9172 #define BIT_ACKTO_BLOCK_SCH_EN BIT(27)
9173 #define BIT_EIFS_BLOCK_SCH_EN BIT(26)
9174 #define BIT_PLCPCHK_RST_EIFS BIT(25)
9175 #define BIT_CCA_RST_EIFS BIT(24)
9176 #define BIT_DIS_UPD_MYRXPKTNAV BIT(23)
9177 #define BIT_EARLY_TXBA BIT(22)
9178
9179 #define BIT_SHIFT_RESP_CHNBUSY 20
9180 #define BIT_MASK_RESP_CHNBUSY 0x3
9181 #define BIT_RESP_CHNBUSY(x)                                                    \
9182         (((x) & BIT_MASK_RESP_CHNBUSY) << BIT_SHIFT_RESP_CHNBUSY)
9183 #define BIT_GET_RESP_CHNBUSY(x)                                                \
9184         (((x) >> BIT_SHIFT_RESP_CHNBUSY) & BIT_MASK_RESP_CHNBUSY)
9185
9186 #define BIT_RESP_DCTS_EN BIT(19)
9187 #define BIT_RESP_DCFE_EN BIT(18)
9188 #define BIT_RESP_SPLCPEN BIT(17)
9189 #define BIT_RESP_SGIEN BIT(16)
9190
9191 /* 2 REG_WMAC_TRXPTCL_CTL                       (Offset 0x0668) */
9192
9193 #define BIT_RESP_LDPC_EN BIT(15)
9194 #define BIT_DIS_RESP_ACKINCCA BIT(14)
9195 #define BIT_DIS_RESP_CTSINCCA BIT(13)
9196
9197 /* 2 REG_WMAC_TRXPTCL_CTL                       (Offset 0x0668) */
9198
9199 #define BIT_SHIFT_R_WMAC_SECOND_CCA_TIMER 10
9200 #define BIT_MASK_R_WMAC_SECOND_CCA_TIMER 0x7
9201 #define BIT_R_WMAC_SECOND_CCA_TIMER(x)                                         \
9202         (((x) & BIT_MASK_R_WMAC_SECOND_CCA_TIMER)                              \
9203          << BIT_SHIFT_R_WMAC_SECOND_CCA_TIMER)
9204 #define BIT_GET_R_WMAC_SECOND_CCA_TIMER(x)                                     \
9205         (((x) >> BIT_SHIFT_R_WMAC_SECOND_CCA_TIMER) &                          \
9206          BIT_MASK_R_WMAC_SECOND_CCA_TIMER)
9207
9208 /* 2 REG_WMAC_TRXPTCL_CTL                       (Offset 0x0668) */
9209
9210 #define BIT_SHIFT_RFMOD 7
9211 #define BIT_MASK_RFMOD 0x3
9212 #define BIT_RFMOD(x) (((x) & BIT_MASK_RFMOD) << BIT_SHIFT_RFMOD)
9213 #define BIT_GET_RFMOD(x) (((x) >> BIT_SHIFT_RFMOD) & BIT_MASK_RFMOD)
9214
9215 /* 2 REG_WMAC_TRXPTCL_CTL                       (Offset 0x0668) */
9216
9217 #define BIT_SHIFT_RESP_CTS_DYNBW_SEL 5
9218 #define BIT_MASK_RESP_CTS_DYNBW_SEL 0x3
9219 #define BIT_RESP_CTS_DYNBW_SEL(x)                                              \
9220         (((x) & BIT_MASK_RESP_CTS_DYNBW_SEL) << BIT_SHIFT_RESP_CTS_DYNBW_SEL)
9221 #define BIT_GET_RESP_CTS_DYNBW_SEL(x)                                          \
9222         (((x) >> BIT_SHIFT_RESP_CTS_DYNBW_SEL) & BIT_MASK_RESP_CTS_DYNBW_SEL)
9223
9224 /* 2 REG_WMAC_TRXPTCL_CTL                       (Offset 0x0668) */
9225
9226 #define BIT_DLY_TX_WAIT_RXANTSEL BIT(4)
9227
9228 /* 2 REG_WMAC_TRXPTCL_CTL                       (Offset 0x0668) */
9229
9230 #define BIT_TXRESP_BY_RXANTSEL BIT(3)
9231
9232 /* 2 REG_WMAC_TRXPTCL_CTL                       (Offset 0x0668) */
9233
9234 #define BIT_SHIFT_ORIG_DCTS_CHK 0
9235 #define BIT_MASK_ORIG_DCTS_CHK 0x3
9236 #define BIT_ORIG_DCTS_CHK(x)                                                   \
9237         (((x) & BIT_MASK_ORIG_DCTS_CHK) << BIT_SHIFT_ORIG_DCTS_CHK)
9238 #define BIT_GET_ORIG_DCTS_CHK(x)                                               \
9239         (((x) >> BIT_SHIFT_ORIG_DCTS_CHK) & BIT_MASK_ORIG_DCTS_CHK)
9240
9241 /* 2 REG_CAMCMD                         (Offset 0x0670) */
9242
9243 #define BIT_SECCAM_POLLING BIT(31)
9244 #define BIT_SECCAM_CLR BIT(30)
9245 #define BIT_MFBCAM_CLR BIT(29)
9246
9247 /* 2 REG_CAMCMD                         (Offset 0x0670) */
9248
9249 #define BIT_SECCAM_WE BIT(16)
9250
9251 /* 2 REG_CAMCMD                         (Offset 0x0670) */
9252
9253 #define BIT_SHIFT_SECCAM_ADDR_V2 0
9254 #define BIT_MASK_SECCAM_ADDR_V2 0x3ff
9255 #define BIT_SECCAM_ADDR_V2(x)                                                  \
9256         (((x) & BIT_MASK_SECCAM_ADDR_V2) << BIT_SHIFT_SECCAM_ADDR_V2)
9257 #define BIT_GET_SECCAM_ADDR_V2(x)                                              \
9258         (((x) >> BIT_SHIFT_SECCAM_ADDR_V2) & BIT_MASK_SECCAM_ADDR_V2)
9259
9260 /* 2 REG_CAMWRITE                               (Offset 0x0674) */
9261
9262 #define BIT_SHIFT_CAMW_DATA 0
9263 #define BIT_MASK_CAMW_DATA 0xffffffffL
9264 #define BIT_CAMW_DATA(x) (((x) & BIT_MASK_CAMW_DATA) << BIT_SHIFT_CAMW_DATA)
9265 #define BIT_GET_CAMW_DATA(x) (((x) >> BIT_SHIFT_CAMW_DATA) & BIT_MASK_CAMW_DATA)
9266
9267 /* 2 REG_CAMREAD                                (Offset 0x0678) */
9268
9269 #define BIT_SHIFT_CAMR_DATA 0
9270 #define BIT_MASK_CAMR_DATA 0xffffffffL
9271 #define BIT_CAMR_DATA(x) (((x) & BIT_MASK_CAMR_DATA) << BIT_SHIFT_CAMR_DATA)
9272 #define BIT_GET_CAMR_DATA(x) (((x) >> BIT_SHIFT_CAMR_DATA) & BIT_MASK_CAMR_DATA)
9273
9274 /* 2 REG_CAMDBG                         (Offset 0x067C) */
9275
9276 #define BIT_SECCAM_INFO BIT(31)
9277 #define BIT_SEC_KEYFOUND BIT(15)
9278
9279 #define BIT_SHIFT_CAMDBG_SEC_TYPE 12
9280 #define BIT_MASK_CAMDBG_SEC_TYPE 0x7
9281 #define BIT_CAMDBG_SEC_TYPE(x)                                                 \
9282         (((x) & BIT_MASK_CAMDBG_SEC_TYPE) << BIT_SHIFT_CAMDBG_SEC_TYPE)
9283 #define BIT_GET_CAMDBG_SEC_TYPE(x)                                             \
9284         (((x) >> BIT_SHIFT_CAMDBG_SEC_TYPE) & BIT_MASK_CAMDBG_SEC_TYPE)
9285
9286 /* 2 REG_CAMDBG                         (Offset 0x067C) */
9287
9288 #define BIT_CAMDBG_EXT_SECTYPE BIT(11)
9289
9290 /* 2 REG_CAMDBG                         (Offset 0x067C) */
9291
9292 #define BIT_SHIFT_CAMDBG_MIC_KEY_IDX 5
9293 #define BIT_MASK_CAMDBG_MIC_KEY_IDX 0x1f
9294 #define BIT_CAMDBG_MIC_KEY_IDX(x)                                              \
9295         (((x) & BIT_MASK_CAMDBG_MIC_KEY_IDX) << BIT_SHIFT_CAMDBG_MIC_KEY_IDX)
9296 #define BIT_GET_CAMDBG_MIC_KEY_IDX(x)                                          \
9297         (((x) >> BIT_SHIFT_CAMDBG_MIC_KEY_IDX) & BIT_MASK_CAMDBG_MIC_KEY_IDX)
9298
9299 #define BIT_SHIFT_CAMDBG_SEC_KEY_IDX 0
9300 #define BIT_MASK_CAMDBG_SEC_KEY_IDX 0x1f
9301 #define BIT_CAMDBG_SEC_KEY_IDX(x)                                              \
9302         (((x) & BIT_MASK_CAMDBG_SEC_KEY_IDX) << BIT_SHIFT_CAMDBG_SEC_KEY_IDX)
9303 #define BIT_GET_CAMDBG_SEC_KEY_IDX(x)                                          \
9304         (((x) >> BIT_SHIFT_CAMDBG_SEC_KEY_IDX) & BIT_MASK_CAMDBG_SEC_KEY_IDX)
9305
9306 /* 2 REG_SECCFG                         (Offset 0x0680) */
9307
9308 #define BIT_DIS_GCLK_WAPI BIT(15)
9309 #define BIT_DIS_GCLK_AES BIT(14)
9310 #define BIT_DIS_GCLK_TKIP BIT(13)
9311
9312 /* 2 REG_SECCFG                         (Offset 0x0680) */
9313
9314 #define BIT_AES_SEL_QC_1 BIT(12)
9315 #define BIT_AES_SEL_QC_0 BIT(11)
9316
9317 /* 2 REG_SECCFG                         (Offset 0x0680) */
9318
9319 #define BIT_CHK_BMC BIT(9)
9320
9321 /* 2 REG_SECCFG                         (Offset 0x0680) */
9322
9323 #define BIT_CHK_KEYID BIT(8)
9324 #define BIT_RXBCUSEDK BIT(7)
9325 #define BIT_TXBCUSEDK BIT(6)
9326 #define BIT_NOSKMC BIT(5)
9327 #define BIT_SKBYA2 BIT(4)
9328 #define BIT_RXDEC BIT(3)
9329 #define BIT_TXENC BIT(2)
9330 #define BIT_RXUHUSEDK BIT(1)
9331 #define BIT_TXUHUSEDK BIT(0)
9332
9333 /* 2 REG_RXFILTER_CATEGORY_1                    (Offset 0x0682) */
9334
9335 #define BIT_SHIFT_RXFILTER_CATEGORY_1 0
9336 #define BIT_MASK_RXFILTER_CATEGORY_1 0xff
9337 #define BIT_RXFILTER_CATEGORY_1(x)                                             \
9338         (((x) & BIT_MASK_RXFILTER_CATEGORY_1) << BIT_SHIFT_RXFILTER_CATEGORY_1)
9339 #define BIT_GET_RXFILTER_CATEGORY_1(x)                                         \
9340         (((x) >> BIT_SHIFT_RXFILTER_CATEGORY_1) & BIT_MASK_RXFILTER_CATEGORY_1)
9341
9342 /* 2 REG_RXFILTER_ACTION_1                      (Offset 0x0683) */
9343
9344 #define BIT_SHIFT_RXFILTER_ACTION_1 0
9345 #define BIT_MASK_RXFILTER_ACTION_1 0xff
9346 #define BIT_RXFILTER_ACTION_1(x)                                               \
9347         (((x) & BIT_MASK_RXFILTER_ACTION_1) << BIT_SHIFT_RXFILTER_ACTION_1)
9348 #define BIT_GET_RXFILTER_ACTION_1(x)                                           \
9349         (((x) >> BIT_SHIFT_RXFILTER_ACTION_1) & BIT_MASK_RXFILTER_ACTION_1)
9350
9351 /* 2 REG_RXFILTER_CATEGORY_2                    (Offset 0x0684) */
9352
9353 #define BIT_SHIFT_RXFILTER_CATEGORY_2 0
9354 #define BIT_MASK_RXFILTER_CATEGORY_2 0xff
9355 #define BIT_RXFILTER_CATEGORY_2(x)                                             \
9356         (((x) & BIT_MASK_RXFILTER_CATEGORY_2) << BIT_SHIFT_RXFILTER_CATEGORY_2)
9357 #define BIT_GET_RXFILTER_CATEGORY_2(x)                                         \
9358         (((x) >> BIT_SHIFT_RXFILTER_CATEGORY_2) & BIT_MASK_RXFILTER_CATEGORY_2)
9359
9360 /* 2 REG_RXFILTER_ACTION_2                      (Offset 0x0685) */
9361
9362 #define BIT_SHIFT_RXFILTER_ACTION_2 0
9363 #define BIT_MASK_RXFILTER_ACTION_2 0xff
9364 #define BIT_RXFILTER_ACTION_2(x)                                               \
9365         (((x) & BIT_MASK_RXFILTER_ACTION_2) << BIT_SHIFT_RXFILTER_ACTION_2)
9366 #define BIT_GET_RXFILTER_ACTION_2(x)                                           \
9367         (((x) >> BIT_SHIFT_RXFILTER_ACTION_2) & BIT_MASK_RXFILTER_ACTION_2)
9368
9369 /* 2 REG_RXFILTER_CATEGORY_3                    (Offset 0x0686) */
9370
9371 #define BIT_SHIFT_RXFILTER_CATEGORY_3 0
9372 #define BIT_MASK_RXFILTER_CATEGORY_3 0xff
9373 #define BIT_RXFILTER_CATEGORY_3(x)                                             \
9374         (((x) & BIT_MASK_RXFILTER_CATEGORY_3) << BIT_SHIFT_RXFILTER_CATEGORY_3)
9375 #define BIT_GET_RXFILTER_CATEGORY_3(x)                                         \
9376         (((x) >> BIT_SHIFT_RXFILTER_CATEGORY_3) & BIT_MASK_RXFILTER_CATEGORY_3)
9377
9378 /* 2 REG_RXFILTER_ACTION_3                      (Offset 0x0687) */
9379
9380 #define BIT_SHIFT_RXFILTER_ACTION_3 0
9381 #define BIT_MASK_RXFILTER_ACTION_3 0xff
9382 #define BIT_RXFILTER_ACTION_3(x)                                               \
9383         (((x) & BIT_MASK_RXFILTER_ACTION_3) << BIT_SHIFT_RXFILTER_ACTION_3)
9384 #define BIT_GET_RXFILTER_ACTION_3(x)                                           \
9385         (((x) >> BIT_SHIFT_RXFILTER_ACTION_3) & BIT_MASK_RXFILTER_ACTION_3)
9386
9387 /* 2 REG_RXFLTMAP3                              (Offset 0x0688) */
9388
9389 #define BIT_MGTFLT15EN_FW BIT(15)
9390 #define BIT_MGTFLT14EN_FW BIT(14)
9391 #define BIT_MGTFLT13EN_FW BIT(13)
9392 #define BIT_MGTFLT12EN_FW BIT(12)
9393 #define BIT_MGTFLT11EN_FW BIT(11)
9394 #define BIT_MGTFLT10EN_FW BIT(10)
9395 #define BIT_MGTFLT9EN_FW BIT(9)
9396 #define BIT_MGTFLT8EN_FW BIT(8)
9397 #define BIT_MGTFLT7EN_FW BIT(7)
9398 #define BIT_MGTFLT6EN_FW BIT(6)
9399 #define BIT_MGTFLT5EN_FW BIT(5)
9400 #define BIT_MGTFLT4EN_FW BIT(4)
9401 #define BIT_MGTFLT3EN_FW BIT(3)
9402 #define BIT_MGTFLT2EN_FW BIT(2)
9403 #define BIT_MGTFLT1EN_FW BIT(1)
9404 #define BIT_MGTFLT0EN_FW BIT(0)
9405
9406 /* 2 REG_RXFLTMAP4                              (Offset 0x068A) */
9407
9408 #define BIT_CTRLFLT15EN_FW BIT(15)
9409 #define BIT_CTRLFLT14EN_FW BIT(14)
9410 #define BIT_CTRLFLT13EN_FW BIT(13)
9411 #define BIT_CTRLFLT12EN_FW BIT(12)
9412 #define BIT_CTRLFLT11EN_FW BIT(11)
9413 #define BIT_CTRLFLT10EN_FW BIT(10)
9414 #define BIT_CTRLFLT9EN_FW BIT(9)
9415 #define BIT_CTRLFLT8EN_FW BIT(8)
9416 #define BIT_CTRLFLT7EN_FW BIT(7)
9417 #define BIT_CTRLFLT6EN_FW BIT(6)
9418 #define BIT_CTRLFLT5EN_FW BIT(5)
9419 #define BIT_CTRLFLT4EN_FW BIT(4)
9420 #define BIT_CTRLFLT3EN_FW BIT(3)
9421 #define BIT_CTRLFLT2EN_FW BIT(2)
9422 #define BIT_CTRLFLT1EN_FW BIT(1)
9423 #define BIT_CTRLFLT0EN_FW BIT(0)
9424
9425 /* 2 REG_RXFLTMAP5                              (Offset 0x068C) */
9426
9427 #define BIT_DATAFLT15EN_FW BIT(15)
9428 #define BIT_DATAFLT14EN_FW BIT(14)
9429 #define BIT_DATAFLT13EN_FW BIT(13)
9430 #define BIT_DATAFLT12EN_FW BIT(12)
9431 #define BIT_DATAFLT11EN_FW BIT(11)
9432 #define BIT_DATAFLT10EN_FW BIT(10)
9433 #define BIT_DATAFLT9EN_FW BIT(9)
9434 #define BIT_DATAFLT8EN_FW BIT(8)
9435 #define BIT_DATAFLT7EN_FW BIT(7)
9436 #define BIT_DATAFLT6EN_FW BIT(6)
9437 #define BIT_DATAFLT5EN_FW BIT(5)
9438 #define BIT_DATAFLT4EN_FW BIT(4)
9439 #define BIT_DATAFLT3EN_FW BIT(3)
9440 #define BIT_DATAFLT2EN_FW BIT(2)
9441 #define BIT_DATAFLT1EN_FW BIT(1)
9442 #define BIT_DATAFLT0EN_FW BIT(0)
9443
9444 /* 2 REG_RXFLTMAP6                              (Offset 0x068E) */
9445
9446 #define BIT_ACTIONFLT15EN_FW BIT(15)
9447 #define BIT_ACTIONFLT14EN_FW BIT(14)
9448 #define BIT_ACTIONFLT13EN_FW BIT(13)
9449 #define BIT_ACTIONFLT12EN_FW BIT(12)
9450 #define BIT_ACTIONFLT11EN_FW BIT(11)
9451 #define BIT_ACTIONFLT10EN_FW BIT(10)
9452 #define BIT_ACTIONFLT9EN_FW BIT(9)
9453 #define BIT_ACTIONFLT8EN_FW BIT(8)
9454 #define BIT_ACTIONFLT7EN_FW BIT(7)
9455 #define BIT_ACTIONFLT6EN_FW BIT(6)
9456 #define BIT_ACTIONFLT5EN_FW BIT(5)
9457 #define BIT_ACTIONFLT4EN_FW BIT(4)
9458 #define BIT_ACTIONFLT3EN_FW BIT(3)
9459 #define BIT_ACTIONFLT2EN_FW BIT(2)
9460 #define BIT_ACTIONFLT1EN_FW BIT(1)
9461 #define BIT_ACTIONFLT0EN_FW BIT(0)
9462
9463 /* 2 REG_WOW_CTRL                               (Offset 0x0690) */
9464
9465 #define BIT_SHIFT_PSF_BSSIDSEL_B2B1 6
9466 #define BIT_MASK_PSF_BSSIDSEL_B2B1 0x3
9467 #define BIT_PSF_BSSIDSEL_B2B1(x)                                               \
9468         (((x) & BIT_MASK_PSF_BSSIDSEL_B2B1) << BIT_SHIFT_PSF_BSSIDSEL_B2B1)
9469 #define BIT_GET_PSF_BSSIDSEL_B2B1(x)                                           \
9470         (((x) >> BIT_SHIFT_PSF_BSSIDSEL_B2B1) & BIT_MASK_PSF_BSSIDSEL_B2B1)
9471
9472 /* 2 REG_WOW_CTRL                               (Offset 0x0690) */
9473
9474 #define BIT_WOWHCI BIT(5)
9475
9476 /* 2 REG_WOW_CTRL                               (Offset 0x0690) */
9477
9478 #define BIT_PSF_BSSIDSEL_B0 BIT(4)
9479
9480 /* 2 REG_WOW_CTRL                               (Offset 0x0690) */
9481
9482 #define BIT_UWF BIT(3)
9483 #define BIT_MAGIC BIT(2)
9484 #define BIT_WOWEN BIT(1)
9485 #define BIT_FORCE_WAKEUP BIT(0)
9486
9487 /* 2 REG_NAN_RX_TSF_FILTER                      (Offset 0x0691) */
9488
9489 #define BIT_CHK_TSF_TA BIT(2)
9490 #define BIT_CHK_TSF_CBSSID BIT(1)
9491 #define BIT_CHK_TSF_EN BIT(0)
9492
9493 /* 2 REG_PS_RX_INFO                             (Offset 0x0692) */
9494
9495 #define BIT_SHIFT_PORTSEL__PS_RX_INFO 5
9496 #define BIT_MASK_PORTSEL__PS_RX_INFO 0x7
9497 #define BIT_PORTSEL__PS_RX_INFO(x)                                             \
9498         (((x) & BIT_MASK_PORTSEL__PS_RX_INFO) << BIT_SHIFT_PORTSEL__PS_RX_INFO)
9499 #define BIT_GET_PORTSEL__PS_RX_INFO(x)                                         \
9500         (((x) >> BIT_SHIFT_PORTSEL__PS_RX_INFO) & BIT_MASK_PORTSEL__PS_RX_INFO)
9501
9502 /* 2 REG_PS_RX_INFO                             (Offset 0x0692) */
9503
9504 #define BIT_RXCTRLIN0 BIT(4)
9505 #define BIT_RXMGTIN0 BIT(3)
9506 #define BIT_RXDATAIN2 BIT(2)
9507 #define BIT_RXDATAIN1 BIT(1)
9508 #define BIT_RXDATAIN0 BIT(0)
9509
9510 /* 2 REG_WMMPS_UAPSD_TID                        (Offset 0x0693) */
9511
9512 #define BIT_WMMPS_UAPSD_TID7 BIT(7)
9513 #define BIT_WMMPS_UAPSD_TID6 BIT(6)
9514 #define BIT_WMMPS_UAPSD_TID5 BIT(5)
9515 #define BIT_WMMPS_UAPSD_TID4 BIT(4)
9516 #define BIT_WMMPS_UAPSD_TID3 BIT(3)
9517 #define BIT_WMMPS_UAPSD_TID2 BIT(2)
9518 #define BIT_WMMPS_UAPSD_TID1 BIT(1)
9519 #define BIT_WMMPS_UAPSD_TID0 BIT(0)
9520
9521 /* 2 REG_LPNAV_CTRL                             (Offset 0x0694) */
9522
9523 #define BIT_LPNAV_EN BIT(31)
9524
9525 #define BIT_SHIFT_LPNAV_EARLY 16
9526 #define BIT_MASK_LPNAV_EARLY 0x7fff
9527 #define BIT_LPNAV_EARLY(x)                                                     \
9528         (((x) & BIT_MASK_LPNAV_EARLY) << BIT_SHIFT_LPNAV_EARLY)
9529 #define BIT_GET_LPNAV_EARLY(x)                                                 \
9530         (((x) >> BIT_SHIFT_LPNAV_EARLY) & BIT_MASK_LPNAV_EARLY)
9531
9532 #define BIT_SHIFT_LPNAV_TH 0
9533 #define BIT_MASK_LPNAV_TH 0xffff
9534 #define BIT_LPNAV_TH(x) (((x) & BIT_MASK_LPNAV_TH) << BIT_SHIFT_LPNAV_TH)
9535 #define BIT_GET_LPNAV_TH(x) (((x) >> BIT_SHIFT_LPNAV_TH) & BIT_MASK_LPNAV_TH)
9536
9537 /* 2 REG_WKFMCAM_CMD                            (Offset 0x0698) */
9538
9539 #define BIT_WKFCAM_POLLING_V1 BIT(31)
9540 #define BIT_WKFCAM_CLR_V1 BIT(30)
9541
9542 /* 2 REG_WKFMCAM_CMD                            (Offset 0x0698) */
9543
9544 #define BIT_WKFCAM_WE BIT(16)
9545
9546 /* 2 REG_WKFMCAM_CMD                            (Offset 0x0698) */
9547
9548 #define BIT_SHIFT_WKFCAM_ADDR_V2 8
9549 #define BIT_MASK_WKFCAM_ADDR_V2 0xff
9550 #define BIT_WKFCAM_ADDR_V2(x)                                                  \
9551         (((x) & BIT_MASK_WKFCAM_ADDR_V2) << BIT_SHIFT_WKFCAM_ADDR_V2)
9552 #define BIT_GET_WKFCAM_ADDR_V2(x)                                              \
9553         (((x) >> BIT_SHIFT_WKFCAM_ADDR_V2) & BIT_MASK_WKFCAM_ADDR_V2)
9554
9555 #define BIT_SHIFT_WKFCAM_CAM_NUM_V1 0
9556 #define BIT_MASK_WKFCAM_CAM_NUM_V1 0xff
9557 #define BIT_WKFCAM_CAM_NUM_V1(x)                                               \
9558         (((x) & BIT_MASK_WKFCAM_CAM_NUM_V1) << BIT_SHIFT_WKFCAM_CAM_NUM_V1)
9559 #define BIT_GET_WKFCAM_CAM_NUM_V1(x)                                           \
9560         (((x) >> BIT_SHIFT_WKFCAM_CAM_NUM_V1) & BIT_MASK_WKFCAM_CAM_NUM_V1)
9561
9562 /* 2 REG_WKFMCAM_RWD                            (Offset 0x069C) */
9563
9564 #define BIT_SHIFT_WKFMCAM_RWD 0
9565 #define BIT_MASK_WKFMCAM_RWD 0xffffffffL
9566 #define BIT_WKFMCAM_RWD(x)                                                     \
9567         (((x) & BIT_MASK_WKFMCAM_RWD) << BIT_SHIFT_WKFMCAM_RWD)
9568 #define BIT_GET_WKFMCAM_RWD(x)                                                 \
9569         (((x) >> BIT_SHIFT_WKFMCAM_RWD) & BIT_MASK_WKFMCAM_RWD)
9570
9571 /* 2 REG_RXFLTMAP0                              (Offset 0x06A0) */
9572
9573 #define BIT_MGTFLT15EN BIT(15)
9574 #define BIT_MGTFLT14EN BIT(14)
9575
9576 /* 2 REG_RXFLTMAP0                              (Offset 0x06A0) */
9577
9578 #define BIT_MGTFLT13EN BIT(13)
9579 #define BIT_MGTFLT12EN BIT(12)
9580 #define BIT_MGTFLT11EN BIT(11)
9581 #define BIT_MGTFLT10EN BIT(10)
9582 #define BIT_MGTFLT9EN BIT(9)
9583 #define BIT_MGTFLT8EN BIT(8)
9584
9585 /* 2 REG_RXFLTMAP0                              (Offset 0x06A0) */
9586
9587 #define BIT_MGTFLT7EN BIT(7)
9588 #define BIT_MGTFLT6EN BIT(6)
9589
9590 /* 2 REG_RXFLTMAP0                              (Offset 0x06A0) */
9591
9592 #define BIT_MGTFLT5EN BIT(5)
9593 #define BIT_MGTFLT4EN BIT(4)
9594 #define BIT_MGTFLT3EN BIT(3)
9595 #define BIT_MGTFLT2EN BIT(2)
9596 #define BIT_MGTFLT1EN BIT(1)
9597 #define BIT_MGTFLT0EN BIT(0)
9598
9599 /* 2 REG_RXFLTMAP1                              (Offset 0x06A2) */
9600
9601 #define BIT_CTRLFLT15EN BIT(15)
9602 #define BIT_CTRLFLT14EN BIT(14)
9603 #define BIT_CTRLFLT13EN BIT(13)
9604 #define BIT_CTRLFLT12EN BIT(12)
9605 #define BIT_CTRLFLT11EN BIT(11)
9606 #define BIT_CTRLFLT10EN BIT(10)
9607 #define BIT_CTRLFLT9EN BIT(9)
9608 #define BIT_CTRLFLT8EN BIT(8)
9609 #define BIT_CTRLFLT7EN BIT(7)
9610 #define BIT_CTRLFLT6EN BIT(6)
9611
9612 /* 2 REG_RXFLTMAP1                              (Offset 0x06A2) */
9613
9614 #define BIT_CTRLFLT5EN BIT(5)
9615 #define BIT_CTRLFLT4EN BIT(4)
9616 #define BIT_CTRLFLT3EN BIT(3)
9617 #define BIT_CTRLFLT2EN BIT(2)
9618 #define BIT_CTRLFLT1EN BIT(1)
9619 #define BIT_CTRLFLT0EN BIT(0)
9620
9621 /* 2 REG_RXFLTMAP                               (Offset 0x06A4) */
9622
9623 #define BIT_DATAFLT15EN BIT(15)
9624 #define BIT_DATAFLT14EN BIT(14)
9625 #define BIT_DATAFLT13EN BIT(13)
9626 #define BIT_DATAFLT12EN BIT(12)
9627 #define BIT_DATAFLT11EN BIT(11)
9628 #define BIT_DATAFLT10EN BIT(10)
9629 #define BIT_DATAFLT9EN BIT(9)
9630 #define BIT_DATAFLT8EN BIT(8)
9631 #define BIT_DATAFLT7EN BIT(7)
9632 #define BIT_DATAFLT6EN BIT(6)
9633 #define BIT_DATAFLT5EN BIT(5)
9634 #define BIT_DATAFLT4EN BIT(4)
9635 #define BIT_DATAFLT3EN BIT(3)
9636 #define BIT_DATAFLT2EN BIT(2)
9637 #define BIT_DATAFLT1EN BIT(1)
9638 #define BIT_DATAFLT0EN BIT(0)
9639
9640 /* 2 REG_BCN_PSR_RPT                            (Offset 0x06A8) */
9641
9642 #define BIT_SHIFT_DTIM_CNT 24
9643 #define BIT_MASK_DTIM_CNT 0xff
9644 #define BIT_DTIM_CNT(x) (((x) & BIT_MASK_DTIM_CNT) << BIT_SHIFT_DTIM_CNT)
9645 #define BIT_GET_DTIM_CNT(x) (((x) >> BIT_SHIFT_DTIM_CNT) & BIT_MASK_DTIM_CNT)
9646
9647 #define BIT_SHIFT_DTIM_PERIOD 16
9648 #define BIT_MASK_DTIM_PERIOD 0xff
9649 #define BIT_DTIM_PERIOD(x)                                                     \
9650         (((x) & BIT_MASK_DTIM_PERIOD) << BIT_SHIFT_DTIM_PERIOD)
9651 #define BIT_GET_DTIM_PERIOD(x)                                                 \
9652         (((x) >> BIT_SHIFT_DTIM_PERIOD) & BIT_MASK_DTIM_PERIOD)
9653
9654 #define BIT_DTIM BIT(15)
9655 #define BIT_TIM BIT(14)
9656
9657 #define BIT_SHIFT_PS_AID_0 0
9658 #define BIT_MASK_PS_AID_0 0x7ff
9659 #define BIT_PS_AID_0(x) (((x) & BIT_MASK_PS_AID_0) << BIT_SHIFT_PS_AID_0)
9660 #define BIT_GET_PS_AID_0(x) (((x) >> BIT_SHIFT_PS_AID_0) & BIT_MASK_PS_AID_0)
9661
9662 /* 2 REG_FLC_RPC                                (Offset 0x06AC) */
9663
9664 #define BIT_SHIFT_FLC_RPC 0
9665 #define BIT_MASK_FLC_RPC 0xff
9666 #define BIT_FLC_RPC(x) (((x) & BIT_MASK_FLC_RPC) << BIT_SHIFT_FLC_RPC)
9667 #define BIT_GET_FLC_RPC(x) (((x) >> BIT_SHIFT_FLC_RPC) & BIT_MASK_FLC_RPC)
9668
9669 /* 2 REG_FLC_RPCT                               (Offset 0x06AD) */
9670
9671 #define BIT_SHIFT_FLC_RPCT 0
9672 #define BIT_MASK_FLC_RPCT 0xff
9673 #define BIT_FLC_RPCT(x) (((x) & BIT_MASK_FLC_RPCT) << BIT_SHIFT_FLC_RPCT)
9674 #define BIT_GET_FLC_RPCT(x) (((x) >> BIT_SHIFT_FLC_RPCT) & BIT_MASK_FLC_RPCT)
9675
9676 /* 2 REG_FLC_PTS                                (Offset 0x06AE) */
9677
9678 #define BIT_CMF BIT(2)
9679 #define BIT_CCF BIT(1)
9680 #define BIT_CDF BIT(0)
9681
9682 /* 2 REG_FLC_TRPC                               (Offset 0x06AF) */
9683
9684 #define BIT_FLC_RPCT_V1 BIT(7)
9685 #define BIT_MODE BIT(6)
9686
9687 #define BIT_SHIFT_TRPCD 0
9688 #define BIT_MASK_TRPCD 0x3f
9689 #define BIT_TRPCD(x) (((x) & BIT_MASK_TRPCD) << BIT_SHIFT_TRPCD)
9690 #define BIT_GET_TRPCD(x) (((x) >> BIT_SHIFT_TRPCD) & BIT_MASK_TRPCD)
9691
9692 /* 2 REG_RXPKTMON_CTRL                  (Offset 0x06B0) */
9693
9694 #define BIT_SHIFT_RXBKQPKT_SEQ 20
9695 #define BIT_MASK_RXBKQPKT_SEQ 0xf
9696 #define BIT_RXBKQPKT_SEQ(x)                                                    \
9697         (((x) & BIT_MASK_RXBKQPKT_SEQ) << BIT_SHIFT_RXBKQPKT_SEQ)
9698 #define BIT_GET_RXBKQPKT_SEQ(x)                                                \
9699         (((x) >> BIT_SHIFT_RXBKQPKT_SEQ) & BIT_MASK_RXBKQPKT_SEQ)
9700
9701 #define BIT_SHIFT_RXBEQPKT_SEQ 16
9702 #define BIT_MASK_RXBEQPKT_SEQ 0xf
9703 #define BIT_RXBEQPKT_SEQ(x)                                                    \
9704         (((x) & BIT_MASK_RXBEQPKT_SEQ) << BIT_SHIFT_RXBEQPKT_SEQ)
9705 #define BIT_GET_RXBEQPKT_SEQ(x)                                                \
9706         (((x) >> BIT_SHIFT_RXBEQPKT_SEQ) & BIT_MASK_RXBEQPKT_SEQ)
9707
9708 #define BIT_SHIFT_RXVIQPKT_SEQ 12
9709 #define BIT_MASK_RXVIQPKT_SEQ 0xf
9710 #define BIT_RXVIQPKT_SEQ(x)                                                    \
9711         (((x) & BIT_MASK_RXVIQPKT_SEQ) << BIT_SHIFT_RXVIQPKT_SEQ)
9712 #define BIT_GET_RXVIQPKT_SEQ(x)                                                \
9713         (((x) >> BIT_SHIFT_RXVIQPKT_SEQ) & BIT_MASK_RXVIQPKT_SEQ)
9714
9715 #define BIT_SHIFT_RXVOQPKT_SEQ 8
9716 #define BIT_MASK_RXVOQPKT_SEQ 0xf
9717 #define BIT_RXVOQPKT_SEQ(x)                                                    \
9718         (((x) & BIT_MASK_RXVOQPKT_SEQ) << BIT_SHIFT_RXVOQPKT_SEQ)
9719 #define BIT_GET_RXVOQPKT_SEQ(x)                                                \
9720         (((x) >> BIT_SHIFT_RXVOQPKT_SEQ) & BIT_MASK_RXVOQPKT_SEQ)
9721
9722 #define BIT_RXBKQPKT_ERR BIT(7)
9723 #define BIT_RXBEQPKT_ERR BIT(6)
9724 #define BIT_RXVIQPKT_ERR BIT(5)
9725 #define BIT_RXVOQPKT_ERR BIT(4)
9726 #define BIT_RXDMA_MON_EN BIT(2)
9727 #define BIT_RXPKT_MON_RST BIT(1)
9728 #define BIT_RXPKT_MON_EN BIT(0)
9729
9730 /* 2 REG_STATE_MON                              (Offset 0x06B4) */
9731
9732 #define BIT_SHIFT_STATE_SEL 24
9733 #define BIT_MASK_STATE_SEL 0x1f
9734 #define BIT_STATE_SEL(x) (((x) & BIT_MASK_STATE_SEL) << BIT_SHIFT_STATE_SEL)
9735 #define BIT_GET_STATE_SEL(x) (((x) >> BIT_SHIFT_STATE_SEL) & BIT_MASK_STATE_SEL)
9736
9737 #define BIT_SHIFT_STATE_INFO 8
9738 #define BIT_MASK_STATE_INFO 0xff
9739 #define BIT_STATE_INFO(x) (((x) & BIT_MASK_STATE_INFO) << BIT_SHIFT_STATE_INFO)
9740 #define BIT_GET_STATE_INFO(x)                                                  \
9741         (((x) >> BIT_SHIFT_STATE_INFO) & BIT_MASK_STATE_INFO)
9742
9743 #define BIT_UPD_NXT_STATE BIT(7)
9744
9745 /* 2 REG_STATE_MON                              (Offset 0x06B4) */
9746
9747 #define BIT_SHIFT_CUR_STATE 0
9748 #define BIT_MASK_CUR_STATE 0x7f
9749 #define BIT_CUR_STATE(x) (((x) & BIT_MASK_CUR_STATE) << BIT_SHIFT_CUR_STATE)
9750 #define BIT_GET_CUR_STATE(x) (((x) >> BIT_SHIFT_CUR_STATE) & BIT_MASK_CUR_STATE)
9751
9752 /* 2 REG_ERROR_MON                              (Offset 0x06B8) */
9753
9754 #define BIT_MACRX_ERR_1 BIT(17)
9755 #define BIT_MACRX_ERR_0 BIT(16)
9756 #define BIT_MACTX_ERR_3 BIT(3)
9757 #define BIT_MACTX_ERR_2 BIT(2)
9758 #define BIT_MACTX_ERR_1 BIT(1)
9759 #define BIT_MACTX_ERR_0 BIT(0)
9760
9761 /* 2 REG_SEARCH_MACID                   (Offset 0x06BC) */
9762
9763 #define BIT_EN_TXRPTBUF_CLK BIT(31)
9764
9765 #define BIT_SHIFT_INFO_INDEX_OFFSET 16
9766 #define BIT_MASK_INFO_INDEX_OFFSET 0x1fff
9767 #define BIT_INFO_INDEX_OFFSET(x)                                               \
9768         (((x) & BIT_MASK_INFO_INDEX_OFFSET) << BIT_SHIFT_INFO_INDEX_OFFSET)
9769 #define BIT_GET_INFO_INDEX_OFFSET(x)                                           \
9770         (((x) >> BIT_SHIFT_INFO_INDEX_OFFSET) & BIT_MASK_INFO_INDEX_OFFSET)
9771
9772 /* 2 REG_SEARCH_MACID                   (Offset 0x06BC) */
9773
9774 #define BIT_WMAC_SRCH_FIFOFULL BIT(15)
9775
9776 /* 2 REG_SEARCH_MACID                   (Offset 0x06BC) */
9777
9778 #define BIT_DIS_INFOSRCH BIT(14)
9779 #define BIT_DISABLE_B0 BIT(13)
9780
9781 #define BIT_SHIFT_INFO_ADDR_OFFSET 0
9782 #define BIT_MASK_INFO_ADDR_OFFSET 0x1fff
9783 #define BIT_INFO_ADDR_OFFSET(x)                                                \
9784         (((x) & BIT_MASK_INFO_ADDR_OFFSET) << BIT_SHIFT_INFO_ADDR_OFFSET)
9785 #define BIT_GET_INFO_ADDR_OFFSET(x)                                            \
9786         (((x) >> BIT_SHIFT_INFO_ADDR_OFFSET) & BIT_MASK_INFO_ADDR_OFFSET)
9787
9788 /* 2 REG_BT_COEX_TABLE                  (Offset 0x06C0) */
9789
9790 #define BIT_PRI_MASK_RX_RESP BIT(126)
9791 #define BIT_PRI_MASK_RXOFDM BIT(125)
9792 #define BIT_PRI_MASK_RXCCK BIT(124)
9793
9794 #define BIT_SHIFT_PRI_MASK_TXAC (117 & CPU_OPT_WIDTH)
9795 #define BIT_MASK_PRI_MASK_TXAC 0x7f
9796 #define BIT_PRI_MASK_TXAC(x)                                                   \
9797         (((x) & BIT_MASK_PRI_MASK_TXAC) << BIT_SHIFT_PRI_MASK_TXAC)
9798 #define BIT_GET_PRI_MASK_TXAC(x)                                               \
9799         (((x) >> BIT_SHIFT_PRI_MASK_TXAC) & BIT_MASK_PRI_MASK_TXAC)
9800
9801 #define BIT_SHIFT_PRI_MASK_NAV (109 & CPU_OPT_WIDTH)
9802 #define BIT_MASK_PRI_MASK_NAV 0xff
9803 #define BIT_PRI_MASK_NAV(x)                                                    \
9804         (((x) & BIT_MASK_PRI_MASK_NAV) << BIT_SHIFT_PRI_MASK_NAV)
9805 #define BIT_GET_PRI_MASK_NAV(x)                                                \
9806         (((x) >> BIT_SHIFT_PRI_MASK_NAV) & BIT_MASK_PRI_MASK_NAV)
9807
9808 #define BIT_PRI_MASK_CCK BIT(108)
9809 #define BIT_PRI_MASK_OFDM BIT(107)
9810 #define BIT_PRI_MASK_RTY BIT(106)
9811
9812 #define BIT_SHIFT_PRI_MASK_NUM (102 & CPU_OPT_WIDTH)
9813 #define BIT_MASK_PRI_MASK_NUM 0xf
9814 #define BIT_PRI_MASK_NUM(x)                                                    \
9815         (((x) & BIT_MASK_PRI_MASK_NUM) << BIT_SHIFT_PRI_MASK_NUM)
9816 #define BIT_GET_PRI_MASK_NUM(x)                                                \
9817         (((x) >> BIT_SHIFT_PRI_MASK_NUM) & BIT_MASK_PRI_MASK_NUM)
9818
9819 #define BIT_SHIFT_PRI_MASK_TYPE (98 & CPU_OPT_WIDTH)
9820 #define BIT_MASK_PRI_MASK_TYPE 0xf
9821 #define BIT_PRI_MASK_TYPE(x)                                                   \
9822         (((x) & BIT_MASK_PRI_MASK_TYPE) << BIT_SHIFT_PRI_MASK_TYPE)
9823 #define BIT_GET_PRI_MASK_TYPE(x)                                               \
9824         (((x) >> BIT_SHIFT_PRI_MASK_TYPE) & BIT_MASK_PRI_MASK_TYPE)
9825
9826 #define BIT_OOB BIT(97)
9827 #define BIT_ANT_SEL BIT(96)
9828
9829 #define BIT_SHIFT_BREAK_TABLE_2 (80 & CPU_OPT_WIDTH)
9830 #define BIT_MASK_BREAK_TABLE_2 0xffff
9831 #define BIT_BREAK_TABLE_2(x)                                                   \
9832         (((x) & BIT_MASK_BREAK_TABLE_2) << BIT_SHIFT_BREAK_TABLE_2)
9833 #define BIT_GET_BREAK_TABLE_2(x)                                               \
9834         (((x) >> BIT_SHIFT_BREAK_TABLE_2) & BIT_MASK_BREAK_TABLE_2)
9835
9836 #define BIT_SHIFT_BREAK_TABLE_1 (64 & CPU_OPT_WIDTH)
9837 #define BIT_MASK_BREAK_TABLE_1 0xffff
9838 #define BIT_BREAK_TABLE_1(x)                                                   \
9839         (((x) & BIT_MASK_BREAK_TABLE_1) << BIT_SHIFT_BREAK_TABLE_1)
9840 #define BIT_GET_BREAK_TABLE_1(x)                                               \
9841         (((x) >> BIT_SHIFT_BREAK_TABLE_1) & BIT_MASK_BREAK_TABLE_1)
9842
9843 #define BIT_SHIFT_COEX_TABLE_2 (32 & CPU_OPT_WIDTH)
9844 #define BIT_MASK_COEX_TABLE_2 0xffffffffL
9845 #define BIT_COEX_TABLE_2(x)                                                    \
9846         (((x) & BIT_MASK_COEX_TABLE_2) << BIT_SHIFT_COEX_TABLE_2)
9847 #define BIT_GET_COEX_TABLE_2(x)                                                \
9848         (((x) >> BIT_SHIFT_COEX_TABLE_2) & BIT_MASK_COEX_TABLE_2)
9849
9850 #define BIT_SHIFT_COEX_TABLE_1 0
9851 #define BIT_MASK_COEX_TABLE_1 0xffffffffL
9852 #define BIT_COEX_TABLE_1(x)                                                    \
9853         (((x) & BIT_MASK_COEX_TABLE_1) << BIT_SHIFT_COEX_TABLE_1)
9854 #define BIT_GET_COEX_TABLE_1(x)                                                \
9855         (((x) >> BIT_SHIFT_COEX_TABLE_1) & BIT_MASK_COEX_TABLE_1)
9856
9857 /* 2 REG_RXCMD_0                                (Offset 0x06D0) */
9858
9859 #define BIT_RXCMD_EN BIT(31)
9860
9861 #define BIT_SHIFT_RXCMD_INFO 0
9862 #define BIT_MASK_RXCMD_INFO 0x7fffffffL
9863 #define BIT_RXCMD_INFO(x) (((x) & BIT_MASK_RXCMD_INFO) << BIT_SHIFT_RXCMD_INFO)
9864 #define BIT_GET_RXCMD_INFO(x)                                                  \
9865         (((x) >> BIT_SHIFT_RXCMD_INFO) & BIT_MASK_RXCMD_INFO)
9866
9867 /* 2 REG_RXCMD_1                                (Offset 0x06D4) */
9868
9869 #define BIT_SHIFT_RXCMD_PRD 0
9870 #define BIT_MASK_RXCMD_PRD 0xffff
9871 #define BIT_RXCMD_PRD(x) (((x) & BIT_MASK_RXCMD_PRD) << BIT_SHIFT_RXCMD_PRD)
9872 #define BIT_GET_RXCMD_PRD(x) (((x) >> BIT_SHIFT_RXCMD_PRD) & BIT_MASK_RXCMD_PRD)
9873
9874 /* 2 REG_WMAC_RESP_TXINFO                       (Offset 0x06D8) */
9875
9876 #define BIT_SHIFT_WMAC_RESP_MFB 25
9877 #define BIT_MASK_WMAC_RESP_MFB 0x7f
9878 #define BIT_WMAC_RESP_MFB(x)                                                   \
9879         (((x) & BIT_MASK_WMAC_RESP_MFB) << BIT_SHIFT_WMAC_RESP_MFB)
9880 #define BIT_GET_WMAC_RESP_MFB(x)                                               \
9881         (((x) >> BIT_SHIFT_WMAC_RESP_MFB) & BIT_MASK_WMAC_RESP_MFB)
9882
9883 #define BIT_SHIFT_WMAC_ANTINF_SEL 23
9884 #define BIT_MASK_WMAC_ANTINF_SEL 0x3
9885 #define BIT_WMAC_ANTINF_SEL(x)                                                 \
9886         (((x) & BIT_MASK_WMAC_ANTINF_SEL) << BIT_SHIFT_WMAC_ANTINF_SEL)
9887 #define BIT_GET_WMAC_ANTINF_SEL(x)                                             \
9888         (((x) >> BIT_SHIFT_WMAC_ANTINF_SEL) & BIT_MASK_WMAC_ANTINF_SEL)
9889
9890 #define BIT_SHIFT_WMAC_ANTSEL_SEL 21
9891 #define BIT_MASK_WMAC_ANTSEL_SEL 0x3
9892 #define BIT_WMAC_ANTSEL_SEL(x)                                                 \
9893         (((x) & BIT_MASK_WMAC_ANTSEL_SEL) << BIT_SHIFT_WMAC_ANTSEL_SEL)
9894 #define BIT_GET_WMAC_ANTSEL_SEL(x)                                             \
9895         (((x) >> BIT_SHIFT_WMAC_ANTSEL_SEL) & BIT_MASK_WMAC_ANTSEL_SEL)
9896
9897 /* 2 REG_WMAC_RESP_TXINFO                       (Offset 0x06D8) */
9898
9899 #define BIT_SHIFT_R_WMAC_RESP_TXPOWER 18
9900 #define BIT_MASK_R_WMAC_RESP_TXPOWER 0x7
9901 #define BIT_R_WMAC_RESP_TXPOWER(x)                                             \
9902         (((x) & BIT_MASK_R_WMAC_RESP_TXPOWER) << BIT_SHIFT_R_WMAC_RESP_TXPOWER)
9903 #define BIT_GET_R_WMAC_RESP_TXPOWER(x)                                         \
9904         (((x) >> BIT_SHIFT_R_WMAC_RESP_TXPOWER) & BIT_MASK_R_WMAC_RESP_TXPOWER)
9905
9906 /* 2 REG_WMAC_RESP_TXINFO                       (Offset 0x06D8) */
9907
9908 #define BIT_SHIFT_WMAC_RESP_TXANT 0
9909 #define BIT_MASK_WMAC_RESP_TXANT 0x3ffff
9910 #define BIT_WMAC_RESP_TXANT(x)                                                 \
9911         (((x) & BIT_MASK_WMAC_RESP_TXANT) << BIT_SHIFT_WMAC_RESP_TXANT)
9912 #define BIT_GET_WMAC_RESP_TXANT(x)                                             \
9913         (((x) >> BIT_SHIFT_WMAC_RESP_TXANT) & BIT_MASK_WMAC_RESP_TXANT)
9914
9915 /* 2 REG_BBPSF_CTRL                             (Offset 0x06DC) */
9916
9917 #define BIT_CTL_IDLE_CLR_CSI_RPT BIT(31)
9918
9919 /* 2 REG_BBPSF_CTRL                             (Offset 0x06DC) */
9920
9921 #define BIT_WMAC_USE_NDPARATE BIT(30)
9922
9923 #define BIT_SHIFT_WMAC_CSI_RATE 24
9924 #define BIT_MASK_WMAC_CSI_RATE 0x3f
9925 #define BIT_WMAC_CSI_RATE(x)                                                   \
9926         (((x) & BIT_MASK_WMAC_CSI_RATE) << BIT_SHIFT_WMAC_CSI_RATE)
9927 #define BIT_GET_WMAC_CSI_RATE(x)                                               \
9928         (((x) >> BIT_SHIFT_WMAC_CSI_RATE) & BIT_MASK_WMAC_CSI_RATE)
9929
9930 #define BIT_SHIFT_WMAC_RESP_TXRATE 16
9931 #define BIT_MASK_WMAC_RESP_TXRATE 0xff
9932 #define BIT_WMAC_RESP_TXRATE(x)                                                \
9933         (((x) & BIT_MASK_WMAC_RESP_TXRATE) << BIT_SHIFT_WMAC_RESP_TXRATE)
9934 #define BIT_GET_WMAC_RESP_TXRATE(x)                                            \
9935         (((x) >> BIT_SHIFT_WMAC_RESP_TXRATE) & BIT_MASK_WMAC_RESP_TXRATE)
9936
9937 /* 2 REG_BBPSF_CTRL                             (Offset 0x06DC) */
9938
9939 #define BIT_BBPSF_MPDUCHKEN BIT(5)
9940
9941 /* 2 REG_BBPSF_CTRL                             (Offset 0x06DC) */
9942
9943 #define BIT_BBPSF_MHCHKEN BIT(4)
9944 #define BIT_BBPSF_ERRCHKEN BIT(3)
9945
9946 #define BIT_SHIFT_BBPSF_ERRTHR 0
9947 #define BIT_MASK_BBPSF_ERRTHR 0x7
9948 #define BIT_BBPSF_ERRTHR(x)                                                    \
9949         (((x) & BIT_MASK_BBPSF_ERRTHR) << BIT_SHIFT_BBPSF_ERRTHR)
9950 #define BIT_GET_BBPSF_ERRTHR(x)                                                \
9951         (((x) >> BIT_SHIFT_BBPSF_ERRTHR) & BIT_MASK_BBPSF_ERRTHR)
9952
9953 /* 2 REG_P2P_RX_BCN_NOA                 (Offset 0x06E0) */
9954
9955 #define BIT_NOA_PARSER_EN BIT(15)
9956
9957 /* 2 REG_P2P_RX_BCN_NOA                 (Offset 0x06E0) */
9958
9959 #define BIT_BSSID_SEL BIT(14)
9960
9961 /* 2 REG_P2P_RX_BCN_NOA                 (Offset 0x06E0) */
9962
9963 #define BIT_SHIFT_P2P_OUI_TYPE 0
9964 #define BIT_MASK_P2P_OUI_TYPE 0xff
9965 #define BIT_P2P_OUI_TYPE(x)                                                    \
9966         (((x) & BIT_MASK_P2P_OUI_TYPE) << BIT_SHIFT_P2P_OUI_TYPE)
9967 #define BIT_GET_P2P_OUI_TYPE(x)                                                \
9968         (((x) >> BIT_SHIFT_P2P_OUI_TYPE) & BIT_MASK_P2P_OUI_TYPE)
9969
9970 /* 2 REG_ASSOCIATED_BFMER0_INFO         (Offset 0x06E4) */
9971
9972 #define BIT_SHIFT_R_WMAC_TXCSI_AID0 (48 & CPU_OPT_WIDTH)
9973 #define BIT_MASK_R_WMAC_TXCSI_AID0 0x1ff
9974 #define BIT_R_WMAC_TXCSI_AID0(x)                                               \
9975         (((x) & BIT_MASK_R_WMAC_TXCSI_AID0) << BIT_SHIFT_R_WMAC_TXCSI_AID0)
9976 #define BIT_GET_R_WMAC_TXCSI_AID0(x)                                           \
9977         (((x) >> BIT_SHIFT_R_WMAC_TXCSI_AID0) & BIT_MASK_R_WMAC_TXCSI_AID0)
9978
9979 #define BIT_SHIFT_R_WMAC_SOUNDING_RXADD_R0 0
9980 #define BIT_MASK_R_WMAC_SOUNDING_RXADD_R0 0xffffffffffffL
9981 #define BIT_R_WMAC_SOUNDING_RXADD_R0(x)                                        \
9982         (((x) & BIT_MASK_R_WMAC_SOUNDING_RXADD_R0)                             \
9983          << BIT_SHIFT_R_WMAC_SOUNDING_RXADD_R0)
9984 #define BIT_GET_R_WMAC_SOUNDING_RXADD_R0(x)                                    \
9985         (((x) >> BIT_SHIFT_R_WMAC_SOUNDING_RXADD_R0) &                         \
9986          BIT_MASK_R_WMAC_SOUNDING_RXADD_R0)
9987
9988 /* 2 REG_ASSOCIATED_BFMER1_INFO         (Offset 0x06EC) */
9989
9990 #define BIT_SHIFT_R_WMAC_TXCSI_AID1 (48 & CPU_OPT_WIDTH)
9991 #define BIT_MASK_R_WMAC_TXCSI_AID1 0x1ff
9992 #define BIT_R_WMAC_TXCSI_AID1(x)                                               \
9993         (((x) & BIT_MASK_R_WMAC_TXCSI_AID1) << BIT_SHIFT_R_WMAC_TXCSI_AID1)
9994 #define BIT_GET_R_WMAC_TXCSI_AID1(x)                                           \
9995         (((x) >> BIT_SHIFT_R_WMAC_TXCSI_AID1) & BIT_MASK_R_WMAC_TXCSI_AID1)
9996
9997 #define BIT_SHIFT_R_WMAC_SOUNDING_RXADD_R1 0
9998 #define BIT_MASK_R_WMAC_SOUNDING_RXADD_R1 0xffffffffffffL
9999 #define BIT_R_WMAC_SOUNDING_RXADD_R1(x)                                        \
10000         (((x) & BIT_MASK_R_WMAC_SOUNDING_RXADD_R1)                             \
10001          << BIT_SHIFT_R_WMAC_SOUNDING_RXADD_R1)
10002 #define BIT_GET_R_WMAC_SOUNDING_RXADD_R1(x)                                    \
10003         (((x) >> BIT_SHIFT_R_WMAC_SOUNDING_RXADD_R1) &                         \
10004          BIT_MASK_R_WMAC_SOUNDING_RXADD_R1)
10005
10006 /* 2 REG_TX_CSI_RPT_PARAM_BW20          (Offset 0x06F4) */
10007
10008 #define BIT_SHIFT_R_WMAC_BFINFO_20M_1 16
10009 #define BIT_MASK_R_WMAC_BFINFO_20M_1 0xfff
10010 #define BIT_R_WMAC_BFINFO_20M_1(x)                                             \
10011         (((x) & BIT_MASK_R_WMAC_BFINFO_20M_1) << BIT_SHIFT_R_WMAC_BFINFO_20M_1)
10012 #define BIT_GET_R_WMAC_BFINFO_20M_1(x)                                         \
10013         (((x) >> BIT_SHIFT_R_WMAC_BFINFO_20M_1) & BIT_MASK_R_WMAC_BFINFO_20M_1)
10014
10015 #define BIT_SHIFT_R_WMAC_BFINFO_20M_0 0
10016 #define BIT_MASK_R_WMAC_BFINFO_20M_0 0xfff
10017 #define BIT_R_WMAC_BFINFO_20M_0(x)                                             \
10018         (((x) & BIT_MASK_R_WMAC_BFINFO_20M_0) << BIT_SHIFT_R_WMAC_BFINFO_20M_0)
10019 #define BIT_GET_R_WMAC_BFINFO_20M_0(x)                                         \
10020         (((x) >> BIT_SHIFT_R_WMAC_BFINFO_20M_0) & BIT_MASK_R_WMAC_BFINFO_20M_0)
10021
10022 /* 2 REG_TX_CSI_RPT_PARAM_BW40          (Offset 0x06F8) */
10023
10024 #define BIT_SHIFT_WMAC_RESP_ANTCD 0
10025 #define BIT_MASK_WMAC_RESP_ANTCD 0xf
10026 #define BIT_WMAC_RESP_ANTCD(x)                                                 \
10027         (((x) & BIT_MASK_WMAC_RESP_ANTCD) << BIT_SHIFT_WMAC_RESP_ANTCD)
10028 #define BIT_GET_WMAC_RESP_ANTCD(x)                                             \
10029         (((x) >> BIT_SHIFT_WMAC_RESP_ANTCD) & BIT_MASK_WMAC_RESP_ANTCD)
10030
10031 /* 2 REG_MACID1                         (Offset 0x0700) */
10032
10033 #define BIT_SHIFT_MACID1 0
10034 #define BIT_MASK_MACID1 0xffffffffffffL
10035 #define BIT_MACID1(x) (((x) & BIT_MASK_MACID1) << BIT_SHIFT_MACID1)
10036 #define BIT_GET_MACID1(x) (((x) >> BIT_SHIFT_MACID1) & BIT_MASK_MACID1)
10037
10038 /* 2 REG_BSSID1                         (Offset 0x0708) */
10039
10040 #define BIT_SHIFT_BSSID1 0
10041 #define BIT_MASK_BSSID1 0xffffffffffffL
10042 #define BIT_BSSID1(x) (((x) & BIT_MASK_BSSID1) << BIT_SHIFT_BSSID1)
10043 #define BIT_GET_BSSID1(x) (((x) >> BIT_SHIFT_BSSID1) & BIT_MASK_BSSID1)
10044
10045 /* 2 REG_BCN_PSR_RPT1                   (Offset 0x0710) */
10046
10047 #define BIT_SHIFT_DTIM_CNT1 24
10048 #define BIT_MASK_DTIM_CNT1 0xff
10049 #define BIT_DTIM_CNT1(x) (((x) & BIT_MASK_DTIM_CNT1) << BIT_SHIFT_DTIM_CNT1)
10050 #define BIT_GET_DTIM_CNT1(x) (((x) >> BIT_SHIFT_DTIM_CNT1) & BIT_MASK_DTIM_CNT1)
10051
10052 #define BIT_SHIFT_DTIM_PERIOD1 16
10053 #define BIT_MASK_DTIM_PERIOD1 0xff
10054 #define BIT_DTIM_PERIOD1(x)                                                    \
10055         (((x) & BIT_MASK_DTIM_PERIOD1) << BIT_SHIFT_DTIM_PERIOD1)
10056 #define BIT_GET_DTIM_PERIOD1(x)                                                \
10057         (((x) >> BIT_SHIFT_DTIM_PERIOD1) & BIT_MASK_DTIM_PERIOD1)
10058
10059 #define BIT_DTIM1 BIT(15)
10060 #define BIT_TIM1 BIT(14)
10061
10062 #define BIT_SHIFT_PS_AID_1 0
10063 #define BIT_MASK_PS_AID_1 0x7ff
10064 #define BIT_PS_AID_1(x) (((x) & BIT_MASK_PS_AID_1) << BIT_SHIFT_PS_AID_1)
10065 #define BIT_GET_PS_AID_1(x) (((x) >> BIT_SHIFT_PS_AID_1) & BIT_MASK_PS_AID_1)
10066
10067 /* 2 REG_ASSOCIATED_BFMEE_SEL           (Offset 0x0714) */
10068
10069 #define BIT_TXUSER_ID1 BIT(25)
10070
10071 #define BIT_SHIFT_AID1 16
10072 #define BIT_MASK_AID1 0x1ff
10073 #define BIT_AID1(x) (((x) & BIT_MASK_AID1) << BIT_SHIFT_AID1)
10074 #define BIT_GET_AID1(x) (((x) >> BIT_SHIFT_AID1) & BIT_MASK_AID1)
10075
10076 #define BIT_TXUSER_ID0 BIT(9)
10077
10078 #define BIT_SHIFT_AID0 0
10079 #define BIT_MASK_AID0 0x1ff
10080 #define BIT_AID0(x) (((x) & BIT_MASK_AID0) << BIT_SHIFT_AID0)
10081 #define BIT_GET_AID0(x) (((x) >> BIT_SHIFT_AID0) & BIT_MASK_AID0)
10082
10083 /* 2 REG_SND_PTCL_CTRL                  (Offset 0x0718) */
10084
10085 #define BIT_SHIFT_NDP_RX_STANDBY_TIMER 24
10086 #define BIT_MASK_NDP_RX_STANDBY_TIMER 0xff
10087 #define BIT_NDP_RX_STANDBY_TIMER(x)                                            \
10088         (((x) & BIT_MASK_NDP_RX_STANDBY_TIMER)                                 \
10089          << BIT_SHIFT_NDP_RX_STANDBY_TIMER)
10090 #define BIT_GET_NDP_RX_STANDBY_TIMER(x)                                        \
10091         (((x) >> BIT_SHIFT_NDP_RX_STANDBY_TIMER) &                             \
10092          BIT_MASK_NDP_RX_STANDBY_TIMER)
10093
10094 #define BIT_SHIFT_CSI_RPT_OFFSET_HT 16
10095 #define BIT_MASK_CSI_RPT_OFFSET_HT 0xff
10096 #define BIT_CSI_RPT_OFFSET_HT(x)                                               \
10097         (((x) & BIT_MASK_CSI_RPT_OFFSET_HT) << BIT_SHIFT_CSI_RPT_OFFSET_HT)
10098 #define BIT_GET_CSI_RPT_OFFSET_HT(x)                                           \
10099         (((x) >> BIT_SHIFT_CSI_RPT_OFFSET_HT) & BIT_MASK_CSI_RPT_OFFSET_HT)
10100
10101 /* 2 REG_SND_PTCL_CTRL                  (Offset 0x0718) */
10102
10103 #define BIT_SHIFT_R_WMAC_VHT_CATEGORY 8
10104 #define BIT_MASK_R_WMAC_VHT_CATEGORY 0xff
10105 #define BIT_R_WMAC_VHT_CATEGORY(x)                                             \
10106         (((x) & BIT_MASK_R_WMAC_VHT_CATEGORY) << BIT_SHIFT_R_WMAC_VHT_CATEGORY)
10107 #define BIT_GET_R_WMAC_VHT_CATEGORY(x)                                         \
10108         (((x) >> BIT_SHIFT_R_WMAC_VHT_CATEGORY) & BIT_MASK_R_WMAC_VHT_CATEGORY)
10109
10110 /* 2 REG_SND_PTCL_CTRL                  (Offset 0x0718) */
10111
10112 #define BIT_R_WMAC_USE_NSTS BIT(7)
10113 #define BIT_R_DISABLE_CHECK_VHTSIGB_CRC BIT(6)
10114 #define BIT_R_DISABLE_CHECK_VHTSIGA_CRC BIT(5)
10115 #define BIT_R_WMAC_BFPARAM_SEL BIT(4)
10116 #define BIT_R_WMAC_CSISEQ_SEL BIT(3)
10117 #define BIT_R_WMAC_CSI_WITHHTC_EN BIT(2)
10118 #define BIT_R_WMAC_HT_NDPA_EN BIT(1)
10119 #define BIT_R_WMAC_VHT_NDPA_EN BIT(0)
10120
10121 /* 2 REG_NS_ARP_CTRL                            (Offset 0x0720) */
10122
10123 #define BIT_R_WMAC_NSARP_RSPEN BIT(15)
10124 #define BIT_R_WMAC_NSARP_RARP BIT(9)
10125 #define BIT_R_WMAC_NSARP_RIPV6 BIT(8)
10126
10127 #define BIT_SHIFT_R_WMAC_NSARP_MODEN 6
10128 #define BIT_MASK_R_WMAC_NSARP_MODEN 0x3
10129 #define BIT_R_WMAC_NSARP_MODEN(x)                                              \
10130         (((x) & BIT_MASK_R_WMAC_NSARP_MODEN) << BIT_SHIFT_R_WMAC_NSARP_MODEN)
10131 #define BIT_GET_R_WMAC_NSARP_MODEN(x)                                          \
10132         (((x) >> BIT_SHIFT_R_WMAC_NSARP_MODEN) & BIT_MASK_R_WMAC_NSARP_MODEN)
10133
10134 #define BIT_SHIFT_R_WMAC_NSARP_RSPFTP 4
10135 #define BIT_MASK_R_WMAC_NSARP_RSPFTP 0x3
10136 #define BIT_R_WMAC_NSARP_RSPFTP(x)                                             \
10137         (((x) & BIT_MASK_R_WMAC_NSARP_RSPFTP) << BIT_SHIFT_R_WMAC_NSARP_RSPFTP)
10138 #define BIT_GET_R_WMAC_NSARP_RSPFTP(x)                                         \
10139         (((x) >> BIT_SHIFT_R_WMAC_NSARP_RSPFTP) & BIT_MASK_R_WMAC_NSARP_RSPFTP)
10140
10141 #define BIT_SHIFT_R_WMAC_NSARP_RSPSEC 0
10142 #define BIT_MASK_R_WMAC_NSARP_RSPSEC 0xf
10143 #define BIT_R_WMAC_NSARP_RSPSEC(x)                                             \
10144         (((x) & BIT_MASK_R_WMAC_NSARP_RSPSEC) << BIT_SHIFT_R_WMAC_NSARP_RSPSEC)
10145 #define BIT_GET_R_WMAC_NSARP_RSPSEC(x)                                         \
10146         (((x) >> BIT_SHIFT_R_WMAC_NSARP_RSPSEC) & BIT_MASK_R_WMAC_NSARP_RSPSEC)
10147
10148 /* 2 REG_NS_ARP_INFO                            (Offset 0x0724) */
10149
10150 #define BIT_REQ_IS_MCNS BIT(23)
10151 #define BIT_REQ_IS_UCNS BIT(22)
10152 #define BIT_REQ_IS_USNS BIT(21)
10153 #define BIT_REQ_IS_ARP BIT(20)
10154 #define BIT_EXPRSP_MH_WITHQC BIT(19)
10155
10156 #define BIT_SHIFT_EXPRSP_SECTYPE 16
10157 #define BIT_MASK_EXPRSP_SECTYPE 0x7
10158 #define BIT_EXPRSP_SECTYPE(x)                                                  \
10159         (((x) & BIT_MASK_EXPRSP_SECTYPE) << BIT_SHIFT_EXPRSP_SECTYPE)
10160 #define BIT_GET_EXPRSP_SECTYPE(x)                                              \
10161         (((x) >> BIT_SHIFT_EXPRSP_SECTYPE) & BIT_MASK_EXPRSP_SECTYPE)
10162
10163 #define BIT_SHIFT_EXPRSP_CHKSM_7_TO_0 8
10164 #define BIT_MASK_EXPRSP_CHKSM_7_TO_0 0xff
10165 #define BIT_EXPRSP_CHKSM_7_TO_0(x)                                             \
10166         (((x) & BIT_MASK_EXPRSP_CHKSM_7_TO_0) << BIT_SHIFT_EXPRSP_CHKSM_7_TO_0)
10167 #define BIT_GET_EXPRSP_CHKSM_7_TO_0(x)                                         \
10168         (((x) >> BIT_SHIFT_EXPRSP_CHKSM_7_TO_0) & BIT_MASK_EXPRSP_CHKSM_7_TO_0)
10169
10170 #define BIT_SHIFT_EXPRSP_CHKSM_15_TO_8 0
10171 #define BIT_MASK_EXPRSP_CHKSM_15_TO_8 0xff
10172 #define BIT_EXPRSP_CHKSM_15_TO_8(x)                                            \
10173         (((x) & BIT_MASK_EXPRSP_CHKSM_15_TO_8)                                 \
10174          << BIT_SHIFT_EXPRSP_CHKSM_15_TO_8)
10175 #define BIT_GET_EXPRSP_CHKSM_15_TO_8(x)                                        \
10176         (((x) >> BIT_SHIFT_EXPRSP_CHKSM_15_TO_8) &                             \
10177          BIT_MASK_EXPRSP_CHKSM_15_TO_8)
10178
10179 /* 2 REG_BEAMFORMING_INFO_NSARP_V1              (Offset 0x0728) */
10180
10181 #define BIT_SHIFT_WMAC_ARPIP 0
10182 #define BIT_MASK_WMAC_ARPIP 0xffffffffL
10183 #define BIT_WMAC_ARPIP(x) (((x) & BIT_MASK_WMAC_ARPIP) << BIT_SHIFT_WMAC_ARPIP)
10184 #define BIT_GET_WMAC_ARPIP(x)                                                  \
10185         (((x) >> BIT_SHIFT_WMAC_ARPIP) & BIT_MASK_WMAC_ARPIP)
10186
10187 /* 2 REG_BEAMFORMING_INFO_NSARP         (Offset 0x072C) */
10188
10189 #define BIT_SHIFT_BEAMFORMING_INFO 0
10190 #define BIT_MASK_BEAMFORMING_INFO 0xffffffffL
10191 #define BIT_BEAMFORMING_INFO(x)                                                \
10192         (((x) & BIT_MASK_BEAMFORMING_INFO) << BIT_SHIFT_BEAMFORMING_INFO)
10193 #define BIT_GET_BEAMFORMING_INFO(x)                                            \
10194         (((x) >> BIT_SHIFT_BEAMFORMING_INFO) & BIT_MASK_BEAMFORMING_INFO)
10195
10196 /* 2 REG_WMAC_RTX_CTX_SUBTYPE_CFG               (Offset 0x0750) */
10197
10198 #define BIT_SHIFT_R_WMAC_CTX_SUBTYPE 4
10199 #define BIT_MASK_R_WMAC_CTX_SUBTYPE 0xf
10200 #define BIT_R_WMAC_CTX_SUBTYPE(x)                                              \
10201         (((x) & BIT_MASK_R_WMAC_CTX_SUBTYPE) << BIT_SHIFT_R_WMAC_CTX_SUBTYPE)
10202 #define BIT_GET_R_WMAC_CTX_SUBTYPE(x)                                          \
10203         (((x) >> BIT_SHIFT_R_WMAC_CTX_SUBTYPE) & BIT_MASK_R_WMAC_CTX_SUBTYPE)
10204
10205 #define BIT_SHIFT_R_WMAC_RTX_SUBTYPE 0
10206 #define BIT_MASK_R_WMAC_RTX_SUBTYPE 0xf
10207 #define BIT_R_WMAC_RTX_SUBTYPE(x)                                              \
10208         (((x) & BIT_MASK_R_WMAC_RTX_SUBTYPE) << BIT_SHIFT_R_WMAC_RTX_SUBTYPE)
10209 #define BIT_GET_R_WMAC_RTX_SUBTYPE(x)                                          \
10210         (((x) >> BIT_SHIFT_R_WMAC_RTX_SUBTYPE) & BIT_MASK_R_WMAC_RTX_SUBTYPE)
10211
10212 /* 2 REG_BT_COEX_V2                             (Offset 0x0762) */
10213
10214 #define BIT_GNT_BT_POLARITY BIT(12)
10215 #define BIT_GNT_BT_BYPASS_PRIORITY BIT(8)
10216
10217 #define BIT_SHIFT_TIMER 0
10218 #define BIT_MASK_TIMER 0xff
10219 #define BIT_TIMER(x) (((x) & BIT_MASK_TIMER) << BIT_SHIFT_TIMER)
10220 #define BIT_GET_TIMER(x) (((x) >> BIT_SHIFT_TIMER) & BIT_MASK_TIMER)
10221
10222 /* 2 REG_BT_COEX                                (Offset 0x0764) */
10223
10224 #define BIT_R_GNT_BT_RFC_SW BIT(12)
10225 #define BIT_R_GNT_BT_RFC_SW_EN BIT(11)
10226 #define BIT_R_GNT_BT_BB_SW BIT(10)
10227 #define BIT_R_GNT_BT_BB_SW_EN BIT(9)
10228 #define BIT_R_BT_CNT_THREN BIT(8)
10229
10230 #define BIT_SHIFT_R_BT_CNT_THR 0
10231 #define BIT_MASK_R_BT_CNT_THR 0xff
10232 #define BIT_R_BT_CNT_THR(x)                                                    \
10233         (((x) & BIT_MASK_R_BT_CNT_THR) << BIT_SHIFT_R_BT_CNT_THR)
10234 #define BIT_GET_R_BT_CNT_THR(x)                                                \
10235         (((x) >> BIT_SHIFT_R_BT_CNT_THR) & BIT_MASK_R_BT_CNT_THR)
10236
10237 /* 2 REG_WLAN_ACT_MASK_CTRL                     (Offset 0x0768) */
10238
10239 #define BIT_WLRX_TER_BY_CTL BIT(43)
10240 #define BIT_WLRX_TER_BY_AD BIT(42)
10241 #define BIT_ANT_DIVERSITY_SEL BIT(41)
10242 #define BIT_ANTSEL_FOR_BT_CTRL_EN BIT(40)
10243 #define BIT_WLACT_LOW_GNTWL_EN BIT(34)
10244 #define BIT_WLACT_HIGH_GNTBT_EN BIT(33)
10245
10246 /* 2 REG_WLAN_ACT_MASK_CTRL                     (Offset 0x0768) */
10247
10248 #define BIT_NAV_UPPER_V1 BIT(32)
10249
10250 /* 2 REG_WLAN_ACT_MASK_CTRL                     (Offset 0x0768) */
10251
10252 #define BIT_SHIFT_RXMYRTS_NAV_V1 8
10253 #define BIT_MASK_RXMYRTS_NAV_V1 0xff
10254 #define BIT_RXMYRTS_NAV_V1(x)                                                  \
10255         (((x) & BIT_MASK_RXMYRTS_NAV_V1) << BIT_SHIFT_RXMYRTS_NAV_V1)
10256 #define BIT_GET_RXMYRTS_NAV_V1(x)                                              \
10257         (((x) >> BIT_SHIFT_RXMYRTS_NAV_V1) & BIT_MASK_RXMYRTS_NAV_V1)
10258
10259 #define BIT_SHIFT_RTSRST_V1 0
10260 #define BIT_MASK_RTSRST_V1 0xff
10261 #define BIT_RTSRST_V1(x) (((x) & BIT_MASK_RTSRST_V1) << BIT_SHIFT_RTSRST_V1)
10262 #define BIT_GET_RTSRST_V1(x) (((x) >> BIT_SHIFT_RTSRST_V1) & BIT_MASK_RTSRST_V1)
10263
10264 /* 2 REG_BT_COEX_ENHANCED_INTR_CTRL             (Offset 0x076E) */
10265
10266 #define BIT_SHIFT_BT_STAT_DELAY 12
10267 #define BIT_MASK_BT_STAT_DELAY 0xf
10268 #define BIT_BT_STAT_DELAY(x)                                                   \
10269         (((x) & BIT_MASK_BT_STAT_DELAY) << BIT_SHIFT_BT_STAT_DELAY)
10270 #define BIT_GET_BT_STAT_DELAY(x)                                               \
10271         (((x) >> BIT_SHIFT_BT_STAT_DELAY) & BIT_MASK_BT_STAT_DELAY)
10272
10273 #define BIT_SHIFT_BT_TRX_INIT_DETECT 8
10274 #define BIT_MASK_BT_TRX_INIT_DETECT 0xf
10275 #define BIT_BT_TRX_INIT_DETECT(x)                                              \
10276         (((x) & BIT_MASK_BT_TRX_INIT_DETECT) << BIT_SHIFT_BT_TRX_INIT_DETECT)
10277 #define BIT_GET_BT_TRX_INIT_DETECT(x)                                          \
10278         (((x) >> BIT_SHIFT_BT_TRX_INIT_DETECT) & BIT_MASK_BT_TRX_INIT_DETECT)
10279
10280 #define BIT_SHIFT_BT_PRI_DETECT_TO 4
10281 #define BIT_MASK_BT_PRI_DETECT_TO 0xf
10282 #define BIT_BT_PRI_DETECT_TO(x)                                                \
10283         (((x) & BIT_MASK_BT_PRI_DETECT_TO) << BIT_SHIFT_BT_PRI_DETECT_TO)
10284 #define BIT_GET_BT_PRI_DETECT_TO(x)                                            \
10285         (((x) >> BIT_SHIFT_BT_PRI_DETECT_TO) & BIT_MASK_BT_PRI_DETECT_TO)
10286
10287 #define BIT_R_GRANTALL_WLMASK BIT(3)
10288 #define BIT_STATIS_BT_EN BIT(2)
10289 #define BIT_WL_ACT_MASK_ENABLE BIT(1)
10290 #define BIT_ENHANCED_BT BIT(0)
10291
10292 /* 2 REG_BT_ACT_STATISTICS                      (Offset 0x0770) */
10293
10294 #define BIT_SHIFT_STATIS_BT_LO_RX (48 & CPU_OPT_WIDTH)
10295 #define BIT_MASK_STATIS_BT_LO_RX 0xffff
10296 #define BIT_STATIS_BT_LO_RX(x)                                                 \
10297         (((x) & BIT_MASK_STATIS_BT_LO_RX) << BIT_SHIFT_STATIS_BT_LO_RX)
10298 #define BIT_GET_STATIS_BT_LO_RX(x)                                             \
10299         (((x) >> BIT_SHIFT_STATIS_BT_LO_RX) & BIT_MASK_STATIS_BT_LO_RX)
10300
10301 #define BIT_SHIFT_STATIS_BT_LO_TX (32 & CPU_OPT_WIDTH)
10302 #define BIT_MASK_STATIS_BT_LO_TX 0xffff
10303 #define BIT_STATIS_BT_LO_TX(x)                                                 \
10304         (((x) & BIT_MASK_STATIS_BT_LO_TX) << BIT_SHIFT_STATIS_BT_LO_TX)
10305 #define BIT_GET_STATIS_BT_LO_TX(x)                                             \
10306         (((x) >> BIT_SHIFT_STATIS_BT_LO_TX) & BIT_MASK_STATIS_BT_LO_TX)
10307
10308 /* 2 REG_BT_ACT_STATISTICS                      (Offset 0x0770) */
10309
10310 #define BIT_SHIFT_STATIS_BT_HI_RX 16
10311 #define BIT_MASK_STATIS_BT_HI_RX 0xffff
10312 #define BIT_STATIS_BT_HI_RX(x)                                                 \
10313         (((x) & BIT_MASK_STATIS_BT_HI_RX) << BIT_SHIFT_STATIS_BT_HI_RX)
10314 #define BIT_GET_STATIS_BT_HI_RX(x)                                             \
10315         (((x) >> BIT_SHIFT_STATIS_BT_HI_RX) & BIT_MASK_STATIS_BT_HI_RX)
10316
10317 #define BIT_SHIFT_STATIS_BT_HI_TX 0
10318 #define BIT_MASK_STATIS_BT_HI_TX 0xffff
10319 #define BIT_STATIS_BT_HI_TX(x)                                                 \
10320         (((x) & BIT_MASK_STATIS_BT_HI_TX) << BIT_SHIFT_STATIS_BT_HI_TX)
10321 #define BIT_GET_STATIS_BT_HI_TX(x)                                             \
10322         (((x) >> BIT_SHIFT_STATIS_BT_HI_TX) & BIT_MASK_STATIS_BT_HI_TX)
10323
10324 /* 2 REG_BT_STATISTICS_CONTROL_REGISTER (Offset 0x0778) */
10325
10326 #define BIT_SHIFT_R_BT_CMD_RPT 16
10327 #define BIT_MASK_R_BT_CMD_RPT 0xffff
10328 #define BIT_R_BT_CMD_RPT(x)                                                    \
10329         (((x) & BIT_MASK_R_BT_CMD_RPT) << BIT_SHIFT_R_BT_CMD_RPT)
10330 #define BIT_GET_R_BT_CMD_RPT(x)                                                \
10331         (((x) >> BIT_SHIFT_R_BT_CMD_RPT) & BIT_MASK_R_BT_CMD_RPT)
10332
10333 #define BIT_SHIFT_R_RPT_FROM_BT 8
10334 #define BIT_MASK_R_RPT_FROM_BT 0xff
10335 #define BIT_R_RPT_FROM_BT(x)                                                   \
10336         (((x) & BIT_MASK_R_RPT_FROM_BT) << BIT_SHIFT_R_RPT_FROM_BT)
10337 #define BIT_GET_R_RPT_FROM_BT(x)                                               \
10338         (((x) >> BIT_SHIFT_R_RPT_FROM_BT) & BIT_MASK_R_RPT_FROM_BT)
10339
10340 #define BIT_SHIFT_BT_HID_ISR_SET 6
10341 #define BIT_MASK_BT_HID_ISR_SET 0x3
10342 #define BIT_BT_HID_ISR_SET(x)                                                  \
10343         (((x) & BIT_MASK_BT_HID_ISR_SET) << BIT_SHIFT_BT_HID_ISR_SET)
10344 #define BIT_GET_BT_HID_ISR_SET(x)                                              \
10345         (((x) >> BIT_SHIFT_BT_HID_ISR_SET) & BIT_MASK_BT_HID_ISR_SET)
10346
10347 #define BIT_TDMA_BT_START_NOTIFY BIT(5)
10348 #define BIT_ENABLE_TDMA_FW_MODE BIT(4)
10349 #define BIT_ENABLE_PTA_TDMA_MODE BIT(3)
10350 #define BIT_ENABLE_COEXIST_TAB_IN_TDMA BIT(2)
10351 #define BIT_GPIO2_GPIO3_EXANGE_OR_NO_BT_CCA BIT(1)
10352 #define BIT_RTK_BT_ENABLE BIT(0)
10353
10354 /* 2 REG_BT_STATUS_REPORT_REGISTER              (Offset 0x077C) */
10355
10356 #define BIT_SHIFT_BT_PROFILE 24
10357 #define BIT_MASK_BT_PROFILE 0xff
10358 #define BIT_BT_PROFILE(x) (((x) & BIT_MASK_BT_PROFILE) << BIT_SHIFT_BT_PROFILE)
10359 #define BIT_GET_BT_PROFILE(x)                                                  \
10360         (((x) >> BIT_SHIFT_BT_PROFILE) & BIT_MASK_BT_PROFILE)
10361
10362 #define BIT_SHIFT_BT_POWER 16
10363 #define BIT_MASK_BT_POWER 0xff
10364 #define BIT_BT_POWER(x) (((x) & BIT_MASK_BT_POWER) << BIT_SHIFT_BT_POWER)
10365 #define BIT_GET_BT_POWER(x) (((x) >> BIT_SHIFT_BT_POWER) & BIT_MASK_BT_POWER)
10366
10367 #define BIT_SHIFT_BT_PREDECT_STATUS 8
10368 #define BIT_MASK_BT_PREDECT_STATUS 0xff
10369 #define BIT_BT_PREDECT_STATUS(x)                                               \
10370         (((x) & BIT_MASK_BT_PREDECT_STATUS) << BIT_SHIFT_BT_PREDECT_STATUS)
10371 #define BIT_GET_BT_PREDECT_STATUS(x)                                           \
10372         (((x) >> BIT_SHIFT_BT_PREDECT_STATUS) & BIT_MASK_BT_PREDECT_STATUS)
10373
10374 #define BIT_SHIFT_BT_CMD_INFO 0
10375 #define BIT_MASK_BT_CMD_INFO 0xff
10376 #define BIT_BT_CMD_INFO(x)                                                     \
10377         (((x) & BIT_MASK_BT_CMD_INFO) << BIT_SHIFT_BT_CMD_INFO)
10378 #define BIT_GET_BT_CMD_INFO(x)                                                 \
10379         (((x) >> BIT_SHIFT_BT_CMD_INFO) & BIT_MASK_BT_CMD_INFO)
10380
10381 /* 2 REG_BT_INTERRUPT_CONTROL_REGISTER  (Offset 0x0780) */
10382
10383 #define BIT_EN_MAC_NULL_PKT_NOTIFY BIT(31)
10384 #define BIT_EN_WLAN_RPT_AND_BT_QUERY BIT(30)
10385 #define BIT_EN_BT_STSTUS_RPT BIT(29)
10386 #define BIT_EN_BT_POWER BIT(28)
10387 #define BIT_EN_BT_CHANNEL BIT(27)
10388 #define BIT_EN_BT_SLOT_CHANGE BIT(26)
10389 #define BIT_EN_BT_PROFILE_OR_HID BIT(25)
10390 #define BIT_WLAN_RPT_NOTIFY BIT(24)
10391
10392 #define BIT_SHIFT_WLAN_RPT_DATA 16
10393 #define BIT_MASK_WLAN_RPT_DATA 0xff
10394 #define BIT_WLAN_RPT_DATA(x)                                                   \
10395         (((x) & BIT_MASK_WLAN_RPT_DATA) << BIT_SHIFT_WLAN_RPT_DATA)
10396 #define BIT_GET_WLAN_RPT_DATA(x)                                               \
10397         (((x) >> BIT_SHIFT_WLAN_RPT_DATA) & BIT_MASK_WLAN_RPT_DATA)
10398
10399 #define BIT_SHIFT_CMD_ID 8
10400 #define BIT_MASK_CMD_ID 0xff
10401 #define BIT_CMD_ID(x) (((x) & BIT_MASK_CMD_ID) << BIT_SHIFT_CMD_ID)
10402 #define BIT_GET_CMD_ID(x) (((x) >> BIT_SHIFT_CMD_ID) & BIT_MASK_CMD_ID)
10403
10404 #define BIT_SHIFT_BT_DATA 0
10405 #define BIT_MASK_BT_DATA 0xff
10406 #define BIT_BT_DATA(x) (((x) & BIT_MASK_BT_DATA) << BIT_SHIFT_BT_DATA)
10407 #define BIT_GET_BT_DATA(x) (((x) >> BIT_SHIFT_BT_DATA) & BIT_MASK_BT_DATA)
10408
10409 /* 2 REG_WLAN_REPORT_TIME_OUT_CONTROL_REGISTER (Offset 0x0784) */
10410
10411 #define BIT_SHIFT_WLAN_RPT_TO 0
10412 #define BIT_MASK_WLAN_RPT_TO 0xff
10413 #define BIT_WLAN_RPT_TO(x)                                                     \
10414         (((x) & BIT_MASK_WLAN_RPT_TO) << BIT_SHIFT_WLAN_RPT_TO)
10415 #define BIT_GET_WLAN_RPT_TO(x)                                                 \
10416         (((x) >> BIT_SHIFT_WLAN_RPT_TO) & BIT_MASK_WLAN_RPT_TO)
10417
10418 /* 2 REG_BT_ISOLATION_TABLE_REGISTER_REGISTER (Offset 0x0785) */
10419
10420 #define BIT_SHIFT_ISOLATION_CHK 1
10421 #define BIT_MASK_ISOLATION_CHK 0x7fffffffffffffffffffL
10422 #define BIT_ISOLATION_CHK(x)                                                   \
10423         (((x) & BIT_MASK_ISOLATION_CHK) << BIT_SHIFT_ISOLATION_CHK)
10424 #define BIT_GET_ISOLATION_CHK(x)                                               \
10425         (((x) >> BIT_SHIFT_ISOLATION_CHK) & BIT_MASK_ISOLATION_CHK)
10426
10427 /* 2 REG_BT_ISOLATION_TABLE_REGISTER_REGISTER (Offset 0x0785) */
10428
10429 #define BIT_ISOLATION_EN BIT(0)
10430
10431 /* 2 REG_BT_INTERRUPT_STATUS_REGISTER   (Offset 0x078F) */
10432
10433 #define BIT_BT_HID_ISR BIT(7)
10434 #define BIT_BT_QUERY_ISR BIT(6)
10435 #define BIT_MAC_NULL_PKT_NOTIFY_ISR BIT(5)
10436 #define BIT_WLAN_RPT_ISR BIT(4)
10437 #define BIT_BT_POWER_ISR BIT(3)
10438 #define BIT_BT_CHANNEL_ISR BIT(2)
10439 #define BIT_BT_SLOT_CHANGE_ISR BIT(1)
10440 #define BIT_BT_PROFILE_ISR BIT(0)
10441
10442 /* 2 REG_BT_TDMA_TIME_REGISTER          (Offset 0x0790) */
10443
10444 #define BIT_SHIFT_BT_TIME 6
10445 #define BIT_MASK_BT_TIME 0x3ffffff
10446 #define BIT_BT_TIME(x) (((x) & BIT_MASK_BT_TIME) << BIT_SHIFT_BT_TIME)
10447 #define BIT_GET_BT_TIME(x) (((x) >> BIT_SHIFT_BT_TIME) & BIT_MASK_BT_TIME)
10448
10449 #define BIT_SHIFT_BT_RPT_SAMPLE_RATE 0
10450 #define BIT_MASK_BT_RPT_SAMPLE_RATE 0x3f
10451 #define BIT_BT_RPT_SAMPLE_RATE(x)                                              \
10452         (((x) & BIT_MASK_BT_RPT_SAMPLE_RATE) << BIT_SHIFT_BT_RPT_SAMPLE_RATE)
10453 #define BIT_GET_BT_RPT_SAMPLE_RATE(x)                                          \
10454         (((x) >> BIT_SHIFT_BT_RPT_SAMPLE_RATE) & BIT_MASK_BT_RPT_SAMPLE_RATE)
10455
10456 /* 2 REG_BT_ACT_REGISTER                        (Offset 0x0794) */
10457
10458 #define BIT_SHIFT_BT_EISR_EN 16
10459 #define BIT_MASK_BT_EISR_EN 0xff
10460 #define BIT_BT_EISR_EN(x) (((x) & BIT_MASK_BT_EISR_EN) << BIT_SHIFT_BT_EISR_EN)
10461 #define BIT_GET_BT_EISR_EN(x)                                                  \
10462         (((x) >> BIT_SHIFT_BT_EISR_EN) & BIT_MASK_BT_EISR_EN)
10463
10464 #define BIT_BT_ACT_FALLING_ISR BIT(10)
10465 #define BIT_BT_ACT_RISING_ISR BIT(9)
10466 #define BIT_TDMA_TO_ISR BIT(8)
10467
10468 #define BIT_SHIFT_BT_CH 0
10469 #define BIT_MASK_BT_CH 0xff
10470 #define BIT_BT_CH(x) (((x) & BIT_MASK_BT_CH) << BIT_SHIFT_BT_CH)
10471 #define BIT_GET_BT_CH(x) (((x) >> BIT_SHIFT_BT_CH) & BIT_MASK_BT_CH)
10472
10473 /* 2 REG_OBFF_CTRL_BASIC                        (Offset 0x0798) */
10474
10475 #define BIT_OBFF_EN_V1 BIT(31)
10476
10477 #define BIT_SHIFT_OBFF_STATE_V1 28
10478 #define BIT_MASK_OBFF_STATE_V1 0x3
10479 #define BIT_OBFF_STATE_V1(x)                                                   \
10480         (((x) & BIT_MASK_OBFF_STATE_V1) << BIT_SHIFT_OBFF_STATE_V1)
10481 #define BIT_GET_OBFF_STATE_V1(x)                                               \
10482         (((x) >> BIT_SHIFT_OBFF_STATE_V1) & BIT_MASK_OBFF_STATE_V1)
10483
10484 #define BIT_OBFF_ACT_RXDMA_EN BIT(27)
10485 #define BIT_OBFF_BLOCK_INT_EN BIT(26)
10486 #define BIT_OBFF_AUTOACT_EN BIT(25)
10487 #define BIT_OBFF_AUTOIDLE_EN BIT(24)
10488
10489 #define BIT_SHIFT_WAKE_MAX_PLS 20
10490 #define BIT_MASK_WAKE_MAX_PLS 0x7
10491 #define BIT_WAKE_MAX_PLS(x)                                                    \
10492         (((x) & BIT_MASK_WAKE_MAX_PLS) << BIT_SHIFT_WAKE_MAX_PLS)
10493 #define BIT_GET_WAKE_MAX_PLS(x)                                                \
10494         (((x) >> BIT_SHIFT_WAKE_MAX_PLS) & BIT_MASK_WAKE_MAX_PLS)
10495
10496 #define BIT_SHIFT_WAKE_MIN_PLS 16
10497 #define BIT_MASK_WAKE_MIN_PLS 0x7
10498 #define BIT_WAKE_MIN_PLS(x)                                                    \
10499         (((x) & BIT_MASK_WAKE_MIN_PLS) << BIT_SHIFT_WAKE_MIN_PLS)
10500 #define BIT_GET_WAKE_MIN_PLS(x)                                                \
10501         (((x) >> BIT_SHIFT_WAKE_MIN_PLS) & BIT_MASK_WAKE_MIN_PLS)
10502
10503 #define BIT_SHIFT_WAKE_MAX_F2F 12
10504 #define BIT_MASK_WAKE_MAX_F2F 0x7
10505 #define BIT_WAKE_MAX_F2F(x)                                                    \
10506         (((x) & BIT_MASK_WAKE_MAX_F2F) << BIT_SHIFT_WAKE_MAX_F2F)
10507 #define BIT_GET_WAKE_MAX_F2F(x)                                                \
10508         (((x) >> BIT_SHIFT_WAKE_MAX_F2F) & BIT_MASK_WAKE_MAX_F2F)
10509
10510 #define BIT_SHIFT_WAKE_MIN_F2F 8
10511 #define BIT_MASK_WAKE_MIN_F2F 0x7
10512 #define BIT_WAKE_MIN_F2F(x)                                                    \
10513         (((x) & BIT_MASK_WAKE_MIN_F2F) << BIT_SHIFT_WAKE_MIN_F2F)
10514 #define BIT_GET_WAKE_MIN_F2F(x)                                                \
10515         (((x) >> BIT_SHIFT_WAKE_MIN_F2F) & BIT_MASK_WAKE_MIN_F2F)
10516
10517 #define BIT_APP_CPU_ACT_V1 BIT(3)
10518 #define BIT_APP_OBFF_V1 BIT(2)
10519 #define BIT_APP_IDLE_V1 BIT(1)
10520 #define BIT_APP_INIT_V1 BIT(0)
10521
10522 /* 2 REG_OBFF_CTRL2_TIMER                       (Offset 0x079C) */
10523
10524 #define BIT_SHIFT_RX_HIGH_TIMER_IDX 24
10525 #define BIT_MASK_RX_HIGH_TIMER_IDX 0x7
10526 #define BIT_RX_HIGH_TIMER_IDX(x)                                               \
10527         (((x) & BIT_MASK_RX_HIGH_TIMER_IDX) << BIT_SHIFT_RX_HIGH_TIMER_IDX)
10528 #define BIT_GET_RX_HIGH_TIMER_IDX(x)                                           \
10529         (((x) >> BIT_SHIFT_RX_HIGH_TIMER_IDX) & BIT_MASK_RX_HIGH_TIMER_IDX)
10530
10531 #define BIT_SHIFT_RX_MED_TIMER_IDX 16
10532 #define BIT_MASK_RX_MED_TIMER_IDX 0x7
10533 #define BIT_RX_MED_TIMER_IDX(x)                                                \
10534         (((x) & BIT_MASK_RX_MED_TIMER_IDX) << BIT_SHIFT_RX_MED_TIMER_IDX)
10535 #define BIT_GET_RX_MED_TIMER_IDX(x)                                            \
10536         (((x) >> BIT_SHIFT_RX_MED_TIMER_IDX) & BIT_MASK_RX_MED_TIMER_IDX)
10537
10538 #define BIT_SHIFT_RX_LOW_TIMER_IDX 8
10539 #define BIT_MASK_RX_LOW_TIMER_IDX 0x7
10540 #define BIT_RX_LOW_TIMER_IDX(x)                                                \
10541         (((x) & BIT_MASK_RX_LOW_TIMER_IDX) << BIT_SHIFT_RX_LOW_TIMER_IDX)
10542 #define BIT_GET_RX_LOW_TIMER_IDX(x)                                            \
10543         (((x) >> BIT_SHIFT_RX_LOW_TIMER_IDX) & BIT_MASK_RX_LOW_TIMER_IDX)
10544
10545 #define BIT_SHIFT_OBFF_INT_TIMER_IDX 0
10546 #define BIT_MASK_OBFF_INT_TIMER_IDX 0x7
10547 #define BIT_OBFF_INT_TIMER_IDX(x)                                              \
10548         (((x) & BIT_MASK_OBFF_INT_TIMER_IDX) << BIT_SHIFT_OBFF_INT_TIMER_IDX)
10549 #define BIT_GET_OBFF_INT_TIMER_IDX(x)                                          \
10550         (((x) >> BIT_SHIFT_OBFF_INT_TIMER_IDX) & BIT_MASK_OBFF_INT_TIMER_IDX)
10551
10552 /* 2 REG_LTR_CTRL_BASIC                 (Offset 0x07A0) */
10553
10554 #define BIT_LTR_EN_V1 BIT(31)
10555 #define BIT_LTR_HW_EN_V1 BIT(30)
10556 #define BIT_LRT_ACT_CTS_EN BIT(29)
10557 #define BIT_LTR_ACT_RXPKT_EN BIT(28)
10558 #define BIT_LTR_ACT_RXDMA_EN BIT(27)
10559 #define BIT_LTR_IDLE_NO_SNOOP BIT(26)
10560 #define BIT_SPDUP_MGTPKT BIT(25)
10561 #define BIT_RX_AGG_EN BIT(24)
10562 #define BIT_APP_LTR_ACT BIT(23)
10563 #define BIT_APP_LTR_IDLE BIT(22)
10564
10565 #define BIT_SHIFT_HIGH_RATE_TRIG_SEL 20
10566 #define BIT_MASK_HIGH_RATE_TRIG_SEL 0x3
10567 #define BIT_HIGH_RATE_TRIG_SEL(x)                                              \
10568         (((x) & BIT_MASK_HIGH_RATE_TRIG_SEL) << BIT_SHIFT_HIGH_RATE_TRIG_SEL)
10569 #define BIT_GET_HIGH_RATE_TRIG_SEL(x)                                          \
10570         (((x) >> BIT_SHIFT_HIGH_RATE_TRIG_SEL) & BIT_MASK_HIGH_RATE_TRIG_SEL)
10571
10572 #define BIT_SHIFT_MED_RATE_TRIG_SEL 18
10573 #define BIT_MASK_MED_RATE_TRIG_SEL 0x3
10574 #define BIT_MED_RATE_TRIG_SEL(x)                                               \
10575         (((x) & BIT_MASK_MED_RATE_TRIG_SEL) << BIT_SHIFT_MED_RATE_TRIG_SEL)
10576 #define BIT_GET_MED_RATE_TRIG_SEL(x)                                           \
10577         (((x) >> BIT_SHIFT_MED_RATE_TRIG_SEL) & BIT_MASK_MED_RATE_TRIG_SEL)
10578
10579 #define BIT_SHIFT_LOW_RATE_TRIG_SEL 16
10580 #define BIT_MASK_LOW_RATE_TRIG_SEL 0x3
10581 #define BIT_LOW_RATE_TRIG_SEL(x)                                               \
10582         (((x) & BIT_MASK_LOW_RATE_TRIG_SEL) << BIT_SHIFT_LOW_RATE_TRIG_SEL)
10583 #define BIT_GET_LOW_RATE_TRIG_SEL(x)                                           \
10584         (((x) >> BIT_SHIFT_LOW_RATE_TRIG_SEL) & BIT_MASK_LOW_RATE_TRIG_SEL)
10585
10586 #define BIT_SHIFT_HIGH_RATE_BD_IDX 8
10587 #define BIT_MASK_HIGH_RATE_BD_IDX 0x7f
10588 #define BIT_HIGH_RATE_BD_IDX(x)                                                \
10589         (((x) & BIT_MASK_HIGH_RATE_BD_IDX) << BIT_SHIFT_HIGH_RATE_BD_IDX)
10590 #define BIT_GET_HIGH_RATE_BD_IDX(x)                                            \
10591         (((x) >> BIT_SHIFT_HIGH_RATE_BD_IDX) & BIT_MASK_HIGH_RATE_BD_IDX)
10592
10593 #define BIT_SHIFT_LOW_RATE_BD_IDX 0
10594 #define BIT_MASK_LOW_RATE_BD_IDX 0x7f
10595 #define BIT_LOW_RATE_BD_IDX(x)                                                 \
10596         (((x) & BIT_MASK_LOW_RATE_BD_IDX) << BIT_SHIFT_LOW_RATE_BD_IDX)
10597 #define BIT_GET_LOW_RATE_BD_IDX(x)                                             \
10598         (((x) >> BIT_SHIFT_LOW_RATE_BD_IDX) & BIT_MASK_LOW_RATE_BD_IDX)
10599
10600 /* 2 REG_LTR_CTRL2_TIMER_THRESHOLD              (Offset 0x07A4) */
10601
10602 #define BIT_SHIFT_RX_EMPTY_TIMER_IDX 24
10603 #define BIT_MASK_RX_EMPTY_TIMER_IDX 0x7
10604 #define BIT_RX_EMPTY_TIMER_IDX(x)                                              \
10605         (((x) & BIT_MASK_RX_EMPTY_TIMER_IDX) << BIT_SHIFT_RX_EMPTY_TIMER_IDX)
10606 #define BIT_GET_RX_EMPTY_TIMER_IDX(x)                                          \
10607         (((x) >> BIT_SHIFT_RX_EMPTY_TIMER_IDX) & BIT_MASK_RX_EMPTY_TIMER_IDX)
10608
10609 #define BIT_SHIFT_RX_AFULL_TH_IDX 20
10610 #define BIT_MASK_RX_AFULL_TH_IDX 0x7
10611 #define BIT_RX_AFULL_TH_IDX(x)                                                 \
10612         (((x) & BIT_MASK_RX_AFULL_TH_IDX) << BIT_SHIFT_RX_AFULL_TH_IDX)
10613 #define BIT_GET_RX_AFULL_TH_IDX(x)                                             \
10614         (((x) >> BIT_SHIFT_RX_AFULL_TH_IDX) & BIT_MASK_RX_AFULL_TH_IDX)
10615
10616 #define BIT_SHIFT_RX_HIGH_TH_IDX 16
10617 #define BIT_MASK_RX_HIGH_TH_IDX 0x7
10618 #define BIT_RX_HIGH_TH_IDX(x)                                                  \
10619         (((x) & BIT_MASK_RX_HIGH_TH_IDX) << BIT_SHIFT_RX_HIGH_TH_IDX)
10620 #define BIT_GET_RX_HIGH_TH_IDX(x)                                              \
10621         (((x) >> BIT_SHIFT_RX_HIGH_TH_IDX) & BIT_MASK_RX_HIGH_TH_IDX)
10622
10623 #define BIT_SHIFT_RX_MED_TH_IDX 12
10624 #define BIT_MASK_RX_MED_TH_IDX 0x7
10625 #define BIT_RX_MED_TH_IDX(x)                                                   \
10626         (((x) & BIT_MASK_RX_MED_TH_IDX) << BIT_SHIFT_RX_MED_TH_IDX)
10627 #define BIT_GET_RX_MED_TH_IDX(x)                                               \
10628         (((x) >> BIT_SHIFT_RX_MED_TH_IDX) & BIT_MASK_RX_MED_TH_IDX)
10629
10630 #define BIT_SHIFT_RX_LOW_TH_IDX 8
10631 #define BIT_MASK_RX_LOW_TH_IDX 0x7
10632 #define BIT_RX_LOW_TH_IDX(x)                                                   \
10633         (((x) & BIT_MASK_RX_LOW_TH_IDX) << BIT_SHIFT_RX_LOW_TH_IDX)
10634 #define BIT_GET_RX_LOW_TH_IDX(x)                                               \
10635         (((x) >> BIT_SHIFT_RX_LOW_TH_IDX) & BIT_MASK_RX_LOW_TH_IDX)
10636
10637 #define BIT_SHIFT_LTR_SPACE_IDX 4
10638 #define BIT_MASK_LTR_SPACE_IDX 0x3
10639 #define BIT_LTR_SPACE_IDX(x)                                                   \
10640         (((x) & BIT_MASK_LTR_SPACE_IDX) << BIT_SHIFT_LTR_SPACE_IDX)
10641 #define BIT_GET_LTR_SPACE_IDX(x)                                               \
10642         (((x) >> BIT_SHIFT_LTR_SPACE_IDX) & BIT_MASK_LTR_SPACE_IDX)
10643
10644 #define BIT_SHIFT_LTR_IDLE_TIMER_IDX 0
10645 #define BIT_MASK_LTR_IDLE_TIMER_IDX 0x7
10646 #define BIT_LTR_IDLE_TIMER_IDX(x)                                              \
10647         (((x) & BIT_MASK_LTR_IDLE_TIMER_IDX) << BIT_SHIFT_LTR_IDLE_TIMER_IDX)
10648 #define BIT_GET_LTR_IDLE_TIMER_IDX(x)                                          \
10649         (((x) >> BIT_SHIFT_LTR_IDLE_TIMER_IDX) & BIT_MASK_LTR_IDLE_TIMER_IDX)
10650
10651 /* 2 REG_LTR_IDLE_LATENCY_V1                    (Offset 0x07A8) */
10652
10653 #define BIT_SHIFT_LTR_IDLE_L 0
10654 #define BIT_MASK_LTR_IDLE_L 0xffffffffL
10655 #define BIT_LTR_IDLE_L(x) (((x) & BIT_MASK_LTR_IDLE_L) << BIT_SHIFT_LTR_IDLE_L)
10656 #define BIT_GET_LTR_IDLE_L(x)                                                  \
10657         (((x) >> BIT_SHIFT_LTR_IDLE_L) & BIT_MASK_LTR_IDLE_L)
10658
10659 /* 2 REG_LTR_ACTIVE_LATENCY_V1          (Offset 0x07AC) */
10660
10661 #define BIT_SHIFT_LTR_ACT_L 0
10662 #define BIT_MASK_LTR_ACT_L 0xffffffffL
10663 #define BIT_LTR_ACT_L(x) (((x) & BIT_MASK_LTR_ACT_L) << BIT_SHIFT_LTR_ACT_L)
10664 #define BIT_GET_LTR_ACT_L(x) (((x) >> BIT_SHIFT_LTR_ACT_L) & BIT_MASK_LTR_ACT_L)
10665
10666 /* 2 REG_ANTENNA_TRAINING_CONTROL_REGISTER      (Offset 0x07B0) */
10667
10668 #define BIT_APPEND_MACID_IN_RESP_EN BIT(50)
10669 #define BIT_ADDR2_MATCH_EN BIT(49)
10670 #define BIT_ANTTRN_EN BIT(48)
10671
10672 #define BIT_SHIFT_TRAIN_STA_ADDR 0
10673 #define BIT_MASK_TRAIN_STA_ADDR 0xffffffffffffL
10674 #define BIT_TRAIN_STA_ADDR(x)                                                  \
10675         (((x) & BIT_MASK_TRAIN_STA_ADDR) << BIT_SHIFT_TRAIN_STA_ADDR)
10676 #define BIT_GET_TRAIN_STA_ADDR(x)                                              \
10677         (((x) >> BIT_SHIFT_TRAIN_STA_ADDR) & BIT_MASK_TRAIN_STA_ADDR)
10678
10679 /* 2 REG_WMAC_PKTCNT_RWD                        (Offset 0x07B8) */
10680
10681 #define BIT_SHIFT_PKTCNT_BSSIDMAP 4
10682 #define BIT_MASK_PKTCNT_BSSIDMAP 0xf
10683 #define BIT_PKTCNT_BSSIDMAP(x)                                                 \
10684         (((x) & BIT_MASK_PKTCNT_BSSIDMAP) << BIT_SHIFT_PKTCNT_BSSIDMAP)
10685 #define BIT_GET_PKTCNT_BSSIDMAP(x)                                             \
10686         (((x) >> BIT_SHIFT_PKTCNT_BSSIDMAP) & BIT_MASK_PKTCNT_BSSIDMAP)
10687
10688 #define BIT_PKTCNT_CNTRST BIT(1)
10689 #define BIT_PKTCNT_CNTEN BIT(0)
10690
10691 /* 2 REG_WMAC_PKTCNT_CTRL                       (Offset 0x07BC) */
10692
10693 #define BIT_WMAC_PKTCNT_TRST BIT(9)
10694 #define BIT_WMAC_PKTCNT_FEN BIT(8)
10695
10696 #define BIT_SHIFT_WMAC_PKTCNT_CFGAD 0
10697 #define BIT_MASK_WMAC_PKTCNT_CFGAD 0xff
10698 #define BIT_WMAC_PKTCNT_CFGAD(x)                                               \
10699         (((x) & BIT_MASK_WMAC_PKTCNT_CFGAD) << BIT_SHIFT_WMAC_PKTCNT_CFGAD)
10700 #define BIT_GET_WMAC_PKTCNT_CFGAD(x)                                           \
10701         (((x) >> BIT_SHIFT_WMAC_PKTCNT_CFGAD) & BIT_MASK_WMAC_PKTCNT_CFGAD)
10702
10703 /* 2 REG_IQ_DUMP                                (Offset 0x07C0) */
10704
10705 #define BIT_SHIFT_R_WMAC_MATCH_REF_MAC (64 & CPU_OPT_WIDTH)
10706 #define BIT_MASK_R_WMAC_MATCH_REF_MAC 0xffffffffL
10707 #define BIT_R_WMAC_MATCH_REF_MAC(x)                                            \
10708         (((x) & BIT_MASK_R_WMAC_MATCH_REF_MAC)                                 \
10709          << BIT_SHIFT_R_WMAC_MATCH_REF_MAC)
10710 #define BIT_GET_R_WMAC_MATCH_REF_MAC(x)                                        \
10711         (((x) >> BIT_SHIFT_R_WMAC_MATCH_REF_MAC) &                             \
10712          BIT_MASK_R_WMAC_MATCH_REF_MAC)
10713
10714 #define BIT_SHIFT_R_WMAC_RX_FIL_LEN (64 & CPU_OPT_WIDTH)
10715 #define BIT_MASK_R_WMAC_RX_FIL_LEN 0xffff
10716 #define BIT_R_WMAC_RX_FIL_LEN(x)                                               \
10717         (((x) & BIT_MASK_R_WMAC_RX_FIL_LEN) << BIT_SHIFT_R_WMAC_RX_FIL_LEN)
10718 #define BIT_GET_R_WMAC_RX_FIL_LEN(x)                                           \
10719         (((x) >> BIT_SHIFT_R_WMAC_RX_FIL_LEN) & BIT_MASK_R_WMAC_RX_FIL_LEN)
10720
10721 #define BIT_SHIFT_R_WMAC_RXFIFO_FULL_TH (56 & CPU_OPT_WIDTH)
10722 #define BIT_MASK_R_WMAC_RXFIFO_FULL_TH 0xff
10723 #define BIT_R_WMAC_RXFIFO_FULL_TH(x)                                           \
10724         (((x) & BIT_MASK_R_WMAC_RXFIFO_FULL_TH)                                \
10725          << BIT_SHIFT_R_WMAC_RXFIFO_FULL_TH)
10726 #define BIT_GET_R_WMAC_RXFIFO_FULL_TH(x)                                       \
10727         (((x) >> BIT_SHIFT_R_WMAC_RXFIFO_FULL_TH) &                            \
10728          BIT_MASK_R_WMAC_RXFIFO_FULL_TH)
10729
10730 #define BIT_R_WMAC_SRCH_TXRPT_TYPE BIT(51)
10731 #define BIT_R_WMAC_NDP_RST BIT(50)
10732 #define BIT_R_WMAC_POWINT_EN BIT(49)
10733 #define BIT_R_WMAC_SRCH_TXRPT_PERPKT BIT(48)
10734 #define BIT_R_WMAC_SRCH_TXRPT_MID BIT(47)
10735 #define BIT_R_WMAC_PFIN_TOEN BIT(46)
10736 #define BIT_R_WMAC_FIL_SECERR BIT(45)
10737 #define BIT_R_WMAC_FIL_CTLPKTLEN BIT(44)
10738 #define BIT_R_WMAC_FIL_FCTYPE BIT(43)
10739 #define BIT_R_WMAC_FIL_FCPROVER BIT(42)
10740 #define BIT_R_WMAC_PHYSTS_SNIF BIT(41)
10741 #define BIT_R_WMAC_PHYSTS_PLCP BIT(40)
10742 #define BIT_R_MAC_TCR_VBONF_RD BIT(39)
10743 #define BIT_R_WMAC_TCR_MPAR_NDP BIT(38)
10744 #define BIT_R_WMAC_NDP_FILTER BIT(37)
10745 #define BIT_R_WMAC_RXLEN_SEL BIT(36)
10746 #define BIT_R_WMAC_RXLEN_SEL1 BIT(35)
10747 #define BIT_R_OFDM_FILTER BIT(34)
10748 #define BIT_R_WMAC_CHK_OFDM_LEN BIT(33)
10749
10750 #define BIT_SHIFT_R_WMAC_MASK_LA_MAC (32 & CPU_OPT_WIDTH)
10751 #define BIT_MASK_R_WMAC_MASK_LA_MAC 0xffffffffL
10752 #define BIT_R_WMAC_MASK_LA_MAC(x)                                              \
10753         (((x) & BIT_MASK_R_WMAC_MASK_LA_MAC) << BIT_SHIFT_R_WMAC_MASK_LA_MAC)
10754 #define BIT_GET_R_WMAC_MASK_LA_MAC(x)                                          \
10755         (((x) >> BIT_SHIFT_R_WMAC_MASK_LA_MAC) & BIT_MASK_R_WMAC_MASK_LA_MAC)
10756
10757 #define BIT_R_WMAC_CHK_CCK_LEN BIT(32)
10758
10759 /* 2 REG_IQ_DUMP                                (Offset 0x07C0) */
10760
10761 #define BIT_SHIFT_R_OFDM_LEN 26
10762 #define BIT_MASK_R_OFDM_LEN 0x3f
10763 #define BIT_R_OFDM_LEN(x) (((x) & BIT_MASK_R_OFDM_LEN) << BIT_SHIFT_R_OFDM_LEN)
10764 #define BIT_GET_R_OFDM_LEN(x)                                                  \
10765         (((x) >> BIT_SHIFT_R_OFDM_LEN) & BIT_MASK_R_OFDM_LEN)
10766
10767 #define BIT_SHIFT_DUMP_OK_ADDR 15
10768 #define BIT_MASK_DUMP_OK_ADDR 0x1ffff
10769 #define BIT_DUMP_OK_ADDR(x)                                                    \
10770         (((x) & BIT_MASK_DUMP_OK_ADDR) << BIT_SHIFT_DUMP_OK_ADDR)
10771 #define BIT_GET_DUMP_OK_ADDR(x)                                                \
10772         (((x) >> BIT_SHIFT_DUMP_OK_ADDR) & BIT_MASK_DUMP_OK_ADDR)
10773
10774 #define BIT_SHIFT_R_TRIG_TIME_SEL 8
10775 #define BIT_MASK_R_TRIG_TIME_SEL 0x7f
10776 #define BIT_R_TRIG_TIME_SEL(x)                                                 \
10777         (((x) & BIT_MASK_R_TRIG_TIME_SEL) << BIT_SHIFT_R_TRIG_TIME_SEL)
10778 #define BIT_GET_R_TRIG_TIME_SEL(x)                                             \
10779         (((x) >> BIT_SHIFT_R_TRIG_TIME_SEL) & BIT_MASK_R_TRIG_TIME_SEL)
10780
10781 #define BIT_SHIFT_R_MAC_TRIG_SEL 6
10782 #define BIT_MASK_R_MAC_TRIG_SEL 0x3
10783 #define BIT_R_MAC_TRIG_SEL(x)                                                  \
10784         (((x) & BIT_MASK_R_MAC_TRIG_SEL) << BIT_SHIFT_R_MAC_TRIG_SEL)
10785 #define BIT_GET_R_MAC_TRIG_SEL(x)                                              \
10786         (((x) >> BIT_SHIFT_R_MAC_TRIG_SEL) & BIT_MASK_R_MAC_TRIG_SEL)
10787
10788 #define BIT_MAC_TRIG_REG BIT(5)
10789
10790 #define BIT_SHIFT_R_LEVEL_PULSE_SEL 3
10791 #define BIT_MASK_R_LEVEL_PULSE_SEL 0x3
10792 #define BIT_R_LEVEL_PULSE_SEL(x)                                               \
10793         (((x) & BIT_MASK_R_LEVEL_PULSE_SEL) << BIT_SHIFT_R_LEVEL_PULSE_SEL)
10794 #define BIT_GET_R_LEVEL_PULSE_SEL(x)                                           \
10795         (((x) >> BIT_SHIFT_R_LEVEL_PULSE_SEL) & BIT_MASK_R_LEVEL_PULSE_SEL)
10796
10797 #define BIT_EN_LA_MAC BIT(2)
10798 #define BIT_R_EN_IQDUMP BIT(1)
10799 #define BIT_R_IQDATA_DUMP BIT(0)
10800
10801 #define BIT_SHIFT_R_CCK_LEN 0
10802 #define BIT_MASK_R_CCK_LEN 0xffff
10803 #define BIT_R_CCK_LEN(x) (((x) & BIT_MASK_R_CCK_LEN) << BIT_SHIFT_R_CCK_LEN)
10804 #define BIT_GET_R_CCK_LEN(x) (((x) >> BIT_SHIFT_R_CCK_LEN) & BIT_MASK_R_CCK_LEN)
10805
10806 /* 2 REG_WMAC_FTM_CTL                   (Offset 0x07CC) */
10807
10808 #define BIT_RXFTM_TXACK_SC BIT(6)
10809 #define BIT_RXFTM_TXACK_BW BIT(5)
10810 #define BIT_RXFTM_EN BIT(3)
10811 #define BIT_RXFTMREQ_BYDRV BIT(2)
10812 #define BIT_RXFTMREQ_EN BIT(1)
10813 #define BIT_FTM_EN BIT(0)
10814
10815 /* 2 REG_RX_FILTER_FUNCTION                     (Offset 0x07DA) */
10816
10817 #define BIT_R_WMAC_MHRDDY_LATCH BIT(14)
10818
10819 /* 2 REG_RX_FILTER_FUNCTION                     (Offset 0x07DA) */
10820
10821 #define BIT_R_WMAC_MHRDDY_CLR BIT(13)
10822
10823 /* 2 REG_RX_FILTER_FUNCTION                     (Offset 0x07DA) */
10824
10825 #define BIT_R_RXPKTCTL_FSM_BASED_MPDURDY1 BIT(12)
10826
10827 /* 2 REG_RX_FILTER_FUNCTION                     (Offset 0x07DA) */
10828
10829 #define BIT_WMAC_DIS_VHT_PLCP_CHK_MU BIT(11)
10830
10831 /* 2 REG_RX_FILTER_FUNCTION                     (Offset 0x07DA) */
10832
10833 #define BIT_R_CHK_DELIMIT_LEN BIT(10)
10834 #define BIT_R_REAPTER_ADDR_MATCH BIT(9)
10835 #define BIT_R_RXPKTCTL_FSM_BASED_MPDURDY BIT(8)
10836 #define BIT_R_LATCH_MACHRDY BIT(7)
10837 #define BIT_R_WMAC_RXFIL_REND BIT(6)
10838 #define BIT_R_WMAC_MPDURDY_CLR BIT(5)
10839 #define BIT_R_WMAC_CLRRXSEC BIT(4)
10840 #define BIT_R_WMAC_RXFIL_RDEL BIT(3)
10841 #define BIT_R_WMAC_RXFIL_FCSE BIT(2)
10842 #define BIT_R_WMAC_RXFIL_MESH_DEL BIT(1)
10843 #define BIT_R_WMAC_RXFIL_MASKM BIT(0)
10844
10845 /* 2 REG_NDP_SIG                                (Offset 0x07E0) */
10846
10847 #define BIT_SHIFT_R_WMAC_TXNDP_SIGB 0
10848 #define BIT_MASK_R_WMAC_TXNDP_SIGB 0x1fffff
10849 #define BIT_R_WMAC_TXNDP_SIGB(x)                                               \
10850         (((x) & BIT_MASK_R_WMAC_TXNDP_SIGB) << BIT_SHIFT_R_WMAC_TXNDP_SIGB)
10851 #define BIT_GET_R_WMAC_TXNDP_SIGB(x)                                           \
10852         (((x) >> BIT_SHIFT_R_WMAC_TXNDP_SIGB) & BIT_MASK_R_WMAC_TXNDP_SIGB)
10853
10854 /* 2 REG_TXCMD_INFO_FOR_RSP_PKT         (Offset 0x07E4) */
10855
10856 #define BIT_SHIFT_R_MAC_DEBUG (32 & CPU_OPT_WIDTH)
10857 #define BIT_MASK_R_MAC_DEBUG 0xffffffffL
10858 #define BIT_R_MAC_DEBUG(x)                                                     \
10859         (((x) & BIT_MASK_R_MAC_DEBUG) << BIT_SHIFT_R_MAC_DEBUG)
10860 #define BIT_GET_R_MAC_DEBUG(x)                                                 \
10861         (((x) >> BIT_SHIFT_R_MAC_DEBUG) & BIT_MASK_R_MAC_DEBUG)
10862
10863 /* 2 REG_TXCMD_INFO_FOR_RSP_PKT         (Offset 0x07E4) */
10864
10865 #define BIT_SHIFT_R_MAC_DBG_SHIFT 8
10866 #define BIT_MASK_R_MAC_DBG_SHIFT 0x7
10867 #define BIT_R_MAC_DBG_SHIFT(x)                                                 \
10868         (((x) & BIT_MASK_R_MAC_DBG_SHIFT) << BIT_SHIFT_R_MAC_DBG_SHIFT)
10869 #define BIT_GET_R_MAC_DBG_SHIFT(x)                                             \
10870         (((x) >> BIT_SHIFT_R_MAC_DBG_SHIFT) & BIT_MASK_R_MAC_DBG_SHIFT)
10871
10872 #define BIT_SHIFT_R_MAC_DBG_SEL 0
10873 #define BIT_MASK_R_MAC_DBG_SEL 0x3
10874 #define BIT_R_MAC_DBG_SEL(x)                                                   \
10875         (((x) & BIT_MASK_R_MAC_DBG_SEL) << BIT_SHIFT_R_MAC_DBG_SEL)
10876 #define BIT_GET_R_MAC_DBG_SEL(x)                                               \
10877         (((x) >> BIT_SHIFT_R_MAC_DBG_SEL) & BIT_MASK_R_MAC_DBG_SEL)
10878
10879 /* 2 REG_SYS_CFG3                               (Offset 0x1000) */
10880
10881 #define BIT_PWC_MA33V BIT(15)
10882
10883 /* 2 REG_SYS_CFG3                               (Offset 0x1000) */
10884
10885 #define BIT_PWC_MA12V BIT(14)
10886 #define BIT_PWC_MD12V BIT(13)
10887 #define BIT_PWC_PD12V BIT(12)
10888 #define BIT_PWC_UD12V BIT(11)
10889 #define BIT_ISO_MA2MD BIT(1)
10890
10891 /* 2 REG_SYS_CFG5                               (Offset 0x1070) */
10892
10893 #define BIT_LPS_STATUS BIT(3)
10894 #define BIT_HCI_TXDMA_BUSY BIT(2)
10895 #define BIT_HCI_TXDMA_ALLOW BIT(1)
10896 #define BIT_FW_CTRL_HCI_TXDMA_EN BIT(0)
10897
10898 /* 2 REG_CPU_DMEM_CON                   (Offset 0x1080) */
10899
10900 #define BIT_WDT_OPT_IOWRAPPER BIT(19)
10901
10902 /* 2 REG_CPU_DMEM_CON                   (Offset 0x1080) */
10903
10904 #define BIT_ANA_PORT_IDLE BIT(18)
10905 #define BIT_MAC_PORT_IDLE BIT(17)
10906 #define BIT_WL_PLATFORM_RST BIT(16)
10907 #define BIT_WL_SECURITY_CLK BIT(15)
10908
10909 /* 2 REG_CPU_DMEM_CON                   (Offset 0x1080) */
10910
10911 #define BIT_SHIFT_CPU_DMEM_CON 0
10912 #define BIT_MASK_CPU_DMEM_CON 0xff
10913 #define BIT_CPU_DMEM_CON(x)                                                    \
10914         (((x) & BIT_MASK_CPU_DMEM_CON) << BIT_SHIFT_CPU_DMEM_CON)
10915 #define BIT_GET_CPU_DMEM_CON(x)                                                \
10916         (((x) >> BIT_SHIFT_CPU_DMEM_CON) & BIT_MASK_CPU_DMEM_CON)
10917
10918 /* 2 REG_BOOT_REASON                            (Offset 0x1088) */
10919
10920 #define BIT_SHIFT_BOOT_REASON 0
10921 #define BIT_MASK_BOOT_REASON 0x7
10922 #define BIT_BOOT_REASON(x)                                                     \
10923         (((x) & BIT_MASK_BOOT_REASON) << BIT_SHIFT_BOOT_REASON)
10924 #define BIT_GET_BOOT_REASON(x)                                                 \
10925         (((x) >> BIT_SHIFT_BOOT_REASON) & BIT_MASK_BOOT_REASON)
10926
10927 /* 2 REG_NFCPAD_CTRL                            (Offset 0x10A8) */
10928
10929 #define BIT_PAD_SHUTDW BIT(18)
10930 #define BIT_SYSON_NFC_PAD BIT(17)
10931 #define BIT_NFC_INT_PAD_CTRL BIT(16)
10932 #define BIT_NFC_RFDIS_PAD_CTRL BIT(15)
10933 #define BIT_NFC_CLK_PAD_CTRL BIT(14)
10934 #define BIT_NFC_DATA_PAD_CTRL BIT(13)
10935 #define BIT_NFC_PAD_PULL_CTRL BIT(12)
10936
10937 #define BIT_SHIFT_NFCPAD_IO_SEL 8
10938 #define BIT_MASK_NFCPAD_IO_SEL 0xf
10939 #define BIT_NFCPAD_IO_SEL(x)                                                   \
10940         (((x) & BIT_MASK_NFCPAD_IO_SEL) << BIT_SHIFT_NFCPAD_IO_SEL)
10941 #define BIT_GET_NFCPAD_IO_SEL(x)                                               \
10942         (((x) >> BIT_SHIFT_NFCPAD_IO_SEL) & BIT_MASK_NFCPAD_IO_SEL)
10943
10944 #define BIT_SHIFT_NFCPAD_OUT 4
10945 #define BIT_MASK_NFCPAD_OUT 0xf
10946 #define BIT_NFCPAD_OUT(x) (((x) & BIT_MASK_NFCPAD_OUT) << BIT_SHIFT_NFCPAD_OUT)
10947 #define BIT_GET_NFCPAD_OUT(x)                                                  \
10948         (((x) >> BIT_SHIFT_NFCPAD_OUT) & BIT_MASK_NFCPAD_OUT)
10949
10950 #define BIT_SHIFT_NFCPAD_IN 0
10951 #define BIT_MASK_NFCPAD_IN 0xf
10952 #define BIT_NFCPAD_IN(x) (((x) & BIT_MASK_NFCPAD_IN) << BIT_SHIFT_NFCPAD_IN)
10953 #define BIT_GET_NFCPAD_IN(x) (((x) >> BIT_SHIFT_NFCPAD_IN) & BIT_MASK_NFCPAD_IN)
10954
10955 /* 2 REG_HIMR2                          (Offset 0x10B0) */
10956
10957 #define BIT_BCNDMAINT_P4_MSK BIT(31)
10958 #define BIT_BCNDMAINT_P3_MSK BIT(30)
10959 #define BIT_BCNDMAINT_P2_MSK BIT(29)
10960 #define BIT_BCNDMAINT_P1_MSK BIT(28)
10961 #define BIT_ATIMEND7_MSK BIT(22)
10962 #define BIT_ATIMEND6_MSK BIT(21)
10963 #define BIT_ATIMEND5_MSK BIT(20)
10964 #define BIT_ATIMEND4_MSK BIT(19)
10965 #define BIT_ATIMEND3_MSK BIT(18)
10966 #define BIT_ATIMEND2_MSK BIT(17)
10967 #define BIT_ATIMEND1_MSK BIT(16)
10968 #define BIT_TXBCN7OK_MSK BIT(14)
10969 #define BIT_TXBCN6OK_MSK BIT(13)
10970 #define BIT_TXBCN5OK_MSK BIT(12)
10971 #define BIT_TXBCN4OK_MSK BIT(11)
10972 #define BIT_TXBCN3OK_MSK BIT(10)
10973 #define BIT_TXBCN2OK_MSK BIT(9)
10974 #define BIT_TXBCN1OK_MSK_V1 BIT(8)
10975 #define BIT_TXBCN7ERR_MSK BIT(6)
10976 #define BIT_TXBCN6ERR_MSK BIT(5)
10977 #define BIT_TXBCN5ERR_MSK BIT(4)
10978 #define BIT_TXBCN4ERR_MSK BIT(3)
10979 #define BIT_TXBCN3ERR_MSK BIT(2)
10980 #define BIT_TXBCN2ERR_MSK BIT(1)
10981 #define BIT_TXBCN1ERR_MSK_V1 BIT(0)
10982
10983 /* 2 REG_HISR2                          (Offset 0x10B4) */
10984
10985 #define BIT_BCNDMAINT_P4 BIT(31)
10986 #define BIT_BCNDMAINT_P3 BIT(30)
10987 #define BIT_BCNDMAINT_P2 BIT(29)
10988 #define BIT_BCNDMAINT_P1 BIT(28)
10989 #define BIT_ATIMEND7 BIT(22)
10990 #define BIT_ATIMEND6 BIT(21)
10991 #define BIT_ATIMEND5 BIT(20)
10992 #define BIT_ATIMEND4 BIT(19)
10993 #define BIT_ATIMEND3 BIT(18)
10994 #define BIT_ATIMEND2 BIT(17)
10995 #define BIT_ATIMEND1 BIT(16)
10996 #define BIT_TXBCN7OK BIT(14)
10997 #define BIT_TXBCN6OK BIT(13)
10998 #define BIT_TXBCN5OK BIT(12)
10999 #define BIT_TXBCN4OK BIT(11)
11000 #define BIT_TXBCN3OK BIT(10)
11001 #define BIT_TXBCN2OK BIT(9)
11002 #define BIT_TXBCN1OK BIT(8)
11003 #define BIT_TXBCN7ERR BIT(6)
11004 #define BIT_TXBCN6ERR BIT(5)
11005 #define BIT_TXBCN5ERR BIT(4)
11006 #define BIT_TXBCN4ERR BIT(3)
11007 #define BIT_TXBCN3ERR BIT(2)
11008 #define BIT_TXBCN2ERR BIT(1)
11009 #define BIT_TXBCN1ERR BIT(0)
11010
11011 /* 2 REG_HIMR3                          (Offset 0x10B8) */
11012
11013 #define BIT_WDT_PLATFORM_INT_MSK BIT(18)
11014 #define BIT_WDT_CPU_INT_MSK BIT(17)
11015
11016 /* 2 REG_HIMR3                          (Offset 0x10B8) */
11017
11018 #define BIT_SETH2CDOK_MASK BIT(16)
11019 #define BIT_H2C_CMD_FULL_MASK BIT(15)
11020 #define BIT_PWR_INT_127_MASK BIT(14)
11021 #define BIT_TXSHORTCUT_TXDESUPDATEOK_MASK BIT(13)
11022 #define BIT_TXSHORTCUT_BKUPDATEOK_MASK BIT(12)
11023 #define BIT_TXSHORTCUT_BEUPDATEOK_MASK BIT(11)
11024 #define BIT_TXSHORTCUT_VIUPDATEOK_MAS BIT(10)
11025 #define BIT_TXSHORTCUT_VOUPDATEOK_MASK BIT(9)
11026 #define BIT_PWR_INT_127_MASK_V1 BIT(8)
11027 #define BIT_PWR_INT_126TO96_MASK BIT(7)
11028 #define BIT_PWR_INT_95TO64_MASK BIT(6)
11029 #define BIT_PWR_INT_63TO32_MASK BIT(5)
11030 #define BIT_PWR_INT_31TO0_MASK BIT(4)
11031 #define BIT_DDMA0_LP_INT_MSK BIT(1)
11032 #define BIT_DDMA0_HP_INT_MSK BIT(0)
11033
11034 /* 2 REG_HISR3                          (Offset 0x10BC) */
11035
11036 #define BIT_WDT_PLATFORM_INT BIT(18)
11037 #define BIT_WDT_CPU_INT BIT(17)
11038
11039 /* 2 REG_HISR3                          (Offset 0x10BC) */
11040
11041 #define BIT_SETH2CDOK BIT(16)
11042 #define BIT_H2C_CMD_FULL BIT(15)
11043 #define BIT_PWR_INT_127 BIT(14)
11044 #define BIT_TXSHORTCUT_TXDESUPDATEOK BIT(13)
11045 #define BIT_TXSHORTCUT_BKUPDATEOK BIT(12)
11046 #define BIT_TXSHORTCUT_BEUPDATEOK BIT(11)
11047 #define BIT_TXSHORTCUT_VIUPDATEOK BIT(10)
11048 #define BIT_TXSHORTCUT_VOUPDATEOK BIT(9)
11049 #define BIT_PWR_INT_127_V1 BIT(8)
11050 #define BIT_PWR_INT_126TO96 BIT(7)
11051 #define BIT_PWR_INT_95TO64 BIT(6)
11052 #define BIT_PWR_INT_63TO32 BIT(5)
11053 #define BIT_PWR_INT_31TO0 BIT(4)
11054 #define BIT_DDMA0_LP_INT BIT(1)
11055 #define BIT_DDMA0_HP_INT BIT(0)
11056
11057 /* 2 REG_SW_MDIO                                (Offset 0x10C0) */
11058
11059 #define BIT_DIS_TIMEOUT_IO BIT(24)
11060
11061 /* 2 REG_SW_FLUSH                               (Offset 0x10C4) */
11062
11063 #define BIT_FLUSH_HOLDN_EN BIT(25)
11064 #define BIT_FLUSH_WR_EN BIT(24)
11065 #define BIT_SW_FLASH_CONTROL BIT(23)
11066 #define BIT_SW_FLASH_WEN_E BIT(19)
11067 #define BIT_SW_FLASH_HOLDN_E BIT(18)
11068 #define BIT_SW_FLASH_SO_E BIT(17)
11069 #define BIT_SW_FLASH_SI_E BIT(16)
11070 #define BIT_SW_FLASH_SK_O BIT(13)
11071 #define BIT_SW_FLASH_CEN_O BIT(12)
11072 #define BIT_SW_FLASH_WEN_O BIT(11)
11073 #define BIT_SW_FLASH_HOLDN_O BIT(10)
11074 #define BIT_SW_FLASH_SO_O BIT(9)
11075 #define BIT_SW_FLASH_SI_O BIT(8)
11076 #define BIT_SW_FLASH_WEN_I BIT(3)
11077 #define BIT_SW_FLASH_HOLDN_I BIT(2)
11078 #define BIT_SW_FLASH_SO_I BIT(1)
11079 #define BIT_SW_FLASH_SI_I BIT(0)
11080
11081 /* 2 REG_H2C_PKT_READADDR                       (Offset 0x10D0) */
11082
11083 #define BIT_SHIFT_H2C_PKT_READADDR 0
11084 #define BIT_MASK_H2C_PKT_READADDR 0x3ffff
11085 #define BIT_H2C_PKT_READADDR(x)                                                \
11086         (((x) & BIT_MASK_H2C_PKT_READADDR) << BIT_SHIFT_H2C_PKT_READADDR)
11087 #define BIT_GET_H2C_PKT_READADDR(x)                                            \
11088         (((x) >> BIT_SHIFT_H2C_PKT_READADDR) & BIT_MASK_H2C_PKT_READADDR)
11089
11090 /* 2 REG_H2C_PKT_WRITEADDR                      (Offset 0x10D4) */
11091
11092 #define BIT_SHIFT_H2C_PKT_WRITEADDR 0
11093 #define BIT_MASK_H2C_PKT_WRITEADDR 0x3ffff
11094 #define BIT_H2C_PKT_WRITEADDR(x)                                               \
11095         (((x) & BIT_MASK_H2C_PKT_WRITEADDR) << BIT_SHIFT_H2C_PKT_WRITEADDR)
11096 #define BIT_GET_H2C_PKT_WRITEADDR(x)                                           \
11097         (((x) >> BIT_SHIFT_H2C_PKT_WRITEADDR) & BIT_MASK_H2C_PKT_WRITEADDR)
11098
11099 /* 2 REG_MEM_PWR_CRTL                   (Offset 0x10D8) */
11100
11101 #define BIT_MEM_BB_SD BIT(17)
11102 #define BIT_MEM_BB_DS BIT(16)
11103 #define BIT_MEM_BT_DS BIT(10)
11104 #define BIT_MEM_SDIO_LS BIT(9)
11105 #define BIT_MEM_SDIO_DS BIT(8)
11106 #define BIT_MEM_USB_LS BIT(7)
11107 #define BIT_MEM_USB_DS BIT(6)
11108 #define BIT_MEM_PCI_LS BIT(5)
11109 #define BIT_MEM_PCI_DS BIT(4)
11110 #define BIT_MEM_WLMAC_LS BIT(3)
11111 #define BIT_MEM_WLMAC_DS BIT(2)
11112 #define BIT_MEM_WLMCU_LS BIT(1)
11113
11114 /* 2 REG_MEM_PWR_CRTL                   (Offset 0x10D8) */
11115
11116 #define BIT_MEM_WLMCU_DS BIT(0)
11117
11118 /* 2 REG_FW_DBG0                                (Offset 0x10E0) */
11119
11120 #define BIT_SHIFT_FW_DBG0 0
11121 #define BIT_MASK_FW_DBG0 0xffffffffL
11122 #define BIT_FW_DBG0(x) (((x) & BIT_MASK_FW_DBG0) << BIT_SHIFT_FW_DBG0)
11123 #define BIT_GET_FW_DBG0(x) (((x) >> BIT_SHIFT_FW_DBG0) & BIT_MASK_FW_DBG0)
11124
11125 /* 2 REG_FW_DBG1                                (Offset 0x10E4) */
11126
11127 #define BIT_SHIFT_FW_DBG1 0
11128 #define BIT_MASK_FW_DBG1 0xffffffffL
11129 #define BIT_FW_DBG1(x) (((x) & BIT_MASK_FW_DBG1) << BIT_SHIFT_FW_DBG1)
11130 #define BIT_GET_FW_DBG1(x) (((x) >> BIT_SHIFT_FW_DBG1) & BIT_MASK_FW_DBG1)
11131
11132 /* 2 REG_FW_DBG2                                (Offset 0x10E8) */
11133
11134 #define BIT_SHIFT_FW_DBG2 0
11135 #define BIT_MASK_FW_DBG2 0xffffffffL
11136 #define BIT_FW_DBG2(x) (((x) & BIT_MASK_FW_DBG2) << BIT_SHIFT_FW_DBG2)
11137 #define BIT_GET_FW_DBG2(x) (((x) >> BIT_SHIFT_FW_DBG2) & BIT_MASK_FW_DBG2)
11138
11139 /* 2 REG_FW_DBG3                                (Offset 0x10EC) */
11140
11141 #define BIT_SHIFT_FW_DBG3 0
11142 #define BIT_MASK_FW_DBG3 0xffffffffL
11143 #define BIT_FW_DBG3(x) (((x) & BIT_MASK_FW_DBG3) << BIT_SHIFT_FW_DBG3)
11144 #define BIT_GET_FW_DBG3(x) (((x) >> BIT_SHIFT_FW_DBG3) & BIT_MASK_FW_DBG3)
11145
11146 /* 2 REG_FW_DBG4                                (Offset 0x10F0) */
11147
11148 #define BIT_SHIFT_FW_DBG4 0
11149 #define BIT_MASK_FW_DBG4 0xffffffffL
11150 #define BIT_FW_DBG4(x) (((x) & BIT_MASK_FW_DBG4) << BIT_SHIFT_FW_DBG4)
11151 #define BIT_GET_FW_DBG4(x) (((x) >> BIT_SHIFT_FW_DBG4) & BIT_MASK_FW_DBG4)
11152
11153 /* 2 REG_FW_DBG5                                (Offset 0x10F4) */
11154
11155 #define BIT_SHIFT_FW_DBG5 0
11156 #define BIT_MASK_FW_DBG5 0xffffffffL
11157 #define BIT_FW_DBG5(x) (((x) & BIT_MASK_FW_DBG5) << BIT_SHIFT_FW_DBG5)
11158 #define BIT_GET_FW_DBG5(x) (((x) >> BIT_SHIFT_FW_DBG5) & BIT_MASK_FW_DBG5)
11159
11160 /* 2 REG_FW_DBG6                                (Offset 0x10F8) */
11161
11162 #define BIT_SHIFT_FW_DBG6 0
11163 #define BIT_MASK_FW_DBG6 0xffffffffL
11164 #define BIT_FW_DBG6(x) (((x) & BIT_MASK_FW_DBG6) << BIT_SHIFT_FW_DBG6)
11165 #define BIT_GET_FW_DBG6(x) (((x) >> BIT_SHIFT_FW_DBG6) & BIT_MASK_FW_DBG6)
11166
11167 /* 2 REG_FW_DBG7                                (Offset 0x10FC) */
11168
11169 #define BIT_SHIFT_FW_DBG7 0
11170 #define BIT_MASK_FW_DBG7 0xffffffffL
11171 #define BIT_FW_DBG7(x) (((x) & BIT_MASK_FW_DBG7) << BIT_SHIFT_FW_DBG7)
11172 #define BIT_GET_FW_DBG7(x) (((x) >> BIT_SHIFT_FW_DBG7) & BIT_MASK_FW_DBG7)
11173
11174 /* 2 REG_CR_EXT                         (Offset 0x1100) */
11175
11176 #define BIT_SHIFT_PHY_REQ_DELAY 24
11177 #define BIT_MASK_PHY_REQ_DELAY 0xf
11178 #define BIT_PHY_REQ_DELAY(x)                                                   \
11179         (((x) & BIT_MASK_PHY_REQ_DELAY) << BIT_SHIFT_PHY_REQ_DELAY)
11180 #define BIT_GET_PHY_REQ_DELAY(x)                                               \
11181         (((x) >> BIT_SHIFT_PHY_REQ_DELAY) & BIT_MASK_PHY_REQ_DELAY)
11182
11183 #define BIT_SPD_DOWN BIT(16)
11184
11185 #define BIT_SHIFT_NETYPE4 4
11186 #define BIT_MASK_NETYPE4 0x3
11187 #define BIT_NETYPE4(x) (((x) & BIT_MASK_NETYPE4) << BIT_SHIFT_NETYPE4)
11188 #define BIT_GET_NETYPE4(x) (((x) >> BIT_SHIFT_NETYPE4) & BIT_MASK_NETYPE4)
11189
11190 #define BIT_SHIFT_NETYPE3 2
11191 #define BIT_MASK_NETYPE3 0x3
11192 #define BIT_NETYPE3(x) (((x) & BIT_MASK_NETYPE3) << BIT_SHIFT_NETYPE3)
11193 #define BIT_GET_NETYPE3(x) (((x) >> BIT_SHIFT_NETYPE3) & BIT_MASK_NETYPE3)
11194
11195 #define BIT_SHIFT_NETYPE2 0
11196 #define BIT_MASK_NETYPE2 0x3
11197 #define BIT_NETYPE2(x) (((x) & BIT_MASK_NETYPE2) << BIT_SHIFT_NETYPE2)
11198 #define BIT_GET_NETYPE2(x) (((x) >> BIT_SHIFT_NETYPE2) & BIT_MASK_NETYPE2)
11199
11200 /* 2 REG_FWFF                           (Offset 0x1114) */
11201
11202 #define BIT_SHIFT_PKTNUM_TH_V1 24
11203 #define BIT_MASK_PKTNUM_TH_V1 0xff
11204 #define BIT_PKTNUM_TH_V1(x)                                                    \
11205         (((x) & BIT_MASK_PKTNUM_TH_V1) << BIT_SHIFT_PKTNUM_TH_V1)
11206 #define BIT_GET_PKTNUM_TH_V1(x)                                                \
11207         (((x) >> BIT_SHIFT_PKTNUM_TH_V1) & BIT_MASK_PKTNUM_TH_V1)
11208
11209 /* 2 REG_FWFF                           (Offset 0x1114) */
11210
11211 #define BIT_SHIFT_TIMER_TH 16
11212 #define BIT_MASK_TIMER_TH 0xff
11213 #define BIT_TIMER_TH(x) (((x) & BIT_MASK_TIMER_TH) << BIT_SHIFT_TIMER_TH)
11214 #define BIT_GET_TIMER_TH(x) (((x) >> BIT_SHIFT_TIMER_TH) & BIT_MASK_TIMER_TH)
11215
11216 /* 2 REG_FWFF                           (Offset 0x1114) */
11217
11218 #define BIT_SHIFT_RXPKT1ENADDR 0
11219 #define BIT_MASK_RXPKT1ENADDR 0xffff
11220 #define BIT_RXPKT1ENADDR(x)                                                    \
11221         (((x) & BIT_MASK_RXPKT1ENADDR) << BIT_SHIFT_RXPKT1ENADDR)
11222 #define BIT_GET_RXPKT1ENADDR(x)                                                \
11223         (((x) >> BIT_SHIFT_RXPKT1ENADDR) & BIT_MASK_RXPKT1ENADDR)
11224
11225 /* 2 REG_FE2IMR                         (Offset 0x1120) */
11226
11227 #define BIT__FE4ISR__IND_MSK BIT(29)
11228
11229 /* 2 REG_FE2IMR                         (Offset 0x1120) */
11230
11231 #define BIT_FS_TXSC_DESC_DONE_INT_EN BIT(28)
11232 #define BIT_FS_TXSC_BKDONE_INT_EN BIT(27)
11233 #define BIT_FS_TXSC_BEDONE_INT_EN BIT(26)
11234 #define BIT_FS_TXSC_VIDONE_INT_EN BIT(25)
11235 #define BIT_FS_TXSC_VODONE_INT_EN BIT(24)
11236
11237 /* 2 REG_FE2IMR                         (Offset 0x1120) */
11238
11239 #define BIT_FS_ATIM_MB7_INT_EN BIT(23)
11240 #define BIT_FS_ATIM_MB6_INT_EN BIT(22)
11241 #define BIT_FS_ATIM_MB5_INT_EN BIT(21)
11242 #define BIT_FS_ATIM_MB4_INT_EN BIT(20)
11243 #define BIT_FS_ATIM_MB3_INT_EN BIT(19)
11244 #define BIT_FS_ATIM_MB2_INT_EN BIT(18)
11245 #define BIT_FS_ATIM_MB1_INT_EN BIT(17)
11246 #define BIT_FS_ATIM_MB0_INT_EN BIT(16)
11247 #define BIT_FS_TBTT4INT_EN BIT(11)
11248 #define BIT_FS_TBTT3INT_EN BIT(10)
11249 #define BIT_FS_TBTT2INT_EN BIT(9)
11250 #define BIT_FS_TBTT1INT_EN BIT(8)
11251 #define BIT_FS_TBTT0_MB7INT_EN BIT(7)
11252 #define BIT_FS_TBTT0_MB6INT_EN BIT(6)
11253 #define BIT_FS_TBTT0_MB5INT_EN BIT(5)
11254 #define BIT_FS_TBTT0_MB4INT_EN BIT(4)
11255 #define BIT_FS_TBTT0_MB3INT_EN BIT(3)
11256 #define BIT_FS_TBTT0_MB2INT_EN BIT(2)
11257 #define BIT_FS_TBTT0_MB1INT_EN BIT(1)
11258 #define BIT_FS_TBTT0_INT_EN BIT(0)
11259
11260 /* 2 REG_FE2ISR                         (Offset 0x1124) */
11261
11262 #define BIT__FE4ISR__IND_INT BIT(29)
11263
11264 /* 2 REG_FE2ISR                         (Offset 0x1124) */
11265
11266 #define BIT_FS_TXSC_DESC_DONE_INT BIT(28)
11267 #define BIT_FS_TXSC_BKDONE_INT BIT(27)
11268 #define BIT_FS_TXSC_BEDONE_INT BIT(26)
11269 #define BIT_FS_TXSC_VIDONE_INT BIT(25)
11270 #define BIT_FS_TXSC_VODONE_INT BIT(24)
11271
11272 /* 2 REG_FE2ISR                         (Offset 0x1124) */
11273
11274 #define BIT_FS_ATIM_MB7_INT BIT(23)
11275 #define BIT_FS_ATIM_MB6_INT BIT(22)
11276 #define BIT_FS_ATIM_MB5_INT BIT(21)
11277 #define BIT_FS_ATIM_MB4_INT BIT(20)
11278 #define BIT_FS_ATIM_MB3_INT BIT(19)
11279 #define BIT_FS_ATIM_MB2_INT BIT(18)
11280 #define BIT_FS_ATIM_MB1_INT BIT(17)
11281 #define BIT_FS_ATIM_MB0_INT BIT(16)
11282 #define BIT_FS_TBTT4INT BIT(11)
11283 #define BIT_FS_TBTT3INT BIT(10)
11284 #define BIT_FS_TBTT2INT BIT(9)
11285 #define BIT_FS_TBTT1INT BIT(8)
11286 #define BIT_FS_TBTT0_MB7INT BIT(7)
11287 #define BIT_FS_TBTT0_MB6INT BIT(6)
11288 #define BIT_FS_TBTT0_MB5INT BIT(5)
11289 #define BIT_FS_TBTT0_MB4INT BIT(4)
11290 #define BIT_FS_TBTT0_MB3INT BIT(3)
11291 #define BIT_FS_TBTT0_MB2INT BIT(2)
11292 #define BIT_FS_TBTT0_MB1INT BIT(1)
11293 #define BIT_FS_TBTT0_INT BIT(0)
11294
11295 /* 2 REG_FE3IMR                         (Offset 0x1128) */
11296
11297 #define BIT_FS_CLI3_MTI_BCNIVLEAR_INT__EN BIT(31)
11298
11299 /* 2 REG_FE3IMR                         (Offset 0x1128) */
11300
11301 #define BIT_FS_CLI2_MTI_BCNIVLEAR_INT__EN BIT(30)
11302
11303 /* 2 REG_FE3IMR                         (Offset 0x1128) */
11304
11305 #define BIT_FS_CLI1_MTI_BCNIVLEAR_INT__EN BIT(29)
11306
11307 /* 2 REG_FE3IMR                         (Offset 0x1128) */
11308
11309 #define BIT_FS_CLI0_MTI_BCNIVLEAR_INT__EN BIT(28)
11310
11311 /* 2 REG_FE3IMR                         (Offset 0x1128) */
11312
11313 #define BIT_FS_BCNDMA4_INT_EN BIT(27)
11314 #define BIT_FS_BCNDMA3_INT_EN BIT(26)
11315 #define BIT_FS_BCNDMA2_INT_EN BIT(25)
11316 #define BIT_FS_BCNDMA1_INT_EN BIT(24)
11317 #define BIT_FS_BCNDMA0_MB7_INT_EN BIT(23)
11318 #define BIT_FS_BCNDMA0_MB6_INT_EN BIT(22)
11319 #define BIT_FS_BCNDMA0_MB5_INT_EN BIT(21)
11320 #define BIT_FS_BCNDMA0_MB4_INT_EN BIT(20)
11321 #define BIT_FS_BCNDMA0_MB3_INT_EN BIT(19)
11322 #define BIT_FS_BCNDMA0_MB2_INT_EN BIT(18)
11323 #define BIT_FS_BCNDMA0_MB1_INT_EN BIT(17)
11324 #define BIT_FS_BCNDMA0_INT_EN BIT(16)
11325 #define BIT_FS_MTI_BCNIVLEAR_INT__EN BIT(15)
11326 #define BIT_FS_BCNERLY4_INT_EN BIT(11)
11327 #define BIT_FS_BCNERLY3_INT_EN BIT(10)
11328 #define BIT_FS_BCNERLY2_INT_EN BIT(9)
11329 #define BIT_FS_BCNERLY1_INT_EN BIT(8)
11330 #define BIT_FS_BCNERLY0_MB7INT_EN BIT(7)
11331 #define BIT_FS_BCNERLY0_MB6INT_EN BIT(6)
11332 #define BIT_FS_BCNERLY0_MB5INT_EN BIT(5)
11333 #define BIT_FS_BCNERLY0_MB4INT_EN BIT(4)
11334 #define BIT_FS_BCNERLY0_MB3INT_EN BIT(3)
11335 #define BIT_FS_BCNERLY0_MB2INT_EN BIT(2)
11336 #define BIT_FS_BCNERLY0_MB1INT_EN BIT(1)
11337 #define BIT_FS_BCNERLY0_INT_EN BIT(0)
11338
11339 /* 2 REG_FE3ISR                         (Offset 0x112C) */
11340
11341 #define BIT_FS_CLI3_MTI_BCNIVLEAR_INT BIT(31)
11342
11343 /* 2 REG_FE3ISR                         (Offset 0x112C) */
11344
11345 #define BIT_FS_CLI2_MTI_BCNIVLEAR_INT BIT(30)
11346
11347 /* 2 REG_FE3ISR                         (Offset 0x112C) */
11348
11349 #define BIT_FS_CLI1_MTI_BCNIVLEAR_INT BIT(29)
11350
11351 /* 2 REG_FE3ISR                         (Offset 0x112C) */
11352
11353 #define BIT_FS_CLI0_MTI_BCNIVLEAR_INT BIT(28)
11354
11355 /* 2 REG_FE3ISR                         (Offset 0x112C) */
11356
11357 #define BIT_FS_BCNDMA4_INT BIT(27)
11358 #define BIT_FS_BCNDMA3_INT BIT(26)
11359 #define BIT_FS_BCNDMA2_INT BIT(25)
11360 #define BIT_FS_BCNDMA1_INT BIT(24)
11361 #define BIT_FS_BCNDMA0_MB7_INT BIT(23)
11362 #define BIT_FS_BCNDMA0_MB6_INT BIT(22)
11363 #define BIT_FS_BCNDMA0_MB5_INT BIT(21)
11364 #define BIT_FS_BCNDMA0_MB4_INT BIT(20)
11365 #define BIT_FS_BCNDMA0_MB3_INT BIT(19)
11366 #define BIT_FS_BCNDMA0_MB2_INT BIT(18)
11367 #define BIT_FS_BCNDMA0_MB1_INT BIT(17)
11368 #define BIT_FS_BCNDMA0_INT BIT(16)
11369 #define BIT_FS_MTI_BCNIVLEAR_INT BIT(15)
11370 #define BIT_FS_BCNERLY4_INT BIT(11)
11371 #define BIT_FS_BCNERLY3_INT BIT(10)
11372 #define BIT_FS_BCNERLY2_INT BIT(9)
11373 #define BIT_FS_BCNERLY1_INT BIT(8)
11374 #define BIT_FS_BCNERLY0_MB7INT BIT(7)
11375 #define BIT_FS_BCNERLY0_MB6INT BIT(6)
11376 #define BIT_FS_BCNERLY0_MB5INT BIT(5)
11377 #define BIT_FS_BCNERLY0_MB4INT BIT(4)
11378 #define BIT_FS_BCNERLY0_MB3INT BIT(3)
11379 #define BIT_FS_BCNERLY0_MB2INT BIT(2)
11380 #define BIT_FS_BCNERLY0_MB1INT BIT(1)
11381 #define BIT_FS_BCNERLY0_INT BIT(0)
11382
11383 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11384
11385 #define BIT_FS_CLI3_TXPKTIN_INT_EN BIT(19)
11386
11387 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11388
11389 #define BIT_FS_CLI2_TXPKTIN_INT_EN BIT(18)
11390
11391 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11392
11393 #define BIT_FS_CLI1_TXPKTIN_INT_EN BIT(17)
11394
11395 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11396
11397 #define BIT_FS_CLI0_TXPKTIN_INT_EN BIT(16)
11398
11399 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11400
11401 #define BIT_FS_CLI3_RX_UMD0_INT_EN BIT(15)
11402
11403 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11404
11405 #define BIT_FS_CLI3_RX_UMD1_INT_EN BIT(14)
11406
11407 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11408
11409 #define BIT_FS_CLI3_RX_BMD0_INT_EN BIT(13)
11410
11411 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11412
11413 #define BIT_FS_CLI3_RX_BMD1_INT_EN BIT(12)
11414
11415 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11416
11417 #define BIT_FS_CLI2_RX_UMD0_INT_EN BIT(11)
11418
11419 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11420
11421 #define BIT_FS_CLI2_RX_UMD1_INT_EN BIT(10)
11422
11423 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11424
11425 #define BIT_FS_CLI2_RX_BMD0_INT_EN BIT(9)
11426
11427 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11428
11429 #define BIT_FS_CLI2_RX_BMD1_INT_EN BIT(8)
11430
11431 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11432
11433 #define BIT_FS_CLI1_RX_UMD0_INT_EN BIT(7)
11434
11435 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11436
11437 #define BIT_FS_CLI1_RX_UMD1_INT_EN BIT(6)
11438
11439 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11440
11441 #define BIT_FS_CLI1_RX_BMD0_INT_EN BIT(5)
11442
11443 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11444
11445 #define BIT_FS_CLI1_RX_BMD1_INT_EN BIT(4)
11446
11447 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11448
11449 #define BIT_FS_CLI0_RX_UMD0_INT_EN BIT(3)
11450
11451 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11452
11453 #define BIT_FS_CLI0_RX_UMD1_INT_EN BIT(2)
11454
11455 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11456
11457 #define BIT_FS_CLI0_RX_BMD0_INT_EN BIT(1)
11458
11459 /* 2 REG_FE4IMR                         (Offset 0x1130) */
11460
11461 #define BIT_FS_CLI0_RX_BMD1_INT_EN BIT(0)
11462
11463 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11464
11465 #define BIT_FS_CLI3_TXPKTIN_INT BIT(19)
11466
11467 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11468
11469 #define BIT_FS_CLI2_TXPKTIN_INT BIT(18)
11470
11471 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11472
11473 #define BIT_FS_CLI1_TXPKTIN_INT BIT(17)
11474
11475 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11476
11477 #define BIT_FS_CLI0_TXPKTIN_INT BIT(16)
11478
11479 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11480
11481 #define BIT_FS_CLI3_RX_UMD0_INT BIT(15)
11482
11483 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11484
11485 #define BIT_FS_CLI3_RX_UMD1_INT BIT(14)
11486
11487 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11488
11489 #define BIT_FS_CLI3_RX_BMD0_INT BIT(13)
11490
11491 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11492
11493 #define BIT_FS_CLI3_RX_BMD1_INT BIT(12)
11494
11495 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11496
11497 #define BIT_FS_CLI2_RX_UMD0_INT BIT(11)
11498
11499 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11500
11501 #define BIT_FS_CLI2_RX_UMD1_INT BIT(10)
11502
11503 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11504
11505 #define BIT_FS_CLI2_RX_BMD0_INT BIT(9)
11506
11507 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11508
11509 #define BIT_FS_CLI2_RX_BMD1_INT BIT(8)
11510
11511 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11512
11513 #define BIT_FS_CLI1_RX_UMD0_INT BIT(7)
11514
11515 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11516
11517 #define BIT_FS_CLI1_RX_UMD1_INT BIT(6)
11518
11519 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11520
11521 #define BIT_FS_CLI1_RX_BMD0_INT BIT(5)
11522
11523 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11524
11525 #define BIT_FS_CLI1_RX_BMD1_INT BIT(4)
11526
11527 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11528
11529 #define BIT_FS_CLI0_RX_UMD0_INT BIT(3)
11530
11531 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11532
11533 #define BIT_FS_CLI0_RX_UMD1_INT BIT(2)
11534
11535 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11536
11537 #define BIT_FS_CLI0_RX_BMD0_INT BIT(1)
11538
11539 /* 2 REG_FE4ISR                         (Offset 0x1134) */
11540
11541 #define BIT_FS_CLI0_RX_BMD1_INT BIT(0)
11542
11543 /* 2 REG_FT1IMR                         (Offset 0x1138) */
11544
11545 #define BIT__FT2ISR__IND_MSK BIT(30)
11546 #define BIT_FTM_PTT_INT_EN BIT(29)
11547 #define BIT_RXFTMREQ_INT_EN BIT(28)
11548 #define BIT_RXFTM_INT_EN BIT(27)
11549 #define BIT_TXFTM_INT_EN BIT(26)
11550
11551 /* 2 REG_FT1IMR                         (Offset 0x1138) */
11552
11553 #define BIT_FS_H2C_CMD_OK_INT_EN BIT(25)
11554 #define BIT_FS_H2C_CMD_FULL_INT_EN BIT(24)
11555
11556 /* 2 REG_FT1IMR                         (Offset 0x1138) */
11557
11558 #define BIT_FS_MACID_PWRCHANGE5_INT_EN BIT(23)
11559 #define BIT_FS_MACID_PWRCHANGE4_INT_EN BIT(22)
11560 #define BIT_FS_MACID_PWRCHANGE3_INT_EN BIT(21)
11561 #define BIT_FS_MACID_PWRCHANGE2_INT_EN BIT(20)
11562 #define BIT_FS_MACID_PWRCHANGE1_INT_EN BIT(19)
11563 #define BIT_FS_MACID_PWRCHANGE0_INT_EN BIT(18)
11564 #define BIT_FS_CTWEND2_INT_EN BIT(17)
11565 #define BIT_FS_CTWEND1_INT_EN BIT(16)
11566 #define BIT_FS_CTWEND0_INT_EN BIT(15)
11567 #define BIT_FS_TX_NULL1_INT_EN BIT(14)
11568 #define BIT_FS_TX_NULL0_INT_EN BIT(13)
11569 #define BIT_FS_TSF_BIT32_TOGGLE_EN BIT(12)
11570 #define BIT_FS_P2P_RFON2_INT_EN BIT(11)
11571 #define BIT_FS_P2P_RFOFF2_INT_EN BIT(10)
11572 #define BIT_FS_P2P_RFON1_INT_EN BIT(9)
11573 #define BIT_FS_P2P_RFOFF1_INT_EN BIT(8)
11574 #define BIT_FS_P2P_RFON0_INT_EN BIT(7)
11575 #define BIT_FS_P2P_RFOFF0_INT_EN BIT(6)
11576 #define BIT_FS_RX_UAPSDMD1_EN BIT(5)
11577 #define BIT_FS_RX_UAPSDMD0_EN BIT(4)
11578 #define BIT_FS_TRIGGER_PKT_EN BIT(3)
11579 #define BIT_FS_EOSP_INT_EN BIT(2)
11580 #define BIT_FS_RPWM2_INT_EN BIT(1)
11581 #define BIT_FS_RPWM_INT_EN BIT(0)
11582
11583 /* 2 REG_FT1ISR                         (Offset 0x113C) */
11584
11585 #define BIT__FT2ISR__IND_INT BIT(30)
11586 #define BIT_FTM_PTT_INT BIT(29)
11587 #define BIT_RXFTMREQ_INT BIT(28)
11588 #define BIT_RXFTM_INT BIT(27)
11589 #define BIT_TXFTM_INT BIT(26)
11590
11591 /* 2 REG_FT1ISR                         (Offset 0x113C) */
11592
11593 #define BIT_FS_H2C_CMD_OK_INT BIT(25)
11594 #define BIT_FS_H2C_CMD_FULL_INT BIT(24)
11595
11596 /* 2 REG_FT1ISR                         (Offset 0x113C) */
11597
11598 #define BIT_FS_MACID_PWRCHANGE5_INT BIT(23)
11599 #define BIT_FS_MACID_PWRCHANGE4_INT BIT(22)
11600 #define BIT_FS_MACID_PWRCHANGE3_INT BIT(21)
11601 #define BIT_FS_MACID_PWRCHANGE2_INT BIT(20)
11602 #define BIT_FS_MACID_PWRCHANGE1_INT BIT(19)
11603 #define BIT_FS_MACID_PWRCHANGE0_INT BIT(18)
11604 #define BIT_FS_CTWEND2_INT BIT(17)
11605 #define BIT_FS_CTWEND1_INT BIT(16)
11606 #define BIT_FS_CTWEND0_INT BIT(15)
11607 #define BIT_FS_TX_NULL1_INT BIT(14)
11608 #define BIT_FS_TX_NULL0_INT BIT(13)
11609 #define BIT_FS_TSF_BIT32_TOGGLE_INT BIT(12)
11610 #define BIT_FS_P2P_RFON2_INT BIT(11)
11611 #define BIT_FS_P2P_RFOFF2_INT BIT(10)
11612 #define BIT_FS_P2P_RFON1_INT BIT(9)
11613 #define BIT_FS_P2P_RFOFF1_INT BIT(8)
11614 #define BIT_FS_P2P_RFON0_INT BIT(7)
11615 #define BIT_FS_P2P_RFOFF0_INT BIT(6)
11616 #define BIT_FS_RX_UAPSDMD1_INT BIT(5)
11617 #define BIT_FS_RX_UAPSDMD0_INT BIT(4)
11618 #define BIT_FS_TRIGGER_PKT_INT BIT(3)
11619 #define BIT_FS_EOSP_INT BIT(2)
11620 #define BIT_FS_RPWM2_INT BIT(1)
11621 #define BIT_FS_RPWM_INT BIT(0)
11622
11623 /* 2 REG_SPWR0                          (Offset 0x1140) */
11624
11625 #define BIT_SHIFT_MID_31TO0 0
11626 #define BIT_MASK_MID_31TO0 0xffffffffL
11627 #define BIT_MID_31TO0(x) (((x) & BIT_MASK_MID_31TO0) << BIT_SHIFT_MID_31TO0)
11628 #define BIT_GET_MID_31TO0(x) (((x) >> BIT_SHIFT_MID_31TO0) & BIT_MASK_MID_31TO0)
11629
11630 /* 2 REG_SPWR1                          (Offset 0x1144) */
11631
11632 #define BIT_SHIFT_MID_63TO32 0
11633 #define BIT_MASK_MID_63TO32 0xffffffffL
11634 #define BIT_MID_63TO32(x) (((x) & BIT_MASK_MID_63TO32) << BIT_SHIFT_MID_63TO32)
11635 #define BIT_GET_MID_63TO32(x)                                                  \
11636         (((x) >> BIT_SHIFT_MID_63TO32) & BIT_MASK_MID_63TO32)
11637
11638 /* 2 REG_SPWR2                          (Offset 0x1148) */
11639
11640 #define BIT_SHIFT_MID_95O64 0
11641 #define BIT_MASK_MID_95O64 0xffffffffL
11642 #define BIT_MID_95O64(x) (((x) & BIT_MASK_MID_95O64) << BIT_SHIFT_MID_95O64)
11643 #define BIT_GET_MID_95O64(x) (((x) >> BIT_SHIFT_MID_95O64) & BIT_MASK_MID_95O64)
11644
11645 /* 2 REG_SPWR3                          (Offset 0x114C) */
11646
11647 #define BIT_SHIFT_MID_127TO96 0
11648 #define BIT_MASK_MID_127TO96 0xffffffffL
11649 #define BIT_MID_127TO96(x)                                                     \
11650         (((x) & BIT_MASK_MID_127TO96) << BIT_SHIFT_MID_127TO96)
11651 #define BIT_GET_MID_127TO96(x)                                                 \
11652         (((x) >> BIT_SHIFT_MID_127TO96) & BIT_MASK_MID_127TO96)
11653
11654 /* 2 REG_POWSEQ                         (Offset 0x1150) */
11655
11656 #define BIT_SHIFT_SEQNUM_MID 16
11657 #define BIT_MASK_SEQNUM_MID 0xffff
11658 #define BIT_SEQNUM_MID(x) (((x) & BIT_MASK_SEQNUM_MID) << BIT_SHIFT_SEQNUM_MID)
11659 #define BIT_GET_SEQNUM_MID(x)                                                  \
11660         (((x) >> BIT_SHIFT_SEQNUM_MID) & BIT_MASK_SEQNUM_MID)
11661
11662 #define BIT_SHIFT_REF_MID 0
11663 #define BIT_MASK_REF_MID 0x7f
11664 #define BIT_REF_MID(x) (((x) & BIT_MASK_REF_MID) << BIT_SHIFT_REF_MID)
11665 #define BIT_GET_REF_MID(x) (((x) >> BIT_SHIFT_REF_MID) & BIT_MASK_REF_MID)
11666
11667 /* 2 REG_TC7_CTRL_V1                            (Offset 0x1158) */
11668
11669 #define BIT_TC7INT_EN BIT(26)
11670 #define BIT_TC7MODE BIT(25)
11671 #define BIT_TC7EN BIT(24)
11672
11673 #define BIT_SHIFT_TC7DATA 0
11674 #define BIT_MASK_TC7DATA 0xffffff
11675 #define BIT_TC7DATA(x) (((x) & BIT_MASK_TC7DATA) << BIT_SHIFT_TC7DATA)
11676 #define BIT_GET_TC7DATA(x) (((x) >> BIT_SHIFT_TC7DATA) & BIT_MASK_TC7DATA)
11677
11678 /* 2 REG_TC8_CTRL_V1                            (Offset 0x115C) */
11679
11680 #define BIT_TC8INT_EN BIT(26)
11681 #define BIT_TC8MODE BIT(25)
11682 #define BIT_TC8EN BIT(24)
11683
11684 #define BIT_SHIFT_TC8DATA 0
11685 #define BIT_MASK_TC8DATA 0xffffff
11686 #define BIT_TC8DATA(x) (((x) & BIT_MASK_TC8DATA) << BIT_SHIFT_TC8DATA)
11687 #define BIT_GET_TC8DATA(x) (((x) >> BIT_SHIFT_TC8DATA) & BIT_MASK_TC8DATA)
11688
11689 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11690
11691 #define BIT_FS_CLI3_RX_UAPSDMD1_EN BIT(31)
11692
11693 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11694
11695 #define BIT_FS_CLI3_RX_UAPSDMD0_EN BIT(30)
11696
11697 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11698
11699 #define BIT_FS_CLI3_TRIGGER_PKT_EN BIT(29)
11700
11701 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11702
11703 #define BIT_FS_CLI3_EOSP_INT_EN BIT(28)
11704
11705 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11706
11707 #define BIT_FS_CLI2_RX_UAPSDMD1_EN BIT(27)
11708
11709 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11710
11711 #define BIT_FS_CLI2_RX_UAPSDMD0_EN BIT(26)
11712
11713 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11714
11715 #define BIT_FS_CLI2_TRIGGER_PKT_EN BIT(25)
11716
11717 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11718
11719 #define BIT_FS_CLI2_EOSP_INT_EN BIT(24)
11720
11721 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11722
11723 #define BIT_FS_CLI1_RX_UAPSDMD1_EN BIT(23)
11724
11725 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11726
11727 #define BIT_FS_CLI1_RX_UAPSDMD0_EN BIT(22)
11728
11729 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11730
11731 #define BIT_FS_CLI1_TRIGGER_PKT_EN BIT(21)
11732
11733 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11734
11735 #define BIT_FS_CLI1_EOSP_INT_EN BIT(20)
11736
11737 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11738
11739 #define BIT_FS_CLI0_RX_UAPSDMD1_EN BIT(19)
11740
11741 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11742
11743 #define BIT_FS_CLI0_RX_UAPSDMD0_EN BIT(18)
11744
11745 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11746
11747 #define BIT_FS_CLI0_TRIGGER_PKT_EN BIT(17)
11748
11749 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11750
11751 #define BIT_FS_CLI0_EOSP_INT_EN BIT(16)
11752
11753 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11754
11755 #define BIT_FS_TSF_BIT32_TOGGLE_P2P2_EN BIT(9)
11756
11757 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11758
11759 #define BIT_FS_TSF_BIT32_TOGGLE_P2P1_EN BIT(8)
11760
11761 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11762
11763 #define BIT_FS_CLI3_TX_NULL1_INT_EN BIT(7)
11764
11765 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11766
11767 #define BIT_FS_CLI3_TX_NULL0_INT_EN BIT(6)
11768
11769 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11770
11771 #define BIT_FS_CLI2_TX_NULL1_INT_EN BIT(5)
11772
11773 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11774
11775 #define BIT_FS_CLI2_TX_NULL0_INT_EN BIT(4)
11776
11777 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11778
11779 #define BIT_FS_CLI1_TX_NULL1_INT_EN BIT(3)
11780
11781 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11782
11783 #define BIT_FS_CLI1_TX_NULL0_INT_EN BIT(2)
11784
11785 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11786
11787 #define BIT_FS_CLI0_TX_NULL1_INT_EN BIT(1)
11788
11789 /* 2 REG_FT2IMR                         (Offset 0x11E0) */
11790
11791 #define BIT_FS_CLI0_TX_NULL0_INT_EN BIT(0)
11792
11793 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11794
11795 #define BIT_FS_CLI3_RX_UAPSDMD1_INT BIT(31)
11796
11797 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11798
11799 #define BIT_FS_CLI3_RX_UAPSDMD0_INT BIT(30)
11800
11801 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11802
11803 #define BIT_FS_CLI3_TRIGGER_PKT_INT BIT(29)
11804
11805 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11806
11807 #define BIT_FS_CLI3_EOSP_INT BIT(28)
11808
11809 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11810
11811 #define BIT_FS_CLI2_RX_UAPSDMD1_INT BIT(27)
11812
11813 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11814
11815 #define BIT_FS_CLI2_RX_UAPSDMD0_INT BIT(26)
11816
11817 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11818
11819 #define BIT_FS_CLI2_TRIGGER_PKT_INT BIT(25)
11820
11821 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11822
11823 #define BIT_FS_CLI2_EOSP_INT BIT(24)
11824
11825 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11826
11827 #define BIT_FS_CLI1_RX_UAPSDMD1_INT BIT(23)
11828
11829 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11830
11831 #define BIT_FS_CLI1_RX_UAPSDMD0_INT BIT(22)
11832
11833 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11834
11835 #define BIT_FS_CLI1_TRIGGER_PKT_INT BIT(21)
11836
11837 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11838
11839 #define BIT_FS_CLI1_EOSP_INT BIT(20)
11840
11841 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11842
11843 #define BIT_FS_CLI0_RX_UAPSDMD1_INT BIT(19)
11844
11845 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11846
11847 #define BIT_FS_CLI0_RX_UAPSDMD0_INT BIT(18)
11848
11849 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11850
11851 #define BIT_FS_CLI0_TRIGGER_PKT_INT BIT(17)
11852
11853 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11854
11855 #define BIT_FS_CLI0_EOSP_INT BIT(16)
11856
11857 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11858
11859 #define BIT_FS_TSF_BIT32_TOGGLE_P2P2_INT BIT(9)
11860
11861 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11862
11863 #define BIT_FS_TSF_BIT32_TOGGLE_P2P1_INT BIT(8)
11864
11865 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11866
11867 #define BIT_FS_CLI3_TX_NULL1_INT BIT(7)
11868
11869 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11870
11871 #define BIT_FS_CLI3_TX_NULL0_INT BIT(6)
11872
11873 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11874
11875 #define BIT_FS_CLI2_TX_NULL1_INT BIT(5)
11876
11877 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11878
11879 #define BIT_FS_CLI2_TX_NULL0_INT BIT(4)
11880
11881 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11882
11883 #define BIT_FS_CLI1_TX_NULL1_INT BIT(3)
11884
11885 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11886
11887 #define BIT_FS_CLI1_TX_NULL0_INT BIT(2)
11888
11889 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11890
11891 #define BIT_FS_CLI0_TX_NULL1_INT BIT(1)
11892
11893 /* 2 REG_FT2ISR                         (Offset 0x11E4) */
11894
11895 #define BIT_FS_CLI0_TX_NULL0_INT BIT(0)
11896
11897 /* 2 REG_MSG2                           (Offset 0x11F0) */
11898
11899 #define BIT_SHIFT_FW_MSG2 0
11900 #define BIT_MASK_FW_MSG2 0xffffffffL
11901 #define BIT_FW_MSG2(x) (((x) & BIT_MASK_FW_MSG2) << BIT_SHIFT_FW_MSG2)
11902 #define BIT_GET_FW_MSG2(x) (((x) >> BIT_SHIFT_FW_MSG2) & BIT_MASK_FW_MSG2)
11903
11904 /* 2 REG_MSG3                           (Offset 0x11F4) */
11905
11906 #define BIT_SHIFT_FW_MSG3 0
11907 #define BIT_MASK_FW_MSG3 0xffffffffL
11908 #define BIT_FW_MSG3(x) (((x) & BIT_MASK_FW_MSG3) << BIT_SHIFT_FW_MSG3)
11909 #define BIT_GET_FW_MSG3(x) (((x) >> BIT_SHIFT_FW_MSG3) & BIT_MASK_FW_MSG3)
11910
11911 /* 2 REG_MSG4                           (Offset 0x11F8) */
11912
11913 #define BIT_SHIFT_FW_MSG4 0
11914 #define BIT_MASK_FW_MSG4 0xffffffffL
11915 #define BIT_FW_MSG4(x) (((x) & BIT_MASK_FW_MSG4) << BIT_SHIFT_FW_MSG4)
11916 #define BIT_GET_FW_MSG4(x) (((x) >> BIT_SHIFT_FW_MSG4) & BIT_MASK_FW_MSG4)
11917
11918 /* 2 REG_MSG5                           (Offset 0x11FC) */
11919
11920 #define BIT_SHIFT_FW_MSG5 0
11921 #define BIT_MASK_FW_MSG5 0xffffffffL
11922 #define BIT_FW_MSG5(x) (((x) & BIT_MASK_FW_MSG5) << BIT_SHIFT_FW_MSG5)
11923 #define BIT_GET_FW_MSG5(x) (((x) >> BIT_SHIFT_FW_MSG5) & BIT_MASK_FW_MSG5)
11924
11925 /* 2 REG_DDMA_CH0SA                             (Offset 0x1200) */
11926
11927 #define BIT_SHIFT_DDMACH0_SA 0
11928 #define BIT_MASK_DDMACH0_SA 0xffffffffL
11929 #define BIT_DDMACH0_SA(x) (((x) & BIT_MASK_DDMACH0_SA) << BIT_SHIFT_DDMACH0_SA)
11930 #define BIT_GET_DDMACH0_SA(x)                                                  \
11931         (((x) >> BIT_SHIFT_DDMACH0_SA) & BIT_MASK_DDMACH0_SA)
11932
11933 /* 2 REG_DDMA_CH0DA                             (Offset 0x1204) */
11934
11935 #define BIT_SHIFT_DDMACH0_DA 0
11936 #define BIT_MASK_DDMACH0_DA 0xffffffffL
11937 #define BIT_DDMACH0_DA(x) (((x) & BIT_MASK_DDMACH0_DA) << BIT_SHIFT_DDMACH0_DA)
11938 #define BIT_GET_DDMACH0_DA(x)                                                  \
11939         (((x) >> BIT_SHIFT_DDMACH0_DA) & BIT_MASK_DDMACH0_DA)
11940
11941 /* 2 REG_DDMA_CH0CTRL                   (Offset 0x1208) */
11942
11943 #define BIT_DDMACH0_OWN BIT(31)
11944 #define BIT_DDMACH0_CHKSUM_EN BIT(29)
11945 #define BIT_DDMACH0_DA_W_DISABLE BIT(28)
11946 #define BIT_DDMACH0_CHKSUM_STS BIT(27)
11947 #define BIT_DDMACH0_DDMA_MODE BIT(26)
11948 #define BIT_DDMACH0_RESET_CHKSUM_STS BIT(25)
11949 #define BIT_DDMACH0_CHKSUM_CONT BIT(24)
11950
11951 #define BIT_SHIFT_DDMACH0_DLEN 0
11952 #define BIT_MASK_DDMACH0_DLEN 0x3ffff
11953 #define BIT_DDMACH0_DLEN(x)                                                    \
11954         (((x) & BIT_MASK_DDMACH0_DLEN) << BIT_SHIFT_DDMACH0_DLEN)
11955 #define BIT_GET_DDMACH0_DLEN(x)                                                \
11956         (((x) >> BIT_SHIFT_DDMACH0_DLEN) & BIT_MASK_DDMACH0_DLEN)
11957
11958 /* 2 REG_DDMA_CH1SA                             (Offset 0x1210) */
11959
11960 #define BIT_SHIFT_DDMACH1_SA 0
11961 #define BIT_MASK_DDMACH1_SA 0xffffffffL
11962 #define BIT_DDMACH1_SA(x) (((x) & BIT_MASK_DDMACH1_SA) << BIT_SHIFT_DDMACH1_SA)
11963 #define BIT_GET_DDMACH1_SA(x)                                                  \
11964         (((x) >> BIT_SHIFT_DDMACH1_SA) & BIT_MASK_DDMACH1_SA)
11965
11966 /* 2 REG_DDMA_CH1DA                             (Offset 0x1214) */
11967
11968 #define BIT_SHIFT_DDMACH1_DA 0
11969 #define BIT_MASK_DDMACH1_DA 0xffffffffL
11970 #define BIT_DDMACH1_DA(x) (((x) & BIT_MASK_DDMACH1_DA) << BIT_SHIFT_DDMACH1_DA)
11971 #define BIT_GET_DDMACH1_DA(x)                                                  \
11972         (((x) >> BIT_SHIFT_DDMACH1_DA) & BIT_MASK_DDMACH1_DA)
11973
11974 /* 2 REG_DDMA_CH1CTRL                   (Offset 0x1218) */
11975
11976 #define BIT_DDMACH1_OWN BIT(31)
11977 #define BIT_DDMACH1_CHKSUM_EN BIT(29)
11978 #define BIT_DDMACH1_DA_W_DISABLE BIT(28)
11979 #define BIT_DDMACH1_CHKSUM_STS BIT(27)
11980 #define BIT_DDMACH1_DDMA_MODE BIT(26)
11981 #define BIT_DDMACH1_RESET_CHKSUM_STS BIT(25)
11982 #define BIT_DDMACH1_CHKSUM_CONT BIT(24)
11983
11984 #define BIT_SHIFT_DDMACH1_DLEN 0
11985 #define BIT_MASK_DDMACH1_DLEN 0x3ffff
11986 #define BIT_DDMACH1_DLEN(x)                                                    \
11987         (((x) & BIT_MASK_DDMACH1_DLEN) << BIT_SHIFT_DDMACH1_DLEN)
11988 #define BIT_GET_DDMACH1_DLEN(x)                                                \
11989         (((x) >> BIT_SHIFT_DDMACH1_DLEN) & BIT_MASK_DDMACH1_DLEN)
11990
11991 /* 2 REG_DDMA_CH2SA                             (Offset 0x1220) */
11992
11993 #define BIT_SHIFT_DDMACH2_SA 0
11994 #define BIT_MASK_DDMACH2_SA 0xffffffffL
11995 #define BIT_DDMACH2_SA(x) (((x) & BIT_MASK_DDMACH2_SA) << BIT_SHIFT_DDMACH2_SA)
11996 #define BIT_GET_DDMACH2_SA(x)                                                  \
11997         (((x) >> BIT_SHIFT_DDMACH2_SA) & BIT_MASK_DDMACH2_SA)
11998
11999 /* 2 REG_DDMA_CH2DA                             (Offset 0x1224) */
12000
12001 #define BIT_SHIFT_DDMACH2_DA 0
12002 #define BIT_MASK_DDMACH2_DA 0xffffffffL
12003 #define BIT_DDMACH2_DA(x) (((x) & BIT_MASK_DDMACH2_DA) << BIT_SHIFT_DDMACH2_DA)
12004 #define BIT_GET_DDMACH2_DA(x)                                                  \
12005         (((x) >> BIT_SHIFT_DDMACH2_DA) & BIT_MASK_DDMACH2_DA)
12006
12007 /* 2 REG_DDMA_CH2CTRL                   (Offset 0x1228) */
12008
12009 #define BIT_DDMACH2_OWN BIT(31)
12010 #define BIT_DDMACH2_CHKSUM_EN BIT(29)
12011 #define BIT_DDMACH2_DA_W_DISABLE BIT(28)
12012 #define BIT_DDMACH2_CHKSUM_STS BIT(27)
12013 #define BIT_DDMACH2_DDMA_MODE BIT(26)
12014 #define BIT_DDMACH2_RESET_CHKSUM_STS BIT(25)
12015 #define BIT_DDMACH2_CHKSUM_CONT BIT(24)
12016
12017 #define BIT_SHIFT_DDMACH2_DLEN 0
12018 #define BIT_MASK_DDMACH2_DLEN 0x3ffff
12019 #define BIT_DDMACH2_DLEN(x)                                                    \
12020         (((x) & BIT_MASK_DDMACH2_DLEN) << BIT_SHIFT_DDMACH2_DLEN)
12021 #define BIT_GET_DDMACH2_DLEN(x)                                                \
12022         (((x) >> BIT_SHIFT_DDMACH2_DLEN) & BIT_MASK_DDMACH2_DLEN)
12023
12024 /* 2 REG_DDMA_CH3SA                             (Offset 0x1230) */
12025
12026 #define BIT_SHIFT_DDMACH3_SA 0
12027 #define BIT_MASK_DDMACH3_SA 0xffffffffL
12028 #define BIT_DDMACH3_SA(x) (((x) & BIT_MASK_DDMACH3_SA) << BIT_SHIFT_DDMACH3_SA)
12029 #define BIT_GET_DDMACH3_SA(x)                                                  \
12030         (((x) >> BIT_SHIFT_DDMACH3_SA) & BIT_MASK_DDMACH3_SA)
12031
12032 /* 2 REG_DDMA_CH3DA                             (Offset 0x1234) */
12033
12034 #define BIT_SHIFT_DDMACH3_DA 0
12035 #define BIT_MASK_DDMACH3_DA 0xffffffffL
12036 #define BIT_DDMACH3_DA(x) (((x) & BIT_MASK_DDMACH3_DA) << BIT_SHIFT_DDMACH3_DA)
12037 #define BIT_GET_DDMACH3_DA(x)                                                  \
12038         (((x) >> BIT_SHIFT_DDMACH3_DA) & BIT_MASK_DDMACH3_DA)
12039
12040 /* 2 REG_DDMA_CH3CTRL                   (Offset 0x1238) */
12041
12042 #define BIT_DDMACH3_OWN BIT(31)
12043 #define BIT_DDMACH3_CHKSUM_EN BIT(29)
12044 #define BIT_DDMACH3_DA_W_DISABLE BIT(28)
12045 #define BIT_DDMACH3_CHKSUM_STS BIT(27)
12046 #define BIT_DDMACH3_DDMA_MODE BIT(26)
12047 #define BIT_DDMACH3_RESET_CHKSUM_STS BIT(25)
12048 #define BIT_DDMACH3_CHKSUM_CONT BIT(24)
12049
12050 #define BIT_SHIFT_DDMACH3_DLEN 0
12051 #define BIT_MASK_DDMACH3_DLEN 0x3ffff
12052 #define BIT_DDMACH3_DLEN(x)                                                    \
12053         (((x) & BIT_MASK_DDMACH3_DLEN) << BIT_SHIFT_DDMACH3_DLEN)
12054 #define BIT_GET_DDMACH3_DLEN(x)                                                \
12055         (((x) >> BIT_SHIFT_DDMACH3_DLEN) & BIT_MASK_DDMACH3_DLEN)
12056
12057 /* 2 REG_DDMA_CH4SA                             (Offset 0x1240) */
12058
12059 #define BIT_SHIFT_DDMACH4_SA 0
12060 #define BIT_MASK_DDMACH4_SA 0xffffffffL
12061 #define BIT_DDMACH4_SA(x) (((x) & BIT_MASK_DDMACH4_SA) << BIT_SHIFT_DDMACH4_SA)
12062 #define BIT_GET_DDMACH4_SA(x)                                                  \
12063         (((x) >> BIT_SHIFT_DDMACH4_SA) & BIT_MASK_DDMACH4_SA)
12064
12065 /* 2 REG_DDMA_CH4DA                             (Offset 0x1244) */
12066
12067 #define BIT_SHIFT_DDMACH4_DA 0
12068 #define BIT_MASK_DDMACH4_DA 0xffffffffL
12069 #define BIT_DDMACH4_DA(x) (((x) & BIT_MASK_DDMACH4_DA) << BIT_SHIFT_DDMACH4_DA)
12070 #define BIT_GET_DDMACH4_DA(x)                                                  \
12071         (((x) >> BIT_SHIFT_DDMACH4_DA) & BIT_MASK_DDMACH4_DA)
12072
12073 /* 2 REG_DDMA_CH4CTRL                   (Offset 0x1248) */
12074
12075 #define BIT_DDMACH4_OWN BIT(31)
12076 #define BIT_DDMACH4_CHKSUM_EN BIT(29)
12077 #define BIT_DDMACH4_DA_W_DISABLE BIT(28)
12078 #define BIT_DDMACH4_CHKSUM_STS BIT(27)
12079 #define BIT_DDMACH4_DDMA_MODE BIT(26)
12080 #define BIT_DDMACH4_RESET_CHKSUM_STS BIT(25)
12081 #define BIT_DDMACH4_CHKSUM_CONT BIT(24)
12082
12083 #define BIT_SHIFT_DDMACH4_DLEN 0
12084 #define BIT_MASK_DDMACH4_DLEN 0x3ffff
12085 #define BIT_DDMACH4_DLEN(x)                                                    \
12086         (((x) & BIT_MASK_DDMACH4_DLEN) << BIT_SHIFT_DDMACH4_DLEN)
12087 #define BIT_GET_DDMACH4_DLEN(x)                                                \
12088         (((x) >> BIT_SHIFT_DDMACH4_DLEN) & BIT_MASK_DDMACH4_DLEN)
12089
12090 /* 2 REG_DDMA_CH5SA                             (Offset 0x1250) */
12091
12092 #define BIT_SHIFT_DDMACH5_SA 0
12093 #define BIT_MASK_DDMACH5_SA 0xffffffffL
12094 #define BIT_DDMACH5_SA(x) (((x) & BIT_MASK_DDMACH5_SA) << BIT_SHIFT_DDMACH5_SA)
12095 #define BIT_GET_DDMACH5_SA(x)                                                  \
12096         (((x) >> BIT_SHIFT_DDMACH5_SA) & BIT_MASK_DDMACH5_SA)
12097
12098 /* 2 REG_DDMA_CH5DA                             (Offset 0x1254) */
12099
12100 #define BIT_DDMACH5_OWN BIT(31)
12101 #define BIT_DDMACH5_CHKSUM_EN BIT(29)
12102 #define BIT_DDMACH5_DA_W_DISABLE BIT(28)
12103 #define BIT_DDMACH5_CHKSUM_STS BIT(27)
12104 #define BIT_DDMACH5_DDMA_MODE BIT(26)
12105 #define BIT_DDMACH5_RESET_CHKSUM_STS BIT(25)
12106 #define BIT_DDMACH5_CHKSUM_CONT BIT(24)
12107
12108 #define BIT_SHIFT_DDMACH5_DA 0
12109 #define BIT_MASK_DDMACH5_DA 0xffffffffL
12110 #define BIT_DDMACH5_DA(x) (((x) & BIT_MASK_DDMACH5_DA) << BIT_SHIFT_DDMACH5_DA)
12111 #define BIT_GET_DDMACH5_DA(x)                                                  \
12112         (((x) >> BIT_SHIFT_DDMACH5_DA) & BIT_MASK_DDMACH5_DA)
12113
12114 #define BIT_SHIFT_DDMACH5_DLEN 0
12115 #define BIT_MASK_DDMACH5_DLEN 0x3ffff
12116 #define BIT_DDMACH5_DLEN(x)                                                    \
12117         (((x) & BIT_MASK_DDMACH5_DLEN) << BIT_SHIFT_DDMACH5_DLEN)
12118 #define BIT_GET_DDMACH5_DLEN(x)                                                \
12119         (((x) >> BIT_SHIFT_DDMACH5_DLEN) & BIT_MASK_DDMACH5_DLEN)
12120
12121 /* 2 REG_DDMA_INT_MSK                   (Offset 0x12E0) */
12122
12123 #define BIT_DDMACH5_MSK BIT(5)
12124 #define BIT_DDMACH4_MSK BIT(4)
12125 #define BIT_DDMACH3_MSK BIT(3)
12126 #define BIT_DDMACH2_MSK BIT(2)
12127 #define BIT_DDMACH1_MSK BIT(1)
12128 #define BIT_DDMACH0_MSK BIT(0)
12129
12130 /* 2 REG_DDMA_CHSTATUS                  (Offset 0x12E8) */
12131
12132 #define BIT_DDMACH5_BUSY BIT(5)
12133 #define BIT_DDMACH4_BUSY BIT(4)
12134 #define BIT_DDMACH3_BUSY BIT(3)
12135 #define BIT_DDMACH2_BUSY BIT(2)
12136 #define BIT_DDMACH1_BUSY BIT(1)
12137 #define BIT_DDMACH0_BUSY BIT(0)
12138
12139 /* 2 REG_DDMA_CHKSUM                            (Offset 0x12F0) */
12140
12141 #define BIT_SHIFT_IDDMA0_CHKSUM 0
12142 #define BIT_MASK_IDDMA0_CHKSUM 0xffff
12143 #define BIT_IDDMA0_CHKSUM(x)                                                   \
12144         (((x) & BIT_MASK_IDDMA0_CHKSUM) << BIT_SHIFT_IDDMA0_CHKSUM)
12145 #define BIT_GET_IDDMA0_CHKSUM(x)                                               \
12146         (((x) >> BIT_SHIFT_IDDMA0_CHKSUM) & BIT_MASK_IDDMA0_CHKSUM)
12147
12148 /* 2 REG_DDMA_MONITOR                   (Offset 0x12FC) */
12149
12150 #define BIT_IDDMA0_PERMU_UNDERFLOW BIT(14)
12151 #define BIT_IDDMA0_FIFO_UNDERFLOW BIT(13)
12152 #define BIT_IDDMA0_FIFO_OVERFLOW BIT(12)
12153 #define BIT_ECRC_EN_V1 BIT(7)
12154 #define BIT_MDIO_RFLAG_V1 BIT(6)
12155 #define BIT_CH5_ERR BIT(5)
12156 #define BIT_MDIO_WFLAG_V1 BIT(5)
12157 #define BIT_CH4_ERR BIT(4)
12158 #define BIT_CH3_ERR BIT(3)
12159 #define BIT_CH2_ERR BIT(2)
12160 #define BIT_CH1_ERR BIT(1)
12161 #define BIT_CH0_ERR BIT(0)
12162
12163 /* 2 REG_STC_INT_CS                             (Offset 0x1300) */
12164
12165 #define BIT_STC_INT_EN BIT(31)
12166
12167 #define BIT_SHIFT_STC_INT_FLAG 16
12168 #define BIT_MASK_STC_INT_FLAG 0xff
12169 #define BIT_STC_INT_FLAG(x)                                                    \
12170         (((x) & BIT_MASK_STC_INT_FLAG) << BIT_SHIFT_STC_INT_FLAG)
12171 #define BIT_GET_STC_INT_FLAG(x)                                                \
12172         (((x) >> BIT_SHIFT_STC_INT_FLAG) & BIT_MASK_STC_INT_FLAG)
12173
12174 #define BIT_SHIFT_STC_INT_IDX 8
12175 #define BIT_MASK_STC_INT_IDX 0x7
12176 #define BIT_STC_INT_IDX(x)                                                     \
12177         (((x) & BIT_MASK_STC_INT_IDX) << BIT_SHIFT_STC_INT_IDX)
12178 #define BIT_GET_STC_INT_IDX(x)                                                 \
12179         (((x) >> BIT_SHIFT_STC_INT_IDX) & BIT_MASK_STC_INT_IDX)
12180
12181 #define BIT_SHIFT_STC_INT_REALTIME_CS 0
12182 #define BIT_MASK_STC_INT_REALTIME_CS 0x3f
12183 #define BIT_STC_INT_REALTIME_CS(x)                                             \
12184         (((x) & BIT_MASK_STC_INT_REALTIME_CS) << BIT_SHIFT_STC_INT_REALTIME_CS)
12185 #define BIT_GET_STC_INT_REALTIME_CS(x)                                         \
12186         (((x) >> BIT_SHIFT_STC_INT_REALTIME_CS) & BIT_MASK_STC_INT_REALTIME_CS)
12187
12188 /* 2 REG_ST_INT_CFG                             (Offset 0x1304) */
12189
12190 #define BIT_STC_INT_GRP_EN BIT(31)
12191
12192 #define BIT_SHIFT_STC_INT_EXPECT_LS 8
12193 #define BIT_MASK_STC_INT_EXPECT_LS 0x3f
12194 #define BIT_STC_INT_EXPECT_LS(x)                                               \
12195         (((x) & BIT_MASK_STC_INT_EXPECT_LS) << BIT_SHIFT_STC_INT_EXPECT_LS)
12196 #define BIT_GET_STC_INT_EXPECT_LS(x)                                           \
12197         (((x) >> BIT_SHIFT_STC_INT_EXPECT_LS) & BIT_MASK_STC_INT_EXPECT_LS)
12198
12199 #define BIT_SHIFT_STC_INT_EXPECT_CS 0
12200 #define BIT_MASK_STC_INT_EXPECT_CS 0x3f
12201 #define BIT_STC_INT_EXPECT_CS(x)                                               \
12202         (((x) & BIT_MASK_STC_INT_EXPECT_CS) << BIT_SHIFT_STC_INT_EXPECT_CS)
12203 #define BIT_GET_STC_INT_EXPECT_CS(x)                                           \
12204         (((x) >> BIT_SHIFT_STC_INT_EXPECT_CS) & BIT_MASK_STC_INT_EXPECT_CS)
12205
12206 /* 2 REG_CMU_DLY_CTRL                   (Offset 0x1310) */
12207
12208 #define BIT_CMU_DLY_EN BIT(31)
12209 #define BIT_CMU_DLY_MODE BIT(30)
12210
12211 #define BIT_SHIFT_CMU_DLY_PRE_DIV 0
12212 #define BIT_MASK_CMU_DLY_PRE_DIV 0xff
12213 #define BIT_CMU_DLY_PRE_DIV(x)                                                 \
12214         (((x) & BIT_MASK_CMU_DLY_PRE_DIV) << BIT_SHIFT_CMU_DLY_PRE_DIV)
12215 #define BIT_GET_CMU_DLY_PRE_DIV(x)                                             \
12216         (((x) >> BIT_SHIFT_CMU_DLY_PRE_DIV) & BIT_MASK_CMU_DLY_PRE_DIV)
12217
12218 /* 2 REG_CMU_DLY_CFG                            (Offset 0x1314) */
12219
12220 #define BIT_SHIFT_CMU_DLY_LTR_A2I 24
12221 #define BIT_MASK_CMU_DLY_LTR_A2I 0xff
12222 #define BIT_CMU_DLY_LTR_A2I(x)                                                 \
12223         (((x) & BIT_MASK_CMU_DLY_LTR_A2I) << BIT_SHIFT_CMU_DLY_LTR_A2I)
12224 #define BIT_GET_CMU_DLY_LTR_A2I(x)                                             \
12225         (((x) >> BIT_SHIFT_CMU_DLY_LTR_A2I) & BIT_MASK_CMU_DLY_LTR_A2I)
12226
12227 #define BIT_SHIFT_CMU_DLY_LTR_I2A 16
12228 #define BIT_MASK_CMU_DLY_LTR_I2A 0xff
12229 #define BIT_CMU_DLY_LTR_I2A(x)                                                 \
12230         (((x) & BIT_MASK_CMU_DLY_LTR_I2A) << BIT_SHIFT_CMU_DLY_LTR_I2A)
12231 #define BIT_GET_CMU_DLY_LTR_I2A(x)                                             \
12232         (((x) >> BIT_SHIFT_CMU_DLY_LTR_I2A) & BIT_MASK_CMU_DLY_LTR_I2A)
12233
12234 #define BIT_SHIFT_CMU_DLY_LTR_IDLE 8
12235 #define BIT_MASK_CMU_DLY_LTR_IDLE 0xff
12236 #define BIT_CMU_DLY_LTR_IDLE(x)                                                \
12237         (((x) & BIT_MASK_CMU_DLY_LTR_IDLE) << BIT_SHIFT_CMU_DLY_LTR_IDLE)
12238 #define BIT_GET_CMU_DLY_LTR_IDLE(x)                                            \
12239         (((x) >> BIT_SHIFT_CMU_DLY_LTR_IDLE) & BIT_MASK_CMU_DLY_LTR_IDLE)
12240
12241 #define BIT_SHIFT_CMU_DLY_LTR_ACT 0
12242 #define BIT_MASK_CMU_DLY_LTR_ACT 0xff
12243 #define BIT_CMU_DLY_LTR_ACT(x)                                                 \
12244         (((x) & BIT_MASK_CMU_DLY_LTR_ACT) << BIT_SHIFT_CMU_DLY_LTR_ACT)
12245 #define BIT_GET_CMU_DLY_LTR_ACT(x)                                             \
12246         (((x) >> BIT_SHIFT_CMU_DLY_LTR_ACT) & BIT_MASK_CMU_DLY_LTR_ACT)
12247
12248 /* 2 REG_H2CQ_TXBD_DESA                 (Offset 0x1320) */
12249
12250 #define BIT_SHIFT_H2CQ_TXBD_DESA 0
12251 #define BIT_MASK_H2CQ_TXBD_DESA 0xffffffffffffffffL
12252 #define BIT_H2CQ_TXBD_DESA(x)                                                  \
12253         (((x) & BIT_MASK_H2CQ_TXBD_DESA) << BIT_SHIFT_H2CQ_TXBD_DESA)
12254 #define BIT_GET_H2CQ_TXBD_DESA(x)                                              \
12255         (((x) >> BIT_SHIFT_H2CQ_TXBD_DESA) & BIT_MASK_H2CQ_TXBD_DESA)
12256
12257 /* 2 REG_H2CQ_TXBD_NUM                  (Offset 0x1328) */
12258
12259 #define BIT_PCIE_H2CQ_FLAG BIT(14)
12260
12261 /* 2 REG_H2CQ_TXBD_NUM                  (Offset 0x1328) */
12262
12263 #define BIT_SHIFT_H2CQ_DESC_MODE 12
12264 #define BIT_MASK_H2CQ_DESC_MODE 0x3
12265 #define BIT_H2CQ_DESC_MODE(x)                                                  \
12266         (((x) & BIT_MASK_H2CQ_DESC_MODE) << BIT_SHIFT_H2CQ_DESC_MODE)
12267 #define BIT_GET_H2CQ_DESC_MODE(x)                                              \
12268         (((x) >> BIT_SHIFT_H2CQ_DESC_MODE) & BIT_MASK_H2CQ_DESC_MODE)
12269
12270 #define BIT_SHIFT_H2CQ_DESC_NUM 0
12271 #define BIT_MASK_H2CQ_DESC_NUM 0xfff
12272 #define BIT_H2CQ_DESC_NUM(x)                                                   \
12273         (((x) & BIT_MASK_H2CQ_DESC_NUM) << BIT_SHIFT_H2CQ_DESC_NUM)
12274 #define BIT_GET_H2CQ_DESC_NUM(x)                                               \
12275         (((x) >> BIT_SHIFT_H2CQ_DESC_NUM) & BIT_MASK_H2CQ_DESC_NUM)
12276
12277 /* 2 REG_H2CQ_TXBD_IDX                  (Offset 0x132C) */
12278
12279 #define BIT_SHIFT_H2CQ_HW_IDX 16
12280 #define BIT_MASK_H2CQ_HW_IDX 0xfff
12281 #define BIT_H2CQ_HW_IDX(x)                                                     \
12282         (((x) & BIT_MASK_H2CQ_HW_IDX) << BIT_SHIFT_H2CQ_HW_IDX)
12283 #define BIT_GET_H2CQ_HW_IDX(x)                                                 \
12284         (((x) >> BIT_SHIFT_H2CQ_HW_IDX) & BIT_MASK_H2CQ_HW_IDX)
12285
12286 #define BIT_SHIFT_H2CQ_HOST_IDX 0
12287 #define BIT_MASK_H2CQ_HOST_IDX 0xfff
12288 #define BIT_H2CQ_HOST_IDX(x)                                                   \
12289         (((x) & BIT_MASK_H2CQ_HOST_IDX) << BIT_SHIFT_H2CQ_HOST_IDX)
12290 #define BIT_GET_H2CQ_HOST_IDX(x)                                               \
12291         (((x) >> BIT_SHIFT_H2CQ_HOST_IDX) & BIT_MASK_H2CQ_HOST_IDX)
12292
12293 /* 2 REG_H2CQ_CSR                               (Offset 0x1330) */
12294
12295 #define BIT_H2CQ_FULL BIT(31)
12296 #define BIT_CLR_H2CQ_HOST_IDX BIT(16)
12297 #define BIT_CLR_H2CQ_HW_IDX BIT(8)
12298
12299 /* 2 REG_CHANGE_PCIE_SPEED                      (Offset 0x1350) */
12300
12301 #define BIT_CHANGE_PCIE_SPEED BIT(18)
12302
12303 /* 2 REG_CHANGE_PCIE_SPEED                      (Offset 0x1350) */
12304
12305 #define BIT_SHIFT_GEN1_GEN2 16
12306 #define BIT_MASK_GEN1_GEN2 0x3
12307 #define BIT_GEN1_GEN2(x) (((x) & BIT_MASK_GEN1_GEN2) << BIT_SHIFT_GEN1_GEN2)
12308 #define BIT_GET_GEN1_GEN2(x) (((x) >> BIT_SHIFT_GEN1_GEN2) & BIT_MASK_GEN1_GEN2)
12309
12310 /* 2 REG_CHANGE_PCIE_SPEED                      (Offset 0x1350) */
12311
12312 #define BIT_SHIFT_AUTO_HANG_RELEASE 0
12313 #define BIT_MASK_AUTO_HANG_RELEASE 0x7
12314 #define BIT_AUTO_HANG_RELEASE(x)                                               \
12315         (((x) & BIT_MASK_AUTO_HANG_RELEASE) << BIT_SHIFT_AUTO_HANG_RELEASE)
12316 #define BIT_GET_AUTO_HANG_RELEASE(x)                                           \
12317         (((x) >> BIT_SHIFT_AUTO_HANG_RELEASE) & BIT_MASK_AUTO_HANG_RELEASE)
12318
12319 /* 2 REG_OLD_DEHANG                             (Offset 0x13F4) */
12320
12321 #define BIT_OLD_DEHANG BIT(1)
12322
12323 /* 2 REG_Q0_Q1_INFO                             (Offset 0x1400) */
12324
12325 #define BIT_SHIFT_AC1_PKT_INFO 16
12326 #define BIT_MASK_AC1_PKT_INFO 0xfff
12327 #define BIT_AC1_PKT_INFO(x)                                                    \
12328         (((x) & BIT_MASK_AC1_PKT_INFO) << BIT_SHIFT_AC1_PKT_INFO)
12329 #define BIT_GET_AC1_PKT_INFO(x)                                                \
12330         (((x) >> BIT_SHIFT_AC1_PKT_INFO) & BIT_MASK_AC1_PKT_INFO)
12331
12332 #define BIT_SHIFT_AC0_PKT_INFO 0
12333 #define BIT_MASK_AC0_PKT_INFO 0xfff
12334 #define BIT_AC0_PKT_INFO(x)                                                    \
12335         (((x) & BIT_MASK_AC0_PKT_INFO) << BIT_SHIFT_AC0_PKT_INFO)
12336 #define BIT_GET_AC0_PKT_INFO(x)                                                \
12337         (((x) >> BIT_SHIFT_AC0_PKT_INFO) & BIT_MASK_AC0_PKT_INFO)
12338
12339 /* 2 REG_Q2_Q3_INFO                             (Offset 0x1404) */
12340
12341 #define BIT_SHIFT_AC3_PKT_INFO 16
12342 #define BIT_MASK_AC3_PKT_INFO 0xfff
12343 #define BIT_AC3_PKT_INFO(x)                                                    \
12344         (((x) & BIT_MASK_AC3_PKT_INFO) << BIT_SHIFT_AC3_PKT_INFO)
12345 #define BIT_GET_AC3_PKT_INFO(x)                                                \
12346         (((x) >> BIT_SHIFT_AC3_PKT_INFO) & BIT_MASK_AC3_PKT_INFO)
12347
12348 #define BIT_SHIFT_AC2_PKT_INFO 0
12349 #define BIT_MASK_AC2_PKT_INFO 0xfff
12350 #define BIT_AC2_PKT_INFO(x)                                                    \
12351         (((x) & BIT_MASK_AC2_PKT_INFO) << BIT_SHIFT_AC2_PKT_INFO)
12352 #define BIT_GET_AC2_PKT_INFO(x)                                                \
12353         (((x) >> BIT_SHIFT_AC2_PKT_INFO) & BIT_MASK_AC2_PKT_INFO)
12354
12355 /* 2 REG_Q4_Q5_INFO                             (Offset 0x1408) */
12356
12357 #define BIT_SHIFT_AC5_PKT_INFO 16
12358 #define BIT_MASK_AC5_PKT_INFO 0xfff
12359 #define BIT_AC5_PKT_INFO(x)                                                    \
12360         (((x) & BIT_MASK_AC5_PKT_INFO) << BIT_SHIFT_AC5_PKT_INFO)
12361 #define BIT_GET_AC5_PKT_INFO(x)                                                \
12362         (((x) >> BIT_SHIFT_AC5_PKT_INFO) & BIT_MASK_AC5_PKT_INFO)
12363
12364 #define BIT_SHIFT_AC4_PKT_INFO 0
12365 #define BIT_MASK_AC4_PKT_INFO 0xfff
12366 #define BIT_AC4_PKT_INFO(x)                                                    \
12367         (((x) & BIT_MASK_AC4_PKT_INFO) << BIT_SHIFT_AC4_PKT_INFO)
12368 #define BIT_GET_AC4_PKT_INFO(x)                                                \
12369         (((x) >> BIT_SHIFT_AC4_PKT_INFO) & BIT_MASK_AC4_PKT_INFO)
12370
12371 /* 2 REG_Q6_Q7_INFO                             (Offset 0x140C) */
12372
12373 #define BIT_SHIFT_AC7_PKT_INFO 16
12374 #define BIT_MASK_AC7_PKT_INFO 0xfff
12375 #define BIT_AC7_PKT_INFO(x)                                                    \
12376         (((x) & BIT_MASK_AC7_PKT_INFO) << BIT_SHIFT_AC7_PKT_INFO)
12377 #define BIT_GET_AC7_PKT_INFO(x)                                                \
12378         (((x) >> BIT_SHIFT_AC7_PKT_INFO) & BIT_MASK_AC7_PKT_INFO)
12379
12380 #define BIT_SHIFT_AC6_PKT_INFO 0
12381 #define BIT_MASK_AC6_PKT_INFO 0xfff
12382 #define BIT_AC6_PKT_INFO(x)                                                    \
12383         (((x) & BIT_MASK_AC6_PKT_INFO) << BIT_SHIFT_AC6_PKT_INFO)
12384 #define BIT_GET_AC6_PKT_INFO(x)                                                \
12385         (((x) >> BIT_SHIFT_AC6_PKT_INFO) & BIT_MASK_AC6_PKT_INFO)
12386
12387 /* 2 REG_MGQ_HIQ_INFO                   (Offset 0x1410) */
12388
12389 #define BIT_SHIFT_HIQ_PKT_INFO 16
12390 #define BIT_MASK_HIQ_PKT_INFO 0xfff
12391 #define BIT_HIQ_PKT_INFO(x)                                                    \
12392         (((x) & BIT_MASK_HIQ_PKT_INFO) << BIT_SHIFT_HIQ_PKT_INFO)
12393 #define BIT_GET_HIQ_PKT_INFO(x)                                                \
12394         (((x) >> BIT_SHIFT_HIQ_PKT_INFO) & BIT_MASK_HIQ_PKT_INFO)
12395
12396 #define BIT_SHIFT_MGQ_PKT_INFO 0
12397 #define BIT_MASK_MGQ_PKT_INFO 0xfff
12398 #define BIT_MGQ_PKT_INFO(x)                                                    \
12399         (((x) & BIT_MASK_MGQ_PKT_INFO) << BIT_SHIFT_MGQ_PKT_INFO)
12400 #define BIT_GET_MGQ_PKT_INFO(x)                                                \
12401         (((x) >> BIT_SHIFT_MGQ_PKT_INFO) & BIT_MASK_MGQ_PKT_INFO)
12402
12403 /* 2 REG_CMDQ_BCNQ_INFO                 (Offset 0x1414) */
12404
12405 #define BIT_SHIFT_CMDQ_PKT_INFO 16
12406 #define BIT_MASK_CMDQ_PKT_INFO 0xfff
12407 #define BIT_CMDQ_PKT_INFO(x)                                                   \
12408         (((x) & BIT_MASK_CMDQ_PKT_INFO) << BIT_SHIFT_CMDQ_PKT_INFO)
12409 #define BIT_GET_CMDQ_PKT_INFO(x)                                               \
12410         (((x) >> BIT_SHIFT_CMDQ_PKT_INFO) & BIT_MASK_CMDQ_PKT_INFO)
12411
12412 /* 2 REG_CMDQ_BCNQ_INFO                 (Offset 0x1414) */
12413
12414 #define BIT_SHIFT_BCNQ_PKT_INFO 0
12415 #define BIT_MASK_BCNQ_PKT_INFO 0xfff
12416 #define BIT_BCNQ_PKT_INFO(x)                                                   \
12417         (((x) & BIT_MASK_BCNQ_PKT_INFO) << BIT_SHIFT_BCNQ_PKT_INFO)
12418 #define BIT_GET_BCNQ_PKT_INFO(x)                                               \
12419         (((x) >> BIT_SHIFT_BCNQ_PKT_INFO) & BIT_MASK_BCNQ_PKT_INFO)
12420
12421 /* 2 REG_USEREG_SETTING                 (Offset 0x1420) */
12422
12423 #define BIT_NDPA_USEREG BIT(21)
12424
12425 #define BIT_SHIFT_RETRY_USEREG 19
12426 #define BIT_MASK_RETRY_USEREG 0x3
12427 #define BIT_RETRY_USEREG(x)                                                    \
12428         (((x) & BIT_MASK_RETRY_USEREG) << BIT_SHIFT_RETRY_USEREG)
12429 #define BIT_GET_RETRY_USEREG(x)                                                \
12430         (((x) >> BIT_SHIFT_RETRY_USEREG) & BIT_MASK_RETRY_USEREG)
12431
12432 #define BIT_SHIFT_TRYPKT_USEREG 17
12433 #define BIT_MASK_TRYPKT_USEREG 0x3
12434 #define BIT_TRYPKT_USEREG(x)                                                   \
12435         (((x) & BIT_MASK_TRYPKT_USEREG) << BIT_SHIFT_TRYPKT_USEREG)
12436 #define BIT_GET_TRYPKT_USEREG(x)                                               \
12437         (((x) >> BIT_SHIFT_TRYPKT_USEREG) & BIT_MASK_TRYPKT_USEREG)
12438
12439 #define BIT_CTLPKT_USEREG BIT(16)
12440
12441 /* 2 REG_AESIV_SETTING                  (Offset 0x1424) */
12442
12443 #define BIT_SHIFT_AESIV_OFFSET 0
12444 #define BIT_MASK_AESIV_OFFSET 0xfff
12445 #define BIT_AESIV_OFFSET(x)                                                    \
12446         (((x) & BIT_MASK_AESIV_OFFSET) << BIT_SHIFT_AESIV_OFFSET)
12447 #define BIT_GET_AESIV_OFFSET(x)                                                \
12448         (((x) >> BIT_SHIFT_AESIV_OFFSET) & BIT_MASK_AESIV_OFFSET)
12449
12450 /* 2 REG_BF0_TIME_SETTING                       (Offset 0x1428) */
12451
12452 #define BIT_BF0_TIMER_SET BIT(31)
12453 #define BIT_BF0_TIMER_CLR BIT(30)
12454 #define BIT_BF0_UPDATE_EN BIT(29)
12455 #define BIT_BF0_TIMER_EN BIT(28)
12456
12457 #define BIT_SHIFT_BF0_PRETIME_OVER 16
12458 #define BIT_MASK_BF0_PRETIME_OVER 0xfff
12459 #define BIT_BF0_PRETIME_OVER(x)                                                \
12460         (((x) & BIT_MASK_BF0_PRETIME_OVER) << BIT_SHIFT_BF0_PRETIME_OVER)
12461 #define BIT_GET_BF0_PRETIME_OVER(x)                                            \
12462         (((x) >> BIT_SHIFT_BF0_PRETIME_OVER) & BIT_MASK_BF0_PRETIME_OVER)
12463
12464 #define BIT_SHIFT_BF0_LIFETIME 0
12465 #define BIT_MASK_BF0_LIFETIME 0xffff
12466 #define BIT_BF0_LIFETIME(x)                                                    \
12467         (((x) & BIT_MASK_BF0_LIFETIME) << BIT_SHIFT_BF0_LIFETIME)
12468 #define BIT_GET_BF0_LIFETIME(x)                                                \
12469         (((x) >> BIT_SHIFT_BF0_LIFETIME) & BIT_MASK_BF0_LIFETIME)
12470
12471 /* 2 REG_BF1_TIME_SETTING                       (Offset 0x142C) */
12472
12473 #define BIT_BF1_TIMER_SET BIT(31)
12474 #define BIT_BF1_TIMER_CLR BIT(30)
12475 #define BIT_BF1_UPDATE_EN BIT(29)
12476 #define BIT_BF1_TIMER_EN BIT(28)
12477
12478 #define BIT_SHIFT_BF1_PRETIME_OVER 16
12479 #define BIT_MASK_BF1_PRETIME_OVER 0xfff
12480 #define BIT_BF1_PRETIME_OVER(x)                                                \
12481         (((x) & BIT_MASK_BF1_PRETIME_OVER) << BIT_SHIFT_BF1_PRETIME_OVER)
12482 #define BIT_GET_BF1_PRETIME_OVER(x)                                            \
12483         (((x) >> BIT_SHIFT_BF1_PRETIME_OVER) & BIT_MASK_BF1_PRETIME_OVER)
12484
12485 #define BIT_SHIFT_BF1_LIFETIME 0
12486 #define BIT_MASK_BF1_LIFETIME 0xffff
12487 #define BIT_BF1_LIFETIME(x)                                                    \
12488         (((x) & BIT_MASK_BF1_LIFETIME) << BIT_SHIFT_BF1_LIFETIME)
12489 #define BIT_GET_BF1_LIFETIME(x)                                                \
12490         (((x) >> BIT_SHIFT_BF1_LIFETIME) & BIT_MASK_BF1_LIFETIME)
12491
12492 /* 2 REG_BF_TIMEOUT_EN                  (Offset 0x1430) */
12493
12494 #define BIT_EN_VHT_LDPC BIT(9)
12495 #define BIT_EN_HT_LDPC BIT(8)
12496 #define BIT_BF1_TIMEOUT_EN BIT(1)
12497 #define BIT_BF0_TIMEOUT_EN BIT(0)
12498
12499 /* 2 REG_MACID_RELEASE0                 (Offset 0x1434) */
12500
12501 #define BIT_SHIFT_MACID31_0_RELEASE 0
12502 #define BIT_MASK_MACID31_0_RELEASE 0xffffffffL
12503 #define BIT_MACID31_0_RELEASE(x)                                               \
12504         (((x) & BIT_MASK_MACID31_0_RELEASE) << BIT_SHIFT_MACID31_0_RELEASE)
12505 #define BIT_GET_MACID31_0_RELEASE(x)                                           \
12506         (((x) >> BIT_SHIFT_MACID31_0_RELEASE) & BIT_MASK_MACID31_0_RELEASE)
12507
12508 /* 2 REG_MACID_RELEASE1                 (Offset 0x1438) */
12509
12510 #define BIT_SHIFT_MACID63_32_RELEASE 0
12511 #define BIT_MASK_MACID63_32_RELEASE 0xffffffffL
12512 #define BIT_MACID63_32_RELEASE(x)                                              \
12513         (((x) & BIT_MASK_MACID63_32_RELEASE) << BIT_SHIFT_MACID63_32_RELEASE)
12514 #define BIT_GET_MACID63_32_RELEASE(x)                                          \
12515         (((x) >> BIT_SHIFT_MACID63_32_RELEASE) & BIT_MASK_MACID63_32_RELEASE)
12516
12517 /* 2 REG_MACID_RELEASE2                 (Offset 0x143C) */
12518
12519 #define BIT_SHIFT_MACID95_64_RELEASE 0
12520 #define BIT_MASK_MACID95_64_RELEASE 0xffffffffL
12521 #define BIT_MACID95_64_RELEASE(x)                                              \
12522         (((x) & BIT_MASK_MACID95_64_RELEASE) << BIT_SHIFT_MACID95_64_RELEASE)
12523 #define BIT_GET_MACID95_64_RELEASE(x)                                          \
12524         (((x) >> BIT_SHIFT_MACID95_64_RELEASE) & BIT_MASK_MACID95_64_RELEASE)
12525
12526 /* 2 REG_MACID_RELEASE3                 (Offset 0x1440) */
12527
12528 #define BIT_SHIFT_MACID127_96_RELEASE 0
12529 #define BIT_MASK_MACID127_96_RELEASE 0xffffffffL
12530 #define BIT_MACID127_96_RELEASE(x)                                             \
12531         (((x) & BIT_MASK_MACID127_96_RELEASE) << BIT_SHIFT_MACID127_96_RELEASE)
12532 #define BIT_GET_MACID127_96_RELEASE(x)                                         \
12533         (((x) >> BIT_SHIFT_MACID127_96_RELEASE) & BIT_MASK_MACID127_96_RELEASE)
12534
12535 /* 2 REG_MACID_RELEASE_SETTING          (Offset 0x1444) */
12536
12537 #define BIT_MACID_VALUE BIT(7)
12538
12539 #define BIT_SHIFT_MACID_OFFSET 0
12540 #define BIT_MASK_MACID_OFFSET 0x7f
12541 #define BIT_MACID_OFFSET(x)                                                    \
12542         (((x) & BIT_MASK_MACID_OFFSET) << BIT_SHIFT_MACID_OFFSET)
12543 #define BIT_GET_MACID_OFFSET(x)                                                \
12544         (((x) >> BIT_SHIFT_MACID_OFFSET) & BIT_MASK_MACID_OFFSET)
12545
12546 /* 2 REG_FAST_EDCA_VOVI_SETTING         (Offset 0x1448) */
12547
12548 #define BIT_SHIFT_VI_FAST_EDCA_TO 24
12549 #define BIT_MASK_VI_FAST_EDCA_TO 0xff
12550 #define BIT_VI_FAST_EDCA_TO(x)                                                 \
12551         (((x) & BIT_MASK_VI_FAST_EDCA_TO) << BIT_SHIFT_VI_FAST_EDCA_TO)
12552 #define BIT_GET_VI_FAST_EDCA_TO(x)                                             \
12553         (((x) >> BIT_SHIFT_VI_FAST_EDCA_TO) & BIT_MASK_VI_FAST_EDCA_TO)
12554
12555 #define BIT_VI_THRESHOLD_SEL BIT(23)
12556
12557 #define BIT_SHIFT_VI_FAST_EDCA_PKT_TH 16
12558 #define BIT_MASK_VI_FAST_EDCA_PKT_TH 0x7f
12559 #define BIT_VI_FAST_EDCA_PKT_TH(x)                                             \
12560         (((x) & BIT_MASK_VI_FAST_EDCA_PKT_TH) << BIT_SHIFT_VI_FAST_EDCA_PKT_TH)
12561 #define BIT_GET_VI_FAST_EDCA_PKT_TH(x)                                         \
12562         (((x) >> BIT_SHIFT_VI_FAST_EDCA_PKT_TH) & BIT_MASK_VI_FAST_EDCA_PKT_TH)
12563
12564 #define BIT_SHIFT_VO_FAST_EDCA_TO 8
12565 #define BIT_MASK_VO_FAST_EDCA_TO 0xff
12566 #define BIT_VO_FAST_EDCA_TO(x)                                                 \
12567         (((x) & BIT_MASK_VO_FAST_EDCA_TO) << BIT_SHIFT_VO_FAST_EDCA_TO)
12568 #define BIT_GET_VO_FAST_EDCA_TO(x)                                             \
12569         (((x) >> BIT_SHIFT_VO_FAST_EDCA_TO) & BIT_MASK_VO_FAST_EDCA_TO)
12570
12571 #define BIT_VO_THRESHOLD_SEL BIT(7)
12572
12573 #define BIT_SHIFT_VO_FAST_EDCA_PKT_TH 0
12574 #define BIT_MASK_VO_FAST_EDCA_PKT_TH 0x7f
12575 #define BIT_VO_FAST_EDCA_PKT_TH(x)                                             \
12576         (((x) & BIT_MASK_VO_FAST_EDCA_PKT_TH) << BIT_SHIFT_VO_FAST_EDCA_PKT_TH)
12577 #define BIT_GET_VO_FAST_EDCA_PKT_TH(x)                                         \
12578         (((x) >> BIT_SHIFT_VO_FAST_EDCA_PKT_TH) & BIT_MASK_VO_FAST_EDCA_PKT_TH)
12579
12580 /* 2 REG_FAST_EDCA_BEBK_SETTING         (Offset 0x144C) */
12581
12582 #define BIT_SHIFT_BK_FAST_EDCA_TO 24
12583 #define BIT_MASK_BK_FAST_EDCA_TO 0xff
12584 #define BIT_BK_FAST_EDCA_TO(x)                                                 \
12585         (((x) & BIT_MASK_BK_FAST_EDCA_TO) << BIT_SHIFT_BK_FAST_EDCA_TO)
12586 #define BIT_GET_BK_FAST_EDCA_TO(x)                                             \
12587         (((x) >> BIT_SHIFT_BK_FAST_EDCA_TO) & BIT_MASK_BK_FAST_EDCA_TO)
12588
12589 #define BIT_BK_THRESHOLD_SEL BIT(23)
12590
12591 #define BIT_SHIFT_BK_FAST_EDCA_PKT_TH 16
12592 #define BIT_MASK_BK_FAST_EDCA_PKT_TH 0x7f
12593 #define BIT_BK_FAST_EDCA_PKT_TH(x)                                             \
12594         (((x) & BIT_MASK_BK_FAST_EDCA_PKT_TH) << BIT_SHIFT_BK_FAST_EDCA_PKT_TH)
12595 #define BIT_GET_BK_FAST_EDCA_PKT_TH(x)                                         \
12596         (((x) >> BIT_SHIFT_BK_FAST_EDCA_PKT_TH) & BIT_MASK_BK_FAST_EDCA_PKT_TH)
12597
12598 #define BIT_SHIFT_BE_FAST_EDCA_TO 8
12599 #define BIT_MASK_BE_FAST_EDCA_TO 0xff
12600 #define BIT_BE_FAST_EDCA_TO(x)                                                 \
12601         (((x) & BIT_MASK_BE_FAST_EDCA_TO) << BIT_SHIFT_BE_FAST_EDCA_TO)
12602 #define BIT_GET_BE_FAST_EDCA_TO(x)                                             \
12603         (((x) >> BIT_SHIFT_BE_FAST_EDCA_TO) & BIT_MASK_BE_FAST_EDCA_TO)
12604
12605 #define BIT_BE_THRESHOLD_SEL BIT(7)
12606
12607 #define BIT_SHIFT_BE_FAST_EDCA_PKT_TH 0
12608 #define BIT_MASK_BE_FAST_EDCA_PKT_TH 0x7f
12609 #define BIT_BE_FAST_EDCA_PKT_TH(x)                                             \
12610         (((x) & BIT_MASK_BE_FAST_EDCA_PKT_TH) << BIT_SHIFT_BE_FAST_EDCA_PKT_TH)
12611 #define BIT_GET_BE_FAST_EDCA_PKT_TH(x)                                         \
12612         (((x) >> BIT_SHIFT_BE_FAST_EDCA_PKT_TH) & BIT_MASK_BE_FAST_EDCA_PKT_TH)
12613
12614 /* 2 REG_MACID_DROP0                            (Offset 0x1450) */
12615
12616 #define BIT_SHIFT_MACID31_0_DROP 0
12617 #define BIT_MASK_MACID31_0_DROP 0xffffffffL
12618 #define BIT_MACID31_0_DROP(x)                                                  \
12619         (((x) & BIT_MASK_MACID31_0_DROP) << BIT_SHIFT_MACID31_0_DROP)
12620 #define BIT_GET_MACID31_0_DROP(x)                                              \
12621         (((x) >> BIT_SHIFT_MACID31_0_DROP) & BIT_MASK_MACID31_0_DROP)
12622
12623 /* 2 REG_MACID_DROP1                            (Offset 0x1454) */
12624
12625 #define BIT_SHIFT_MACID63_32_DROP 0
12626 #define BIT_MASK_MACID63_32_DROP 0xffffffffL
12627 #define BIT_MACID63_32_DROP(x)                                                 \
12628         (((x) & BIT_MASK_MACID63_32_DROP) << BIT_SHIFT_MACID63_32_DROP)
12629 #define BIT_GET_MACID63_32_DROP(x)                                             \
12630         (((x) >> BIT_SHIFT_MACID63_32_DROP) & BIT_MASK_MACID63_32_DROP)
12631
12632 /* 2 REG_MACID_DROP2                            (Offset 0x1458) */
12633
12634 #define BIT_SHIFT_MACID95_64_DROP 0
12635 #define BIT_MASK_MACID95_64_DROP 0xffffffffL
12636 #define BIT_MACID95_64_DROP(x)                                                 \
12637         (((x) & BIT_MASK_MACID95_64_DROP) << BIT_SHIFT_MACID95_64_DROP)
12638 #define BIT_GET_MACID95_64_DROP(x)                                             \
12639         (((x) >> BIT_SHIFT_MACID95_64_DROP) & BIT_MASK_MACID95_64_DROP)
12640
12641 /* 2 REG_MACID_DROP3                            (Offset 0x145C) */
12642
12643 #define BIT_SHIFT_MACID127_96_DROP 0
12644 #define BIT_MASK_MACID127_96_DROP 0xffffffffL
12645 #define BIT_MACID127_96_DROP(x)                                                \
12646         (((x) & BIT_MASK_MACID127_96_DROP) << BIT_SHIFT_MACID127_96_DROP)
12647 #define BIT_GET_MACID127_96_DROP(x)                                            \
12648         (((x) >> BIT_SHIFT_MACID127_96_DROP) & BIT_MASK_MACID127_96_DROP)
12649
12650 /* 2 REG_R_MACID_RELEASE_SUCCESS_0              (Offset 0x1460) */
12651
12652 #define BIT_SHIFT_R_MACID_RELEASE_SUCCESS_0 0
12653 #define BIT_MASK_R_MACID_RELEASE_SUCCESS_0 0xffffffffL
12654 #define BIT_R_MACID_RELEASE_SUCCESS_0(x)                                       \
12655         (((x) & BIT_MASK_R_MACID_RELEASE_SUCCESS_0)                            \
12656          << BIT_SHIFT_R_MACID_RELEASE_SUCCESS_0)
12657 #define BIT_GET_R_MACID_RELEASE_SUCCESS_0(x)                                   \
12658         (((x) >> BIT_SHIFT_R_MACID_RELEASE_SUCCESS_0) &                        \
12659          BIT_MASK_R_MACID_RELEASE_SUCCESS_0)
12660
12661 /* 2 REG_R_MACID_RELEASE_SUCCESS_1              (Offset 0x1464) */
12662
12663 #define BIT_SHIFT_R_MACID_RELEASE_SUCCESS_1 0
12664 #define BIT_MASK_R_MACID_RELEASE_SUCCESS_1 0xffffffffL
12665 #define BIT_R_MACID_RELEASE_SUCCESS_1(x)                                       \
12666         (((x) & BIT_MASK_R_MACID_RELEASE_SUCCESS_1)                            \
12667          << BIT_SHIFT_R_MACID_RELEASE_SUCCESS_1)
12668 #define BIT_GET_R_MACID_RELEASE_SUCCESS_1(x)                                   \
12669         (((x) >> BIT_SHIFT_R_MACID_RELEASE_SUCCESS_1) &                        \
12670          BIT_MASK_R_MACID_RELEASE_SUCCESS_1)
12671
12672 /* 2 REG_R_MACID_RELEASE_SUCCESS_2              (Offset 0x1468) */
12673
12674 #define BIT_SHIFT_R_MACID_RELEASE_SUCCESS_2 0
12675 #define BIT_MASK_R_MACID_RELEASE_SUCCESS_2 0xffffffffL
12676 #define BIT_R_MACID_RELEASE_SUCCESS_2(x)                                       \
12677         (((x) & BIT_MASK_R_MACID_RELEASE_SUCCESS_2)                            \
12678          << BIT_SHIFT_R_MACID_RELEASE_SUCCESS_2)
12679 #define BIT_GET_R_MACID_RELEASE_SUCCESS_2(x)                                   \
12680         (((x) >> BIT_SHIFT_R_MACID_RELEASE_SUCCESS_2) &                        \
12681          BIT_MASK_R_MACID_RELEASE_SUCCESS_2)
12682
12683 /* 2 REG_R_MACID_RELEASE_SUCCESS_3              (Offset 0x146C) */
12684
12685 #define BIT_SHIFT_R_MACID_RELEASE_SUCCESS_3 0
12686 #define BIT_MASK_R_MACID_RELEASE_SUCCESS_3 0xffffffffL
12687 #define BIT_R_MACID_RELEASE_SUCCESS_3(x)                                       \
12688         (((x) & BIT_MASK_R_MACID_RELEASE_SUCCESS_3)                            \
12689          << BIT_SHIFT_R_MACID_RELEASE_SUCCESS_3)
12690 #define BIT_GET_R_MACID_RELEASE_SUCCESS_3(x)                                   \
12691         (((x) >> BIT_SHIFT_R_MACID_RELEASE_SUCCESS_3) &                        \
12692          BIT_MASK_R_MACID_RELEASE_SUCCESS_3)
12693
12694 /* 2 REG_MGG_FIFO_CRTL                  (Offset 0x1470) */
12695
12696 #define BIT_R_MGG_FIFO_EN BIT(31)
12697
12698 #define BIT_SHIFT_R_MGG_FIFO_PG_SIZE 28
12699 #define BIT_MASK_R_MGG_FIFO_PG_SIZE 0x7
12700 #define BIT_R_MGG_FIFO_PG_SIZE(x)                                              \
12701         (((x) & BIT_MASK_R_MGG_FIFO_PG_SIZE) << BIT_SHIFT_R_MGG_FIFO_PG_SIZE)
12702 #define BIT_GET_R_MGG_FIFO_PG_SIZE(x)                                          \
12703         (((x) >> BIT_SHIFT_R_MGG_FIFO_PG_SIZE) & BIT_MASK_R_MGG_FIFO_PG_SIZE)
12704
12705 #define BIT_SHIFT_R_MGG_FIFO_START_PG 16
12706 #define BIT_MASK_R_MGG_FIFO_START_PG 0xfff
12707 #define BIT_R_MGG_FIFO_START_PG(x)                                             \
12708         (((x) & BIT_MASK_R_MGG_FIFO_START_PG) << BIT_SHIFT_R_MGG_FIFO_START_PG)
12709 #define BIT_GET_R_MGG_FIFO_START_PG(x)                                         \
12710         (((x) >> BIT_SHIFT_R_MGG_FIFO_START_PG) & BIT_MASK_R_MGG_FIFO_START_PG)
12711
12712 #define BIT_SHIFT_R_MGG_FIFO_SIZE 14
12713 #define BIT_MASK_R_MGG_FIFO_SIZE 0x3
12714 #define BIT_R_MGG_FIFO_SIZE(x)                                                 \
12715         (((x) & BIT_MASK_R_MGG_FIFO_SIZE) << BIT_SHIFT_R_MGG_FIFO_SIZE)
12716 #define BIT_GET_R_MGG_FIFO_SIZE(x)                                             \
12717         (((x) >> BIT_SHIFT_R_MGG_FIFO_SIZE) & BIT_MASK_R_MGG_FIFO_SIZE)
12718
12719 #define BIT_R_MGG_FIFO_PAUSE BIT(13)
12720
12721 #define BIT_SHIFT_R_MGG_FIFO_RPTR 8
12722 #define BIT_MASK_R_MGG_FIFO_RPTR 0x1f
12723 #define BIT_R_MGG_FIFO_RPTR(x)                                                 \
12724         (((x) & BIT_MASK_R_MGG_FIFO_RPTR) << BIT_SHIFT_R_MGG_FIFO_RPTR)
12725 #define BIT_GET_R_MGG_FIFO_RPTR(x)                                             \
12726         (((x) >> BIT_SHIFT_R_MGG_FIFO_RPTR) & BIT_MASK_R_MGG_FIFO_RPTR)
12727
12728 #define BIT_R_MGG_FIFO_OV BIT(7)
12729 #define BIT_R_MGG_FIFO_WPTR_ERROR BIT(6)
12730 #define BIT_R_EN_CPU_LIFETIME BIT(5)
12731
12732 #define BIT_SHIFT_R_MGG_FIFO_WPTR 0
12733 #define BIT_MASK_R_MGG_FIFO_WPTR 0x1f
12734 #define BIT_R_MGG_FIFO_WPTR(x)                                                 \
12735         (((x) & BIT_MASK_R_MGG_FIFO_WPTR) << BIT_SHIFT_R_MGG_FIFO_WPTR)
12736 #define BIT_GET_R_MGG_FIFO_WPTR(x)                                             \
12737         (((x) >> BIT_SHIFT_R_MGG_FIFO_WPTR) & BIT_MASK_R_MGG_FIFO_WPTR)
12738
12739 /* 2 REG_MGG_FIFO_INT                   (Offset 0x1474) */
12740
12741 #define BIT_SHIFT_R_MGG_FIFO_INT_FLAG 16
12742 #define BIT_MASK_R_MGG_FIFO_INT_FLAG 0xffff
12743 #define BIT_R_MGG_FIFO_INT_FLAG(x)                                             \
12744         (((x) & BIT_MASK_R_MGG_FIFO_INT_FLAG) << BIT_SHIFT_R_MGG_FIFO_INT_FLAG)
12745 #define BIT_GET_R_MGG_FIFO_INT_FLAG(x)                                         \
12746         (((x) >> BIT_SHIFT_R_MGG_FIFO_INT_FLAG) & BIT_MASK_R_MGG_FIFO_INT_FLAG)
12747
12748 #define BIT_SHIFT_R_MGG_FIFO_INT_MASK 0
12749 #define BIT_MASK_R_MGG_FIFO_INT_MASK 0xffff
12750 #define BIT_R_MGG_FIFO_INT_MASK(x)                                             \
12751         (((x) & BIT_MASK_R_MGG_FIFO_INT_MASK) << BIT_SHIFT_R_MGG_FIFO_INT_MASK)
12752 #define BIT_GET_R_MGG_FIFO_INT_MASK(x)                                         \
12753         (((x) >> BIT_SHIFT_R_MGG_FIFO_INT_MASK) & BIT_MASK_R_MGG_FIFO_INT_MASK)
12754
12755 /* 2 REG_MGG_FIFO_LIFETIME                      (Offset 0x1478) */
12756
12757 #define BIT_SHIFT_R_MGG_FIFO_LIFETIME 16
12758 #define BIT_MASK_R_MGG_FIFO_LIFETIME 0xffff
12759 #define BIT_R_MGG_FIFO_LIFETIME(x)                                             \
12760         (((x) & BIT_MASK_R_MGG_FIFO_LIFETIME) << BIT_SHIFT_R_MGG_FIFO_LIFETIME)
12761 #define BIT_GET_R_MGG_FIFO_LIFETIME(x)                                         \
12762         (((x) >> BIT_SHIFT_R_MGG_FIFO_LIFETIME) & BIT_MASK_R_MGG_FIFO_LIFETIME)
12763
12764 #define BIT_SHIFT_R_MGG_FIFO_VALID_MAP 0
12765 #define BIT_MASK_R_MGG_FIFO_VALID_MAP 0xffff
12766 #define BIT_R_MGG_FIFO_VALID_MAP(x)                                            \
12767         (((x) & BIT_MASK_R_MGG_FIFO_VALID_MAP)                                 \
12768          << BIT_SHIFT_R_MGG_FIFO_VALID_MAP)
12769 #define BIT_GET_R_MGG_FIFO_VALID_MAP(x)                                        \
12770         (((x) >> BIT_SHIFT_R_MGG_FIFO_VALID_MAP) &                             \
12771          BIT_MASK_R_MGG_FIFO_VALID_MAP)
12772
12773 /* 2 REG_R_MACID_RELEASE_SUCCESS_CLEAR_OFFSET (Offset 0x147C) */
12774
12775 #define BIT_SHIFT_R_MACID_RELEASE_SUCCESS_CLEAR_OFFSET 0
12776 #define BIT_MASK_R_MACID_RELEASE_SUCCESS_CLEAR_OFFSET 0x7f
12777 #define BIT_R_MACID_RELEASE_SUCCESS_CLEAR_OFFSET(x)                            \
12778         (((x) & BIT_MASK_R_MACID_RELEASE_SUCCESS_CLEAR_OFFSET)                 \
12779          << BIT_SHIFT_R_MACID_RELEASE_SUCCESS_CLEAR_OFFSET)
12780 #define BIT_GET_R_MACID_RELEASE_SUCCESS_CLEAR_OFFSET(x)                        \
12781         (((x) >> BIT_SHIFT_R_MACID_RELEASE_SUCCESS_CLEAR_OFFSET) &             \
12782          BIT_MASK_R_MACID_RELEASE_SUCCESS_CLEAR_OFFSET)
12783
12784 #define BIT_SHIFT_P2PON_DIS_TXTIME 0
12785 #define BIT_MASK_P2PON_DIS_TXTIME 0xff
12786 #define BIT_P2PON_DIS_TXTIME(x)                                                \
12787         (((x) & BIT_MASK_P2PON_DIS_TXTIME) << BIT_SHIFT_P2PON_DIS_TXTIME)
12788 #define BIT_GET_P2PON_DIS_TXTIME(x)                                            \
12789         (((x) >> BIT_SHIFT_P2PON_DIS_TXTIME) & BIT_MASK_P2PON_DIS_TXTIME)
12790
12791 /* 2 REG_MACID_SHCUT_OFFSET                     (Offset 0x1480) */
12792
12793 #define BIT_SHIFT_MACID_SHCUT_OFFSET_V1 0
12794 #define BIT_MASK_MACID_SHCUT_OFFSET_V1 0xff
12795 #define BIT_MACID_SHCUT_OFFSET_V1(x)                                           \
12796         (((x) & BIT_MASK_MACID_SHCUT_OFFSET_V1)                                \
12797          << BIT_SHIFT_MACID_SHCUT_OFFSET_V1)
12798 #define BIT_GET_MACID_SHCUT_OFFSET_V1(x)                                       \
12799         (((x) >> BIT_SHIFT_MACID_SHCUT_OFFSET_V1) &                            \
12800          BIT_MASK_MACID_SHCUT_OFFSET_V1)
12801
12802 /* 2 REG_MU_TX_CTL                              (Offset 0x14C0) */
12803
12804 #define BIT_R_EN_REVERS_GTAB BIT(6)
12805
12806 #define BIT_SHIFT_R_MU_TABLE_VALID 0
12807 #define BIT_MASK_R_MU_TABLE_VALID 0x3f
12808 #define BIT_R_MU_TABLE_VALID(x)                                                \
12809         (((x) & BIT_MASK_R_MU_TABLE_VALID) << BIT_SHIFT_R_MU_TABLE_VALID)
12810 #define BIT_GET_R_MU_TABLE_VALID(x)                                            \
12811         (((x) >> BIT_SHIFT_R_MU_TABLE_VALID) & BIT_MASK_R_MU_TABLE_VALID)
12812
12813 #define BIT_SHIFT_R_MU_STA_GTAB_VALID 0
12814 #define BIT_MASK_R_MU_STA_GTAB_VALID 0xffffffffL
12815 #define BIT_R_MU_STA_GTAB_VALID(x)                                             \
12816         (((x) & BIT_MASK_R_MU_STA_GTAB_VALID) << BIT_SHIFT_R_MU_STA_GTAB_VALID)
12817 #define BIT_GET_R_MU_STA_GTAB_VALID(x)                                         \
12818         (((x) >> BIT_SHIFT_R_MU_STA_GTAB_VALID) & BIT_MASK_R_MU_STA_GTAB_VALID)
12819
12820 #define BIT_SHIFT_R_MU_STA_GTAB_POSITION 0
12821 #define BIT_MASK_R_MU_STA_GTAB_POSITION 0xffffffffffffffffL
12822 #define BIT_R_MU_STA_GTAB_POSITION(x)                                          \
12823         (((x) & BIT_MASK_R_MU_STA_GTAB_POSITION)                               \
12824          << BIT_SHIFT_R_MU_STA_GTAB_POSITION)
12825 #define BIT_GET_R_MU_STA_GTAB_POSITION(x)                                      \
12826         (((x) >> BIT_SHIFT_R_MU_STA_GTAB_POSITION) &                           \
12827          BIT_MASK_R_MU_STA_GTAB_POSITION)
12828
12829 /* 2 REG_MU_TRX_DBG_CNT                 (Offset 0x14D0) */
12830
12831 #define BIT_MU_DNGCNT_RST BIT(20)
12832
12833 #define BIT_SHIFT_MU_DBGCNT_SEL 16
12834 #define BIT_MASK_MU_DBGCNT_SEL 0xf
12835 #define BIT_MU_DBGCNT_SEL(x)                                                   \
12836         (((x) & BIT_MASK_MU_DBGCNT_SEL) << BIT_SHIFT_MU_DBGCNT_SEL)
12837 #define BIT_GET_MU_DBGCNT_SEL(x)                                               \
12838         (((x) >> BIT_SHIFT_MU_DBGCNT_SEL) & BIT_MASK_MU_DBGCNT_SEL)
12839
12840 #define BIT_SHIFT_MU_DNGCNT 0
12841 #define BIT_MASK_MU_DNGCNT 0xffff
12842 #define BIT_MU_DNGCNT(x) (((x) & BIT_MASK_MU_DNGCNT) << BIT_SHIFT_MU_DNGCNT)
12843 #define BIT_GET_MU_DNGCNT(x) (((x) >> BIT_SHIFT_MU_DNGCNT) & BIT_MASK_MU_DNGCNT)
12844
12845 /* 2 REG_CPUMGQ_TX_TIMER                        (Offset 0x1500) */
12846
12847 #define BIT_SHIFT_CPUMGQ_TX_TIMER_V1 0
12848 #define BIT_MASK_CPUMGQ_TX_TIMER_V1 0xffffffffL
12849 #define BIT_CPUMGQ_TX_TIMER_V1(x)                                              \
12850         (((x) & BIT_MASK_CPUMGQ_TX_TIMER_V1) << BIT_SHIFT_CPUMGQ_TX_TIMER_V1)
12851 #define BIT_GET_CPUMGQ_TX_TIMER_V1(x)                                          \
12852         (((x) >> BIT_SHIFT_CPUMGQ_TX_TIMER_V1) & BIT_MASK_CPUMGQ_TX_TIMER_V1)
12853
12854 /* 2 REG_PS_TIMER_A                             (Offset 0x1504) */
12855
12856 #define BIT_SHIFT_PS_TIMER_A_V1 0
12857 #define BIT_MASK_PS_TIMER_A_V1 0xffffffffL
12858 #define BIT_PS_TIMER_A_V1(x)                                                   \
12859         (((x) & BIT_MASK_PS_TIMER_A_V1) << BIT_SHIFT_PS_TIMER_A_V1)
12860 #define BIT_GET_PS_TIMER_A_V1(x)                                               \
12861         (((x) >> BIT_SHIFT_PS_TIMER_A_V1) & BIT_MASK_PS_TIMER_A_V1)
12862
12863 /* 2 REG_PS_TIMER_B                             (Offset 0x1508) */
12864
12865 #define BIT_SHIFT_PS_TIMER_B_V1 0
12866 #define BIT_MASK_PS_TIMER_B_V1 0xffffffffL
12867 #define BIT_PS_TIMER_B_V1(x)                                                   \
12868         (((x) & BIT_MASK_PS_TIMER_B_V1) << BIT_SHIFT_PS_TIMER_B_V1)
12869 #define BIT_GET_PS_TIMER_B_V1(x)                                               \
12870         (((x) >> BIT_SHIFT_PS_TIMER_B_V1) & BIT_MASK_PS_TIMER_B_V1)
12871
12872 /* 2 REG_PS_TIMER_C                             (Offset 0x150C) */
12873
12874 #define BIT_SHIFT_PS_TIMER_C_V1 0
12875 #define BIT_MASK_PS_TIMER_C_V1 0xffffffffL
12876 #define BIT_PS_TIMER_C_V1(x)                                                   \
12877         (((x) & BIT_MASK_PS_TIMER_C_V1) << BIT_SHIFT_PS_TIMER_C_V1)
12878 #define BIT_GET_PS_TIMER_C_V1(x)                                               \
12879         (((x) >> BIT_SHIFT_PS_TIMER_C_V1) & BIT_MASK_PS_TIMER_C_V1)
12880
12881 /* 2 REG_PS_TIMER_ABC_CPUMGQ_TIMER_CRTL (Offset 0x1510) */
12882
12883 #define BIT_CPUMGQ_TIMER_EN BIT(31)
12884 #define BIT_CPUMGQ_TX_EN BIT(28)
12885
12886 #define BIT_SHIFT_CPUMGQ_TIMER_TSF_SEL 24
12887 #define BIT_MASK_CPUMGQ_TIMER_TSF_SEL 0x7
12888 #define BIT_CPUMGQ_TIMER_TSF_SEL(x)                                            \
12889         (((x) & BIT_MASK_CPUMGQ_TIMER_TSF_SEL)                                 \
12890          << BIT_SHIFT_CPUMGQ_TIMER_TSF_SEL)
12891 #define BIT_GET_CPUMGQ_TIMER_TSF_SEL(x)                                        \
12892         (((x) >> BIT_SHIFT_CPUMGQ_TIMER_TSF_SEL) &                             \
12893          BIT_MASK_CPUMGQ_TIMER_TSF_SEL)
12894
12895 #define BIT_PS_TIMER_C_EN BIT(23)
12896
12897 #define BIT_SHIFT_PS_TIMER_C_TSF_SEL 16
12898 #define BIT_MASK_PS_TIMER_C_TSF_SEL 0x7
12899 #define BIT_PS_TIMER_C_TSF_SEL(x)                                              \
12900         (((x) & BIT_MASK_PS_TIMER_C_TSF_SEL) << BIT_SHIFT_PS_TIMER_C_TSF_SEL)
12901 #define BIT_GET_PS_TIMER_C_TSF_SEL(x)                                          \
12902         (((x) >> BIT_SHIFT_PS_TIMER_C_TSF_SEL) & BIT_MASK_PS_TIMER_C_TSF_SEL)
12903
12904 #define BIT_PS_TIMER_B_EN BIT(15)
12905
12906 #define BIT_SHIFT_PS_TIMER_B_TSF_SEL 8
12907 #define BIT_MASK_PS_TIMER_B_TSF_SEL 0x7
12908 #define BIT_PS_TIMER_B_TSF_SEL(x)                                              \
12909         (((x) & BIT_MASK_PS_TIMER_B_TSF_SEL) << BIT_SHIFT_PS_TIMER_B_TSF_SEL)
12910 #define BIT_GET_PS_TIMER_B_TSF_SEL(x)                                          \
12911         (((x) >> BIT_SHIFT_PS_TIMER_B_TSF_SEL) & BIT_MASK_PS_TIMER_B_TSF_SEL)
12912
12913 #define BIT_PS_TIMER_A_EN BIT(7)
12914
12915 #define BIT_SHIFT_PS_TIMER_A_TSF_SEL 0
12916 #define BIT_MASK_PS_TIMER_A_TSF_SEL 0x7
12917 #define BIT_PS_TIMER_A_TSF_SEL(x)                                              \
12918         (((x) & BIT_MASK_PS_TIMER_A_TSF_SEL) << BIT_SHIFT_PS_TIMER_A_TSF_SEL)
12919 #define BIT_GET_PS_TIMER_A_TSF_SEL(x)                                          \
12920         (((x) >> BIT_SHIFT_PS_TIMER_A_TSF_SEL) & BIT_MASK_PS_TIMER_A_TSF_SEL)
12921
12922 /* 2 REG_CPUMGQ_TX_TIMER_EARLY          (Offset 0x1514) */
12923
12924 #define BIT_SHIFT_CPUMGQ_TX_TIMER_EARLY 0
12925 #define BIT_MASK_CPUMGQ_TX_TIMER_EARLY 0xff
12926 #define BIT_CPUMGQ_TX_TIMER_EARLY(x)                                           \
12927         (((x) & BIT_MASK_CPUMGQ_TX_TIMER_EARLY)                                \
12928          << BIT_SHIFT_CPUMGQ_TX_TIMER_EARLY)
12929 #define BIT_GET_CPUMGQ_TX_TIMER_EARLY(x)                                       \
12930         (((x) >> BIT_SHIFT_CPUMGQ_TX_TIMER_EARLY) &                            \
12931          BIT_MASK_CPUMGQ_TX_TIMER_EARLY)
12932
12933 /* 2 REG_PS_TIMER_A_EARLY                       (Offset 0x1515) */
12934
12935 #define BIT_SHIFT_PS_TIMER_A_EARLY 0
12936 #define BIT_MASK_PS_TIMER_A_EARLY 0xff
12937 #define BIT_PS_TIMER_A_EARLY(x)                                                \
12938         (((x) & BIT_MASK_PS_TIMER_A_EARLY) << BIT_SHIFT_PS_TIMER_A_EARLY)
12939 #define BIT_GET_PS_TIMER_A_EARLY(x)                                            \
12940         (((x) >> BIT_SHIFT_PS_TIMER_A_EARLY) & BIT_MASK_PS_TIMER_A_EARLY)
12941
12942 /* 2 REG_PS_TIMER_B_EARLY                       (Offset 0x1516) */
12943
12944 #define BIT_SHIFT_PS_TIMER_B_EARLY 0
12945 #define BIT_MASK_PS_TIMER_B_EARLY 0xff
12946 #define BIT_PS_TIMER_B_EARLY(x)                                                \
12947         (((x) & BIT_MASK_PS_TIMER_B_EARLY) << BIT_SHIFT_PS_TIMER_B_EARLY)
12948 #define BIT_GET_PS_TIMER_B_EARLY(x)                                            \
12949         (((x) >> BIT_SHIFT_PS_TIMER_B_EARLY) & BIT_MASK_PS_TIMER_B_EARLY)
12950
12951 /* 2 REG_PS_TIMER_C_EARLY                       (Offset 0x1517) */
12952
12953 #define BIT_SHIFT_PS_TIMER_C_EARLY 0
12954 #define BIT_MASK_PS_TIMER_C_EARLY 0xff
12955 #define BIT_PS_TIMER_C_EARLY(x)                                                \
12956         (((x) & BIT_MASK_PS_TIMER_C_EARLY) << BIT_SHIFT_PS_TIMER_C_EARLY)
12957 #define BIT_GET_PS_TIMER_C_EARLY(x)                                            \
12958         (((x) >> BIT_SHIFT_PS_TIMER_C_EARLY) & BIT_MASK_PS_TIMER_C_EARLY)
12959
12960 /* 2 REG_BCN_PSR_RPT2                   (Offset 0x1600) */
12961
12962 #define BIT_SHIFT_DTIM_CNT2 24
12963 #define BIT_MASK_DTIM_CNT2 0xff
12964 #define BIT_DTIM_CNT2(x) (((x) & BIT_MASK_DTIM_CNT2) << BIT_SHIFT_DTIM_CNT2)
12965 #define BIT_GET_DTIM_CNT2(x) (((x) >> BIT_SHIFT_DTIM_CNT2) & BIT_MASK_DTIM_CNT2)
12966
12967 #define BIT_SHIFT_DTIM_PERIOD2 16
12968 #define BIT_MASK_DTIM_PERIOD2 0xff
12969 #define BIT_DTIM_PERIOD2(x)                                                    \
12970         (((x) & BIT_MASK_DTIM_PERIOD2) << BIT_SHIFT_DTIM_PERIOD2)
12971 #define BIT_GET_DTIM_PERIOD2(x)                                                \
12972         (((x) >> BIT_SHIFT_DTIM_PERIOD2) & BIT_MASK_DTIM_PERIOD2)
12973
12974 #define BIT_DTIM2 BIT(15)
12975 #define BIT_TIM2 BIT(14)
12976
12977 #define BIT_SHIFT_PS_AID_2 0
12978 #define BIT_MASK_PS_AID_2 0x7ff
12979 #define BIT_PS_AID_2(x) (((x) & BIT_MASK_PS_AID_2) << BIT_SHIFT_PS_AID_2)
12980 #define BIT_GET_PS_AID_2(x) (((x) >> BIT_SHIFT_PS_AID_2) & BIT_MASK_PS_AID_2)
12981
12982 /* 2 REG_BCN_PSR_RPT3                   (Offset 0x1604) */
12983
12984 #define BIT_SHIFT_DTIM_CNT3 24
12985 #define BIT_MASK_DTIM_CNT3 0xff
12986 #define BIT_DTIM_CNT3(x) (((x) & BIT_MASK_DTIM_CNT3) << BIT_SHIFT_DTIM_CNT3)
12987 #define BIT_GET_DTIM_CNT3(x) (((x) >> BIT_SHIFT_DTIM_CNT3) & BIT_MASK_DTIM_CNT3)
12988
12989 #define BIT_SHIFT_DTIM_PERIOD3 16
12990 #define BIT_MASK_DTIM_PERIOD3 0xff
12991 #define BIT_DTIM_PERIOD3(x)                                                    \
12992         (((x) & BIT_MASK_DTIM_PERIOD3) << BIT_SHIFT_DTIM_PERIOD3)
12993 #define BIT_GET_DTIM_PERIOD3(x)                                                \
12994         (((x) >> BIT_SHIFT_DTIM_PERIOD3) & BIT_MASK_DTIM_PERIOD3)
12995
12996 #define BIT_DTIM3 BIT(15)
12997 #define BIT_TIM3 BIT(14)
12998
12999 #define BIT_SHIFT_PS_AID_3 0
13000 #define BIT_MASK_PS_AID_3 0x7ff
13001 #define BIT_PS_AID_3(x) (((x) & BIT_MASK_PS_AID_3) << BIT_SHIFT_PS_AID_3)
13002 #define BIT_GET_PS_AID_3(x) (((x) >> BIT_SHIFT_PS_AID_3) & BIT_MASK_PS_AID_3)
13003
13004 /* 2 REG_BCN_PSR_RPT4                   (Offset 0x1608) */
13005
13006 #define BIT_SHIFT_DTIM_CNT4 24
13007 #define BIT_MASK_DTIM_CNT4 0xff
13008 #define BIT_DTIM_CNT4(x) (((x) & BIT_MASK_DTIM_CNT4) << BIT_SHIFT_DTIM_CNT4)
13009 #define BIT_GET_DTIM_CNT4(x) (((x) >> BIT_SHIFT_DTIM_CNT4) & BIT_MASK_DTIM_CNT4)
13010
13011 #define BIT_SHIFT_DTIM_PERIOD4 16
13012 #define BIT_MASK_DTIM_PERIOD4 0xff
13013 #define BIT_DTIM_PERIOD4(x)                                                    \
13014         (((x) & BIT_MASK_DTIM_PERIOD4) << BIT_SHIFT_DTIM_PERIOD4)
13015 #define BIT_GET_DTIM_PERIOD4(x)                                                \
13016         (((x) >> BIT_SHIFT_DTIM_PERIOD4) & BIT_MASK_DTIM_PERIOD4)
13017
13018 #define BIT_DTIM4 BIT(15)
13019 #define BIT_TIM4 BIT(14)
13020
13021 #define BIT_SHIFT_PS_AID_4 0
13022 #define BIT_MASK_PS_AID_4 0x7ff
13023 #define BIT_PS_AID_4(x) (((x) & BIT_MASK_PS_AID_4) << BIT_SHIFT_PS_AID_4)
13024 #define BIT_GET_PS_AID_4(x) (((x) >> BIT_SHIFT_PS_AID_4) & BIT_MASK_PS_AID_4)
13025
13026 /* 2 REG_A1_ADDR_MASK                   (Offset 0x160C) */
13027
13028 #define BIT_SHIFT_A1_ADDR_MASK 0
13029 #define BIT_MASK_A1_ADDR_MASK 0xffffffffL
13030 #define BIT_A1_ADDR_MASK(x)                                                    \
13031         (((x) & BIT_MASK_A1_ADDR_MASK) << BIT_SHIFT_A1_ADDR_MASK)
13032 #define BIT_GET_A1_ADDR_MASK(x)                                                \
13033         (((x) >> BIT_SHIFT_A1_ADDR_MASK) & BIT_MASK_A1_ADDR_MASK)
13034
13035 /* 2 REG_MACID2                         (Offset 0x1620) */
13036
13037 #define BIT_SHIFT_MACID2 0
13038 #define BIT_MASK_MACID2 0xffffffffffffL
13039 #define BIT_MACID2(x) (((x) & BIT_MASK_MACID2) << BIT_SHIFT_MACID2)
13040 #define BIT_GET_MACID2(x) (((x) >> BIT_SHIFT_MACID2) & BIT_MASK_MACID2)
13041
13042 /* 2 REG_BSSID2                         (Offset 0x1628) */
13043
13044 #define BIT_SHIFT_BSSID2 0
13045 #define BIT_MASK_BSSID2 0xffffffffffffL
13046 #define BIT_BSSID2(x) (((x) & BIT_MASK_BSSID2) << BIT_SHIFT_BSSID2)
13047 #define BIT_GET_BSSID2(x) (((x) >> BIT_SHIFT_BSSID2) & BIT_MASK_BSSID2)
13048
13049 /* 2 REG_MACID3                         (Offset 0x1630) */
13050
13051 #define BIT_SHIFT_MACID3 0
13052 #define BIT_MASK_MACID3 0xffffffffffffL
13053 #define BIT_MACID3(x) (((x) & BIT_MASK_MACID3) << BIT_SHIFT_MACID3)
13054 #define BIT_GET_MACID3(x) (((x) >> BIT_SHIFT_MACID3) & BIT_MASK_MACID3)
13055
13056 /* 2 REG_BSSID3                         (Offset 0x1638) */
13057
13058 #define BIT_SHIFT_BSSID3 0
13059 #define BIT_MASK_BSSID3 0xffffffffffffL
13060 #define BIT_BSSID3(x) (((x) & BIT_MASK_BSSID3) << BIT_SHIFT_BSSID3)
13061 #define BIT_GET_BSSID3(x) (((x) >> BIT_SHIFT_BSSID3) & BIT_MASK_BSSID3)
13062
13063 /* 2 REG_MACID4                         (Offset 0x1640) */
13064
13065 #define BIT_SHIFT_MACID4 0
13066 #define BIT_MASK_MACID4 0xffffffffffffL
13067 #define BIT_MACID4(x) (((x) & BIT_MASK_MACID4) << BIT_SHIFT_MACID4)
13068 #define BIT_GET_MACID4(x) (((x) >> BIT_SHIFT_MACID4) & BIT_MASK_MACID4)
13069
13070 /* 2 REG_BSSID4                         (Offset 0x1648) */
13071
13072 #define BIT_SHIFT_BSSID4 0
13073 #define BIT_MASK_BSSID4 0xffffffffffffL
13074 #define BIT_BSSID4(x) (((x) & BIT_MASK_BSSID4) << BIT_SHIFT_BSSID4)
13075 #define BIT_GET_BSSID4(x) (((x) >> BIT_SHIFT_BSSID4) & BIT_MASK_BSSID4)
13076
13077 /* 2 REG_PWRBIT_SETTING                 (Offset 0x1660) */
13078
13079 #define BIT_CLI3_PWRBIT_OW_EN BIT(7)
13080 #define BIT_CLI3_PWR_ST BIT(6)
13081 #define BIT_CLI2_PWRBIT_OW_EN BIT(5)
13082 #define BIT_CLI2_PWR_ST BIT(4)
13083 #define BIT_CLI1_PWRBIT_OW_EN BIT(3)
13084 #define BIT_CLI1_PWR_ST BIT(2)
13085 #define BIT_CLI0_PWRBIT_OW_EN BIT(1)
13086 #define BIT_CLI0_PWR_ST BIT(0)
13087
13088 /* 2 REG_WMAC_MU_BF_OPTION                      (Offset 0x167C) */
13089
13090 #define BIT_WMAC_RESP_NONSTA1_DIS BIT(7)
13091
13092 /* 2 REG_WMAC_MU_BF_OPTION                      (Offset 0x167C) */
13093
13094 #define BIT_BIT_WMAC_TXMU_ACKPOLICY_EN BIT(6)
13095
13096 /* 2 REG_WMAC_MU_BF_OPTION                      (Offset 0x167C) */
13097
13098 #define BIT_SHIFT_WMAC_TXMU_ACKPOLICY 4
13099 #define BIT_MASK_WMAC_TXMU_ACKPOLICY 0x3
13100 #define BIT_WMAC_TXMU_ACKPOLICY(x)                                             \
13101         (((x) & BIT_MASK_WMAC_TXMU_ACKPOLICY) << BIT_SHIFT_WMAC_TXMU_ACKPOLICY)
13102 #define BIT_GET_WMAC_TXMU_ACKPOLICY(x)                                         \
13103         (((x) >> BIT_SHIFT_WMAC_TXMU_ACKPOLICY) & BIT_MASK_WMAC_TXMU_ACKPOLICY)
13104
13105 #define BIT_SHIFT_WMAC_MU_BFEE_PORT_SEL 1
13106 #define BIT_MASK_WMAC_MU_BFEE_PORT_SEL 0x7
13107 #define BIT_WMAC_MU_BFEE_PORT_SEL(x)                                           \
13108         (((x) & BIT_MASK_WMAC_MU_BFEE_PORT_SEL)                                \
13109          << BIT_SHIFT_WMAC_MU_BFEE_PORT_SEL)
13110 #define BIT_GET_WMAC_MU_BFEE_PORT_SEL(x)                                       \
13111         (((x) >> BIT_SHIFT_WMAC_MU_BFEE_PORT_SEL) &                            \
13112          BIT_MASK_WMAC_MU_BFEE_PORT_SEL)
13113
13114 #define BIT_WMAC_MU_BFEE_DIS BIT(0)
13115
13116 /* 2 REG_WMAC_PAUSE_BB_CLR_TH           (Offset 0x167D) */
13117
13118 #define BIT_SHIFT_WMAC_PAUSE_BB_CLR_TH 0
13119 #define BIT_MASK_WMAC_PAUSE_BB_CLR_TH 0xff
13120 #define BIT_WMAC_PAUSE_BB_CLR_TH(x)                                            \
13121         (((x) & BIT_MASK_WMAC_PAUSE_BB_CLR_TH)                                 \
13122          << BIT_SHIFT_WMAC_PAUSE_BB_CLR_TH)
13123 #define BIT_GET_WMAC_PAUSE_BB_CLR_TH(x)                                        \
13124         (((x) >> BIT_SHIFT_WMAC_PAUSE_BB_CLR_TH) &                             \
13125          BIT_MASK_WMAC_PAUSE_BB_CLR_TH)
13126
13127 /* 2 REG_WMAC_MU_ARB                            (Offset 0x167E) */
13128
13129 #define BIT_WMAC_ARB_HW_ADAPT_EN BIT(7)
13130 #define BIT_WMAC_ARB_SW_EN BIT(6)
13131
13132 #define BIT_SHIFT_WMAC_ARB_SW_STATE 0
13133 #define BIT_MASK_WMAC_ARB_SW_STATE 0x3f
13134 #define BIT_WMAC_ARB_SW_STATE(x)                                               \
13135         (((x) & BIT_MASK_WMAC_ARB_SW_STATE) << BIT_SHIFT_WMAC_ARB_SW_STATE)
13136 #define BIT_GET_WMAC_ARB_SW_STATE(x)                                           \
13137         (((x) >> BIT_SHIFT_WMAC_ARB_SW_STATE) & BIT_MASK_WMAC_ARB_SW_STATE)
13138
13139 /* 2 REG_WMAC_MU_OPTION                 (Offset 0x167F) */
13140
13141 #define BIT_SHIFT_WMAC_MU_DBGSEL 5
13142 #define BIT_MASK_WMAC_MU_DBGSEL 0x3
13143 #define BIT_WMAC_MU_DBGSEL(x)                                                  \
13144         (((x) & BIT_MASK_WMAC_MU_DBGSEL) << BIT_SHIFT_WMAC_MU_DBGSEL)
13145 #define BIT_GET_WMAC_MU_DBGSEL(x)                                              \
13146         (((x) >> BIT_SHIFT_WMAC_MU_DBGSEL) & BIT_MASK_WMAC_MU_DBGSEL)
13147
13148 #define BIT_SHIFT_WMAC_MU_CPRD_TIMEOUT 0
13149 #define BIT_MASK_WMAC_MU_CPRD_TIMEOUT 0x1f
13150 #define BIT_WMAC_MU_CPRD_TIMEOUT(x)                                            \
13151         (((x) & BIT_MASK_WMAC_MU_CPRD_TIMEOUT)                                 \
13152          << BIT_SHIFT_WMAC_MU_CPRD_TIMEOUT)
13153 #define BIT_GET_WMAC_MU_CPRD_TIMEOUT(x)                                        \
13154         (((x) >> BIT_SHIFT_WMAC_MU_CPRD_TIMEOUT) &                             \
13155          BIT_MASK_WMAC_MU_CPRD_TIMEOUT)
13156
13157 /* 2 REG_WMAC_MU_BF_CTL                 (Offset 0x1680) */
13158
13159 #define BIT_WMAC_INVLD_BFPRT_CHK BIT(15)
13160 #define BIT_WMAC_RETXBFRPTSEQ_UPD BIT(14)
13161
13162 #define BIT_SHIFT_WMAC_MU_BFRPTSEG_SEL 12
13163 #define BIT_MASK_WMAC_MU_BFRPTSEG_SEL 0x3
13164 #define BIT_WMAC_MU_BFRPTSEG_SEL(x)                                            \
13165         (((x) & BIT_MASK_WMAC_MU_BFRPTSEG_SEL)                                 \
13166          << BIT_SHIFT_WMAC_MU_BFRPTSEG_SEL)
13167 #define BIT_GET_WMAC_MU_BFRPTSEG_SEL(x)                                        \
13168         (((x) >> BIT_SHIFT_WMAC_MU_BFRPTSEG_SEL) &                             \
13169          BIT_MASK_WMAC_MU_BFRPTSEG_SEL)
13170
13171 #define BIT_SHIFT_WMAC_MU_BF_MYAID 0
13172 #define BIT_MASK_WMAC_MU_BF_MYAID 0xfff
13173 #define BIT_WMAC_MU_BF_MYAID(x)                                                \
13174         (((x) & BIT_MASK_WMAC_MU_BF_MYAID) << BIT_SHIFT_WMAC_MU_BF_MYAID)
13175 #define BIT_GET_WMAC_MU_BF_MYAID(x)                                            \
13176         (((x) >> BIT_SHIFT_WMAC_MU_BF_MYAID) & BIT_MASK_WMAC_MU_BF_MYAID)
13177
13178 #define BIT_SHIFT_BFRPT_PARA 0
13179 #define BIT_MASK_BFRPT_PARA 0xfff
13180 #define BIT_BFRPT_PARA(x) (((x) & BIT_MASK_BFRPT_PARA) << BIT_SHIFT_BFRPT_PARA)
13181 #define BIT_GET_BFRPT_PARA(x)                                                  \
13182         (((x) >> BIT_SHIFT_BFRPT_PARA) & BIT_MASK_BFRPT_PARA)
13183
13184 /* 2 REG_WMAC_MU_BFRPT_PARA                     (Offset 0x1682) */
13185
13186 #define BIT_SHIFT_BIT_BFRPT_PARA_USERID_SEL 12
13187 #define BIT_MASK_BIT_BFRPT_PARA_USERID_SEL 0x7
13188 #define BIT_BIT_BFRPT_PARA_USERID_SEL(x)                                       \
13189         (((x) & BIT_MASK_BIT_BFRPT_PARA_USERID_SEL)                            \
13190          << BIT_SHIFT_BIT_BFRPT_PARA_USERID_SEL)
13191 #define BIT_GET_BIT_BFRPT_PARA_USERID_SEL(x)                                   \
13192         (((x) >> BIT_SHIFT_BIT_BFRPT_PARA_USERID_SEL) &                        \
13193          BIT_MASK_BIT_BFRPT_PARA_USERID_SEL)
13194
13195 /* 2 REG_WMAC_ASSOCIATED_MU_BFMEE2              (Offset 0x1684) */
13196
13197 #define BIT_STATUS_BFEE2 BIT(10)
13198 #define BIT_WMAC_MU_BFEE2_EN BIT(9)
13199
13200 #define BIT_SHIFT_WMAC_MU_BFEE2_AID 0
13201 #define BIT_MASK_WMAC_MU_BFEE2_AID 0x1ff
13202 #define BIT_WMAC_MU_BFEE2_AID(x)                                               \
13203         (((x) & BIT_MASK_WMAC_MU_BFEE2_AID) << BIT_SHIFT_WMAC_MU_BFEE2_AID)
13204 #define BIT_GET_WMAC_MU_BFEE2_AID(x)                                           \
13205         (((x) >> BIT_SHIFT_WMAC_MU_BFEE2_AID) & BIT_MASK_WMAC_MU_BFEE2_AID)
13206
13207 /* 2 REG_WMAC_ASSOCIATED_MU_BFMEE3              (Offset 0x1686) */
13208
13209 #define BIT_STATUS_BFEE3 BIT(10)
13210 #define BIT_WMAC_MU_BFEE3_EN BIT(9)
13211
13212 #define BIT_SHIFT_WMAC_MU_BFEE3_AID 0
13213 #define BIT_MASK_WMAC_MU_BFEE3_AID 0x1ff
13214 #define BIT_WMAC_MU_BFEE3_AID(x)                                               \
13215         (((x) & BIT_MASK_WMAC_MU_BFEE3_AID) << BIT_SHIFT_WMAC_MU_BFEE3_AID)
13216 #define BIT_GET_WMAC_MU_BFEE3_AID(x)                                           \
13217         (((x) >> BIT_SHIFT_WMAC_MU_BFEE3_AID) & BIT_MASK_WMAC_MU_BFEE3_AID)
13218
13219 /* 2 REG_WMAC_ASSOCIATED_MU_BFMEE4              (Offset 0x1688) */
13220
13221 #define BIT_STATUS_BFEE4 BIT(10)
13222 #define BIT_WMAC_MU_BFEE4_EN BIT(9)
13223
13224 #define BIT_SHIFT_WMAC_MU_BFEE4_AID 0
13225 #define BIT_MASK_WMAC_MU_BFEE4_AID 0x1ff
13226 #define BIT_WMAC_MU_BFEE4_AID(x)                                               \
13227         (((x) & BIT_MASK_WMAC_MU_BFEE4_AID) << BIT_SHIFT_WMAC_MU_BFEE4_AID)
13228 #define BIT_GET_WMAC_MU_BFEE4_AID(x)                                           \
13229         (((x) >> BIT_SHIFT_WMAC_MU_BFEE4_AID) & BIT_MASK_WMAC_MU_BFEE4_AID)
13230
13231 /* 2 REG_WMAC_ASSOCIATED_MU_BFMEE5              (Offset 0x168A) */
13232
13233 #define BIT_R_WMAC_RX_SYNCFIFO_SYNC BIT(55)
13234 #define BIT_R_WMAC_RXRST_DLY BIT(54)
13235 #define BIT_R_WMAC_SRCH_TXRPT_REF_DROP BIT(53)
13236 #define BIT_R_WMAC_SRCH_TXRPT_UA1 BIT(52)
13237 #define BIT_STATUS_BFEE5 BIT(10)
13238
13239 /* 2 REG_WMAC_ASSOCIATED_MU_BFMEE5              (Offset 0x168A) */
13240
13241 #define BIT_WMAC_MU_BFEE5_EN BIT(9)
13242
13243 #define BIT_SHIFT_WMAC_MU_BFEE5_AID 0
13244 #define BIT_MASK_WMAC_MU_BFEE5_AID 0x1ff
13245 #define BIT_WMAC_MU_BFEE5_AID(x)                                               \
13246         (((x) & BIT_MASK_WMAC_MU_BFEE5_AID) << BIT_SHIFT_WMAC_MU_BFEE5_AID)
13247 #define BIT_GET_WMAC_MU_BFEE5_AID(x)                                           \
13248         (((x) >> BIT_SHIFT_WMAC_MU_BFEE5_AID) & BIT_MASK_WMAC_MU_BFEE5_AID)
13249
13250 /* 2 REG_WMAC_ASSOCIATED_MU_BFMEE6              (Offset 0x168C) */
13251
13252 #define BIT_STATUS_BFEE6 BIT(10)
13253 #define BIT_WMAC_MU_BFEE6_EN BIT(9)
13254
13255 #define BIT_SHIFT_WMAC_MU_BFEE6_AID 0
13256 #define BIT_MASK_WMAC_MU_BFEE6_AID 0x1ff
13257 #define BIT_WMAC_MU_BFEE6_AID(x)                                               \
13258         (((x) & BIT_MASK_WMAC_MU_BFEE6_AID) << BIT_SHIFT_WMAC_MU_BFEE6_AID)
13259 #define BIT_GET_WMAC_MU_BFEE6_AID(x)                                           \
13260         (((x) >> BIT_SHIFT_WMAC_MU_BFEE6_AID) & BIT_MASK_WMAC_MU_BFEE6_AID)
13261
13262 /* 2 REG_WMAC_ASSOCIATED_MU_BFMEE7              (Offset 0x168E) */
13263
13264 #define BIT_BIT_STATUS_BFEE4 BIT(10)
13265 #define BIT_WMAC_MU_BFEE7_EN BIT(9)
13266
13267 #define BIT_SHIFT_WMAC_MU_BFEE7_AID 0
13268 #define BIT_MASK_WMAC_MU_BFEE7_AID 0x1ff
13269 #define BIT_WMAC_MU_BFEE7_AID(x)                                               \
13270         (((x) & BIT_MASK_WMAC_MU_BFEE7_AID) << BIT_SHIFT_WMAC_MU_BFEE7_AID)
13271 #define BIT_GET_WMAC_MU_BFEE7_AID(x)                                           \
13272         (((x) >> BIT_SHIFT_WMAC_MU_BFEE7_AID) & BIT_MASK_WMAC_MU_BFEE7_AID)
13273
13274 /* 2 REG_WMAC_BB_STOP_RX_COUNTER                (Offset 0x1690) */
13275
13276 #define BIT_RST_ALL_COUNTER BIT(31)
13277
13278 #define BIT_SHIFT_ABORT_RX_VBON_COUNTER 16
13279 #define BIT_MASK_ABORT_RX_VBON_COUNTER 0xff
13280 #define BIT_ABORT_RX_VBON_COUNTER(x)                                           \
13281         (((x) & BIT_MASK_ABORT_RX_VBON_COUNTER)                                \
13282          << BIT_SHIFT_ABORT_RX_VBON_COUNTER)
13283 #define BIT_GET_ABORT_RX_VBON_COUNTER(x)                                       \
13284         (((x) >> BIT_SHIFT_ABORT_RX_VBON_COUNTER) &                            \
13285          BIT_MASK_ABORT_RX_VBON_COUNTER)
13286
13287 #define BIT_SHIFT_ABORT_RX_RDRDY_COUNTER 8
13288 #define BIT_MASK_ABORT_RX_RDRDY_COUNTER 0xff
13289 #define BIT_ABORT_RX_RDRDY_COUNTER(x)                                          \
13290         (((x) & BIT_MASK_ABORT_RX_RDRDY_COUNTER)                               \
13291          << BIT_SHIFT_ABORT_RX_RDRDY_COUNTER)
13292 #define BIT_GET_ABORT_RX_RDRDY_COUNTER(x)                                      \
13293         (((x) >> BIT_SHIFT_ABORT_RX_RDRDY_COUNTER) &                           \
13294          BIT_MASK_ABORT_RX_RDRDY_COUNTER)
13295
13296 #define BIT_SHIFT_VBON_EARLY_FALLING_COUNTER 0
13297 #define BIT_MASK_VBON_EARLY_FALLING_COUNTER 0xff
13298 #define BIT_VBON_EARLY_FALLING_COUNTER(x)                                      \
13299         (((x) & BIT_MASK_VBON_EARLY_FALLING_COUNTER)                           \
13300          << BIT_SHIFT_VBON_EARLY_FALLING_COUNTER)
13301 #define BIT_GET_VBON_EARLY_FALLING_COUNTER(x)                                  \
13302         (((x) >> BIT_SHIFT_VBON_EARLY_FALLING_COUNTER) &                       \
13303          BIT_MASK_VBON_EARLY_FALLING_COUNTER)
13304
13305 /* 2 REG_WMAC_PLCP_MONITOR                      (Offset 0x1694) */
13306
13307 #define BIT_WMAC_PLCP_TRX_SEL BIT(31)
13308
13309 #define BIT_SHIFT_WMAC_PLCP_RDSIG_SEL 28
13310 #define BIT_MASK_WMAC_PLCP_RDSIG_SEL 0x7
13311 #define BIT_WMAC_PLCP_RDSIG_SEL(x)                                             \
13312         (((x) & BIT_MASK_WMAC_PLCP_RDSIG_SEL) << BIT_SHIFT_WMAC_PLCP_RDSIG_SEL)
13313 #define BIT_GET_WMAC_PLCP_RDSIG_SEL(x)                                         \
13314         (((x) >> BIT_SHIFT_WMAC_PLCP_RDSIG_SEL) & BIT_MASK_WMAC_PLCP_RDSIG_SEL)
13315
13316 #define BIT_SHIFT_WMAC_RATE_IDX 24
13317 #define BIT_MASK_WMAC_RATE_IDX 0xf
13318 #define BIT_WMAC_RATE_IDX(x)                                                   \
13319         (((x) & BIT_MASK_WMAC_RATE_IDX) << BIT_SHIFT_WMAC_RATE_IDX)
13320 #define BIT_GET_WMAC_RATE_IDX(x)                                               \
13321         (((x) >> BIT_SHIFT_WMAC_RATE_IDX) & BIT_MASK_WMAC_RATE_IDX)
13322
13323 #define BIT_SHIFT_WMAC_PLCP_RDSIG 0
13324 #define BIT_MASK_WMAC_PLCP_RDSIG 0xffffff
13325 #define BIT_WMAC_PLCP_RDSIG(x)                                                 \
13326         (((x) & BIT_MASK_WMAC_PLCP_RDSIG) << BIT_SHIFT_WMAC_PLCP_RDSIG)
13327 #define BIT_GET_WMAC_PLCP_RDSIG(x)                                             \
13328         (((x) >> BIT_SHIFT_WMAC_PLCP_RDSIG) & BIT_MASK_WMAC_PLCP_RDSIG)
13329
13330 /* 2 REG_WMAC_PLCP_MONITOR_MUTX         (Offset 0x1698) */
13331
13332 #define BIT_WMAC_MUTX_IDX BIT(24)
13333
13334 /* 2 REG_TRANSMIT_ADDRSS_0                      (Offset 0x16A0) */
13335
13336 #define BIT_SHIFT_TA0 0
13337 #define BIT_MASK_TA0 0xffffffffffffL
13338 #define BIT_TA0(x) (((x) & BIT_MASK_TA0) << BIT_SHIFT_TA0)
13339 #define BIT_GET_TA0(x) (((x) >> BIT_SHIFT_TA0) & BIT_MASK_TA0)
13340
13341 /* 2 REG_TRANSMIT_ADDRSS_1                      (Offset 0x16A8) */
13342
13343 #define BIT_SHIFT_TA1 0
13344 #define BIT_MASK_TA1 0xffffffffffffL
13345 #define BIT_TA1(x) (((x) & BIT_MASK_TA1) << BIT_SHIFT_TA1)
13346 #define BIT_GET_TA1(x) (((x) >> BIT_SHIFT_TA1) & BIT_MASK_TA1)
13347
13348 /* 2 REG_TRANSMIT_ADDRSS_2                      (Offset 0x16B0) */
13349
13350 #define BIT_SHIFT_TA2 0
13351 #define BIT_MASK_TA2 0xffffffffffffL
13352 #define BIT_TA2(x) (((x) & BIT_MASK_TA2) << BIT_SHIFT_TA2)
13353 #define BIT_GET_TA2(x) (((x) >> BIT_SHIFT_TA2) & BIT_MASK_TA2)
13354
13355 /* 2 REG_TRANSMIT_ADDRSS_3                      (Offset 0x16B8) */
13356
13357 #define BIT_SHIFT_TA3 0
13358 #define BIT_MASK_TA3 0xffffffffffffL
13359 #define BIT_TA3(x) (((x) & BIT_MASK_TA3) << BIT_SHIFT_TA3)
13360 #define BIT_GET_TA3(x) (((x) >> BIT_SHIFT_TA3) & BIT_MASK_TA3)
13361
13362 /* 2 REG_TRANSMIT_ADDRSS_4                      (Offset 0x16C0) */
13363
13364 #define BIT_SHIFT_TA4 0
13365 #define BIT_MASK_TA4 0xffffffffffffL
13366 #define BIT_TA4(x) (((x) & BIT_MASK_TA4) << BIT_SHIFT_TA4)
13367 #define BIT_GET_TA4(x) (((x) >> BIT_SHIFT_TA4) & BIT_MASK_TA4)
13368
13369 /* 2 REG_WL2LTECOEX_INDIRECT_ACCESS_CTRL_V1 (Offset 0x1700) */
13370
13371 #define BIT_LTECOEX_ACCESS_START_V1 BIT(31)
13372 #define BIT_LTECOEX_WRITE_MODE_V1 BIT(30)
13373 #define BIT_LTECOEX_READY_BIT_V1 BIT(29)
13374
13375 #define BIT_SHIFT_WRITE_BYTE_EN_V1 16
13376 #define BIT_MASK_WRITE_BYTE_EN_V1 0xf
13377 #define BIT_WRITE_BYTE_EN_V1(x)                                                \
13378         (((x) & BIT_MASK_WRITE_BYTE_EN_V1) << BIT_SHIFT_WRITE_BYTE_EN_V1)
13379 #define BIT_GET_WRITE_BYTE_EN_V1(x)                                            \
13380         (((x) >> BIT_SHIFT_WRITE_BYTE_EN_V1) & BIT_MASK_WRITE_BYTE_EN_V1)
13381
13382 #define BIT_SHIFT_LTECOEX_REG_ADDR_V1 0
13383 #define BIT_MASK_LTECOEX_REG_ADDR_V1 0xffff
13384 #define BIT_LTECOEX_REG_ADDR_V1(x)                                             \
13385         (((x) & BIT_MASK_LTECOEX_REG_ADDR_V1) << BIT_SHIFT_LTECOEX_REG_ADDR_V1)
13386 #define BIT_GET_LTECOEX_REG_ADDR_V1(x)                                         \
13387         (((x) >> BIT_SHIFT_LTECOEX_REG_ADDR_V1) & BIT_MASK_LTECOEX_REG_ADDR_V1)
13388
13389 /* 2 REG_WL2LTECOEX_INDIRECT_ACCESS_WRITE_DATA_V1 (Offset 0x1704) */
13390
13391 #define BIT_SHIFT_LTECOEX_W_DATA_V1 0
13392 #define BIT_MASK_LTECOEX_W_DATA_V1 0xffffffffL
13393 #define BIT_LTECOEX_W_DATA_V1(x)                                               \
13394         (((x) & BIT_MASK_LTECOEX_W_DATA_V1) << BIT_SHIFT_LTECOEX_W_DATA_V1)
13395 #define BIT_GET_LTECOEX_W_DATA_V1(x)                                           \
13396         (((x) >> BIT_SHIFT_LTECOEX_W_DATA_V1) & BIT_MASK_LTECOEX_W_DATA_V1)
13397
13398 /* 2 REG_WL2LTECOEX_INDIRECT_ACCESS_READ_DATA_V1 (Offset 0x1708) */
13399
13400 #define BIT_SHIFT_LTECOEX_R_DATA_V1 0
13401 #define BIT_MASK_LTECOEX_R_DATA_V1 0xffffffffL
13402 #define BIT_LTECOEX_R_DATA_V1(x)                                               \
13403         (((x) & BIT_MASK_LTECOEX_R_DATA_V1) << BIT_SHIFT_LTECOEX_R_DATA_V1)
13404 #define BIT_GET_LTECOEX_R_DATA_V1(x)                                           \
13405         (((x) >> BIT_SHIFT_LTECOEX_R_DATA_V1) & BIT_MASK_LTECOEX_R_DATA_V1)
13406
13407 #endif /* __RTL_WLAN_BITDEF_H__ */