Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh...
[pandora-kernel.git] / drivers / staging / winbond / wb35reg_f.h
1 #ifndef __WINBOND_WB35REG_F_H
2 #define __WINBOND_WB35REG_F_H
3
4 #include "wbhal.h"
5
6 /*
7  * ====================================
8  * Interface function declare
9  * ====================================
10  */
11 unsigned char Wb35Reg_initial(struct hw_data *hw_data);
12 void Uxx_power_on_procedure(struct hw_data *hw_data);
13 void Uxx_power_off_procedure(struct hw_data *hw_data);
14 void Uxx_ReadEthernetAddress(struct hw_data *hw_data);
15 void Dxx_initial(struct hw_data *hw_data);
16 void Mxx_initial(struct hw_data *hw_data);
17 void RFSynthesizer_initial(struct hw_data *hw_data);
18 void RFSynthesizer_SwitchingChannel(struct hw_data *hw_data, struct chan_info channel);
19 void BBProcessor_initial(struct hw_data *hw_data);
20 void BBProcessor_RateChanging(struct hw_data *hw_data, u8 rate);
21 u8 RFSynthesizer_SetPowerIndex(struct hw_data *hw_data, u8 power_index);
22 u8 RFSynthesizer_SetMaxim2828_24Power(struct hw_data *, u8 index);
23 u8 RFSynthesizer_SetMaxim2828_50Power(struct hw_data *, u8 index);
24 u8 RFSynthesizer_SetMaxim2827_24Power(struct hw_data *, u8 index);
25 u8 RFSynthesizer_SetMaxim2827_50Power(struct hw_data *, u8 index);
26 u8 RFSynthesizer_SetMaxim2825Power(struct hw_data *, u8 index);
27 u8 RFSynthesizer_SetAiroha2230Power(struct hw_data *, u8 index);
28 u8 RFSynthesizer_SetAiroha7230Power(struct hw_data *, u8 index);
29 u8 RFSynthesizer_SetWinbond242Power(struct hw_data *, u8 index);
30 void GetTxVgaFromEEPROM(struct hw_data *hw_data);
31 void EEPROMTxVgaAdjust(struct hw_data *hw_data);
32
33 #define RFWriteControlData(_A, _V) Wb35Reg_Write(_A, 0x0864, _V)
34
35 void Wb35Reg_destroy(struct hw_data *hw_data);
36
37 unsigned char Wb35Reg_Read(struct hw_data *hw_data, u16 register_no, u32 *register_value);
38 unsigned char Wb35Reg_ReadSync(struct hw_data *hw_data, u16 register_no, u32 *register_value);
39 unsigned char Wb35Reg_Write(struct hw_data *hw_data, u16 register_no, u32 register_value);
40 unsigned char Wb35Reg_WriteSync(struct hw_data *hw_data, u16 register_no, u32 register_value);
41 unsigned char Wb35Reg_WriteWithCallbackValue(struct hw_data *hw_data,
42                                                          u16 register_no,
43                                                          u32 register_value,
44                                                          s8 *value,
45                                                          s8 len);
46 unsigned char Wb35Reg_BurstWrite(struct hw_data *hw_data,
47                                         u16 register_no,
48                                         u32 *register_data,
49                                         u8 number_of_data,
50                                         u8 flag);
51
52 void Wb35Reg_EP0VM(struct hw_data *hw_data);
53 void Wb35Reg_EP0VM_start(struct hw_data *hw_data);
54 void Wb35Reg_EP0VM_complete(struct urb *urb);
55
56 u32 BitReverse(u32 data, u32 data_length);
57
58 void CardGetMulticastBit(u8 address[MAC_ADDR_LENGTH], u8 *byte, u8 *value);
59 u32 CardComputeCrc(u8 *buffer, u32 length);
60
61 void Wb35Reg_phy_calibration(struct hw_data *hw_data);
62 void Wb35Reg_Update(struct hw_data *hw_data, u16 register_no, u32 register_value);
63 unsigned char adjust_TXVGA_for_iq_mag(struct hw_data *hw_data);
64
65 #endif