xref: /openbmc/linux/drivers/staging/vt6655/rf.h (revision 03f4a7b6)
103f4a7b6SGanesh Biradar /* SPDX-License-Identifier: GPL-2.0+ */
25449c685SForest Bond /*
35449c685SForest Bond  * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
45449c685SForest Bond  * All rights reserved.
55449c685SForest Bond  *
65449c685SForest Bond  * File: rf.h
75449c685SForest Bond  *
85449c685SForest Bond  * Purpose:
95449c685SForest Bond  *
105449c685SForest Bond  * Author: Jerry Chen
115449c685SForest Bond  *
125449c685SForest Bond  * Date: Feb. 19, 2004
135449c685SForest Bond  *
145449c685SForest Bond  */
155449c685SForest Bond 
165449c685SForest Bond #ifndef __RF_H__
175449c685SForest Bond #define __RF_H__
185449c685SForest Bond 
195449c685SForest Bond #include "device.h"
20a7ad322aSJim Lieb 
215449c685SForest Bond /*---------------------  Export Definitions -------------------------*/
22353710ceSNicholas Parkanyi /*
23353710ceSNicholas Parkanyi  * Baseband RF pair definition in eeprom (Bits 6..0)
24353710ceSNicholas Parkanyi  */
255449c685SForest Bond #define RF_RFMD2959             0x01
265449c685SForest Bond #define RF_MAXIMAG              0x02
275449c685SForest Bond #define RF_AIROHA               0x03
285449c685SForest Bond 
295449c685SForest Bond #define RF_UW2451               0x05
305449c685SForest Bond #define RF_MAXIMG               0x06
31353710ceSNicholas Parkanyi #define RF_MAXIM2829            0x07 /* RobertYu: 20041118 */
32353710ceSNicholas Parkanyi #define RF_UW2452               0x08 /* RobertYu: 20041210 */
33353710ceSNicholas Parkanyi #define RF_AIROHA7230           0x0a /* RobertYu: 20050104 */
345449c685SForest Bond #define RF_UW2453               0x0b
355449c685SForest Bond 
365449c685SForest Bond #define RF_VT3226               0x09
375449c685SForest Bond #define RF_AL2230S              0x0e
385449c685SForest Bond 
395449c685SForest Bond #define RF_NOTHING              0x7E
405449c685SForest Bond #define RF_EMU                  0x80
415449c685SForest Bond #define RF_MASK                 0x7F
425449c685SForest Bond 
435449c685SForest Bond #define ZONE_FCC                0
445449c685SForest Bond #define ZONE_MKK1               1
455449c685SForest Bond #define ZONE_ETSI               2
465449c685SForest Bond #define ZONE_IC                 3
475449c685SForest Bond #define ZONE_SPAIN              4
485449c685SForest Bond #define ZONE_FRANCE             5
495449c685SForest Bond #define ZONE_MKK                6
505449c685SForest Bond #define ZONE_ISRAEL             7
515449c685SForest Bond 
52353710ceSNicholas Parkanyi /* [20050104] CB_MAXIM2829_CHANNEL_5G_HIGH, CB_UW2452_CHANNEL_5G_HIGH: 40==>41 */
53353710ceSNicholas Parkanyi #define CB_MAXIM2829_CHANNEL_5G_HIGH    41 /* Index41: channel = 100, Tf = 5500MHz, set the (A3:A0=0101) D6=1 */
54353710ceSNicholas Parkanyi #define CB_UW2452_CHANNEL_5G_HIGH       41 /* [20041210] Index41: channel = 100, Tf = 5500MHz, change VCO2->VCO3 */
555449c685SForest Bond 
565449c685SForest Bond /*---------------------  Export Classes  ----------------------------*/
575449c685SForest Bond 
585449c685SForest Bond /*---------------------  Export Variables  --------------------------*/
595449c685SForest Bond 
605449c685SForest Bond /*---------------------  Export Functions  --------------------------*/
615449c685SForest Bond 
6224c8bd8fSDerek Robson bool IFRFbWriteEmbedded(struct vnt_private *priv, unsigned long dwData);
6324c8bd8fSDerek Robson bool RFbSelectChannel(struct vnt_private *priv, unsigned char byRFType, u16 byChannel);
647b6a0013SCharles Clément bool RFbInit(
6524c8bd8fSDerek Robson 	struct vnt_private *priv
665449c685SForest Bond );
6724c8bd8fSDerek Robson bool RFvWriteWakeProgSyn(struct vnt_private *priv, unsigned char byRFType, u16 uChannel);
6824c8bd8fSDerek Robson bool RFbSetPower(struct vnt_private *priv, unsigned int rate, u16 uCH);
697b6a0013SCharles Clément bool RFbRawSetPower(
7024c8bd8fSDerek Robson 	struct vnt_private *priv,
713fc9b584SCharles Clément 	unsigned char byPwr,
72c1aa41dcSPaul McQuade 	unsigned int rate
735449c685SForest Bond );
745449c685SForest Bond 
756b35b7b3SCharles Clément void
765449c685SForest Bond RFvRSSITodBm(
7724c8bd8fSDerek Robson 	struct vnt_private *priv,
783fc9b584SCharles Clément 	unsigned char byCurrRSSI,
79a884847aSJim Lieb 	long    *pldBm
805449c685SForest Bond );
815449c685SForest Bond 
82353710ceSNicholas Parkanyi /* {{ RobertYu: 20050104 */
8324c8bd8fSDerek Robson bool RFbAL7230SelectChannelPostProcess(struct vnt_private *priv, u16 byOldChannel, u16 byNewChannel);
84353710ceSNicholas Parkanyi /* }} RobertYu */
855449c685SForest Bond 
86353710ceSNicholas Parkanyi #endif /* __RF_H__ */
87