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