Staging: rt3070: remove dead BIN_IN_FILE code
[linux-2.6] / drivers / staging / rt2860 / rt_ate.h
1 /*
2  *************************************************************************
3  * Ralink Tech Inc.
4  * 5F., No.36, Taiyuan St., Jhubei City,
5  * Hsinchu County 302,
6  * Taiwan, R.O.C.
7  *
8  * (c) Copyright 2002-2007, Ralink Technology, Inc.
9  *
10  * This program is free software; you can redistribute it and/or modify  *
11  * it under the terms of the GNU General Public License as published by  *
12  * the Free Software Foundation; either version 2 of the License, or     *
13  * (at your option) any later version.                                   *
14  *                                                                       *
15  * This program is distributed in the hope that it will be useful,       *
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of        *
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
18  * GNU General Public License for more details.                          *
19  *                                                                       *
20  * You should have received a copy of the GNU General Public License     *
21  * along with this program; if not, write to the                         *
22  * Free Software Foundation, Inc.,                                       *
23  * 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
24  *                                                                       *
25  *************************************************************************
26  */
27
28 #ifndef __ATE_H__
29 #define __ATE_H__
30
31 #define ate_print printk
32 #define ATEDBGPRINT DBGPRINT
33 #define EEPROM_SIZE                                                             0x200
34 #ifdef CONFIG_STA_SUPPORT
35 #define EEPROM_BIN_FILE_NAME  "/etc/Wireless/RT2860STA/e2p.bin"
36 #endif // CONFIG_STA_SUPPORT //
37
38 #define ATE_ON(_p)              (((_p)->ate.Mode) != ATE_STOP)
39
40 /* RT2880_iNIC will define "RT2860". */
41 #define ATE_BBP_IO_READ8_BY_REG_ID(_A, _I, _pV)        \
42 {                                                       \
43     BBP_CSR_CFG_STRUC  BbpCsr;                             \
44     int             i, k;                               \
45     for (i=0; i<MAX_BUSY_COUNT; i++)                    \
46     {                                                   \
47         RTMP_IO_READ32(_A, BBP_CSR_CFG, &BbpCsr.word);     \
48         if (BbpCsr.field.Busy == BUSY)                  \
49         {                                               \
50             continue;                                   \
51         }                                               \
52         BbpCsr.word = 0;                                \
53         BbpCsr.field.fRead = 1;                         \
54         BbpCsr.field.BBP_RW_MODE = 1;                         \
55         BbpCsr.field.Busy = 1;                          \
56         BbpCsr.field.RegNum = _I;                       \
57         RTMP_IO_WRITE32(_A, BBP_CSR_CFG, BbpCsr.word);     \
58         for (k=0; k<MAX_BUSY_COUNT; k++)                \
59         {                                               \
60             RTMP_IO_READ32(_A, BBP_CSR_CFG, &BbpCsr.word); \
61             if (BbpCsr.field.Busy == IDLE)              \
62                 break;                                  \
63         }                                               \
64         if ((BbpCsr.field.Busy == IDLE) &&              \
65             (BbpCsr.field.RegNum == _I))                \
66         {                                               \
67             *(_pV) = (UCHAR)BbpCsr.field.Value;         \
68             break;                                      \
69         }                                               \
70     }                                                   \
71     if (BbpCsr.field.Busy == BUSY)                      \
72     {                                                   \
73         ATEDBGPRINT(RT_DEBUG_ERROR, ("BBP read R%d fail\n", _I));      \
74         *(_pV) = (_A)->BbpWriteLatch[_I];               \
75     }                                                   \
76 }
77
78 #define ATE_BBP_IO_WRITE8_BY_REG_ID(_A, _I, _V)        \
79 {                                                       \
80     BBP_CSR_CFG_STRUC  BbpCsr;                             \
81     int             BusyCnt;                            \
82     for (BusyCnt=0; BusyCnt<MAX_BUSY_COUNT; BusyCnt++)  \
83     {                                                   \
84         RTMP_IO_READ32(_A, BBP_CSR_CFG, &BbpCsr.word);     \
85         if (BbpCsr.field.Busy == BUSY)                  \
86             continue;                                   \
87         BbpCsr.word = 0;                                \
88         BbpCsr.field.fRead = 0;                         \
89         BbpCsr.field.BBP_RW_MODE = 1;                         \
90         BbpCsr.field.Busy = 1;                          \
91         BbpCsr.field.Value = _V;                        \
92         BbpCsr.field.RegNum = _I;                       \
93         RTMP_IO_WRITE32(_A, BBP_CSR_CFG, BbpCsr.word);     \
94         (_A)->BbpWriteLatch[_I] = _V;                   \
95         break;                                          \
96     }                                                   \
97     if (BusyCnt == MAX_BUSY_COUNT)                      \
98     {                                                   \
99         ATEDBGPRINT(RT_DEBUG_ERROR, ("BBP write R%d fail\n", _I));     \
100     }                                                   \
101 }
102
103 /* RT2880_iNIC will define RT2860. */
104 #define EEPROM_SIZE                                                             0x200
105 /* iNIC has its own EEPROM_BIN_FILE_NAME */
106 #ifdef CONFIG_STA_SUPPORT
107 #define EEPROM_BIN_FILE_NAME  "/etc/Wireless/RT2860STA/e2p.bin"
108 #endif // CONFIG_STA_SUPPORT //
109
110
111 VOID rt_ee_read_all(
112         IN  PRTMP_ADAPTER   pAd,
113         OUT USHORT *Data);
114
115
116 VOID rt_ee_write_all(
117         IN  PRTMP_ADAPTER   pAd,
118         IN  USHORT *Data);
119
120 INT Set_ATE_Proc(
121         IN      PRTMP_ADAPTER   pAd,
122         IN      PUCHAR                  arg);
123
124 INT     Set_ATE_DA_Proc(
125         IN      PRTMP_ADAPTER   pAd,
126         IN      PUCHAR                  arg);
127
128 INT     Set_ATE_SA_Proc(
129         IN      PRTMP_ADAPTER   pAd,
130         IN      PUCHAR                  arg);
131
132 INT     Set_ATE_BSSID_Proc(
133         IN      PRTMP_ADAPTER   pAd,
134         IN      PUCHAR                  arg);
135
136 INT     Set_ATE_CHANNEL_Proc(
137         IN      PRTMP_ADAPTER   pAd,
138         IN      PUCHAR                  arg);
139
140 INT     Set_ATE_TX_POWER0_Proc(
141         IN      PRTMP_ADAPTER   pAd,
142         IN      PUCHAR                  arg);
143
144 INT     Set_ATE_TX_POWER1_Proc(
145         IN      PRTMP_ADAPTER   pAd,
146         IN      PUCHAR                  arg);
147
148 INT     Set_ATE_TX_Antenna_Proc(
149         IN      PRTMP_ADAPTER   pAd,
150         IN      PUCHAR                  arg);
151
152 INT     Set_ATE_RX_Antenna_Proc(
153         IN      PRTMP_ADAPTER   pAd,
154         IN      PUCHAR                  arg);
155
156 INT     Set_ATE_TX_FREQOFFSET_Proc(
157         IN      PRTMP_ADAPTER   pAd,
158         IN      PUCHAR                  arg);
159
160 INT     Set_ATE_TX_BW_Proc(
161         IN      PRTMP_ADAPTER   pAd,
162         IN      PUCHAR                  arg);
163
164 INT     Set_ATE_TX_LENGTH_Proc(
165         IN      PRTMP_ADAPTER   pAd,
166         IN      PUCHAR                  arg);
167
168 INT     Set_ATE_TX_COUNT_Proc(
169         IN      PRTMP_ADAPTER   pAd,
170         IN      PUCHAR                  arg);
171
172 INT     Set_ATE_TX_MCS_Proc(
173         IN      PRTMP_ADAPTER   pAd,
174         IN      PUCHAR                  arg);
175
176 INT     Set_ATE_TX_MODE_Proc(
177         IN      PRTMP_ADAPTER   pAd,
178         IN      PUCHAR                  arg);
179
180 INT     Set_ATE_TX_GI_Proc(
181         IN      PRTMP_ADAPTER   pAd,
182         IN      PUCHAR                  arg);
183
184
185 INT     Set_ATE_RX_FER_Proc(
186         IN      PRTMP_ADAPTER   pAd,
187         IN      PUCHAR                  arg);
188
189 INT Set_ATE_Read_RF_Proc(
190         IN      PRTMP_ADAPTER   pAd,
191         IN      PUCHAR                  arg);
192
193 INT Set_ATE_Write_RF1_Proc(
194         IN      PRTMP_ADAPTER   pAd,
195         IN      PUCHAR                  arg);
196
197 INT Set_ATE_Write_RF2_Proc(
198         IN      PRTMP_ADAPTER   pAd,
199         IN      PUCHAR                  arg);
200
201 INT Set_ATE_Write_RF3_Proc(
202         IN      PRTMP_ADAPTER   pAd,
203         IN      PUCHAR                  arg);
204
205 INT Set_ATE_Write_RF4_Proc(
206         IN      PRTMP_ADAPTER   pAd,
207         IN      PUCHAR                  arg);
208
209 INT Set_ATE_Load_E2P_Proc(
210         IN      PRTMP_ADAPTER   pAd,
211         IN      PUCHAR                  arg);
212
213 INT Set_ATE_Read_E2P_Proc(
214         IN      PRTMP_ADAPTER   pAd,
215         IN      PUCHAR                  arg);
216
217 INT     Set_ATE_Show_Proc(
218         IN      PRTMP_ADAPTER   pAd,
219         IN      PUCHAR                  arg);
220
221 INT     Set_ATE_Help_Proc(
222         IN      PRTMP_ADAPTER   pAd,
223         IN      PUCHAR                  arg);
224
225 #ifdef RALINK_ATE
226 #ifdef RALINK_28xx_QA
227 VOID ATE_QA_Statistics(
228         IN PRTMP_ADAPTER                pAd,
229         IN PRXWI_STRUC                  pRxWI,
230         IN PRT28XX_RXD_STRUC    p28xxRxD,
231         IN PHEADER_802_11               pHeader);
232
233 VOID RtmpDoAte(
234         IN      PRTMP_ADAPTER   pAdapter,
235         IN      struct iwreq    *wrq);
236
237 VOID BubbleSort(
238         IN  INT32 n,
239         IN  INT32 a[]);
240
241 VOID CalNoiseLevel(
242         IN  PRTMP_ADAPTER   pAdapter,
243         IN  UCHAR           channel,
244         OUT INT32           buffer[3][10]);
245
246 BOOLEAN SyncTxRxConfig(
247         IN      PRTMP_ADAPTER   pAdapter,
248         IN      USHORT                  offset,
249         IN      UCHAR                   value);
250
251 #if 0
252 INT Set_TxStart_Proc(
253         IN      PRTMP_ADAPTER   pAd,
254         IN      PUCHAR                  arg);
255 #endif  // 0 //
256
257 INT Set_TxStop_Proc(
258         IN      PRTMP_ADAPTER   pAd,
259         IN      PUCHAR                  arg);
260
261 INT Set_RxStop_Proc(
262         IN      PRTMP_ADAPTER   pAd,
263         IN      PUCHAR                  arg);
264
265 #if 0
266 INT Set_EERead_Proc(
267         IN      PRTMP_ADAPTER   pAd,
268         IN      PUCHAR                  arg);
269
270 INT Set_EEWrite_Proc(
271         IN      PRTMP_ADAPTER   pAd,
272         IN      PUCHAR                  arg);
273
274 INT Set_BBPRead_Proc(
275         IN      PRTMP_ADAPTER   pAd,
276         IN      PUCHAR                  arg);
277
278 INT Set_BBPWrite_Proc(
279         IN      PRTMP_ADAPTER   pAd,
280         IN      PUCHAR                  arg);
281
282 INT Set_RFWrite_Proc(
283         IN      PRTMP_ADAPTER   pAd,
284         IN      PUCHAR                  arg);
285 #endif // end of #if 0 //
286 #endif // RALINK_28xx_QA //
287 #endif // RALINK_ATE //
288
289 VOID ATEAsicSwitchChannel(
290         IN PRTMP_ADAPTER pAd);
291
292 VOID ATEAsicAdjustTxPower(
293         IN PRTMP_ADAPTER pAd);
294
295 VOID ATEDisableAsicProtect(
296         IN              PRTMP_ADAPTER   pAd);
297
298 CHAR ATEConvertToRssi(
299         IN PRTMP_ADAPTER  pAd,
300         IN CHAR                         Rssi,
301         IN UCHAR    RssiNumber);
302
303 VOID ATESampleRssi(
304         IN PRTMP_ADAPTER        pAd,
305         IN PRXWI_STRUC          pRxWI);
306
307
308 #ifdef CONFIG_STA_SUPPORT
309 VOID RTMPStationStop(
310     IN  PRTMP_ADAPTER   pAd);
311
312 VOID RTMPStationStart(
313     IN  PRTMP_ADAPTER   pAd);
314 #endif // CONFIG_STA_SUPPORT //
315 #endif // __ATE_H__ //