These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / staging / vt6655 / rf.h
1 /*
2  * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
3  * All rights reserved.
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License along
16  * with this program; if not, write to the Free Software Foundation, Inc.,
17  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18  *
19  *
20  * File: rf.h
21  *
22  * Purpose:
23  *
24  * Author: Jerry Chen
25  *
26  * Date: Feb. 19, 2004
27  *
28  */
29
30 #ifndef __RF_H__
31 #define __RF_H__
32
33 #include "device.h"
34
35 /*---------------------  Export Definitions -------------------------*/
36 /*
37  * Baseband RF pair definition in eeprom (Bits 6..0)
38 */
39 #define RF_RFMD2959             0x01
40 #define RF_MAXIMAG              0x02
41 #define RF_AIROHA               0x03
42
43 #define RF_UW2451               0x05
44 #define RF_MAXIMG               0x06
45 #define RF_MAXIM2829            0x07 /* RobertYu: 20041118 */
46 #define RF_UW2452               0x08 /* RobertYu: 20041210 */
47 #define RF_AIROHA7230           0x0a /* RobertYu: 20050104 */
48 #define RF_UW2453               0x0b
49
50 #define RF_VT3226               0x09
51 #define RF_AL2230S              0x0e
52
53 #define RF_NOTHING              0x7E
54 #define RF_EMU                  0x80
55 #define RF_MASK                 0x7F
56
57 #define ZONE_FCC                0
58 #define ZONE_MKK1               1
59 #define ZONE_ETSI               2
60 #define ZONE_IC                 3
61 #define ZONE_SPAIN              4
62 #define ZONE_FRANCE             5
63 #define ZONE_MKK                6
64 #define ZONE_ISRAEL             7
65
66 /* [20050104] CB_MAXIM2829_CHANNEL_5G_HIGH, CB_UW2452_CHANNEL_5G_HIGH: 40==>41 */
67 #define CB_MAXIM2829_CHANNEL_5G_HIGH    41 /* Index41: channel = 100, Tf = 5500MHz, set the (A3:A0=0101) D6=1 */
68 #define CB_UW2452_CHANNEL_5G_HIGH       41 /* [20041210] Index41: channel = 100, Tf = 5500MHz, change VCO2->VCO3 */
69
70 /*---------------------  Export Classes  ----------------------------*/
71
72 /*---------------------  Export Variables  --------------------------*/
73
74 /*---------------------  Export Functions  --------------------------*/
75
76 bool IFRFbWriteEmbedded(struct vnt_private *, unsigned long dwData);
77 bool RFbSelectChannel(struct vnt_private *, unsigned char byRFType, u16);
78 bool RFbInit(
79         struct vnt_private *
80 );
81 bool RFvWriteWakeProgSyn(struct vnt_private *, unsigned char byRFType, u16);
82 bool RFbSetPower(struct vnt_private *, unsigned int rate, u16);
83 bool RFbRawSetPower(
84         struct vnt_private *,
85         unsigned char byPwr,
86         unsigned int rate
87 );
88
89 void
90 RFvRSSITodBm(
91         struct vnt_private *,
92         unsigned char byCurrRSSI,
93         long    *pldBm
94 );
95
96 /* {{ RobertYu: 20050104 */
97 bool RFbAL7230SelectChannelPostProcess(struct vnt_private *, u16, u16);
98 /* }} RobertYu */
99
100 #endif /* __RF_H__ */