Go to the documentation of this file.
34 #include <linux/types.h>
41 #define B_OWNED_BY_CHIP 1 //
42 #define B_OWNED_BY_HOST 0 //
47 #define RSR_ADDRBROAD 0x80 // 1000 0000
48 #define RSR_ADDRMULTI 0x40 // 0100 0000
49 #define RSR_ADDRUNI 0x00 // 0000 0000
50 #define RSR_IVLDTYP 0x20 // 0010 0000 , invalid packet type
51 #define RSR_IVLDLEN 0x10 // 0001 0000 , invalid len (> 2312 byte)
52 #define RSR_BSSIDOK 0x08 // 0000 1000
53 #define RSR_CRCOK 0x04 // 0000 0100
54 #define RSR_BCNSSIDOK 0x02 // 0000 0010
55 #define RSR_ADDROK 0x01 // 0000 0001
60 #define NEWRSR_DECRYPTOK 0x10 // 0001 0000
61 #define NEWRSR_CFPIND 0x08 // 0000 1000
62 #define NEWRSR_HWUTSF 0x04 // 0000 0100
63 #define NEWRSR_BCNHITAID 0x02 // 0000 0010
64 #define NEWRSR_BCNHITAID0 0x01 // 0000 0001
69 #define TSR0_PWRSTS1_2 0xC0 // 1100 0000
70 #define TSR0_PWRSTS7 0x20 // 0010 0000
71 #define TSR0_NCR 0x1F // 0001 1111
76 #define TSR1_TERR 0x80 // 1000 0000
77 #define TSR1_PWRSTS4_6 0x70 // 0111 0000
78 #define TSR1_RETRYTMO 0x08 // 0000 1000
79 #define TSR1_TMO 0x04 // 0000 0100
80 #define TSR1_PWRSTS3 0x02 // 0000 0010
81 #define ACK_DATA 0x01 // 0000 0000
86 #define EDMSDU 0x04 // 0000 0100 end of sdu
87 #define TCR_EDP 0x02 // 0000 0010 end of packet
88 #define TCR_STP 0x01 // 0000 0001 start of packet
91 #define CB_MAX_BUF_SIZE 2900U // max buffer size
93 #define CB_MAX_TX_BUF_SIZE CB_MAX_BUF_SIZE // max Tx buffer size
94 #define CB_MAX_RX_BUF_SIZE_NORMAL CB_MAX_BUF_SIZE // max Rx buffer size when not use Multi-RD
96 #define CB_BEACON_BUF_SIZE 512U // default beacon buffer size
98 #define CB_MAX_RX_DESC 128 // max # of descriptor
99 #define CB_MIN_RX_DESC 16 // min # of rx descriptor
100 #define CB_MAX_TX_DESC 64 // max # of descriptor
101 #define CB_MIN_TX_DESC 16 // min # of tx descriptor
103 #define CB_MAX_RECEIVED_PACKETS 16 // max # of received packets at one time
109 #define CB_EXTRA_RD_NUM 32 // default # of Extra RD
110 #define CB_RD_NUM 32 // default # of RD
111 #define CB_TD_NUM 32 // default # of TD
117 #define CB_MAX_SEGMENT 4
119 #define CB_MIN_MAP_REG_NUM 4
120 #define CB_MAX_MAP_REG_NUM CB_MAX_TX_DESC
122 #define CB_PROTOCOL_RESERVED_SECTION 16
129 #define CB_MAX_TX_ABORT_RETRY 3
134 #define FIFOCTL_AUTO_FB_1 0x0010 // 0001 0000 0000 0000
135 #define FIFOCTL_AUTO_FB_0 0x0008 // 0000 1000 0000 0000
136 #define FIFOCTL_GRPACK 0x0004 // 0000 0100 0000 0000
137 #define FIFOCTL_11GA 0x0003 // 0000 0011 0000 0000
138 #define FIFOCTL_11GB 0x0002 // 0000 0010 0000 0000
139 #define FIFOCTL_11B 0x0001 // 0000 0001 0000 0000
140 #define FIFOCTL_11A 0x0000 // 0000 0000 0000 0000
141 #define FIFOCTL_RTS 0x8000 // 0000 0000 1000 0000
142 #define FIFOCTL_ISDMA0 0x4000 // 0000 0000 0100 0000
143 #define FIFOCTL_GENINT 0x2000 // 0000 0000 0010 0000
144 #define FIFOCTL_TMOEN 0x1000 // 0000 0000 0001 0000
145 #define FIFOCTL_LRETRY 0x0800 // 0000 0000 0000 1000
146 #define FIFOCTL_CRCDIS 0x0400 // 0000 0000 0000 0100
147 #define FIFOCTL_NEEDACK 0x0200 // 0000 0000 0000 0010
148 #define FIFOCTL_LHEAD 0x0100 // 0000 0000 0000 0001
151 #define FRAGCTL_AES 0x0003 // 0000 0011 0000 0000
152 #define FRAGCTL_TKIP 0x0002 // 0000 0010 0000 0000
153 #define FRAGCTL_LEGACY 0x0001 // 0000 0001 0000 0000
154 #define FRAGCTL_NONENCRYPT 0x0000 // 0000 0000 0000 0000
155 #define FRAGCTL_ENDFRAG 0x0300 // 0000 0000 0000 0011
156 #define FRAGCTL_MIDFRAG 0x0200 // 0000 0000 0000 0010
157 #define FRAGCTL_STAFRAG 0x0100 // 0000 0000 0000 0001
158 #define FRAGCTL_NONFRAG 0x0000 // 0000 0000 0000 0000
162 #define FIFOCTL_AUTO_FB_1 0x1000 // 0001 0000 0000 0000
163 #define FIFOCTL_AUTO_FB_0 0x0800 // 0000 1000 0000 0000
164 #define FIFOCTL_GRPACK 0x0400 // 0000 0100 0000 0000
165 #define FIFOCTL_11GA 0x0300 // 0000 0011 0000 0000
166 #define FIFOCTL_11GB 0x0200 // 0000 0010 0000 0000
167 #define FIFOCTL_11B 0x0100 // 0000 0001 0000 0000
168 #define FIFOCTL_11A 0x0000 // 0000 0000 0000 0000
169 #define FIFOCTL_RTS 0x0080 // 0000 0000 1000 0000
170 #define FIFOCTL_ISDMA0 0x0040 // 0000 0000 0100 0000
171 #define FIFOCTL_GENINT 0x0020 // 0000 0000 0010 0000
172 #define FIFOCTL_TMOEN 0x0010 // 0000 0000 0001 0000
173 #define FIFOCTL_LRETRY 0x0008 // 0000 0000 0000 1000
174 #define FIFOCTL_CRCDIS 0x0004 // 0000 0000 0000 0100
175 #define FIFOCTL_NEEDACK 0x0002 // 0000 0000 0000 0010
176 #define FIFOCTL_LHEAD 0x0001 // 0000 0000 0000 0001
179 #define FRAGCTL_AES 0x0300 // 0000 0011 0000 0000
180 #define FRAGCTL_TKIP 0x0200 // 0000 0010 0000 0000
181 #define FRAGCTL_LEGACY 0x0100 // 0000 0001 0000 0000
182 #define FRAGCTL_NONENCRYPT 0x0000 // 0000 0000 0000 0000
183 #define FRAGCTL_ENDFRAG 0x0003 // 0000 0000 0000 0011
184 #define FRAGCTL_MIDFRAG 0x0002 // 0000 0000 0000 0010
185 #define FRAGCTL_STAFRAG 0x0001 // 0000 0000 0000 0001
186 #define FRAGCTL_NONFRAG 0x0000 // 0000 0000 0000 0000
188 #endif // #ifdef __BIG_ENDIAN
190 #define TYPE_TXDMA0 0
191 #define TYPE_AC0DMA 1
192 #define TYPE_ATIMDMA 2
193 #define TYPE_SYNCDMA 3
196 #define TYPE_BEACONDMA 4
198 #define TYPE_RXDMA0 0
199 #define TYPE_RXDMA1 1
205 #define TD_FLAGS_NETIF_SKB 0x01 // check if need release skb
206 #define TD_FLAGS_PRIV_SKB 0x02 // check if called from private skb(hostap)
207 #define TD_FLAGS_PS_RETRY 0x04 // check if PS STA frame re-transmit
251 volatile u8 f8Reserved1;
253 volatile u8 f7Reserved:7;
306 volatile unsigned char byTSR0;
307 volatile unsigned char byTSR1;
311 volatile u8 f8Reserved1;
313 volatile u8 f7Reserved:7;