1/* SPDX-License-Identifier: GPL-2.0 */
2/******************************************************************************
3 *
4 * Copyright(c) 2007 - 2010 Realtek Corporation. All rights reserved.
5 *
6 ******************************************************************************/
7#ifndef __RTL8712_FIFOCTRL_BITDEF_H__
8#define __RTL8712_FIFOCTRL_BITDEF_H__
9
10/*PBP*/
11#define	_PSTX_MSK			0xF0
12#define	_PSTX_SHT			4
13#define	_PSRX_MSK			0x0F
14#define	_PSRX_SHT			0
15
16/*TXFF_STATUS*/
17#define	_TXSTATUS_OVF		BIT(15)
18
19/*RXFF_STATUS*/
20#define	_STATUSFF1_OVF		BIT(7)
21#define	_STATUSFF1_EMPTY	BIT(6)
22#define	_STATUSFF0_OVF		BIT(5)
23#define	_STATUSFF0_EMPTY	BIT(4)
24#define	_RXFF1_OVF			BIT(3)
25#define	_RXFF1_EMPTY		BIT(2)
26#define	_RXFF0_OVF			BIT(1)
27#define	_RXFF0_EMPTY		BIT(0)
28
29/*TXFF_EMPTY_TH*/
30#define	_BKQ_EMPTY_TH_MSK	0x0F0000
31#define	_BKQ_EMPTY_TH_SHT	16
32#define	_BEQ_EMPTY_TH_MSK	0x00F000
33#define	_BEQ_EMPTY_TH_SHT	12
34#define	_VIQ_EMPTY_TH_MSK	0x000F00
35#define	_VIQ_EMPTY_TH_SHT	8
36#define	_VOQ_EMPTY_TH_MSK	0x0000F0
37#define	_VOQ_EMPTY_TH_SHT	4
38#define	_BMCQ_EMPTY_TH_MSK	0x00000F
39#define	_BMCQ_EMPTY_TH_SHT	0
40
41/*SDIO_RX_BLKSZ*/
42#define	_SDIO_RX_BLKSZ_MSK	0x07
43
44/*RXDMA_CTRL*/
45#define	_C2HFF_POLL		BIT(4)
46#define	_RXPKT_POLL		BIT(0)
47
48/*RXPKT_NUM*/
49#define	_RXCMD_NUM_MSK		0xFF00
50#define	_RXCMD_NUM_SHT		8
51#define	_RXFF0_NUM_MSK		0x00FF
52#define	_RXFF0_NUM_SHT		0
53
54/*FIFOPAGE2*/
55#define	_PUB_AVAL_PG_MSK	0xFFFF0000
56#define	_PUB_AVAL_PG_SHT	16
57#define	_BCN_AVAL_PG_MSK	0x0000FFFF
58#define	_BCN_AVAL_PG_SHT	0
59
60/*RX0PKTNUM*/
61#define	_RXFF0_DEC_POLL				BIT(15)
62#define	_RXFF0_PKT_DEC_NUM_MSK		0x3F00
63#define	_RXFF0_PKT_DEC_NUM_SHT		8
64#define	_RXFF0_PKTNUM_RPT_MSK		0x00FF
65#define	_RXFF0_PKTNUM_RPT_SHT		0
66
67/*RX1PKTNUM*/
68#define	_RXFF1_DEC_POLL				BIT(15)
69#define	_RXFF1_PKT_DEC_NUM_MSK		0x3F00
70#define	_RXFF1_PKT_DEC_NUM_SHT		8
71#define	_RXFF1_PKTNUM_RPT_MSK		0x00FF
72#define	_RXFF1_PKTNUM_RPT_SHT		0
73
74/*RXFLTMAP0*/
75#define	_MGTFLT13EN		BIT(13)
76#define	_MGTFLT12EN		BIT(12)
77#define	_MGTFLT11EN		BIT(11)
78#define	_MGTFLT10EN		BIT(10)
79#define	_MGTFLT9EN		BIT(9)
80#define	_MGTFLT8EN		BIT(8)
81#define	_MGTFLT5EN		BIT(5)
82#define	_MGTFLT4EN		BIT(4)
83#define	_MGTFLT3EN		BIT(3)
84#define	_MGTFLT2EN		BIT(2)
85#define	_MGTFLT1EN		BIT(1)
86#define	_MGTFLT0EN		BIT(0)
87
88/*RXFLTMAP1*/
89#define	_CTRLFLT15EN	BIT(15)
90#define	_CTRLFLT14EN	BIT(14)
91#define	_CTRLFLT13EN	BIT(13)
92#define	_CTRLFLT12EN	BIT(12)
93#define	_CTRLFLT11EN	BIT(11)
94#define	_CTRLFLT10EN	BIT(10)
95#define	_CTRLFLT9EN		BIT(9)
96#define	_CTRLFLT8EN		BIT(8)
97#define	_CTRLFLT7EN		BIT(7)
98#define	_CTRLFLT6EN		BIT(6)
99
100/*RXFLTMAP2*/
101#define	_DATAFLT15EN	BIT(15)
102#define	_DATAFLT14EN	BIT(14)
103#define	_DATAFLT13EN	BIT(13)
104#define	_DATAFLT12EN	BIT(12)
105#define	_DATAFLT11EN	BIT(11)
106#define	_DATAFLT10EN	BIT(10)
107#define	_DATAFLT9EN		BIT(9)
108#define	_DATAFLT8EN		BIT(8)
109#define	_DATAFLT7EN		BIT(7)
110#define	_DATAFLT6EN		BIT(6)
111#define	_DATAFLT5EN		BIT(5)
112#define	_DATAFLT4EN		BIT(4)
113#define	_DATAFLT3EN		BIT(3)
114#define	_DATAFLT2EN		BIT(2)
115#define	_DATAFLT1EN		BIT(1)
116#define	_DATAFLT0EN		BIT(0)
117
118/*RXFLTMAP3*/
119#define	_MESHAFLT1EN		BIT(1)
120#define	_MESHAFLT0EN		BIT(0)
121
122/*TXPKT_NUM_CTRL*/
123#define	_TXPKTNUM_DEC		BIT(8)
124#define	_TXPKTNUM_MSK		0x00FF
125#define	_TXPKTNUM_SHT		0
126
127/*TXFF_PG_NUM*/
128#define	_TXFF_PG_NUM_MSK	0x0FFF
129
130#endif	/*	__RTL8712_FIFOCTRL_BITDEF_H__ */
131
132