1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
| /* SPDX-License-Identifier: GPL-2.0 */
| /******************************************************************************
| *
| * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
| *
| ******************************************************************************/
| #ifndef __HAL_PHY_H__
| #define __HAL_PHY_H__
|
|
| #if DISABLE_BB_RF
| #define HAL_FW_ENABLE 0
| #define HAL_MAC_ENABLE 0
| #define HAL_BB_ENABLE 0
| #define HAL_RF_ENABLE 0
| #else /* FPGA_PHY and ASIC */
| #define HAL_FW_ENABLE 1
| #define HAL_MAC_ENABLE 1
| #define HAL_BB_ENABLE 1
| #define HAL_RF_ENABLE 1
| #endif
|
| #define RF6052_MAX_TX_PWR 0x3F
| #define RF6052_MAX_REG_88E 0xFF
| #define RF6052_MAX_REG_92C 0x7F
|
| #define RF6052_MAX_REG \
| (RF6052_MAX_REG_88E > RF6052_MAX_REG_92C) ? RF6052_MAX_REG_88E : RF6052_MAX_REG_92C
|
| #define GET_RF6052_REAL_MAX_REG(_Adapter) RF6052_MAX_REG_92C
|
| #define RF6052_MAX_PATH 2
|
| /* */
| /* Antenna detection method, i.e., using single tone detection or RSSI reported from each antenna detected. */
| /* Added by Roger, 2013.05.22. */
| /* */
| #define ANT_DETECT_BY_SINGLE_TONE BIT0
| #define ANT_DETECT_BY_RSSI BIT1
| #define IS_ANT_DETECT_SUPPORT_SINGLE_TONE(__Adapter) ((GET_HAL_DATA(__Adapter)->AntDetection) & ANT_DETECT_BY_SINGLE_TONE)
| #define IS_ANT_DETECT_SUPPORT_RSSI(__Adapter) ((GET_HAL_DATA(__Adapter)->AntDetection) & ANT_DETECT_BY_RSSI)
|
|
| /*--------------------------Define Parameters-------------------------------*/
| enum BAND_TYPE {
| BAND_ON_2_4G = 0,
| BAND_ON_5G,
| BAND_ON_BOTH,
| BANDMAX
| };
|
| enum RF_TYPE {
| RF_TYPE_MIN = 0, /* 0 */
| RF_8225 = 1, /* 1 11b/g RF for verification only */
| RF_8256 = 2, /* 2 11b/g/n */
| RF_8258 = 3, /* 3 11a/b/g/n RF */
| RF_6052 = 4, /* 4 11b/g/n RF */
| RF_PSEUDO_11N = 5, /* 5, It is a temporality RF. */
| RF_TYPE_MAX
| };
|
| enum RF_PATH {
| RF_PATH_A = 0,
| RF_PATH_B,
| RF_PATH_C,
| RF_PATH_D
| };
|
| #define TX_1S 0
| #define TX_2S 1
| #define TX_3S 2
| #define TX_4S 3
|
| #define RF_PATH_MAX_92C_88E 2
| #define RF_PATH_MAX_90_8812 4 /* Max RF number 90 support */
|
| enum ANTENNA_PATH {
| ANTENNA_NONE = 0,
| ANTENNA_D = 1,
| ANTENNA_C = 2,
| ANTENNA_CD = 3,
| ANTENNA_B = 4,
| ANTENNA_BD = 5,
| ANTENNA_BC = 6,
| ANTENNA_BCD = 7,
| ANTENNA_A = 8,
| ANTENNA_AD = 9,
| ANTENNA_AC = 10,
| ANTENNA_ACD = 11,
| ANTENNA_AB = 12,
| ANTENNA_ABD = 13,
| ANTENNA_ABC = 14,
| ANTENNA_ABCD = 15
| };
|
| enum RF_CONTENT {
| radioa_txt = 0x1000,
| radiob_txt = 0x1001,
| radioc_txt = 0x1002,
| radiod_txt = 0x1003
| };
|
| enum BaseBand_Config_Type {
| BaseBand_Config_PHY_REG = 0, /* Radio Path A */
| BaseBand_Config_AGC_TAB = 1, /* Radio Path B */
| BaseBand_Config_AGC_TAB_2G = 2,
| BaseBand_Config_AGC_TAB_5G = 3,
| BaseBand_Config_PHY_REG_PG
| };
|
| enum HW_BLOCK {
| HW_BLOCK_MAC = 0,
| HW_BLOCK_PHY0 = 1,
| HW_BLOCK_PHY1 = 2,
| HW_BLOCK_RF = 3,
| HW_BLOCK_MAXIMUM = 4, /* Never use this */
| };
|
| enum WIRELESS_MODE {
| WIRELESS_MODE_UNKNOWN = 0x00,
| WIRELESS_MODE_A = 0x01,
| WIRELESS_MODE_B = 0x02,
| WIRELESS_MODE_G = 0x04,
| WIRELESS_MODE_AUTO = 0x08,
| WIRELESS_MODE_N_24G = 0x10,
| WIRELESS_MODE_N_5G = 0x20,
| WIRELESS_MODE_AC_5G = 0x40,
| WIRELESS_MODE_AC_24G = 0x80,
| WIRELESS_MODE_AC_ONLY = 0x100,
| };
|
| enum SwChnlCmdID {
| CmdID_End,
| CmdID_SetTxPowerLevel,
| CmdID_BBRegWrite10,
| CmdID_WritePortUlong,
| CmdID_WritePortUshort,
| CmdID_WritePortUchar,
| CmdID_RF_WriteReg,
| };
|
| struct SwChnlCmd {
| enum SwChnlCmdID CmdID;
| u32 Para1;
| u32 Para2;
| u32 msDelay;
| };
|
| struct R_ANTENNA_SELECT_OFDM {
| #ifdef __LITTLE_ENDIAN
| u32 r_tx_antenna:4;
| u32 r_ant_l:4;
| u32 r_ant_non_ht:4;
| u32 r_ant_ht1:4;
| u32 r_ant_ht2:4;
| u32 r_ant_ht_s1:4;
| u32 r_ant_non_ht_s1:4;
| u32 OFDM_TXSC:2;
| u32 Reserved:2;
| #else
| u32 Reserved:2;
| u32 OFDM_TXSC:2;
| u32 r_ant_non_ht_s1:4;
| u32 r_ant_ht_s1:4;
| u32 r_ant_ht2:4;
| u32 r_ant_ht1:4;
| u32 r_ant_non_ht:4;
| u32 r_ant_l:4;
| u32 r_tx_antenna:4;
| #endif
| };
|
| /*--------------------------Exported Function prototype---------------------*/
|
| #endif /* __HAL_COMMON_H__ */
|
|