1 /******************************************************************************
\r
3 * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
\r
5 * This program is free software; you can redistribute it and/or modify it
\r
6 * under the terms of version 2 of the GNU General Public License as
\r
7 * published by the Free Software Foundation.
\r
9 * This program is distributed in the hope that it will be useful, but WITHOUT
\r
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
\r
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
\r
14 * You should have received a copy of the GNU General Public License along with
\r
15 * this program; if not, write to the Free Software Foundation, Inc.,
\r
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
\r
19 ******************************************************************************/
\r
21 //============================================================
\r
23 //============================================================
\r
24 #include "mp_precomp.h"
\r
25 #include "phydm_precomp.h"
\r
27 #if !defined(_OUTSRC_COEXIST)
\r
28 //============================================================
\r
30 //============================================================
\r
33 u4Byte OFDMSwingTable_New[OFDM_TABLE_SIZE_92D] = {
\r
34 0x0b40002d, // 0, -15.0dB
\r
35 0x0c000030, // 1, -14.5dB
\r
36 0x0cc00033, // 2, -14.0dB
\r
37 0x0d800036, // 3, -13.5dB
\r
38 0x0e400039, // 4, -13.0dB
\r
39 0x0f00003c, // 5, -12.5dB
\r
40 0x10000040, // 6, -12.0dB
\r
41 0x11000044, // 7, -11.5dB
\r
42 0x12000048, // 8, -11.0dB
\r
43 0x1300004c, // 9, -10.5dB
\r
44 0x14400051, // 10, -10.0dB
\r
45 0x15800056, // 11, -9.5dB
\r
46 0x16c0005b, // 12, -9.0dB
\r
47 0x18000060, // 13, -8.5dB
\r
48 0x19800066, // 14, -8.0dB
\r
49 0x1b00006c, // 15, -7.5dB
\r
50 0x1c800072, // 16, -7.0dB
\r
51 0x1e400079, // 17, -6.5dB
\r
52 0x20000080, // 18, -6.0dB
\r
53 0x22000088, // 19, -5.5dB
\r
54 0x24000090, // 20, -5.0dB
\r
55 0x26000098, // 21, -4.5dB
\r
56 0x288000a2, // 22, -4.0dB
\r
57 0x2ac000ab, // 23, -3.5dB
\r
58 0x2d4000b5, // 24, -3.0dB
\r
59 0x300000c0, // 25, -2.5dB
\r
60 0x32c000cb, // 26, -2.0dB
\r
61 0x35c000d7, // 27, -1.5dB
\r
62 0x390000e4, // 28, -1.0dB
\r
63 0x3c8000f2, // 29, -0.5dB
\r
64 0x40000100, // 30, +0dB
\r
65 0x43c0010f, // 31, +0.5dB
\r
66 0x47c0011f, // 32, +1.0dB
\r
67 0x4c000130, // 33, +1.5dB
\r
68 0x50800142, // 34, +2.0dB
\r
69 0x55400155, // 35, +2.5dB
\r
70 0x5a400169, // 36, +3.0dB
\r
71 0x5fc0017f, // 37, +3.5dB
\r
72 0x65400195, // 38, +4.0dB
\r
73 0x6b8001ae, // 39, +4.5dB
\r
74 0x71c001c7, // 40, +5.0dB
\r
75 0x788001e2, // 41, +5.5dB
\r
76 0x7f8001fe // 42, +6.0dB
\r
79 u1Byte CCKSwingTable_Ch1_Ch13_New[CCK_TABLE_SIZE][8] = {
\r
80 {0x09, 0x08, 0x07, 0x06, 0x04, 0x03, 0x01, 0x01}, // 0, -16.0dB
\r
81 {0x09, 0x09, 0x08, 0x06, 0x05, 0x03, 0x01, 0x01}, // 1, -15.5dB
\r
82 {0x0a, 0x09, 0x08, 0x07, 0x05, 0x03, 0x02, 0x01}, // 2, -15.0dB
\r
83 {0x0a, 0x0a, 0x09, 0x07, 0x05, 0x03, 0x02, 0x01}, // 3, -14.5dB
\r
84 {0x0b, 0x0a, 0x09, 0x08, 0x06, 0x04, 0x02, 0x01}, // 4, -14.0dB
\r
85 {0x0b, 0x0b, 0x0a, 0x08, 0x06, 0x04, 0x02, 0x01}, // 5, -13.5dB
\r
86 {0x0c, 0x0c, 0x0a, 0x09, 0x06, 0x04, 0x02, 0x01}, // 6, -13.0dB
\r
87 {0x0d, 0x0c, 0x0b, 0x09, 0x07, 0x04, 0x02, 0x01}, // 7, -12.5dB
\r
88 {0x0d, 0x0d, 0x0c, 0x0a, 0x07, 0x05, 0x02, 0x01}, // 8, -12.0dB
\r
89 {0x0e, 0x0e, 0x0c, 0x0a, 0x08, 0x05, 0x02, 0x01}, // 9, -11.5dB
\r
90 {0x0f, 0x0f, 0x0d, 0x0b, 0x08, 0x05, 0x03, 0x01}, // 10, -11.0dB
\r
91 {0x10, 0x10, 0x0e, 0x0b, 0x08, 0x05, 0x03, 0x01}, // 11, -10.5dB
\r
92 {0x11, 0x11, 0x0f, 0x0c, 0x09, 0x06, 0x03, 0x01}, // 12, -10.0dB
\r
93 {0x12, 0x12, 0x0f, 0x0c, 0x09, 0x06, 0x03, 0x01}, // 13, -9.5dB
\r
94 {0x13, 0x13, 0x10, 0x0d, 0x0a, 0x06, 0x03, 0x01}, // 14, -9.0dB
\r
95 {0x14, 0x14, 0x11, 0x0e, 0x0b, 0x07, 0x03, 0x02}, // 15, -8.5dB
\r
96 {0x16, 0x15, 0x12, 0x0f, 0x0b, 0x07, 0x04, 0x01}, // 16, -8.0dB
\r
97 {0x17, 0x16, 0x13, 0x10, 0x0c, 0x08, 0x04, 0x02}, // 17, -7.5dB
\r
98 {0x18, 0x17, 0x15, 0x11, 0x0c, 0x08, 0x04, 0x02}, // 18, -7.0dB
\r
99 {0x1a, 0x19, 0x16, 0x12, 0x0d, 0x09, 0x04, 0x02}, // 19, -6.5dB
\r
100 {0x1c, 0x1a, 0x18, 0x12, 0x0e, 0x08, 0x04, 0x02}, // 20, -6.0dB
\r
101 {0x1d, 0x1c, 0x18, 0x14, 0x0f, 0x0a, 0x05, 0x02}, // 21, -5.5dB
\r
102 {0x1f, 0x1e, 0x1a, 0x15, 0x10, 0x0a, 0x05, 0x02}, // 22, -5.0dB
\r
103 {0x20, 0x20, 0x1b, 0x16, 0x11, 0x08, 0x05, 0x02}, // 23, -4.5dB
\r
104 {0x22, 0x21, 0x1d, 0x18, 0x11, 0x0b, 0x06, 0x02}, // 24, -4.0dB
\r
105 {0x24, 0x23, 0x1f, 0x19, 0x13, 0x0c, 0x06, 0x03}, // 25, -3.5dB
\r
106 {0x26, 0x25, 0x21, 0x1b, 0x14, 0x0d, 0x06, 0x03}, // 26, -3.0dB
\r
107 {0x28, 0x28, 0x22, 0x1c, 0x15, 0x0d, 0x07, 0x03}, // 27, -2.5dB
\r
108 {0x2b, 0x2a, 0x25, 0x1e, 0x16, 0x0e, 0x07, 0x03}, // 28, -2.0dB
\r
109 {0x2d, 0x2d, 0x27, 0x1f, 0x18, 0x0f, 0x08, 0x03}, // 29, -1.5dB
\r
110 {0x30, 0x2f, 0x29, 0x21, 0x19, 0x10, 0x08, 0x03}, // 30, -1.0dB
\r
111 {0x33, 0x32, 0x2b, 0x23, 0x1a, 0x11, 0x08, 0x04}, // 31, -0.5dB
\r
112 {0x36, 0x35, 0x2e, 0x25, 0x1c, 0x12, 0x09, 0x04} // 32, +0dB
\r
116 u1Byte CCKSwingTable_Ch14_New[CCK_TABLE_SIZE][8]= {
\r
117 {0x09, 0x08, 0x07, 0x04, 0x00, 0x00, 0x00, 0x00}, // 0, -16.0dB
\r
118 {0x09, 0x09, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00}, // 1, -15.5dB
\r
119 {0x0a, 0x09, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00}, // 2, -15.0dB
\r
120 {0x0a, 0x0a, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00}, // 3, -14.5dB
\r
121 {0x0b, 0x0a, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00}, // 4, -14.0dB
\r
122 {0x0b, 0x0b, 0x0a, 0x06, 0x00, 0x00, 0x00, 0x00}, // 5, -13.5dB
\r
123 {0x0c, 0x0c, 0x0a, 0x06, 0x00, 0x00, 0x00, 0x00}, // 6, -13.0dB
\r
124 {0x0d, 0x0c, 0x0b, 0x06, 0x00, 0x00, 0x00, 0x00}, // 7, -12.5dB
\r
125 {0x0d, 0x0d, 0x0c, 0x07, 0x00, 0x00, 0x00, 0x00}, // 8, -12.0dB
\r
126 {0x0e, 0x0e, 0x0c, 0x07, 0x00, 0x00, 0x00, 0x00}, // 9, -11.5dB
\r
127 {0x0f, 0x0f, 0x0d, 0x08, 0x00, 0x00, 0x00, 0x00}, // 10, -11.0dB
\r
128 {0x10, 0x10, 0x0e, 0x08, 0x00, 0x00, 0x00, 0x00}, // 11, -10.5dB
\r
129 {0x11, 0x11, 0x0f, 0x09, 0x00, 0x00, 0x00, 0x00}, // 12, -10.0dB
\r
130 {0x12, 0x12, 0x0f, 0x09, 0x00, 0x00, 0x00, 0x00}, // 13, -9.5dB
\r
131 {0x13, 0x13, 0x10, 0x0a, 0x00, 0x00, 0x00, 0x00}, // 14, -9.0dB
\r
132 {0x14, 0x14, 0x11, 0x0a, 0x00, 0x00, 0x00, 0x00}, // 15, -8.5dB
\r
133 {0x16, 0x15, 0x12, 0x0b, 0x00, 0x00, 0x00, 0x00}, // 16, -8.0dB
\r
134 {0x17, 0x16, 0x13, 0x0b, 0x00, 0x00, 0x00, 0x00}, // 17, -7.5dB
\r
135 {0x18, 0x17, 0x15, 0x0c, 0x00, 0x00, 0x00, 0x00}, // 18, -7.0dB
\r
136 {0x1a, 0x19, 0x16, 0x0d, 0x00, 0x00, 0x00, 0x00}, // 19, -6.5dB
\r
137 {0x1c, 0x1a, 0x18, 0x0e, 0x00, 0x00, 0x00, 0x00}, // 20, -6.0dB
\r
138 {0x1d, 0x1c, 0x18, 0x0e, 0x00, 0x00, 0x00, 0x00}, // 21, -5.5dB
\r
139 {0x1f, 0x1e, 0x1a, 0x0f, 0x00, 0x00, 0x00, 0x00}, // 22, -5.0dB
\r
140 {0x20, 0x20, 0x1b, 0x10, 0x00, 0x00, 0x00, 0x00}, // 23, -4.5dB
\r
141 {0x22, 0x21, 0x1d, 0x11, 0x00, 0x00, 0x00, 0x00}, // 24, -4.0dB
\r
142 {0x24, 0x23, 0x1f, 0x12, 0x00, 0x00, 0x00, 0x00}, // 25, -3.5dB
\r
143 {0x26, 0x25, 0x21, 0x13, 0x00, 0x00, 0x00, 0x00}, // 26, -3.0dB
\r
144 {0x28, 0x28, 0x24, 0x14, 0x00, 0x00, 0x00, 0x00}, // 27, -2.5dB
\r
145 {0x2b, 0x2a, 0x25, 0x15, 0x00, 0x00, 0x00, 0x00}, // 28, -2.0dB
\r
146 {0x2d, 0x2d, 0x17, 0x17, 0x00, 0x00, 0x00, 0x00}, // 29, -1.5dB
\r
147 {0x30, 0x2f, 0x29, 0x18, 0x00, 0x00, 0x00, 0x00}, // 30, -1.0dB
\r
148 {0x33, 0x32, 0x2b, 0x19, 0x00, 0x00, 0x00, 0x00}, // 31, -0.5dB
\r
149 {0x36, 0x35, 0x2e, 0x1b, 0x00, 0x00, 0x00, 0x00} // 32, +0dB
\r
152 u4Byte OFDMSwingTable[OFDM_TABLE_SIZE_92D] = {
\r
153 0x0b40002d, // 0, -15.0dB
\r
154 0x0c000030, // 1, -14.5dB
\r
155 0x0cc00033, // 2, -14.0dB
\r
156 0x0d800036, // 3, -13.5dB
\r
157 0x0e400039, // 4, -13.0dB
\r
158 0x0f00003c, // 5, -12.5dB
\r
159 0x10000040, // 6, -12.0dB
\r
160 0x11000044, // 7, -11.5dB
\r
161 0x12000048, // 8, -11.0dB
\r
162 0x1300004c, // 9, -10.5dB
\r
163 0x14400051, // 10, -10.0dB
\r
164 0x15800056, // 11, -9.5dB
\r
165 0x16c0005b, // 12, -9.0dB
\r
166 0x18000060, // 13, -8.5dB
\r
167 0x19800066, // 14, -8.0dB
\r
168 0x1b00006c, // 15, -7.5dB
\r
169 0x1c800072, // 16, -7.0dB
\r
170 0x1e400079, // 17, -6.5dB
\r
171 0x20000080, // 18, -6.0dB
\r
172 0x22000088, // 19, -5.5dB
\r
173 0x24000090, // 20, -5.0dB
\r
174 0x26000098, // 21, -4.5dB
\r
175 0x288000a2, // 22, -4.0dB
\r
176 0x2ac000ab, // 23, -3.5dB
\r
177 0x2d4000b5, // 24, -3.0dB
\r
178 0x300000c0, // 25, -2.5dB
\r
179 0x32c000cb, // 26, -2.0dB
\r
180 0x35c000d7, // 27, -1.5dB
\r
181 0x390000e4, // 28, -1.0dB
\r
182 0x3c8000f2, // 29, -0.5dB
\r
183 0x40000100, // 30, +0dB
\r
184 0x43c0010f, // 31, +0.5dB
\r
185 0x47c0011f, // 32, +1.0dB
\r
186 0x4c000130, // 33, +1.5dB
\r
187 0x50800142, // 34, +2.0dB
\r
188 0x55400155, // 35, +2.5dB
\r
189 0x5a400169, // 36, +3.0dB
\r
190 0x5fc0017f, // 37, +3.5dB
\r
191 0x65400195, // 38, +4.0dB
\r
192 0x6b8001ae, // 39, +4.5dB
\r
193 0x71c001c7, // 40, +5.0dB
\r
194 0x788001e2, // 41, +5.5dB
\r
195 0x7f8001fe // 42, +6.0dB
\r
199 u1Byte CCKSwingTable_Ch1_Ch13[CCK_TABLE_SIZE][8] = {
\r
200 {0x09, 0x08, 0x07, 0x06, 0x04, 0x03, 0x01, 0x01}, // 0, -16.0dB
\r
201 {0x09, 0x09, 0x08, 0x06, 0x05, 0x03, 0x01, 0x01}, // 1, -15.5dB
\r
202 {0x0a, 0x09, 0x08, 0x07, 0x05, 0x03, 0x02, 0x01}, // 2, -15.0dB
\r
203 {0x0a, 0x0a, 0x09, 0x07, 0x05, 0x03, 0x02, 0x01}, // 3, -14.5dB
\r
204 {0x0b, 0x0a, 0x09, 0x08, 0x06, 0x04, 0x02, 0x01}, // 4, -14.0dB
\r
205 {0x0b, 0x0b, 0x0a, 0x08, 0x06, 0x04, 0x02, 0x01}, // 5, -13.5dB
\r
206 {0x0c, 0x0c, 0x0a, 0x09, 0x06, 0x04, 0x02, 0x01}, // 6, -13.0dB
\r
207 {0x0d, 0x0c, 0x0b, 0x09, 0x07, 0x04, 0x02, 0x01}, // 7, -12.5dB
\r
208 {0x0d, 0x0d, 0x0c, 0x0a, 0x07, 0x05, 0x02, 0x01}, // 8, -12.0dB
\r
209 {0x0e, 0x0e, 0x0c, 0x0a, 0x08, 0x05, 0x02, 0x01}, // 9, -11.5dB
\r
210 {0x0f, 0x0f, 0x0d, 0x0b, 0x08, 0x05, 0x03, 0x01}, // 10, -11.0dB
\r
211 {0x10, 0x10, 0x0e, 0x0b, 0x08, 0x05, 0x03, 0x01}, // 11, -10.5dB
\r
212 {0x11, 0x11, 0x0f, 0x0c, 0x09, 0x06, 0x03, 0x01}, // 12, -10.0dB
\r
213 {0x12, 0x12, 0x0f, 0x0c, 0x09, 0x06, 0x03, 0x01}, // 13, -9.5dB
\r
214 {0x13, 0x13, 0x10, 0x0d, 0x0a, 0x06, 0x03, 0x01}, // 14, -9.0dB
\r
215 {0x14, 0x14, 0x11, 0x0e, 0x0b, 0x07, 0x03, 0x02}, // 15, -8.5dB
\r
216 {0x16, 0x15, 0x12, 0x0f, 0x0b, 0x07, 0x04, 0x01}, // 16, -8.0dB
\r
217 {0x17, 0x16, 0x13, 0x10, 0x0c, 0x08, 0x04, 0x02}, // 17, -7.5dB
\r
218 {0x18, 0x17, 0x15, 0x11, 0x0c, 0x08, 0x04, 0x02}, // 18, -7.0dB
\r
219 {0x1a, 0x19, 0x16, 0x12, 0x0d, 0x09, 0x04, 0x02}, // 19, -6.5dB
\r
220 {0x1c, 0x1a, 0x18, 0x12, 0x0e, 0x08, 0x04, 0x02}, // 20, -6.0dB
\r
221 {0x1d, 0x1c, 0x18, 0x14, 0x0f, 0x0a, 0x05, 0x02}, // 21, -5.5dB
\r
222 {0x1f, 0x1e, 0x1a, 0x15, 0x10, 0x0a, 0x05, 0x02}, // 22, -5.0dB
\r
223 {0x20, 0x20, 0x1b, 0x16, 0x11, 0x08, 0x05, 0x02}, // 23, -4.5dB
\r
224 {0x22, 0x21, 0x1d, 0x18, 0x11, 0x0b, 0x06, 0x02}, // 24, -4.0dB
\r
225 {0x24, 0x23, 0x1f, 0x19, 0x13, 0x0c, 0x06, 0x03}, // 25, -3.5dB
\r
226 {0x26, 0x25, 0x21, 0x1b, 0x14, 0x0d, 0x06, 0x03}, // 26, -3.0dB
\r
227 {0x28, 0x28, 0x22, 0x1c, 0x15, 0x0d, 0x07, 0x03}, // 27, -2.5dB
\r
228 {0x2b, 0x2a, 0x25, 0x1e, 0x16, 0x0e, 0x07, 0x03}, // 28, -2.0dB
\r
229 {0x2d, 0x2d, 0x27, 0x1f, 0x18, 0x0f, 0x08, 0x03}, // 29, -1.5dB
\r
230 {0x30, 0x2f, 0x29, 0x21, 0x19, 0x10, 0x08, 0x03}, // 30, -1.0dB
\r
231 {0x33, 0x32, 0x2b, 0x23, 0x1a, 0x11, 0x08, 0x04}, // 31, -0.5dB
\r
232 {0x36, 0x35, 0x2e, 0x25, 0x1c, 0x12, 0x09, 0x04} // 32, +0dB
\r
236 u1Byte CCKSwingTable_Ch14 [CCK_TABLE_SIZE][8]= {
\r
237 {0x09, 0x08, 0x07, 0x04, 0x00, 0x00, 0x00, 0x00}, // 0, -16.0dB
\r
238 {0x09, 0x09, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00}, // 1, -15.5dB
\r
239 {0x0a, 0x09, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00}, // 2, -15.0dB
\r
240 {0x0a, 0x0a, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00}, // 3, -14.5dB
\r
241 {0x0b, 0x0a, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00}, // 4, -14.0dB
\r
242 {0x0b, 0x0b, 0x0a, 0x06, 0x00, 0x00, 0x00, 0x00}, // 5, -13.5dB
\r
243 {0x0c, 0x0c, 0x0a, 0x06, 0x00, 0x00, 0x00, 0x00}, // 6, -13.0dB
\r
244 {0x0d, 0x0c, 0x0b, 0x06, 0x00, 0x00, 0x00, 0x00}, // 7, -12.5dB
\r
245 {0x0d, 0x0d, 0x0c, 0x07, 0x00, 0x00, 0x00, 0x00}, // 8, -12.0dB
\r
246 {0x0e, 0x0e, 0x0c, 0x07, 0x00, 0x00, 0x00, 0x00}, // 9, -11.5dB
\r
247 {0x0f, 0x0f, 0x0d, 0x08, 0x00, 0x00, 0x00, 0x00}, // 10, -11.0dB
\r
248 {0x10, 0x10, 0x0e, 0x08, 0x00, 0x00, 0x00, 0x00}, // 11, -10.5dB
\r
249 {0x11, 0x11, 0x0f, 0x09, 0x00, 0x00, 0x00, 0x00}, // 12, -10.0dB
\r
250 {0x12, 0x12, 0x0f, 0x09, 0x00, 0x00, 0x00, 0x00}, // 13, -9.5dB
\r
251 {0x13, 0x13, 0x10, 0x0a, 0x00, 0x00, 0x00, 0x00}, // 14, -9.0dB
\r
252 {0x14, 0x14, 0x11, 0x0a, 0x00, 0x00, 0x00, 0x00}, // 15, -8.5dB
\r
253 {0x16, 0x15, 0x12, 0x0b, 0x00, 0x00, 0x00, 0x00}, // 16, -8.0dB
\r
254 {0x17, 0x16, 0x13, 0x0b, 0x00, 0x00, 0x00, 0x00}, // 17, -7.5dB
\r
255 {0x18, 0x17, 0x15, 0x0c, 0x00, 0x00, 0x00, 0x00}, // 18, -7.0dB
\r
256 {0x1a, 0x19, 0x16, 0x0d, 0x00, 0x00, 0x00, 0x00}, // 19, -6.5dB
\r
257 {0x1c, 0x1a, 0x18, 0x0e, 0x00, 0x00, 0x00, 0x00}, // 20, -6.0dB
\r
258 {0x1d, 0x1c, 0x18, 0x0e, 0x00, 0x00, 0x00, 0x00}, // 21, -5.5dB
\r
259 {0x1f, 0x1e, 0x1a, 0x0f, 0x00, 0x00, 0x00, 0x00}, // 22, -5.0dB
\r
260 {0x20, 0x20, 0x1b, 0x10, 0x00, 0x00, 0x00, 0x00}, // 23, -4.5dB
\r
261 {0x22, 0x21, 0x1d, 0x11, 0x00, 0x00, 0x00, 0x00}, // 24, -4.0dB
\r
262 {0x24, 0x23, 0x1f, 0x12, 0x00, 0x00, 0x00, 0x00}, // 25, -3.5dB
\r
263 {0x26, 0x25, 0x21, 0x13, 0x00, 0x00, 0x00, 0x00}, // 26, -3.0dB
\r
264 {0x28, 0x28, 0x24, 0x14, 0x00, 0x00, 0x00, 0x00}, // 27, -2.5dB
\r
265 {0x2b, 0x2a, 0x25, 0x15, 0x00, 0x00, 0x00, 0x00}, // 28, -2.0dB
\r
266 {0x2d, 0x2d, 0x17, 0x17, 0x00, 0x00, 0x00, 0x00}, // 29, -1.5dB
\r
267 {0x30, 0x2f, 0x29, 0x18, 0x00, 0x00, 0x00, 0x00}, // 30, -1.0dB
\r
268 {0x33, 0x32, 0x2b, 0x19, 0x00, 0x00, 0x00, 0x00}, // 31, -0.5dB
\r
269 {0x36, 0x35, 0x2e, 0x1b, 0x00, 0x00, 0x00, 0x00} // 32, +0dB
\r
272 u1Byte CCKSwingTable_Ch1_Ch14_88F[CCK_TABLE_SIZE_88F][16] = {
\r
273 {0x16, 0x15, 0x13, 0x10, 0xD, 0x9, 0x6, 0x3, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 0 -16dB */
\r
274 {0x18, 0x17, 0x15, 0x12, 0xE, 0xA, 0x7, 0x4, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 1 -15.5dB */
\r
275 {0x1B, 0x1A, 0x18, 0x14, 0x10, 0xB, 0x7, 0x4, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 2 -15dB */
\r
276 {0x1F, 0x1E, 0x1B, 0x17, 0x12, 0xD, 0x8, 0x5, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 3 -14.5dB */
\r
277 {0x22, 0x21, 0x1E, 0x19, 0x14, 0xE, 0x9, 0x5, 0x3, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 4 -14dB */
\r
278 {0x26, 0x25, 0x22, 0x1C, 0x16, 0x10, 0xA, 0x6, 0x3, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 5 -13.5dB */
\r
279 {0x2B, 0x2A, 0x26, 0x20, 0x19, 0x12, 0xC, 0x7, 0x3, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 6 -13dB */
\r
280 {0x30, 0x2F, 0x2A, 0x24, 0x1C, 0x14, 0xD, 0x8, 0x4, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 7 -12.5dB */
\r
281 {0x36, 0x34, 0x2F, 0x28, 0x1F, 0x17, 0xF, 0x9, 0x4, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 8 -12dB */
\r
282 {0x3D, 0x3B, 0x35, 0x2D, 0x23, 0x19, 0x11, 0xA, 0x5, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 9 -11.5dB */
\r
283 {0x44, 0x42, 0x3C, 0x33, 0x28, 0x1C, 0x13, 0xB, 0x5, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 10 -11dB */
\r
284 {0x4D, 0x4A, 0x43, 0x39, 0x2C, 0x20, 0x15, 0xC, 0x6, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 11 -10.5dB */
\r
285 {0x56, 0x53, 0x4B, 0x40, 0x32, 0x24, 0x17, 0xE, 0x6, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 12 -10dB */
\r
286 {0x60, 0x5D, 0x54, 0x47, 0x38, 0x28, 0x1A, 0xF, 0x7, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 13 -9.5dB */
\r
287 {0x6C, 0x69, 0x5F, 0x50, 0x3F, 0x2D, 0x1E, 0x11, 0x8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 14 -9dB */
\r
288 {0x79, 0x76, 0x6A, 0x5A, 0x46, 0x33, 0x21, 0x13, 0x9, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 15 -8.5dB */
\r
289 {0x88, 0x84, 0x77, 0x65, 0x4F, 0x39, 0x25, 0x15, 0xA, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 16 -8dB */
\r
290 {0x99, 0x94, 0x86, 0x71, 0x58, 0x40, 0x2A, 0x18, 0xB, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 17 -7.5dB */
\r
291 {0xAC, 0xA6, 0x96, 0x7F, 0x63, 0x47, 0x2F, 0x1B, 0xD, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 18 -7dB */
\r
292 {0xC1, 0xBA, 0xA8, 0x8F, 0x6F, 0x50, 0x35, 0x1E, 0xE, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 19 -6.5dB */
\r
293 {0xD8, 0xD1, 0xBD, 0xA0, 0x7D, 0x5A, 0x3B, 0x22, 0x10, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0} /* 20 -6dB */
\r
297 u1Byte CCKSwingTable_Ch1_Ch13_88F[CCK_TABLE_SIZE_88F][16] = {
\r
298 {0x16, 0x15, 0x13, 0x10, 0xD, 0x9, 0x6, 0x3, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 0 -16dB */
\r
299 {0x18, 0x17, 0x15, 0x12, 0xE, 0xA, 0x7, 0x4, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 1 -15.5dB */
\r
300 {0x1B, 0x1A, 0x18, 0x14, 0x10, 0xB, 0x7, 0x4, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 2 -15dB */
\r
301 {0x1F, 0x1E, 0x1B, 0x17, 0x12, 0xD, 0x8, 0x5, 0x2, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 3 -14.5dB */
\r
302 {0x22, 0x21, 0x1E, 0x19, 0x14, 0xE, 0x9, 0x5, 0x3, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 4 -14dB */
\r
303 {0x26, 0x25, 0x22, 0x1C, 0x16, 0x10, 0xA, 0x6, 0x3, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 5 -13.5dB */
\r
304 {0x2B, 0x2A, 0x26, 0x20, 0x19, 0x12, 0xC, 0x7, 0x3, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 6 -13dB */
\r
305 {0x30, 0x2F, 0x2A, 0x24, 0x1C, 0x14, 0xD, 0x8, 0x4, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 7 -12.5dB */
\r
306 {0x36, 0x34, 0x2F, 0x28, 0x1F, 0x17, 0xF, 0x9, 0x4, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 8 -12dB */
\r
307 {0x3D, 0x3B, 0x35, 0x2D, 0x23, 0x19, 0x11, 0xA, 0x5, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 9 -11.5dB */
\r
308 {0x44, 0x42, 0x3C, 0x33, 0x28, 0x1C, 0x13, 0xB, 0x5, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 10 -11dB */
\r
309 {0x4D, 0x4A, 0x43, 0x39, 0x2C, 0x20, 0x15, 0xC, 0x6, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 11 -10.5dB */
\r
310 {0x56, 0x53, 0x4B, 0x40, 0x32, 0x24, 0x17, 0xE, 0x6, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 12 -10dB */
\r
311 {0x60, 0x5D, 0x54, 0x47, 0x38, 0x28, 0x1A, 0xF, 0x7, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 13 -9.5dB */
\r
312 {0x6C, 0x69, 0x5F, 0x50, 0x3F, 0x2D, 0x1E, 0x11, 0x8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 14 -9dB */
\r
313 {0x79, 0x76, 0x6A, 0x5A, 0x46, 0x33, 0x21, 0x13, 0x9, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 15 -8.5dB */
\r
314 {0x88, 0x84, 0x77, 0x65, 0x4F, 0x39, 0x25, 0x15, 0xA, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 16 -8dB */
\r
315 {0x99, 0x94, 0x86, 0x71, 0x58, 0x40, 0x2A, 0x18, 0xB, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 17 -7.5dB */
\r
316 {0xAC, 0xA6, 0x96, 0x7F, 0x63, 0x47, 0x2F, 0x1B, 0xD, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 18 -7dB */
\r
317 {0xC1, 0xBA, 0xA8, 0x8F, 0x6F, 0x50, 0x35, 0x1E, 0xE, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* 19 -6.5dB */
\r
318 {0xD8, 0xD1, 0xBD, 0xA0, 0x7D, 0x5A, 0x3B, 0x22, 0x10, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0} /* 20 -6dB */
\r
322 u1Byte CCKSwingTable_Ch14_88F[CCK_TABLE_SIZE_88F][16] = {
\r
323 {0x44, 0x42, 0x3C, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-16dB*/
\r
324 {0x48, 0x46, 0x3F, 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-15.5dB*/
\r
325 {0x4D, 0x4A, 0x43, 0x2C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-15dB*/
\r
326 {0x51, 0x4F, 0x47, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-14.5dB*/
\r
327 {0x56, 0x53, 0x4B, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-14dB*/
\r
328 {0x5B, 0x58, 0x50, 0x35, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-13.5dB*/
\r
329 {0x60, 0x5D, 0x54, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-13dB*/
\r
330 {0x66, 0x63, 0x59, 0x3B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-12.5dB*/
\r
331 {0x6C, 0x69, 0x5F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-12dB*/
\r
332 {0x73, 0x6F, 0x64, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-11.5dB*/
\r
333 {0x79, 0x76, 0x6A, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-11dB*/
\r
334 {0x81, 0x7C, 0x71, 0x4A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-10.5dB*/
\r
335 {0x88, 0x84, 0x77, 0x4F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-10dB*/
\r
336 {0x90, 0x8C, 0x7E, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-9.5dB*/
\r
337 {0x99, 0x94, 0x86, 0x58, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-9dB*/
\r
338 {0xA2, 0x9D, 0x8E, 0x5E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-8.5dB*/
\r
339 {0xAC, 0xA6, 0x96, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-8dB*/
\r
340 {0xB6, 0xB0, 0x9F, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-7.5dB*/
\r
341 {0xC1, 0xBA, 0xA8, 0x6F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-7dB*/
\r
342 {0xCC, 0xC5, 0xB2, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /*-6.5dB*/
\r
343 {0xD8, 0xD1, 0xBD, 0x7D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} /*-6dB*/
\r
349 u4Byte OFDMSwingTable_92E[OFDM_TABLE_SIZE_92E] = {
\r
350 /* Index0 6 dB */ 0x7fc001ff,
\r
351 /* Index1 5.7dB */ 0x7b4001ed,
\r
352 /* Index2 5.4dB */ 0x774001dd,
\r
353 /* Index3 5.1dB */ 0x734001cd,
\r
354 /* Index4 4.8dB */ 0x6f4001bd,
\r
355 /* Index5 4.5dB */ 0x6b8001ae,
\r
356 /* Index6 4.2dB */ 0x67c0019f,
\r
357 /* Index7 3.9dB */ 0x64400191,
\r
358 /* Index8 3.6dB */ 0x60c00183,
\r
359 /* Index9 3.3dB */ 0x5d800176,
\r
360 /* Index10 3 dB */ 0x5a80016a,
\r
361 /* Index11 2.7dB */ 0x5740015d,
\r
362 /* Index12 2.4dB */ 0x54400151,
\r
363 /* Index13 2.1dB */ 0x51800146,
\r
364 /* Index14 1.8dB */ 0x4ec0013b,
\r
365 /* Index15 1.5dB */ 0x4c000130,
\r
366 /* Index16 1.2dB */ 0x49800126,
\r
367 /* Index17 0.9dB */ 0x4700011c,
\r
368 /* Index18 0.6dB */ 0x44800112,
\r
369 /* Index19 0.3dB */ 0x42000108,
\r
370 /* Index20 0 dB */ 0x40000100, // 20 This is OFDM base index
\r
371 /* Index21 -0.3dB */ 0x3dc000f7,
\r
372 /* Index22 -0.6dB */ 0x3bc000ef,
\r
373 /* Index23 -0.9dB */ 0x39c000e7,
\r
374 /* Index24 -1.2dB */ 0x37c000df,
\r
375 /* Index25 -1.5dB */ 0x35c000d7,
\r
376 /* Index26 -1.8dB */ 0x340000d0,
\r
377 /* Index27 -2.1dB */ 0x324000c9,
\r
378 /* Index28 -2.4dB */ 0x308000c2,
\r
379 /* Index29 -2.7dB */ 0x2f0000bc,
\r
380 /* Index30 -3 dB */ 0x2d4000b5,
\r
381 /* Index31 -3.3dB */ 0x2bc000af,
\r
382 /* Index32 -3.6dB */ 0x2a4000a9,
\r
383 /* Index33 -3.9dB */ 0x28c000a3,
\r
384 /* Index34 -4.2dB */ 0x2780009e,
\r
385 /* Index35 -4.5dB */ 0x26000098,
\r
386 /* Index36 -4.8dB */ 0x24c00093,
\r
387 /* Index37 -5.1dB */ 0x2380008e,
\r
388 /* Index38 -5.4dB */ 0x22400089,
\r
389 /* Index39 -5.7dB */ 0x21400085,
\r
390 /* Index40 -6 dB */ 0x20000080,
\r
391 /* Index41 -6.3dB */ 0x1f00007c,
\r
392 /* Index42 -6.6dB */ 0x1e000078,
\r
393 /* Index43 -6.9dB */ 0x1d000074,
\r
394 /* Index44 -7.2dB */ 0x1c000070,
\r
395 /* Index45 -7.5dB */ 0x1b00006c,
\r
396 /* Index46 -7.8dB */ 0x1a000068,
\r
397 /* Index47 -8.1dB */ 0x19400065,
\r
398 /* Index48 -8.4dB */ 0x18400061,
\r
399 /* Index49 -8.7dB */ 0x1780005e,
\r
400 /* Index50 -9 dB */ 0x16c0005b,
\r
401 /* Index51 -9.3dB */ 0x16000058,
\r
402 /* Index52 -9.6dB */ 0x15400055,
\r
403 /* Index53 -9.9dB */ 0x14800052
\r
405 u1Byte CCKSwingTable_Ch1_Ch13_92E[CCK_TABLE_SIZE_92E][8] = {
\r
406 /* Index0 0 dB */ {0x36, 0x34 , 0x2E , 0x26 , 0x1C , 0x12 , 0x08 , 0x04},
\r
407 /* Index1 -0.3dB */ {0x34, 0x32 , 0x2C , 0x25 , 0x1B , 0x11 , 0x08 , 0x04},
\r
408 /* Index2 -0.6dB */ {0x32, 0x30 , 0x2B , 0x23 , 0x1A , 0x11 , 0x07 , 0x04},
\r
409 /* Index3 -0.9dB */ {0x31, 0x2F , 0x29 , 0x22 , 0x19 , 0x10 , 0x07 , 0x04},
\r
410 /* Index4 -1.2dB */ {0x2F, 0x2D , 0x28 , 0x21 , 0x18 , 0x10 , 0x07 , 0x03},
\r
411 /* Index5 -1.5dB */ {0x2D, 0x2C , 0x27 , 0x20 , 0x18 , 0x0F , 0x07 , 0x03},
\r
412 /* Index6 -1.8dB */ {0x2C, 0x2A , 0x25 , 0x1F , 0x17 , 0x0F , 0x06 , 0x03},
\r
413 /* Index7 -2.1dB */ {0x2A, 0x29 , 0x24 , 0x1E , 0x16 , 0x0E , 0x06 , 0x03},
\r
414 /* Index8 -2.4dB */ {0x29, 0x27 , 0x23 , 0x1D , 0x15 , 0x0E , 0x06 , 0x03},
\r
415 /* Index9 -2.7dB */ {0x27, 0x26 , 0x22 , 0x1C , 0x14 , 0x0D , 0x06 , 0x03},
\r
416 /* Index10 -3 dB */ {0x26, 0x25 , 0x20 , 0x1B , 0x14 , 0x0D , 0x06 , 0x03},
\r
417 /* Index11 -3.3dB */ {0x25, 0x23 , 0x1F , 0x1A , 0x13 , 0x0C , 0x05 , 0x03},
\r
418 /* Index12 -3.6dB */ {0x24, 0x22 , 0x1E , 0x19 , 0x12 , 0x0C , 0x05 , 0x03},
\r
419 /* Index13 -3.9dB */ {0x22, 0x21 , 0x1D , 0x18 , 0x12 , 0x0B , 0x05 , 0x03},
\r
420 /* Index14 -4.2dB */ {0x21, 0x20 , 0x1C , 0x17 , 0x11 , 0x0B , 0x05 , 0x02},
\r
421 /* Index15 -4.5dB */ {0x20, 0x1F , 0x1B , 0x17 , 0x11 , 0x0B , 0x05 , 0x02},
\r
422 /* Index16 -4.8dB */ {0x1F, 0x1E , 0x1A , 0x16 , 0x10 , 0x0A , 0x05 , 0x02},
\r
423 /* Index17 -5.1dB */ {0x1E, 0x1D , 0x1A , 0x15 , 0x10 , 0x0A , 0x04 , 0x02},
\r
424 /* Index18 -5.4dB */ {0x1D, 0x1C , 0x19 , 0x14 , 0x0F , 0x0A , 0x04 , 0x02},
\r
425 /* Index19 -5.7dB */ {0x1C, 0x1B , 0x18 , 0x14 , 0x0E , 0x09 , 0x04 , 0x02},
\r
426 /* Index20 -6.0dB */ {0x1B, 0x1A , 0x17 , 0x13 , 0x0E , 0x09 , 0x04 , 0x02}, // 20 This is CCK base index
\r
427 /* Index21 -6.3dB */ {0x1A, 0x19 , 0x16 , 0x12 , 0x0E , 0x09 , 0x04 , 0x02},
\r
428 /* Index22 -6.6dB */ {0x19, 0x18 , 0x15 , 0x12 , 0x0D , 0x08 , 0x04 , 0x02},
\r
429 /* Index23 -6.9dB */ {0x18, 0x17 , 0x15 , 0x11 , 0x0D , 0x08 , 0x04 , 0x02},
\r
430 /* Index24 -7.2dB */ {0x18, 0x17 , 0x14 , 0x11 , 0x0C , 0x08 , 0x03 , 0x02},
\r
431 /* Index25 -7.5dB */ {0x17, 0x16 , 0x13 , 0x10 , 0x0C , 0x08 , 0x03 , 0x02},
\r
432 /* Index26 -7.8dB */ {0x16, 0x15 , 0x13 , 0x0F , 0x0B , 0x07 , 0x03 , 0x02},
\r
433 /* Index27 -8.1dB */ {0x15, 0x14 , 0x12 , 0x0F , 0x0B , 0x07 , 0x03 , 0x02},
\r
434 /* Index28 -8.4dB */ {0x14, 0x14 , 0x11 , 0x0E , 0x0B , 0x07 , 0x03 , 0x02},
\r
435 /* Index29 -8.7dB */ {0x14, 0x13 , 0x11 , 0x0E , 0x0A , 0x07 , 0x03 , 0x01},
\r
436 /* Index30 -9.0dB */ {0x13, 0x12 , 0x10 , 0x0D , 0x0A , 0x06 , 0x03 , 0x01}, // 30 This is hp CCK base index
\r
437 /* Index31 -9.3dB */ {0x12, 0x12 , 0x0F , 0x0D , 0x0A , 0x06 , 0x03 , 0x01},
\r
438 /* Index32 -9.6dB */ {0x12, 0x11 , 0x0F , 0x0D , 0x09 , 0x06 , 0x03 , 0x01},
\r
439 /* Index33 -9.9dB */ {0x11, 0x11 , 0x0F , 0x0C , 0x09 , 0x06 , 0x03 , 0x01},
\r
440 /* Index34 -10.2dB */ {0x11, 0x11 , 0x0E , 0x0C , 0x09 , 0x06 , 0x02 , 0x01},
\r
441 /* Index35 -10.5dB */ {0x10, 0x0F , 0x0E , 0x0B , 0x08 , 0x05 , 0x02 , 0x01},
\r
442 /* Index36 -10.8dB */ {0x10, 0x0F , 0x0D , 0x0B , 0x08 , 0x05 , 0x02 , 0x01},
\r
443 /* Index37 -11.1dB */ {0x0F, 0x0E , 0x0D , 0x0A , 0x08 , 0x05 , 0x02 , 0x01},
\r
444 /* Index38 -11.4dB */ {0x0E, 0x0E , 0x0C , 0x0A , 0x07 , 0x05 , 0x02 , 0x01},
\r
445 /* Index39 -11.7dB */ {0x0E, 0x0D , 0x0C , 0x0A , 0x07 , 0x05 , 0x02 , 0x01},
\r
446 /* Index40 -12 dB */ {0x0E, 0x0D , 0x0C , 0x0A , 0x07 , 0x05 , 0x02 , 0x01},
\r
447 /* Index41 -12.3dB */ {0x0D, 0x0D , 0x0B , 0x09 , 0x07 , 0x04 , 0x02 , 0x01},
\r
448 /* Index42 -12.6dB */ {0x0D, 0x0C , 0x0B , 0x09 , 0x07 , 0x04 , 0x02 , 0x01},
\r
449 /* Index43 -12.9dB */ {0x0C, 0x0C , 0x0A , 0x09 , 0x06 , 0x04 , 0x02 , 0x01},
\r
450 /* Index44 -13.2dB */ {0x0C, 0x0B , 0x0A , 0x08 , 0x06 , 0x04 , 0x02 , 0x01},
\r
451 /* Index45 -13.5dB */ {0x0B, 0x0B , 0x0A , 0x08 , 0x06 , 0x04 , 0x02 , 0x01},
\r
452 /* Index46 -13.8dB */ {0x0B, 0x0B , 0x09 , 0x08 , 0x06 , 0x04 , 0x02 , 0x01},
\r
453 /* Index47 -14.1dB */ {0x0B, 0x0A , 0x09 , 0x07 , 0x06 , 0x04 , 0x02 , 0x01},
\r
454 /* Index48 -14.4dB */ {0x0A, 0x0A , 0x09 , 0x07 , 0x05 , 0x03 , 0x02 , 0x01},
\r
455 /* Index49 -14.7dB */ {0x0A, 0x0A , 0x08 , 0x07 , 0x05 , 0x03 , 0x01 , 0x01},
\r
456 /* Index50 -15 dB */ {0x0A, 0x09 , 0x08 , 0x07 , 0x05 , 0x03 , 0x01 , 0x01},
\r
457 /* Index51 -15.3dB */ {0x09, 0x09 , 0x08 , 0x06 , 0x05 , 0x03 , 0x01 , 0x01},
\r
458 /* Index52 -15.6dB */ {0x09, 0x09 , 0x08 , 0x06 , 0x05 , 0x03 , 0x01 , 0x01},
\r
459 /* Index53 -15.9dB */ {0x09, 0x08 , 0x07 , 0x06 , 0x04 , 0x03 , 0x01 , 0x01}
\r
461 u1Byte CCKSwingTable_Ch14_92E[CCK_TABLE_SIZE_92E][8] = {
\r
462 /* Index0 0 dB */ {0x36, 0x34 , 0x2E , 0x26 , 0x00 , 0x00 , 0x00 , 0x00},
\r
463 /* Index1 -0.3dB */ {0x34, 0x32 , 0x2C , 0x25 , 0x00 , 0x00 , 0x00 , 0x00},
\r
464 /* Index2 -0.6dB */ {0x32, 0x30 , 0x2B , 0x23 , 0x00 , 0x00 , 0x00 , 0x00},
\r
465 /* Index3 -0.9dB */ {0x31, 0x2F , 0x29 , 0x22 , 0x00 , 0x00 , 0x00 , 0x00},
\r
466 /* Index4 -1.2dB */ {0x2F, 0x2D , 0x28 , 0x21 , 0x00 , 0x00 , 0x00 , 0x00},
\r
467 /* Index5 -1.5dB */ {0x2D, 0x2C , 0x27 , 0x20 , 0x00 , 0x00 , 0x00 , 0x00},
\r
468 /* Index6 -1.8dB */ {0x2C, 0x2A , 0x25 , 0x1F , 0x00 , 0x00 , 0x00 , 0x00},
\r
469 /* Index7 -2.1dB */ {0x2A, 0x29 , 0x24 , 0x1E , 0x00 , 0x00 , 0x00 , 0x00},
\r
470 /* Index8 -2.4dB */ {0x29, 0x27 , 0x23 , 0x1D , 0x00 , 0x00 , 0x00 , 0x00},
\r
471 /* Index9 -2.7dB */ {0x27, 0x26 , 0x22 , 0x1C , 0x00 , 0x00 , 0x00 , 0x00},
\r
472 /* Index10 -3 dB */ {0x26, 0x25 , 0x20 , 0x1B , 0x00 , 0x00 , 0x00 , 0x00},
\r
473 /* Index11 -3.3dB */ {0x25, 0x23 , 0x1F , 0x1A , 0x00 , 0x00 , 0x00 , 0x00},
\r
474 /* Index12 -3.6dB */ {0x24, 0x22 , 0x1E , 0x19 , 0x00 , 0x00 , 0x00 , 0x00},
\r
475 /* Index13 -3.9dB */ {0x22, 0x21 , 0x1D , 0x18 , 0x00 , 0x00 , 0x00 , 0x00},
\r
476 /* Index14 -4.2dB */ {0x21, 0x20 , 0x1C , 0x17 , 0x00 , 0x00 , 0x00 , 0x00},
\r
477 /* Index15 -4.5dB */ {0x20, 0x1F , 0x1B , 0x17 , 0x00 , 0x00 , 0x00 , 0x00},
\r
478 /* Index16 -4.8dB */ {0x1F, 0x1E , 0x1A , 0x16 , 0x00 , 0x00 , 0x00 , 0x00},
\r
479 /* Index17 -5.1dB */ {0x1E, 0x1D , 0x1A , 0x15 , 0x00 , 0x00 , 0x00 , 0x00},
\r
480 /* Index18 -5.4dB */ {0x1D, 0x1C , 0x19 , 0x14 , 0x00 , 0x00 , 0x00 , 0x00},
\r
481 /* Index19 -5.7dB */ {0x1C, 0x1B , 0x18 , 0x14 , 0x00 , 0x00 , 0x00 , 0x00},
\r
482 /* Index20 -6 dB */ {0x1B, 0x1A , 0x17 , 0x13 , 0x00 , 0x00 , 0x00 , 0x00},
\r
483 /* Index21 -6.3dB */ {0x1A, 0x19 , 0x16 , 0x12 , 0x00 , 0x00 , 0x00 , 0x00},
\r
484 /* Index22 -6.6dB */ {0x19, 0x18 , 0x15 , 0x12 , 0x00 , 0x00 , 0x00 , 0x00},
\r
485 /* Index23 -6.9dB */ {0x18, 0x17 , 0x15 , 0x11 , 0x00 , 0x00 , 0x00 , 0x00},
\r
486 /* Index24 -7.2dB */ {0x18, 0x17 , 0x14 , 0x11 , 0x00 , 0x00 , 0x00 , 0x00},
\r
487 /* Index25 -7.5dB */ {0x17, 0x16 , 0x13 , 0x10 , 0x00 , 0x00 , 0x00 , 0x00},
\r
488 /* Index26 -7.8dB */ {0x16, 0x15 , 0x13 , 0x0F , 0x00 , 0x00 , 0x00 , 0x00},
\r
489 /* Index27 -8.1dB */ {0x15, 0x14 , 0x12 , 0x0F , 0x00 , 0x00 , 0x00 , 0x00},
\r
490 /* Index28 -8.4dB */ {0x14, 0x14 , 0x11 , 0x0E , 0x00 , 0x00 , 0x00 , 0x00},
\r
491 /* Index29 -8.7dB */ {0x14, 0x13 , 0x11 , 0x0E , 0x00 , 0x00 , 0x00 , 0x00},
\r
492 /* Index30 -9 dB */ {0x13, 0x12 , 0x10 , 0x0D , 0x00 , 0x00 , 0x00 , 0x00},
\r
493 /* Index31 -9.3dB */ {0x12, 0x12 , 0x0F , 0x0D , 0x00 , 0x00 , 0x00 , 0x00},
\r
494 /* Index32 -9.6dB */ {0x12, 0x11 , 0x0F , 0x0D , 0x00 , 0x00 , 0x00 , 0x00},
\r
495 /* Index33 -9.9dB */ {0x11, 0x11 , 0x0F , 0x0C , 0x00 , 0x00 , 0x00 , 0x00},
\r
496 /* Index34 -10.2dB */ {0x11, 0x11 , 0x0E , 0x0C , 0x00 , 0x00 , 0x00 , 0x00},
\r
497 /* Index35 -10.5dB */ {0x10, 0x0F , 0x0E , 0x0B , 0x00 , 0x00 , 0x00 , 0x00},
\r
498 /* Index36 -10.8dB */ {0x10, 0x0F , 0x0D , 0x0B , 0x00 , 0x00 , 0x00 , 0x00},
\r
499 /* Index37 -11.1dB */ {0x0F, 0x0E , 0x0D , 0x0A , 0x00 , 0x00 , 0x00 , 0x00},
\r
500 /* Index38 -11.4dB */ {0x0E, 0x0E , 0x0C , 0x0A , 0x00 , 0x00 , 0x00 , 0x00},
\r
501 /* Index39 -11.7dB */ {0x0E, 0x0D , 0x0C , 0x0A , 0x00 , 0x00 , 0x00 , 0x00},
\r
502 /* Index40 -12 dB */ {0x0E, 0x0D , 0x0C , 0x0A , 0x00 , 0x00 , 0x00 , 0x00},
\r
503 /* Index41 -12.3dB */ {0x0D, 0x0D , 0x0B , 0x09 , 0x00 , 0x00 , 0x00 , 0x00},
\r
504 /* Index42 -12.6dB */ {0x0D, 0x0C , 0x0B , 0x09 , 0x00 , 0x00 , 0x00 , 0x00},
\r
505 /* Index43 -12.9dB */ {0x0C, 0x0C , 0x0A , 0x09 , 0x00 , 0x00 , 0x00 , 0x00},
\r
506 /* Index44 -13.2dB */ {0x0C, 0x0B , 0x0A , 0x08 , 0x00 , 0x00 , 0x00 , 0x00},
\r
507 /* Index45 -13.5dB */ {0x0B, 0x0B , 0x0A , 0x08 , 0x00 , 0x00 , 0x00 , 0x00},
\r
508 /* Index46 -13.8dB */ {0x0B, 0x0B , 0x09 , 0x08 , 0x00 , 0x00 , 0x00 , 0x00},
\r
509 /* Index47 -14.1dB */ {0x0B, 0x0A , 0x09 , 0x07 , 0x00 , 0x00 , 0x00 , 0x00},
\r
510 /* Index48 -14.4dB */ {0x0A, 0x0A , 0x09 , 0x07 , 0x00 , 0x00 , 0x00 , 0x00},
\r
511 /* Index49 -14.7dB */ {0x0A, 0x0A , 0x08 , 0x07 , 0x00 , 0x00 , 0x00 , 0x00},
\r
512 /* Index50 -15 dB */ {0x0A, 0x09 , 0x08 , 0x07 , 0x00 , 0x00 , 0x00 , 0x00},
\r
513 /* Index51 -15.3dB */ {0x09, 0x09 , 0x08 , 0x06 , 0x00 , 0x00 , 0x00 , 0x00},
\r
514 /* Index52 -15.6dB */ {0x09, 0x09 , 0x08 , 0x06 , 0x00 , 0x00 , 0x00 , 0x00},
\r
515 /* Index53 -15.9dB */ {0x09, 0x08 , 0x07 , 0x06 , 0x00 , 0x00 , 0x00 , 0x00}
\r
519 #ifdef AP_BUILD_WORKAROUND
\r
521 unsigned int TxPwrTrk_OFDM_SwingTbl[TxPwrTrk_OFDM_SwingTbl_Len] = {
\r
522 /* +6.0dB */ 0x7f8001fe,
\r
523 /* +5.5dB */ 0x788001e2,
\r
524 /* +5.0dB */ 0x71c001c7,
\r
525 /* +4.5dB */ 0x6b8001ae,
\r
526 /* +4.0dB */ 0x65400195,
\r
527 /* +3.5dB */ 0x5fc0017f,
\r
528 /* +3.0dB */ 0x5a400169,
\r
529 /* +2.5dB */ 0x55400155,
\r
530 /* +2.0dB */ 0x50800142,
\r
531 /* +1.5dB */ 0x4c000130,
\r
532 /* +1.0dB */ 0x47c0011f,
\r
533 /* +0.5dB */ 0x43c0010f,
\r
534 /* 0.0dB */ 0x40000100,
\r
535 /* -0.5dB */ 0x3c8000f2,
\r
536 /* -1.0dB */ 0x390000e4,
\r
537 /* -1.5dB */ 0x35c000d7,
\r
538 /* -2.0dB */ 0x32c000cb,
\r
539 /* -2.5dB */ 0x300000c0,
\r
540 /* -3.0dB */ 0x2d4000b5,
\r
541 /* -3.5dB */ 0x2ac000ab,
\r
542 /* -4.0dB */ 0x288000a2,
\r
543 /* -4.5dB */ 0x26000098,
\r
544 /* -5.0dB */ 0x24000090,
\r
545 /* -5.5dB */ 0x22000088,
\r
546 /* -6.0dB */ 0x20000080,
\r
547 /* -6.5dB */ 0x1a00006c,
\r
548 /* -7.0dB */ 0x1c800072,
\r
549 /* -7.5dB */ 0x18000060,
\r
550 /* -8.0dB */ 0x19800066,
\r
551 /* -8.5dB */ 0x15800056,
\r
552 /* -9.0dB */ 0x26c0005b,
\r
553 /* -9.5dB */ 0x14400051,
\r
554 /* -10.0dB */ 0x24400051,
\r
555 /* -10.5dB */ 0x1300004c,
\r
556 /* -11.0dB */ 0x12000048,
\r
557 /* -11.5dB */ 0x11000044,
\r
558 /* -12.0dB */ 0x10000040
\r
565 u1Byte DeltaSwingTableIdx_2GA_P_DEFAULT[DELTA_SWINGIDX_SIZE] = {0, 0, 0, 0, 1, 1, 2, 2, 3, 3
\r
566 , 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9};
\r
567 u1Byte DeltaSwingTableIdx_2GA_N_DEFAULT[DELTA_SWINGIDX_SIZE] = {0, 0, 0, 2, 2, 3, 3, 4, 4, 4
\r
568 , 4, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 10, 10, 10, 11, 11, 11, 11};
\r
571 #ifdef CONFIG_WLAN_HAL_8192EE
\r
572 u4Byte OFDMSwingTable_92E[OFDM_TABLE_SIZE_92E] = {
\r
573 /* Index0 6 dB */ 0x7fc001ff,
\r
574 /* Index1 5.7dB */ 0x7b4001ed,
\r
575 /* Index2 5.4dB */ 0x774001dd,
\r
576 /* Index3 5.1dB */ 0x734001cd,
\r
577 /* Index4 4.8dB */ 0x6f4001bd,
\r
578 /* Index5 4.5dB */ 0x6b8001ae,
\r
579 /* Index6 4.2dB */ 0x67c0019f,
\r
580 /* Index7 3.9dB */ 0x64400191,
\r
581 /* Index8 3.6dB */ 0x60c00183,
\r
582 /* Index9 3.3dB */ 0x5d800176,
\r
583 /* Index10 3 dB */ 0x5a80016a,
\r
584 /* Index11 2.7dB */ 0x5740015d,
\r
585 /* Index12 2.4dB */ 0x54400151,
\r
586 /* Index13 2.1dB */ 0x51800146,
\r
587 /* Index14 1.8dB */ 0x4ec0013b,
\r
588 /* Index15 1.5dB */ 0x4c000130,
\r
589 /* Index16 1.2dB */ 0x49800126,
\r
590 /* Index17 0.9dB */ 0x4700011c,
\r
591 /* Index18 0.6dB */ 0x44800112,
\r
592 /* Index19 0.3dB */ 0x42000108,
\r
593 /* Index20 0 dB */ 0x40000100, // 20 This is OFDM base index
\r
594 /* Index21 -0.3dB */ 0x3dc000f7,
\r
595 /* Index22 -0.6dB */ 0x3bc000ef,
\r
596 /* Index23 -0.9dB */ 0x39c000e7,
\r
597 /* Index24 -1.2dB */ 0x37c000df,
\r
598 /* Index25 -1.5dB */ 0x35c000d7,
\r
599 /* Index26 -1.8dB */ 0x340000d0,
\r
600 /* Index27 -2.1dB */ 0x324000c9,
\r
601 /* Index28 -2.4dB */ 0x308000c2,
\r
602 /* Index29 -2.7dB */ 0x2f0000bc,
\r
603 /* Index30 -3 dB */ 0x2d4000b5,
\r
604 /* Index31 -3.3dB */ 0x2bc000af,
\r
605 /* Index32 -3.6dB */ 0x2a4000a9,
\r
606 /* Index33 -3.9dB */ 0x28c000a3,
\r
607 /* Index34 -4.2dB */ 0x2780009e,
\r
608 /* Index35 -4.5dB */ 0x26000098,
\r
609 /* Index36 -4.8dB */ 0x24c00093,
\r
610 /* Index37 -5.1dB */ 0x2380008e,
\r
611 /* Index38 -5.4dB */ 0x22400089,
\r
612 /* Index39 -5.7dB */ 0x21400085,
\r
613 /* Index40 -6 dB */ 0x20000080,
\r
614 /* Index41 -6.3dB */ 0x1f00007c,
\r
615 /* Index42 -6.6dB */ 0x1e000078,
\r
616 /* Index43 -6.9dB */ 0x1d000074,
\r
617 /* Index44 -7.2dB */ 0x1c000070,
\r
618 /* Index45 -7.5dB */ 0x1b00006c,
\r
619 /* Index46 -7.8dB */ 0x1a000068,
\r
620 /* Index47 -8.1dB */ 0x19400065,
\r
621 /* Index48 -8.4dB */ 0x18400061,
\r
622 /* Index49 -8.7dB */ 0x1780005e,
\r
623 /* Index50 -9 dB */ 0x16c0005b,
\r
624 /* Index51 -9.3dB */ 0x16000058,
\r
625 /* Index52 -9.6dB */ 0x15400055,
\r
626 /* Index53 -9.9dB */ 0x14800052
\r
628 u1Byte CCKSwingTable_Ch1_Ch13_92E[CCK_TABLE_SIZE_92E][8] = {
\r
629 /* Index0 0 dB */ {0x36, 0x34 , 0x2E , 0x26 , 0x1C , 0x12 , 0x08 , 0x04},
\r
630 /* Index1 -0.3dB */ {0x34, 0x32 , 0x2C , 0x25 , 0x1B , 0x11 , 0x08 , 0x04},
\r
631 /* Index2 -0.6dB */ {0x32, 0x30 , 0x2B , 0x23 , 0x1A , 0x11 , 0x07 , 0x04},
\r
632 /* Index3 -0.9dB */ {0x31, 0x2F , 0x29 , 0x22 , 0x19 , 0x10 , 0x07 , 0x04},
\r
633 /* Index4 -1.2dB */ {0x2F, 0x2D , 0x28 , 0x21 , 0x18 , 0x10 , 0x07 , 0x03},
\r
634 /* Index5 -1.5dB */ {0x2D, 0x2C , 0x27 , 0x20 , 0x18 , 0x0F , 0x07 , 0x03},
\r
635 /* Index6 -1.8dB */ {0x2C, 0x2A , 0x25 , 0x1F , 0x17 , 0x0F , 0x06 , 0x03},
\r
636 /* Index7 -2.1dB */ {0x2A, 0x29 , 0x24 , 0x1E , 0x16 , 0x0E , 0x06 , 0x03},
\r
637 /* Index8 -2.4dB */ {0x29, 0x27 , 0x23 , 0x1D , 0x15 , 0x0E , 0x06 , 0x03},
\r
638 /* Index9 -2.7dB */ {0x27, 0x26 , 0x22 , 0x1C , 0x14 , 0x0D , 0x06 , 0x03},
\r
639 /* Index10 -3 dB */ {0x26, 0x25 , 0x20 , 0x1B , 0x14 , 0x0D , 0x06 , 0x03},
\r
640 /* Index11 -3.3dB */ {0x25, 0x23 , 0x1F , 0x1A , 0x13 , 0x0C , 0x05 , 0x03},
\r
641 /* Index12 -3.6dB */ {0x24, 0x22 , 0x1E , 0x19 , 0x12 , 0x0C , 0x05 , 0x03},
\r
642 /* Index13 -3.9dB */ {0x22, 0x21 , 0x1D , 0x18 , 0x12 , 0x0B , 0x05 , 0x03},
\r
643 /* Index14 -4.2dB */ {0x21, 0x20 , 0x1C , 0x17 , 0x11 , 0x0B , 0x05 , 0x02},
\r
644 /* Index15 -4.5dB */ {0x20, 0x1F , 0x1B , 0x17 , 0x11 , 0x0B , 0x05 , 0x02},
\r
645 /* Index16 -4.8dB */ {0x1F, 0x1E , 0x1A , 0x16 , 0x10 , 0x0A , 0x05 , 0x02},
\r
646 /* Index17 -5.1dB */ {0x1E, 0x1D , 0x1A , 0x15 , 0x10 , 0x0A , 0x04 , 0x02},
\r
647 /* Index18 -5.4dB */ {0x1D, 0x1C , 0x19 , 0x14 , 0x0F , 0x0A , 0x04 , 0x02},
\r
648 /* Index19 -5.7dB */ {0x1C, 0x1B , 0x18 , 0x14 , 0x0E , 0x09 , 0x04 , 0x02},
\r
649 /* Index20 -6.0dB */ {0x1B, 0x1A , 0x17 , 0x13 , 0x0E , 0x09 , 0x04 , 0x02}, // 20 This is CCK base index
\r
650 /* Index21 -6.3dB */ {0x1A, 0x19 , 0x16 , 0x12 , 0x0E , 0x09 , 0x04 , 0x02},
\r
651 /* Index22 -6.6dB */ {0x19, 0x18 , 0x15 , 0x12 , 0x0D , 0x08 , 0x04 , 0x02},
\r
652 /* Index23 -6.9dB */ {0x18, 0x17 , 0x15 , 0x11 , 0x0D , 0x08 , 0x04 , 0x02},
\r
653 /* Index24 -7.2dB */ {0x18, 0x17 , 0x14 , 0x11 , 0x0C , 0x08 , 0x03 , 0x02},
\r
654 /* Index25 -7.5dB */ {0x17, 0x16 , 0x13 , 0x10 , 0x0C , 0x08 , 0x03 , 0x02},
\r
655 /* Index26 -7.8dB */ {0x16, 0x15 , 0x13 , 0x0F , 0x0B , 0x07 , 0x03 , 0x02},
\r
656 /* Index27 -8.1dB */ {0x15, 0x14 , 0x12 , 0x0F , 0x0B , 0x07 , 0x03 , 0x02},
\r
657 /* Index28 -8.4dB */ {0x14, 0x14 , 0x11 , 0x0E , 0x0B , 0x07 , 0x03 , 0x02},
\r
658 /* Index29 -8.7dB */ {0x14, 0x13 , 0x11 , 0x0E , 0x0A , 0x07 , 0x03 , 0x01},
\r
659 /* Index30 -9.0dB */ {0x13, 0x12 , 0x10 , 0x0D , 0x0A , 0x06 , 0x03 , 0x01}, // 30 This is hp CCK base index
\r
660 /* Index31 -9.3dB */ {0x12, 0x12 , 0x0F , 0x0D , 0x0A , 0x06 , 0x03 , 0x01},
\r
661 /* Index32 -9.6dB */ {0x12, 0x11 , 0x0F , 0x0D , 0x09 , 0x06 , 0x03 , 0x01},
\r
662 /* Index33 -9.9dB */ {0x11, 0x11 , 0x0F , 0x0C , 0x09 , 0x06 , 0x03 , 0x01},
\r
663 /* Index34 -10.2dB */ {0x11, 0x11 , 0x0E , 0x0C , 0x09 , 0x06 , 0x02 , 0x01},
\r
664 /* Index35 -10.5dB */ {0x10, 0x0F , 0x0E , 0x0B , 0x08 , 0x05 , 0x02 , 0x01},
\r
665 /* Index36 -10.8dB */ {0x10, 0x0F , 0x0D , 0x0B , 0x08 , 0x05 , 0x02 , 0x01},
\r
666 /* Index37 -11.1dB */ {0x0F, 0x0E , 0x0D , 0x0A , 0x08 , 0x05 , 0x02 , 0x01},
\r
667 /* Index38 -11.4dB */ {0x0E, 0x0E , 0x0C , 0x0A , 0x07 , 0x05 , 0x02 , 0x01},
\r
668 /* Index39 -11.7dB */ {0x0E, 0x0D , 0x0C , 0x0A , 0x07 , 0x05 , 0x02 , 0x01},
\r
669 /* Index40 -12 dB */ {0x0E, 0x0D , 0x0C , 0x0A , 0x07 , 0x05 , 0x02 , 0x01},
\r
670 /* Index41 -12.3dB */ {0x0D, 0x0D , 0x0B , 0x09 , 0x07 , 0x04 , 0x02 , 0x01},
\r
671 /* Index42 -12.6dB */ {0x0D, 0x0C , 0x0B , 0x09 , 0x07 , 0x04 , 0x02 , 0x01},
\r
672 /* Index43 -12.9dB */ {0x0C, 0x0C , 0x0A , 0x09 , 0x06 , 0x04 , 0x02 , 0x01},
\r
673 /* Index44 -13.2dB */ {0x0C, 0x0B , 0x0A , 0x08 , 0x06 , 0x04 , 0x02 , 0x01},
\r
674 /* Index45 -13.5dB */ {0x0B, 0x0B , 0x0A , 0x08 , 0x06 , 0x04 , 0x02 , 0x01},
\r
675 /* Index46 -13.8dB */ {0x0B, 0x0B , 0x09 , 0x08 , 0x06 , 0x04 , 0x02 , 0x01},
\r
676 /* Index47 -14.1dB */ {0x0B, 0x0A , 0x09 , 0x07 , 0x06 , 0x04 , 0x02 , 0x01},
\r
677 /* Index48 -14.4dB */ {0x0A, 0x0A , 0x09 , 0x07 , 0x05 , 0x03 , 0x02 , 0x01},
\r
678 /* Index49 -14.7dB */ {0x0A, 0x0A , 0x08 , 0x07 , 0x05 , 0x03 , 0x01 , 0x01},
\r
679 /* Index50 -15 dB */ {0x0A, 0x09 , 0x08 , 0x07 , 0x05 , 0x03 , 0x01 , 0x01},
\r
680 /* Index51 -15.3dB */ {0x09, 0x09 , 0x08 , 0x06 , 0x05 , 0x03 , 0x01 , 0x01},
\r
681 /* Index52 -15.6dB */ {0x09, 0x09 , 0x08 , 0x06 , 0x05 , 0x03 , 0x01 , 0x01},
\r
682 /* Index53 -15.9dB */ {0x09, 0x08 , 0x07 , 0x06 , 0x04 , 0x03 , 0x01 , 0x01}
\r
684 u1Byte CCKSwingTable_Ch14_92E[CCK_TABLE_SIZE_92E][8] = {
\r
685 /* Index0 0 dB */ {0x36, 0x34 , 0x2E , 0x26 , 0x00 , 0x00 , 0x00 , 0x00},
\r
686 /* Index1 -0.3dB */ {0x34, 0x32 , 0x2C , 0x25 , 0x00 , 0x00 , 0x00 , 0x00},
\r
687 /* Index2 -0.6dB */ {0x32, 0x30 , 0x2B , 0x23 , 0x00 , 0x00 , 0x00 , 0x00},
\r
688 /* Index3 -0.9dB */ {0x31, 0x2F , 0x29 , 0x22 , 0x00 , 0x00 , 0x00 , 0x00},
\r
689 /* Index4 -1.2dB */ {0x2F, 0x2D , 0x28 , 0x21 , 0x00 , 0x00 , 0x00 , 0x00},
\r
690 /* Index5 -1.5dB */ {0x2D, 0x2C , 0x27 , 0x20 , 0x00 , 0x00 , 0x00 , 0x00},
\r
691 /* Index6 -1.8dB */ {0x2C, 0x2A , 0x25 , 0x1F , 0x00 , 0x00 , 0x00 , 0x00},
\r
692 /* Index7 -2.1dB */ {0x2A, 0x29 , 0x24 , 0x1E , 0x00 , 0x00 , 0x00 , 0x00},
\r
693 /* Index8 -2.4dB */ {0x29, 0x27 , 0x23 , 0x1D , 0x00 , 0x00 , 0x00 , 0x00},
\r
694 /* Index9 -2.7dB */ {0x27, 0x26 , 0x22 , 0x1C , 0x00 , 0x00 , 0x00 , 0x00},
\r
695 /* Index10 -3 dB */ {0x26, 0x25 , 0x20 , 0x1B , 0x00 , 0x00 , 0x00 , 0x00},
\r
696 /* Index11 -3.3dB */ {0x25, 0x23 , 0x1F , 0x1A , 0x00 , 0x00 , 0x00 , 0x00},
\r
697 /* Index12 -3.6dB */ {0x24, 0x22 , 0x1E , 0x19 , 0x00 , 0x00 , 0x00 , 0x00},
\r
698 /* Index13 -3.9dB */ {0x22, 0x21 , 0x1D , 0x18 , 0x00 , 0x00 , 0x00 , 0x00},
\r
699 /* Index14 -4.2dB */ {0x21, 0x20 , 0x1C , 0x17 , 0x00 , 0x00 , 0x00 , 0x00},
\r
700 /* Index15 -4.5dB */ {0x20, 0x1F , 0x1B , 0x17 , 0x00 , 0x00 , 0x00 , 0x00},
\r
701 /* Index16 -4.8dB */ {0x1F, 0x1E , 0x1A , 0x16 , 0x00 , 0x00 , 0x00 , 0x00},
\r
702 /* Index17 -5.1dB */ {0x1E, 0x1D , 0x1A , 0x15 , 0x00 , 0x00 , 0x00 , 0x00},
\r
703 /* Index18 -5.4dB */ {0x1D, 0x1C , 0x19 , 0x14 , 0x00 , 0x00 , 0x00 , 0x00},
\r
704 /* Index19 -5.7dB */ {0x1C, 0x1B , 0x18 , 0x14 , 0x00 , 0x00 , 0x00 , 0x00},
\r
705 /* Index20 -6 dB */ {0x1B, 0x1A , 0x17 , 0x13 , 0x00 , 0x00 , 0x00 , 0x00},
\r
706 /* Index21 -6.3dB */ {0x1A, 0x19 , 0x16 , 0x12 , 0x00 , 0x00 , 0x00 , 0x00},
\r
707 /* Index22 -6.6dB */ {0x19, 0x18 , 0x15 , 0x12 , 0x00 , 0x00 , 0x00 , 0x00},
\r
708 /* Index23 -6.9dB */ {0x18, 0x17 , 0x15 , 0x11 , 0x00 , 0x00 , 0x00 , 0x00},
\r
709 /* Index24 -7.2dB */ {0x18, 0x17 , 0x14 , 0x11 , 0x00 , 0x00 , 0x00 , 0x00},
\r
710 /* Index25 -7.5dB */ {0x17, 0x16 , 0x13 , 0x10 , 0x00 , 0x00 , 0x00 , 0x00},
\r
711 /* Index26 -7.8dB */ {0x16, 0x15 , 0x13 , 0x0F , 0x00 , 0x00 , 0x00 , 0x00},
\r
712 /* Index27 -8.1dB */ {0x15, 0x14 , 0x12 , 0x0F , 0x00 , 0x00 , 0x00 , 0x00},
\r
713 /* Index28 -8.4dB */ {0x14, 0x14 , 0x11 , 0x0E , 0x00 , 0x00 , 0x00 , 0x00},
\r
714 /* Index29 -8.7dB */ {0x14, 0x13 , 0x11 , 0x0E , 0x00 , 0x00 , 0x00 , 0x00},
\r
715 /* Index30 -9 dB */ {0x13, 0x12 , 0x10 , 0x0D , 0x00 , 0x00 , 0x00 , 0x00},
\r
716 /* Index31 -9.3dB */ {0x12, 0x12 , 0x0F , 0x0D , 0x00 , 0x00 , 0x00 , 0x00},
\r
717 /* Index32 -9.6dB */ {0x12, 0x11 , 0x0F , 0x0D , 0x00 , 0x00 , 0x00 , 0x00},
\r
718 /* Index33 -9.9dB */ {0x11, 0x11 , 0x0F , 0x0C , 0x00 , 0x00 , 0x00 , 0x00},
\r
719 /* Index34 -10.2dB */ {0x11, 0x11 , 0x0E , 0x0C , 0x00 , 0x00 , 0x00 , 0x00},
\r
720 /* Index35 -10.5dB */ {0x10, 0x0F , 0x0E , 0x0B , 0x00 , 0x00 , 0x00 , 0x00},
\r
721 /* Index36 -10.8dB */ {0x10, 0x0F , 0x0D , 0x0B , 0x00 , 0x00 , 0x00 , 0x00},
\r
722 /* Index37 -11.1dB */ {0x0F, 0x0E , 0x0D , 0x0A , 0x00 , 0x00 , 0x00 , 0x00},
\r
723 /* Index38 -11.4dB */ {0x0E, 0x0E , 0x0C , 0x0A , 0x00 , 0x00 , 0x00 , 0x00},
\r
724 /* Index39 -11.7dB */ {0x0E, 0x0D , 0x0C , 0x0A , 0x00 , 0x00 , 0x00 , 0x00},
\r
725 /* Index40 -12 dB */ {0x0E, 0x0D , 0x0C , 0x0A , 0x00 , 0x00 , 0x00 , 0x00},
\r
726 /* Index41 -12.3dB */ {0x0D, 0x0D , 0x0B , 0x09 , 0x00 , 0x00 , 0x00 , 0x00},
\r
727 /* Index42 -12.6dB */ {0x0D, 0x0C , 0x0B , 0x09 , 0x00 , 0x00 , 0x00 , 0x00},
\r
728 /* Index43 -12.9dB */ {0x0C, 0x0C , 0x0A , 0x09 , 0x00 , 0x00 , 0x00 , 0x00},
\r
729 /* Index44 -13.2dB */ {0x0C, 0x0B , 0x0A , 0x08 , 0x00 , 0x00 , 0x00 , 0x00},
\r
730 /* Index45 -13.5dB */ {0x0B, 0x0B , 0x0A , 0x08 , 0x00 , 0x00 , 0x00 , 0x00},
\r
731 /* Index46 -13.8dB */ {0x0B, 0x0B , 0x09 , 0x08 , 0x00 , 0x00 , 0x00 , 0x00},
\r
732 /* Index47 -14.1dB */ {0x0B, 0x0A , 0x09 , 0x07 , 0x00 , 0x00 , 0x00 , 0x00},
\r
733 /* Index48 -14.4dB */ {0x0A, 0x0A , 0x09 , 0x07 , 0x00 , 0x00 , 0x00 , 0x00},
\r
734 /* Index49 -14.7dB */ {0x0A, 0x0A , 0x08 , 0x07 , 0x00 , 0x00 , 0x00 , 0x00},
\r
735 /* Index50 -15 dB */ {0x0A, 0x09 , 0x08 , 0x07 , 0x00 , 0x00 , 0x00 , 0x00},
\r
736 /* Index51 -15.3dB */ {0x09, 0x09 , 0x08 , 0x06 , 0x00 , 0x00 , 0x00 , 0x00},
\r
737 /* Index52 -15.6dB */ {0x09, 0x09 , 0x08 , 0x06 , 0x00 , 0x00 , 0x00 , 0x00},
\r
738 /* Index53 -15.9dB */ {0x09, 0x08 , 0x07 , 0x06 , 0x00 , 0x00 , 0x00 , 0x00}
\r
742 #if (RTL8814A_SUPPORT == 1 || RTL8822B_SUPPORT == 1)
\r
743 u4Byte TxScalingTable_Jaguar[TXSCALE_TABLE_SIZE] =
\r
745 0x081, // 0, -12.0dB
\r
746 0x088, // 1, -11.5dB
\r
747 0x090, // 2, -11.0dB
\r
748 0x099, // 3, -10.5dB
\r
749 0x0A2, // 4, -10.0dB
\r
750 0x0AC, // 5, -9.5dB
\r
751 0x0B6, // 6, -9.0dB
\r
752 0x0C0, // 7, -8.5dB
\r
753 0x0CC, // 8, -8.0dB
\r
754 0x0D8, // 9, -7.5dB
\r
755 0x0E5, // 10, -7.0dB
\r
756 0x0F2, // 11, -6.5dB
\r
757 0x101, // 12, -6.0dB
\r
758 0x110, // 13, -5.5dB
\r
759 0x120, // 14, -5.0dB
\r
760 0x131, // 15, -4.5dB
\r
761 0x143, // 16, -4.0dB
\r
762 0x156, // 17, -3.5dB
\r
763 0x16A, // 18, -3.0dB
\r
764 0x180, // 19, -2.5dB
\r
765 0x197, // 20, -2.0dB
\r
766 0x1AF, // 21, -1.5dB
\r
767 0x1C8, // 22, -1.0dB
\r
768 0x1E3, // 23, -0.5dB
\r
769 0x200, // 24, +0 dB
\r
770 0x21E, // 25, +0.5dB
\r
771 0x23E, // 26, +1.0dB
\r
772 0x261, // 27, +1.5dB
\r
773 0x285, // 28, +2.0dB
\r
774 0x2AB, // 29, +2.5dB
\r
775 0x2D3, // 30, +3.0dB
\r
776 0x2FE, // 31, +3.5dB
\r
777 0x32B, // 32, +4.0dB
\r
778 0x35C, // 33, +4.5dB
\r
779 0x38E, // 34, +5.0dB
\r
780 0x3C4, // 35, +5.5dB
\r
781 0x3FE // 36, +6.0dB
\r
783 #elif(ODM_IC_11AC_SERIES_SUPPORT)
\r
784 u4Byte OFDMSwingTable_8812[OFDM_TABLE_SIZE_8812] = {
\r
785 0x3FE, // 0, (6dB)
\r
786 0x3C4, // 1, (5.5dB)
\r
788 0x35C, // 3, (4.5dB)
\r
790 0x2FE, // 5, (3.5dB)
\r
792 0x2AB, // 7, (2.5dB)
\r
794 0x261, // 9, (1.5dB
\r
795 0x23E, // 10, (1dB)
\r
796 0x21E, // 11, (0.5dB)
\r
797 0x200, // 12, (0dB) 8814 int PA 2G default
\r
798 0x1E3, // 13, (-0.5dB)
\r
799 0x1C8, // 14, (-1dB)
\r
800 0x1AF, // 15, (-1.5dB)
\r
801 0x197, // 16, (-2dB)
\r
802 0x180, // 17, (-2.5dB)
\r
803 0x16A, // 18, (-3dB) 8812 / 8814 int PA 5G / 8814 ext PA 2G5G default
\r
804 0x156, // 19, (-3.5dB)
\r
805 0x143, // 20, (-4dB) 8812 HP default
\r
806 0x131, // 21, (-4.5dB)
\r
807 0x120, // 22, (-5dB)
\r
808 0x110, // 23, (-5.5dB)
\r
809 0x101, // 24, (-6dB)
\r
810 0x0F2, // 25, (-6.5dB)
\r
811 0x0E5, // 26, (-7dB)
\r
812 0x0D8, // 27, (-7.5dB)
\r
813 0x0CC, // 28, (-8dB)
\r
814 0x0C0, // 29, (-8.5dB)
\r
815 0x0B6, // 30, (-9dB)
\r
816 0x0AC, // 31, (-9.5dB)
\r
817 0x0A2, // 32, (-10dB)
\r
818 0x099, // 33, (-10.5dB)
\r
819 0x090, // 34, (-11dB)
\r
820 0x088, // 35, (-11.5dB)
\r
821 0x081, // 36, (-12dB)
\r
822 0x079, // 37, (-12.5dB)
\r
823 0x072, // 38, (-13dB)
\r
824 0x06c, // 39, (-13.5dB)
\r
825 0x066, // 40, (-14dB)
\r
826 0x060, // 41, (-14.5dB)
\r
827 0x05B // 42, (-15dB)
\r
831 u4Byte CCKSwingTable_Ch1_Ch14_8723D[CCK_TABLE_SIZE_8723D] = {
\r
877 //3============================================================
\r
878 //3 Tx Power Tracking
\r
879 //3============================================================
\r
882 odm_TXPowerTrackingInit(
\r
886 PDM_ODM_T pDM_Odm = (PDM_ODM_T)pDM_VOID;
\r
887 #if (DM_ODM_SUPPORT_TYPE & (ODM_AP))
\r
888 if (!(pDM_Odm->SupportICType & (ODM_RTL8814A | ODM_RTL8822B | ODM_IC_11N_SERIES)))
\r
892 odm_TXPowerTrackingThermalMeterInit(pDM_Odm);
\r
901 PDM_ODM_T pDM_Odm = (PDM_ODM_T)pDM_VOID;
\r
902 u1Byte i = 0, BBswingMask = 0;
\r
903 u4Byte bbSwing = 0;
\r
904 u4Byte swingTableSize = 0;
\r
905 pu4Byte pSwingTable = 0;
\r
906 prtl8192cd_priv priv = pDM_Odm->priv;
\r
908 #if (RTL8197F_SUPPORT == 1)
\r
909 if (GET_CHIP_VER(priv) == VERSION_8197F) {
\r
910 bbSwing = PHY_QueryBBReg(priv, rOFDM0_XATxIQImbalance, bMaskOFDM_D);
\r
911 pSwingTable = OFDMSwingTable_New;
\r
912 swingTableSize = OFDM_TABLE_SIZE_92D;
\r
917 #if (RTL8822B_SUPPORT == 1)
\r
918 if (GET_CHIP_VER(priv) == VERSION_8822B) {
\r
919 bbSwing = PHY_QueryBBReg(priv, rA_TxScale_Jaguar, 0xFFE00000);
\r
920 pSwingTable = TxScalingTable_Jaguar;
\r
921 swingTableSize = TXSCALE_TABLE_SIZE;
\r
926 for (i = 0; i < swingTableSize-1; i++) {
\r
927 u4Byte tableValue = pSwingTable[i] >> BBswingMask;
\r
929 if (bbSwing == tableValue)
\r
933 ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, ("bbSwing=0x%x bbswing_index=%d\n", bbSwing, i));
\r
941 odm_TXPowerTrackingThermalMeterInit(
\r
945 PDM_ODM_T pDM_Odm = (PDM_ODM_T)pDM_VOID;
\r
946 PODM_RF_CAL_T pRFCalibrateInfo = &(pDM_Odm->RFCalibrateInfo);
\r
947 prtl8192cd_priv priv = pDM_Odm->priv;
\r
949 u1Byte defaultSwingIndex;
\r
950 #if (RTL8197F_SUPPORT == 1 || RTL8822B_SUPPORT == 1)
\r
951 if ((GET_CHIP_VER(priv) == VERSION_8197F) || (GET_CHIP_VER(priv) == VERSION_8822B))
\r
952 defaultSwingIndex = getSwingIndex(pDM_Odm);
\r
955 #if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
\r
956 PADAPTER Adapter = pDM_Odm->Adapter;
\r
957 PMGNT_INFO pMgntInfo = &Adapter->MgntInfo;
\r
958 HAL_DATA_TYPE *pHalData = GET_HAL_DATA(Adapter);
\r
960 pMgntInfo->bTXPowerTracking = TRUE;
\r
961 pHalData->TXPowercount = 0;
\r
962 pHalData->bTXPowerTrackingInit = FALSE;
\r
964 if(pDM_Odm->mp_mode == FALSE)
\r
965 pHalData->TxPowerTrackControl = TRUE;
\r
966 ODM_RT_TRACE(pDM_Odm,COMP_POWER_TRACKING, DBG_LOUD, ("pMgntInfo->bTXPowerTracking = %d\n", pMgntInfo->bTXPowerTracking));
\r
967 #elif (DM_ODM_SUPPORT_TYPE == ODM_CE)
\r
968 #ifdef CONFIG_RTL8188E
\r
970 pDM_Odm->RFCalibrateInfo.bTXPowerTracking = _TRUE;
\r
971 pDM_Odm->RFCalibrateInfo.TXPowercount = 0;
\r
972 pDM_Odm->RFCalibrateInfo.bTXPowerTrackingInit = _FALSE;
\r
974 if(pDM_Odm->mp_mode == FALSE)
\r
975 pDM_Odm->RFCalibrateInfo.TxPowerTrackControl = _TRUE;
\r
977 MSG_8192C("pDM_Odm TxPowerTrackControl = %d\n", pDM_Odm->RFCalibrateInfo.TxPowerTrackControl);
\r
981 PADAPTER Adapter = pDM_Odm->Adapter;
\r
982 HAL_DATA_TYPE *pHalData = GET_HAL_DATA(Adapter);
\r
983 struct dm_priv *pdmpriv = &pHalData->dmpriv;
\r
985 //if(IS_HARDWARE_TYPE_8192C(pHalData))
\r
987 pdmpriv->bTXPowerTracking = _TRUE;
\r
988 pdmpriv->TXPowercount = 0;
\r
989 pdmpriv->bTXPowerTrackingInit = _FALSE;
\r
991 if(pDM_Odm->mp_mode == FALSE) //for mp driver, turn off txpwrtracking as default
\r
992 pdmpriv->TxPowerTrackControl = _TRUE;
\r
995 MSG_8192C("pdmpriv->TxPowerTrackControl = %d\n", pdmpriv->TxPowerTrackControl);
\r
998 #endif//endif (CONFIG_RTL8188E==1)
\r
999 #elif (DM_ODM_SUPPORT_TYPE & (ODM_AP))
\r
1001 #ifdef RTL8188E_SUPPORT
\r
1003 pDM_Odm->RFCalibrateInfo.bTXPowerTracking = _TRUE;
\r
1004 pDM_Odm->RFCalibrateInfo.TXPowercount = 0;
\r
1005 pDM_Odm->RFCalibrateInfo.bTXPowerTrackingInit = _FALSE;
\r
1006 pDM_Odm->RFCalibrateInfo.TxPowerTrackControl = _TRUE;
\r
1007 pDM_Odm->RFCalibrateInfo.TM_Trigger = 0;
\r
1012 pDM_Odm->RFCalibrateInfo.TxPowerTrackControl = TRUE;
\r
1013 pDM_Odm->RFCalibrateInfo.DeltaPowerIndex = 0;
\r
1014 pDM_Odm->RFCalibrateInfo.DeltaPowerIndexLast = 0;
\r
1015 pDM_Odm->RFCalibrateInfo.PowerIndexOffset = 0;
\r
1016 pDM_Odm->RFCalibrateInfo.ThermalValue = 0;
\r
1017 pRFCalibrateInfo->DefaultOfdmIndex = 28;
\r
1019 #if (RTL8197F_SUPPORT == 1)
\r
1020 if (GET_CHIP_VER(priv) == VERSION_8197F) {
\r
1021 pRFCalibrateInfo->DefaultOfdmIndex = (defaultSwingIndex >= (OFDM_TABLE_SIZE_92D - 1)) ? 30 : defaultSwingIndex;
\r
1022 pRFCalibrateInfo->DefaultCckIndex = 28;
\r
1026 #if (RTL8822B_SUPPORT == 1)
\r
1027 if (GET_CHIP_VER(priv) == VERSION_8822B) {
\r
1028 pRFCalibrateInfo->DefaultOfdmIndex = (defaultSwingIndex >= (TXSCALE_TABLE_SIZE - 1)) ? 24 : defaultSwingIndex;
\r
1029 pRFCalibrateInfo->DefaultCckIndex = 20;
\r
1034 #if RTL8188E_SUPPORT
\r
1035 pRFCalibrateInfo->DefaultCckIndex = 20; // -6 dB
\r
1036 #elif RTL8192E_SUPPORT
\r
1037 pRFCalibrateInfo->DefaultCckIndex = 8; // -12 dB
\r
1039 pRFCalibrateInfo->BbSwingIdxOfdmBase = pRFCalibrateInfo->DefaultOfdmIndex;
\r
1040 pRFCalibrateInfo->BbSwingIdxCckBase = pRFCalibrateInfo->DefaultCckIndex;
\r
1041 pDM_Odm->RFCalibrateInfo.CCK_index = pRFCalibrateInfo->DefaultCckIndex;
\r
1043 for (p = 0; p < MAX_RF_PATH; p++) {
\r
1044 pDM_Odm->RFCalibrateInfo.OFDM_index[p] = pRFCalibrateInfo->DefaultOfdmIndex;
\r
1045 pRFCalibrateInfo->BbSwingIdxOfdm[p] = pRFCalibrateInfo->DefaultOfdmIndex;
\r
1046 pRFCalibrateInfo->KfreeOffset[p] = 0; /* for 8814 kfree*/
\r
1048 pRFCalibrateInfo->BbSwingIdxCck = pRFCalibrateInfo->DefaultCckIndex;
\r
1050 ODM_RT_TRACE(pDM_Odm, ODM_COMP_TX_PWR_TRACK, ODM_DBG_LOUD, ("pRFCalibrateInfo->DefaultOfdmIndex=%d pRFCalibrateInfo->DefaultCckIndex=%d\n", pRFCalibrateInfo->DefaultOfdmIndex , pRFCalibrateInfo->DefaultCckIndex));
\r
1057 ODM_TXPowerTrackingCheck(
\r
1062 // For AP/ADSL use prtl8192cd_priv
\r
1063 // For CE/NIC use PADAPTER
\r
1065 PDM_ODM_T pDM_Odm = (PDM_ODM_T)pDM_VOID;
\r
1069 if (!(pDM_Odm->SupportAbility & ODM_RF_TX_PWR_TRACK))
\r
1073 // 2011/09/29 MH In HW integration first stage, we provide 4 different handle to operate
\r
1074 // at the same time. In the stage2/3, we need to prive universal interface and merge all
\r
1075 // HW dynamic mechanism.
\r
1077 switch (pDM_Odm->SupportPlatform)
\r
1080 odm_TXPowerTrackingCheckMP(pDM_Odm);
\r
1084 odm_TXPowerTrackingCheckCE(pDM_Odm);
\r
1088 odm_TXPowerTrackingCheckAP(pDM_Odm);
\r
1092 /*odm_DIGAP(pDM_Odm);*/
\r
1099 odm_TXPowerTrackingCheckCE(
\r
1103 #if (DM_ODM_SUPPORT_TYPE == ODM_CE)
\r
1104 PDM_ODM_T pDM_Odm = (PDM_ODM_T)pDM_VOID;
\r
1105 PADAPTER Adapter = pDM_Odm->Adapter;
\r
1107 #if(RTL8188E_SUPPORT==1)
\r
1109 //if(!pMgntInfo->bTXPowerTracking /*|| (!pdmpriv->TxPowerTrackControl && pdmpriv->bAPKdone)*/)
\r
1110 if(!(pDM_Odm->SupportAbility & ODM_RF_TX_PWR_TRACK))
\r
1115 if(!pDM_Odm->RFCalibrateInfo.TM_Trigger) //at least delay 1 sec
\r
1117 //pHalData->TxPowerCheckCnt++; //cosa add for debug
\r
1118 ODM_SetRFReg(pDM_Odm, RF_PATH_A, RF_T_METER, bRFRegOffsetMask, 0x60);
\r
1119 //DBG_8192C("Trigger 92C Thermal Meter!!\n");
\r
1121 pDM_Odm->RFCalibrateInfo.TM_Trigger = 1;
\r
1127 //DBG_8192C("Schedule TxPowerTracking direct call!!\n");
\r
1128 odm_TXPowerTrackingCallback_ThermalMeter_8188E(Adapter);
\r
1129 pDM_Odm->RFCalibrateInfo.TM_Trigger = 0;
\r
1137 odm_TXPowerTrackingCheckMP(
\r
1138 IN PVOID pDM_VOID
\r
1141 #if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
\r
1142 PDM_ODM_T pDM_Odm = (PDM_ODM_T)pDM_VOID;
\r
1143 PADAPTER Adapter = pDM_Odm->Adapter;
\r
1145 if (ODM_CheckPowerStatus(Adapter) == FALSE)
\r
1148 if(!Adapter->bSlaveOfDMSP || Adapter->DualMacSmartConcurrent == FALSE)
\r
1149 odm_TXPowerTrackingThermalMeterCheck(Adapter);
\r
1156 odm_TXPowerTrackingCheckAP(
\r
1160 PDM_ODM_T pDM_Odm = (PDM_ODM_T)pDM_VOID;
\r
1161 #if (DM_ODM_SUPPORT_TYPE == ODM_AP)
\r
1162 prtl8192cd_priv priv = pDM_Odm->priv;
\r
1164 #if ((RTL8188E_SUPPORT == 1) || (RTL8192E_SUPPORT == 1) || (RTL8812A_SUPPORT == 1) || (RTL8881A_SUPPORT == 1) || (RTL8814A_SUPPORT == 1) || (RTL8197F_SUPPORT == 1))
\r
1165 if (pDM_Odm->SupportICType & (ODM_RTL8188E | ODM_RTL8192E | ODM_RTL8812 | ODM_RTL8881A | ODM_RTL8814A | ODM_RTL8197F | ODM_RTL8822B))
\r
1166 ODM_TXPowerTrackingCallback_ThermalMeter(pDM_Odm);
\r
1175 #if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
\r
1178 odm_TXPowerTrackingThermalMeterCheck(
\r
1179 IN PADAPTER Adapter
\r
1182 #ifndef AP_BUILD_WORKAROUND
\r
1183 #if (HAL_CODE_BASE==RTL8192_C)
\r
1184 PMGNT_INFO pMgntInfo = &Adapter->MgntInfo;
\r
1185 //HAL_DATA_TYPE *pHalData = GET_HAL_DATA(Adapter);
\r
1186 static u1Byte TM_Trigger = 0;
\r
1187 //u1Byte TxPowerCheckCnt = 5; //10 sec
\r
1189 if(!pMgntInfo->bTXPowerTracking /*|| (!pHalData->TxPowerTrackControl && pHalData->bAPKdone)*/)
\r
1194 if(!TM_Trigger) //at least delay 1 sec
\r
1196 if (IS_HARDWARE_TYPE_8188E(Adapter) || IS_HARDWARE_TYPE_8812(Adapter))
\r
1197 PHY_SetRFReg(Adapter, RF_PATH_A, RF_T_METER_88E, BIT17 | BIT16, 0x03);
\r
1199 PHY_SetRFReg(Adapter, RF_PATH_A, RF_T_METER, bRFRegOffsetMask, 0x60);
\r
1200 RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD,("Trigger 92C Thermal Meter!!\n"));
\r
1207 RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD,("Schedule TxPowerTracking direct call!!\n"));
\r
1208 odm_TXPowerTrackingDirectCall(Adapter); //Using direct call is instead, added by Roger, 2009.06.18.
\r