FreeCalypso > hg > fc-tourmaline
comparison src/cs/layer1/cust0/l1_rf12.c @ 0:4e78acac3d88
src/{condat,cs,gpf,nucleus}: import from Selenite
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 16 Oct 2020 06:23:26 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:4e78acac3d88 |
---|---|
1 #if (OP_L1_STANDALONE == 1) | |
2 // Define the correct enumeration of PA. Consult tpudrv12.h for the enumeration. | |
3 #if ((BOARD == 40) || (BOARD == 41) || (BOARD == 45)) // EvaRita + D-sample or EvaConso | |
4 #define RF_PA 3 | |
5 #else | |
6 #define RF_PA 0 | |
7 #endif | |
8 #else | |
9 #include "rf.cfg" | |
10 //#define RF_PA 3 // Hitachi | |
11 #endif | |
12 | |
13 /* | |
14 * FreeCalypso: the following T_RF table was originally taken from the MV100 | |
15 * source; it perfectly matched Openmoko's binary object prior to our own | |
16 * FC modification. We have made one change to it: the low_agc field in the | |
17 * T_AGC structure was originally set to 6 in TI's code, which is clearly an | |
18 * overlooked remnant from Clara RF, as Rita AGC cannot go below 14 dB. We | |
19 * have changed this number to 14 to reflect our current hardware reality. | |
20 */ | |
21 | |
22 T_RF rf = | |
23 { | |
24 RF_RITA_10, //RF revision | |
25 RF_HW_BAND_SUPPORT, // radio_band_support E-GSM/DCS + PCS | |
26 | |
27 { //RX structure | |
28 { //AGC structure | |
29 140, // low_agc_noise_thr; | |
30 110, // high_agc_sat_thr; | |
31 14, // low_agc; | |
32 34, // high_agc; | |
33 //IL2AGC tables | |
34 { // below is: il2agc_pwr[121]; | |
35 // il2agc_max[121]; | |
36 // il2agc_av[121]; | |
37 // il2agc_pwr | |
38 // Note this is shared between PCN and EGSM. | |
39 14, /* EGSM_MAX IL=0 */ | |
40 14, /* EGSM_MAX IL=-1 */ | |
41 14, /* EGSM_MAX IL=-2 */ | |
42 14, /* EGSM_MAX IL=-3 */ | |
43 14, /* EGSM_MAX IL=-4 */ | |
44 14, /* EGSM_MAX IL=-5 */ | |
45 14, /* EGSM_MAX IL=-6 */ | |
46 14, /* EGSM_MAX IL=-7 */ | |
47 14, /* EGSM_MAX IL=-8 */ | |
48 14, /* EGSM_MAX IL=-9 */ | |
49 14, /* EGSM_MAX IL=-10 */ | |
50 14, /* EGSM_MAX IL=-11 */ | |
51 14, /* EGSM_MAX IL=-12 */ | |
52 14, /* EGSM_MAX IL=-13 */ | |
53 14, /* EGSM_MAX IL=-14 */ | |
54 14, /* EGSM_MAX IL=-15 */ | |
55 14, /* EGSM_MAX IL=-16 */ | |
56 14, /* EGSM_MAX IL=-17 */ | |
57 14, /* EGSM_MAX IL=-18 */ | |
58 14, /* EGSM_MAX IL=-19 */ | |
59 14, /* EGSM_MAX IL=-20 */ | |
60 14, /* EGSM_MAX IL=-21 */ | |
61 14, /* EGSM_MAX IL=-22 */ | |
62 14, /* EGSM_MAX IL=-23 */ | |
63 14, /* EGSM_MAX IL=-24 */ | |
64 14, /* EGSM_MAX IL=-25 */ | |
65 14, /* EGSM_MAX IL=-26 */ | |
66 14, /* EGSM_MAX IL=-27 */ | |
67 14, /* EGSM_MAX IL=-28 */ | |
68 14, /* EGSM_MAX IL=-29 */ | |
69 14, /* EGSM_MAX IL=-30 */ | |
70 14, /* EGSM_MAX IL=-31 */ | |
71 14, /* EGSM_MAX IL=-32 */ | |
72 14, /* EGSM_MAX IL=-33 */ | |
73 14, /* EGSM_MAX IL=-34 */ | |
74 14, /* EGSM_MAX IL=-35 */ | |
75 14, /* EGSM_MAX IL=-36 */ | |
76 14, /* EGSM_MAX IL=-37 */ | |
77 14, /* EGSM_MAX IL=-38 */ | |
78 14, /* EGSM_MAX IL=-39 */ | |
79 14, /* EGSM_MAX IL=-40 */ | |
80 14, /* EGSM_MAX IL=-41 */ | |
81 14, /* EGSM_MAX IL=-42 */ | |
82 14, /* EGSM_MAX IL=-43 */ | |
83 14, /* EGSM_MAX IL=-44 */ | |
84 14, /* EGSM_MAX IL=-45 */ | |
85 14, /* EGSM_MAX IL=-46 */ | |
86 14, /* EGSM_MAX IL=-47 */ | |
87 14, /* EGSM_MAX IL=-48 */ | |
88 14, /* EGSM_MAX IL=-49 */ | |
89 14, /* EGSM_MAX IL=-50 */ | |
90 14, /* EGSM_MAX IL=-51 */ | |
91 14, /* EGSM_MAX IL=-52 */ | |
92 14, /* EGSM_MAX IL=-53 */ | |
93 14, /* EGSM_MAX IL=-54 */ | |
94 16, /* EGSM_MAX IL=-55 */ | |
95 16, /* EGSM_MAX IL=-56 */ | |
96 18, /* EGSM_MAX IL=-57 */ | |
97 18, /* EGSM_MAX IL=-58 */ | |
98 20, /* EGSM_MAX IL=-59 */ | |
99 20, /* EGSM_MAX IL=-60 */ | |
100 22, /* EGSM_MAX IL=-61 */ | |
101 22, /* EGSM_MAX IL=-62 */ | |
102 24, /* EGSM_MAX IL=-63 */ | |
103 24, /* EGSM_MAX IL=-64 */ | |
104 26, /* EGSM_MAX IL=-65 */ | |
105 26, /* EGSM_MAX IL=-66 */ | |
106 28, /* EGSM_MAX IL=-67 */ | |
107 28, /* EGSM_MAX IL=-68 */ | |
108 30, /* EGSM_MAX IL=-69 */ | |
109 30, /* EGSM_MAX IL=-70 */ | |
110 32, /* EGSM_MAX IL=-71 */ | |
111 32, /* EGSM_MAX IL=-72 */ | |
112 34, /* EGSM_MAX IL=-73 */ | |
113 34, /* EGSM_MAX IL=-74 */ | |
114 36, /* EGSM_MAX IL=-75 */ | |
115 36, /* EGSM_MAX IL=-76 */ | |
116 38, /* EGSM_MAX IL=-77 */ | |
117 38, /* EGSM_MAX IL=-78 */ | |
118 40, /* EGSM_MAX IL=-79 */ | |
119 40, /* EGSM_MAX IL=-80 */ | |
120 40, /* EGSM_MAX IL=-81 */ | |
121 40, /* EGSM_MAX IL=-82 */ | |
122 40, /* EGSM_MAX IL=-83 */ | |
123 40, /* EGSM_MAX IL=-84 */ | |
124 40, /* EGSM_MAX IL=-85 */ | |
125 40, /* EGSM_MAX IL=-86 */ | |
126 40, /* EGSM_MAX IL=-87 */ | |
127 40, /* EGSM_MAX IL=-88 */ | |
128 40, /* EGSM_MAX IL=-89 */ | |
129 40, /* EGSM_MAX IL=-90 */ | |
130 40, /* EGSM_MAX IL=-91 */ | |
131 40, /* EGSM_MAX IL=-92 */ | |
132 40, /* EGSM_MAX IL=-93 */ | |
133 40, /* EGSM_MAX IL=-94 */ | |
134 40, /* EGSM_MAX IL=-95 */ | |
135 40, /* EGSM_MAX IL=-96 */ | |
136 40, /* EGSM_MAX IL=-97 */ | |
137 40, /* EGSM_MAX IL=-98 */ | |
138 40, /* EGSM_MAX IL=-99 */ | |
139 40, /* EGSM_MAX IL=-100 */ | |
140 40, /* EGSM_MAX IL=-101 */ | |
141 40, /* EGSM_MAX IL=-102 */ | |
142 40, /* EGSM_MAX IL=-103 */ | |
143 40, /* EGSM_MAX IL=-104 */ | |
144 40, /* EGSM_MAX IL=-105 */ | |
145 40, /* EGSM_MAX IL=-106 */ | |
146 40, /* EGSM_MAX IL=-107 */ | |
147 40, /* EGSM_MAX IL=-108 */ | |
148 40, /* EGSM_MAX IL=-109 */ | |
149 40, /* EGSM_MAX IL=-110 */ | |
150 40, /* EGSM_MAX IL=-111 */ | |
151 40, /* EGSM_MAX IL=-112 */ | |
152 40, /* EGSM_MAX IL=-113 */ | |
153 40, /* EGSM_MAX IL=-114 */ | |
154 40, /* EGSM_MAX IL=-115 */ | |
155 40, /* EGSM_MAX IL=-116 */ | |
156 40, /* EGSM_MAX IL=-117 */ | |
157 40, /* EGSM_MAX IL=-118 */ | |
158 40, /* EGSM_MAX IL=-119 */ | |
159 40 /* EGSM_MAX IL=-120 */ | |
160 }, | |
161 { // il2agc_max | |
162 // Note this is shared between PCN and EGSM. | |
163 14, /* EGSM_MAX IL=0 */ | |
164 14, /* EGSM_MAX IL=-1 */ | |
165 14, /* EGSM_MAX IL=-2 */ | |
166 14, /* EGSM_MAX IL=-3 */ | |
167 14, /* EGSM_MAX IL=-4 */ | |
168 14, /* EGSM_MAX IL=-5 */ | |
169 14, /* EGSM_MAX IL=-6 */ | |
170 14, /* EGSM_MAX IL=-7 */ | |
171 14, /* EGSM_MAX IL=-8 */ | |
172 14, /* EGSM_MAX IL=-9 */ | |
173 14, /* EGSM_MAX IL=-10 */ | |
174 14, /* EGSM_MAX IL=-11 */ | |
175 14, /* EGSM_MAX IL=-12 */ | |
176 14, /* EGSM_MAX IL=-13 */ | |
177 14, /* EGSM_MAX IL=-14 */ | |
178 14, /* EGSM_MAX IL=-15 */ | |
179 14, /* EGSM_MAX IL=-16 */ | |
180 14, /* EGSM_MAX IL=-17 */ | |
181 14, /* EGSM_MAX IL=-18 */ | |
182 14, /* EGSM_MAX IL=-19 */ | |
183 14, /* EGSM_MAX IL=-20 */ | |
184 14, /* EGSM_MAX IL=-21 */ | |
185 14, /* EGSM_MAX IL=-22 */ | |
186 14, /* EGSM_MAX IL=-23 */ | |
187 14, /* EGSM_MAX IL=-24 */ | |
188 14, /* EGSM_MAX IL=-25 */ | |
189 14, /* EGSM_MAX IL=-26 */ | |
190 14, /* EGSM_MAX IL=-27 */ | |
191 14, /* EGSM_MAX IL=-28 */ | |
192 14, /* EGSM_MAX IL=-29 */ | |
193 14, /* EGSM_MAX IL=-30 */ | |
194 14, /* EGSM_MAX IL=-31 */ | |
195 14, /* EGSM_MAX IL=-32 */ | |
196 14, /* EGSM_MAX IL=-33 */ | |
197 14, /* EGSM_MAX IL=-34 */ | |
198 14, /* EGSM_MAX IL=-35 */ | |
199 14, /* EGSM_MAX IL=-36 */ | |
200 14, /* EGSM_MAX IL=-37 */ | |
201 14, /* EGSM_MAX IL=-38 */ | |
202 14, /* EGSM_MAX IL=-39 */ | |
203 14, /* EGSM_MAX IL=-40 */ | |
204 14, /* EGSM_MAX IL=-41 */ | |
205 14, /* EGSM_MAX IL=-42 */ | |
206 14, /* EGSM_MAX IL=-43 */ | |
207 14, /* EGSM_MAX IL=-44 */ | |
208 14, /* EGSM_MAX IL=-45 */ | |
209 14, /* EGSM_MAX IL=-46 */ | |
210 14, /* EGSM_MAX IL=-47 */ | |
211 14, /* EGSM_MAX IL=-48 */ | |
212 14, /* EGSM_MAX IL=-49 */ | |
213 14, /* EGSM_MAX IL=-50 */ | |
214 14, /* EGSM_MAX IL=-51 */ | |
215 14, /* EGSM_MAX IL=-52 */ | |
216 14, /* EGSM_MAX IL=-53 */ | |
217 14, /* EGSM_MAX IL=-54 */ | |
218 16, /* EGSM_MAX IL=-55 */ | |
219 16, /* EGSM_MAX IL=-56 */ | |
220 18, /* EGSM_MAX IL=-57 */ | |
221 18, /* EGSM_MAX IL=-58 */ | |
222 20, /* EGSM_MAX IL=-59 */ | |
223 20, /* EGSM_MAX IL=-60 */ | |
224 22, /* EGSM_MAX IL=-61 */ | |
225 22, /* EGSM_MAX IL=-62 */ | |
226 24, /* EGSM_MAX IL=-63 */ | |
227 24, /* EGSM_MAX IL=-64 */ | |
228 26, /* EGSM_MAX IL=-65 */ | |
229 26, /* EGSM_MAX IL=-66 */ | |
230 28, /* EGSM_MAX IL=-67 */ | |
231 28, /* EGSM_MAX IL=-68 */ | |
232 30, /* EGSM_MAX IL=-69 */ | |
233 30, /* EGSM_MAX IL=-70 */ | |
234 32, /* EGSM_MAX IL=-71 */ | |
235 32, /* EGSM_MAX IL=-72 */ | |
236 34, /* EGSM_MAX IL=-73 */ | |
237 34, /* EGSM_MAX IL=-74 */ | |
238 36, /* EGSM_MAX IL=-75 */ | |
239 36, /* EGSM_MAX IL=-76 */ | |
240 38, /* EGSM_MAX IL=-77 */ | |
241 38, /* EGSM_MAX IL=-78 */ | |
242 40, /* EGSM_MAX IL=-79 */ | |
243 40, /* EGSM_MAX IL=-80 */ | |
244 40, /* EGSM_MAX IL=-81 */ | |
245 40, /* EGSM_MAX IL=-82 */ | |
246 40, /* EGSM_MAX IL=-83 */ | |
247 40, /* EGSM_MAX IL=-84 */ | |
248 40, /* EGSM_MAX IL=-85 */ | |
249 40, /* EGSM_MAX IL=-86 */ | |
250 40, /* EGSM_MAX IL=-87 */ | |
251 40, /* EGSM_MAX IL=-88 */ | |
252 40, /* EGSM_MAX IL=-89 */ | |
253 40, /* EGSM_MAX IL=-90 */ | |
254 40, /* EGSM_MAX IL=-91 */ | |
255 40, /* EGSM_MAX IL=-92 */ | |
256 40, /* EGSM_MAX IL=-93 */ | |
257 40, /* EGSM_MAX IL=-94 */ | |
258 40, /* EGSM_MAX IL=-95 */ | |
259 40, /* EGSM_MAX IL=-96 */ | |
260 40, /* EGSM_MAX IL=-97 */ | |
261 40, /* EGSM_MAX IL=-98 */ | |
262 40, /* EGSM_MAX IL=-99 */ | |
263 40, /* EGSM_MAX IL=-100 */ | |
264 40, /* EGSM_MAX IL=-101 */ | |
265 40, /* EGSM_MAX IL=-102 */ | |
266 40, /* EGSM_MAX IL=-103 */ | |
267 40, /* EGSM_MAX IL=-104 */ | |
268 40, /* EGSM_MAX IL=-105 */ | |
269 40, /* EGSM_MAX IL=-106 */ | |
270 40, /* EGSM_MAX IL=-107 */ | |
271 40, /* EGSM_MAX IL=-108 */ | |
272 40, /* EGSM_MAX IL=-109 */ | |
273 40, /* EGSM_MAX IL=-110 */ | |
274 40, /* EGSM_MAX IL=-111 */ | |
275 40, /* EGSM_MAX IL=-112 */ | |
276 40, /* EGSM_MAX IL=-113 */ | |
277 40, /* EGSM_MAX IL=-114 */ | |
278 40, /* EGSM_MAX IL=-115 */ | |
279 40, /* EGSM_MAX IL=-116 */ | |
280 40, /* EGSM_MAX IL=-117 */ | |
281 40, /* EGSM_MAX IL=-118 */ | |
282 40, /* EGSM_MAX IL=-119 */ | |
283 40 /* EGSM_MAX IL=-120 */ | |
284 }, | |
285 { // il2agc_av | |
286 // Note this is shared between PCN and EGSM. | |
287 14, /* EGSM_MAX IL=0 */ | |
288 14, /* EGSM_MAX IL=-1 */ | |
289 14, /* EGSM_MAX IL=-2 */ | |
290 14, /* EGSM_MAX IL=-3 */ | |
291 14, /* EGSM_MAX IL=-4 */ | |
292 14, /* EGSM_MAX IL=-5 */ | |
293 14, /* EGSM_MAX IL=-6 */ | |
294 14, /* EGSM_MAX IL=-7 */ | |
295 14, /* EGSM_MAX IL=-8 */ | |
296 14, /* EGSM_MAX IL=-9 */ | |
297 14, /* EGSM_MAX IL=-10 */ | |
298 14, /* EGSM_MAX IL=-11 */ | |
299 14, /* EGSM_MAX IL=-12 */ | |
300 14, /* EGSM_MAX IL=-13 */ | |
301 14, /* EGSM_MAX IL=-14 */ | |
302 14, /* EGSM_MAX IL=-15 */ | |
303 14, /* EGSM_MAX IL=-16 */ | |
304 14, /* EGSM_MAX IL=-17 */ | |
305 14, /* EGSM_MAX IL=-18 */ | |
306 14, /* EGSM_MAX IL=-19 */ | |
307 14, /* EGSM_MAX IL=-20 */ | |
308 14, /* EGSM_MAX IL=-21 */ | |
309 14, /* EGSM_MAX IL=-22 */ | |
310 14, /* EGSM_MAX IL=-23 */ | |
311 14, /* EGSM_MAX IL=-24 */ | |
312 14, /* EGSM_MAX IL=-25 */ | |
313 14, /* EGSM_MAX IL=-26 */ | |
314 14, /* EGSM_MAX IL=-27 */ | |
315 14, /* EGSM_MAX IL=-28 */ | |
316 14, /* EGSM_MAX IL=-29 */ | |
317 14, /* EGSM_MAX IL=-30 */ | |
318 14, /* EGSM_MAX IL=-31 */ | |
319 14, /* EGSM_MAX IL=-32 */ | |
320 14, /* EGSM_MAX IL=-33 */ | |
321 14, /* EGSM_MAX IL=-34 */ | |
322 14, /* EGSM_MAX IL=-35 */ | |
323 14, /* EGSM_MAX IL=-36 */ | |
324 14, /* EGSM_MAX IL=-37 */ | |
325 14, /* EGSM_MAX IL=-38 */ | |
326 14, /* EGSM_MAX IL=-39 */ | |
327 14, /* EGSM_MAX IL=-40 */ | |
328 14, /* EGSM_MAX IL=-41 */ | |
329 14, /* EGSM_MAX IL=-42 */ | |
330 14, /* EGSM_MAX IL=-43 */ | |
331 14, /* EGSM_MAX IL=-44 */ | |
332 14, /* EGSM_MAX IL=-45 */ | |
333 14, /* EGSM_MAX IL=-46 */ | |
334 14, /* EGSM_MAX IL=-47 */ | |
335 14, /* EGSM_MAX IL=-48 */ | |
336 14, /* EGSM_MAX IL=-49 */ | |
337 14, /* EGSM_MAX IL=-50 */ | |
338 14, /* EGSM_MAX IL=-51 */ | |
339 14, /* EGSM_MAX IL=-52 */ | |
340 14, /* EGSM_MAX IL=-53 */ | |
341 14, /* EGSM_MAX IL=-54 */ | |
342 16, /* EGSM_MAX IL=-55 */ | |
343 16, /* EGSM_MAX IL=-56 */ | |
344 18, /* EGSM_MAX IL=-57 */ | |
345 18, /* EGSM_MAX IL=-58 */ | |
346 20, /* EGSM_MAX IL=-59 */ | |
347 20, /* EGSM_MAX IL=-60 */ | |
348 22, /* EGSM_MAX IL=-61 */ | |
349 22, /* EGSM_MAX IL=-62 */ | |
350 24, /* EGSM_MAX IL=-63 */ | |
351 24, /* EGSM_MAX IL=-64 */ | |
352 26, /* EGSM_MAX IL=-65 */ | |
353 26, /* EGSM_MAX IL=-66 */ | |
354 28, /* EGSM_MAX IL=-67 */ | |
355 28, /* EGSM_MAX IL=-68 */ | |
356 30, /* EGSM_MAX IL=-69 */ | |
357 30, /* EGSM_MAX IL=-70 */ | |
358 32, /* EGSM_MAX IL=-71 */ | |
359 32, /* EGSM_MAX IL=-72 */ | |
360 34, /* EGSM_MAX IL=-73 */ | |
361 34, /* EGSM_MAX IL=-74 */ | |
362 36, /* EGSM_MAX IL=-75 */ | |
363 36, /* EGSM_MAX IL=-76 */ | |
364 38, /* EGSM_MAX IL=-77 */ | |
365 38, /* EGSM_MAX IL=-78 */ | |
366 40, /* EGSM_MAX IL=-79 */ | |
367 40, /* EGSM_MAX IL=-80 */ | |
368 40, /* EGSM_MAX IL=-81 */ | |
369 40, /* EGSM_MAX IL=-82 */ | |
370 40, /* EGSM_MAX IL=-83 */ | |
371 40, /* EGSM_MAX IL=-84 */ | |
372 40, /* EGSM_MAX IL=-85 */ | |
373 40, /* EGSM_MAX IL=-86 */ | |
374 40, /* EGSM_MAX IL=-87 */ | |
375 40, /* EGSM_MAX IL=-88 */ | |
376 40, /* EGSM_MAX IL=-89 */ | |
377 40, /* EGSM_MAX IL=-90 */ | |
378 40, /* EGSM_MAX IL=-91 */ | |
379 40, /* EGSM_MAX IL=-92 */ | |
380 40, /* EGSM_MAX IL=-93 */ | |
381 40, /* EGSM_MAX IL=-94 */ | |
382 40, /* EGSM_MAX IL=-95 */ | |
383 40, /* EGSM_MAX IL=-96 */ | |
384 40, /* EGSM_MAX IL=-97 */ | |
385 40, /* EGSM_MAX IL=-98 */ | |
386 40, /* EGSM_MAX IL=-99 */ | |
387 40, /* EGSM_MAX IL=-100 */ | |
388 40, /* EGSM_MAX IL=-101 */ | |
389 40, /* EGSM_MAX IL=-102 */ | |
390 40, /* EGSM_MAX IL=-103 */ | |
391 40, /* EGSM_MAX IL=-104 */ | |
392 40, /* EGSM_MAX IL=-105 */ | |
393 40, /* EGSM_MAX IL=-106 */ | |
394 40, /* EGSM_MAX IL=-107 */ | |
395 40, /* EGSM_MAX IL=-108 */ | |
396 40, /* EGSM_MAX IL=-109 */ | |
397 40, /* EGSM_MAX IL=-110 */ | |
398 40, /* EGSM_MAX IL=-111 */ | |
399 40, /* EGSM_MAX IL=-112 */ | |
400 40, /* EGSM_MAX IL=-113 */ | |
401 40, /* EGSM_MAX IL=-114 */ | |
402 40, /* EGSM_MAX IL=-115 */ | |
403 40, /* EGSM_MAX IL=-116 */ | |
404 40, /* EGSM_MAX IL=-117 */ | |
405 40, /* EGSM_MAX IL=-118 */ | |
406 40, /* EGSM_MAX IL=-119 */ | |
407 40 /* EGSM_MAX IL=-120 */ | |
408 } | |
409 }, | |
410 }, | |
411 { | |
412 {0, 0}, // ramp up and down delays | |
413 GUARD_BITS, // number of guard bits needed for ramp up | |
414 PRG_TX // propagation delay PRG_TX | |
415 }, | |
416 { //AFC parameters | |
417 EEPROM_AFC, | |
418 C_Psi_sta_inv, // (1/C_Psi_sta) | |
419 C_Psi_st, // C_Psi_sta * 0.8 F0.16 | |
420 C_Psi_st_32, // F0.32 | |
421 C_Psi_st_inv // (1/C_Psi_st) | |
422 | |
423 #if (VCXO_ALGO==1) | |
424 ,C_AFC_DAC_CENTER, // VCXO startup parameter - best guess | |
425 C_AFC_DAC_MIN, // VCXO startup parameter - 15ppm | |
426 C_AFC_DAC_MAX, // VCXO startup parameter + 15ppm | |
427 C_AFC_SNR_THR // snr - Default threshold value | |
428 #endif | |
429 } | |
430 }; | |
431 | |
432 T_RF_BAND rf_band[GSM_BANDS]; //uninitialised rf struct for bands | |
433 | |
434 /* | |
435 * The const T_RF_BAND rf_{900,1800,850,1900} structures that follow | |
436 * provide compiled-in defaults for each frequency band. The present | |
437 * FreeCalypso versions of these structs began life as verbatim extracts | |
438 * from Openmoko's l1_cust.obj blob made with our calextract utility, | |
439 * providing undisrupted continuity from previous built-from-blobs | |
440 * firmwares, but have since been modified as follows: | |
441 * | |
442 * - The uncalibrated default g_magic values for all bands have been | |
443 * set to 200, which is the approximately correct number on FC/OM hw. | |
444 * The numbers in TI's l1_cust.obj blob delivery were quite obviously | |
445 * unchanged from Clara RF, and probably weren't even correct for the | |
446 * original Leonardo, let alone OM. | |
447 * | |
448 * - The uncalibrated default Rx and Tx channel calibration tables | |
449 * have been cleaned up. The only sensible default is to set all | |
450 * channel corrections to neutral (0 for Rx and 128 for Tx), which the | |
451 * original blob versions already did, but many of those copy-n-pasted | |
452 * tables had ARFCNs that are invalid for the band they are supposed | |
453 * to apply to. The latter bug has been fixed. | |
454 * | |
455 * - For the Tx ramps tables we now select between 4 different versions | |
456 * at compile time: the original version from OM is used for our own | |
457 * OM-based FC hardware, whereas Compal-targeting builds use one of 3 | |
458 * different Compal versions: one version for C11x/12x and C155/156 | |
459 * (SKY77324 RF PA), a different version for C139/140 (SKY77325 RF PA), | |
460 * and yet another version for SE J100 (SKY77328 RF PA). | |
461 * | |
462 * NONE of these compiled-in tables matter if you are running the fw | |
463 * on an Openmoko, Pirelli or FreeCalypso device that has already been | |
464 * fully calibrated at the respective factory: in all of these cases | |
465 * all of these compiled-in tables are fully overridden by the factory- | |
466 * calibrated ones read from FFS, or in the Pirelli DP-L10 case, | |
467 * read from Pirelli's factory data block and written into FreeCalypso FFS | |
468 * by the pirelli-magnetite-init command you are supposed to issue | |
469 * in fc-fsio when you set up FC on this target. Instead these | |
470 * compiled-in tables matter in the following two use cases: | |
471 * | |
472 * - When FC fw is run on a Mot C1xx or SE J100 phone, our c1xx-calextr tool | |
473 * generates Rx agcparams, Rx channel calibration and Tx levels tables | |
474 * from Compal's factory bits, but for the Tx ramp templates the tables | |
475 * compiled into our fw are used - hence these tables need to be correct | |
476 * for the target in question, which is why we have extracted and included | |
477 * the tables from 3 different Compal official fw versions. We also | |
478 * weren't able to grok Compal's way of doing Tx channel corrections, hence | |
479 * we run without those - thus we rely on the compiled-in channel calibration | |
480 * tables providing a neutral set of correction values. | |
481 * | |
482 * - Firmware images that are programmed into newly made FreeCalypso hw | |
483 * devices in the factory production environment prior to RF calibration | |
484 * need to have correct Tx ramp template tables in them, as well as | |
485 * indices in the Tx levels tables pointing to these ramps, plus the | |
486 * other 3 values in the T_RX_CAL_PARAMS structure besides g_magic: | |
487 * while all other table bits are generated from scratch by our | |
488 * fc-rfcal-rxband and fc-rfcal-txband programs without regard to | |
489 * any previous compiled-in values, the just-listed tables and fields | |
490 * are unchanged by the calibration procedure and must already be | |
491 * correct prior to it. | |
492 * | |
493 * The compiled-in default Tx levels tables have been kept unchanged | |
494 * from the original extracts from OM's l1_cust.obj blob. There is | |
495 * no point in changing these tables because they are nothing but dummy | |
496 * placeholders in reality: these tables absolutely MUST be calibrated | |
497 * for the individual device unit before that device can be used safely | |
498 * on public land mobile networks (if you are not doing your own RF | |
499 * calibration, you need to extract and apply the original manufacturer's | |
500 * calibration records, like our c1xx-calextr and pirelli-magnetite-init | |
501 * tools do), and if the compiled-in tables are nothing but placeholders, | |
502 * it would be rather moot to argue whether set of numbers A or set of | |
503 * numbers B would make a better placeholder. | |
504 * | |
505 * All of our Tx ramp templates (the ones used on our own FCDEV3B and all 3 | |
506 * of our Compal versions) have been verified with our CMU200 RF tester and | |
507 * found to produce correct in-tolerance ramps on all tested targets (FCDEV3B, | |
508 * EU-band Mot C118, US-band Mot C139, EU-band Mot C140, US-band Mot C155 and | |
509 * EU-band SE J100i) for each power control level in all supported bands. | |
510 */ | |
511 | |
512 const T_RF_BAND rf_900 = { | |
513 { /* Rx structure */ | |
514 { /* T_RX_CAL_PARAMS */ | |
515 200, | |
516 40, | |
517 40, | |
518 44, | |
519 }, | |
520 { /* T_RF_AGC_BANDs */ | |
521 { 10, 0}, | |
522 { 30, 0}, | |
523 { 51, 0}, | |
524 { 71, 0}, | |
525 { 90, 0}, | |
526 { 112, 0}, | |
527 { 124, 0}, | |
528 { 991, 0}, | |
529 { 1009, 0}, | |
530 { 1023, 0}, | |
531 }, | |
532 { /* Rx temperature compensation */ | |
533 { -15, 0}, | |
534 { -5, 0}, | |
535 { 6, 0}, | |
536 { 16, 0}, | |
537 { 25, 0}, | |
538 { 35, 0}, | |
539 { 45, 0}, | |
540 { 56, 0}, | |
541 { 66, 0}, | |
542 { 75, 0}, | |
543 { 100, 0}, | |
544 }, | |
545 }, | |
546 { /* Tx structure */ | |
547 { /* levels */ | |
548 { 465, 0, 0}, /* 0 */ | |
549 { 465, 0, 0}, /* 1 */ | |
550 { 465, 0, 0}, /* 2 */ | |
551 { 465, 0, 0}, /* 3 */ | |
552 { 465, 0, 0}, /* 4 */ | |
553 { 465, 0, 0}, /* 5 */ | |
554 { 387, 1, 0}, /* 6 */ | |
555 { 324, 2, 0}, /* 7 */ | |
556 { 260, 3, 0}, /* 8 */ | |
557 { 210, 4, 0}, /* 9 */ | |
558 { 170, 5, 0}, /* 10 */ | |
559 { 138, 6, 0}, /* 11 */ | |
560 { 113, 7, 0}, /* 12 */ | |
561 { 92, 8, 0}, /* 13 */ | |
562 { 76, 9, 0}, /* 14 */ | |
563 { 62, 10, 0}, /* 15 */ | |
564 { 51, 11, 0}, /* 16 */ | |
565 { 42, 12, 0}, /* 17 */ | |
566 { 34, 13, 0}, /* 18 */ | |
567 { 27, 14, 0}, /* 19 */ | |
568 { 27, 14, 0}, /* 20 */ | |
569 { 27, 14, 0}, /* 21 */ | |
570 { 27, 14, 0}, /* 22 */ | |
571 { 27, 14, 0}, /* 23 */ | |
572 { 27, 14, 0}, /* 24 */ | |
573 { 27, 14, 0}, /* 25 */ | |
574 { 27, 14, 0}, /* 26 */ | |
575 { 27, 14, 0}, /* 27 */ | |
576 { 27, 14, 0}, /* 28 */ | |
577 { 27, 14, 0}, /* 29 */ | |
578 { 27, 14, 0}, /* 30 */ | |
579 { 27, 14, 0}, /* 31 */ | |
580 }, | |
581 { /* channel calibration tables */ | |
582 { /* calibration table 0 */ | |
583 { 40, 128}, | |
584 { 80, 128}, | |
585 { 124, 128}, | |
586 { 586, 128}, | |
587 { 661, 128}, | |
588 { 736, 128}, | |
589 { 885, 128}, | |
590 { 1023, 128}, | |
591 }, | |
592 { /* calibration table 1 */ | |
593 { 40, 128}, | |
594 { 80, 128}, | |
595 { 124, 128}, | |
596 { 586, 128}, | |
597 { 661, 128}, | |
598 { 736, 128}, | |
599 { 885, 128}, | |
600 { 1023, 128}, | |
601 }, | |
602 { /* calibration table 2 */ | |
603 { 40, 128}, | |
604 { 80, 128}, | |
605 { 124, 128}, | |
606 { 586, 128}, | |
607 { 661, 128}, | |
608 { 736, 128}, | |
609 { 885, 128}, | |
610 { 1023, 128}, | |
611 }, | |
612 { /* calibration table 3 */ | |
613 { 40, 128}, | |
614 { 80, 128}, | |
615 { 124, 128}, | |
616 { 586, 128}, | |
617 { 661, 128}, | |
618 { 736, 128}, | |
619 { 885, 128}, | |
620 { 1023, 128}, | |
621 }, | |
622 }, | |
623 { /* ramps */ | |
624 #if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) | |
625 /* from Motorola R87.2.1.03.m0 fw for the C11x family */ | |
626 { /* profile 0 */ | |
627 /* ramp-up */ | |
628 { 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 31, 5, 0}, | |
629 /* ramp-down */ | |
630 { 31, 31, 28, 15, 2, 0, 19, 2, 0, 0, 0, 0, 0, 0, 0, 0}, | |
631 }, | |
632 { /* profile 1 */ | |
633 /* ramp-up */ | |
634 { 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 26, 29, 8, 0}, | |
635 /* ramp-down */ | |
636 { 31, 31, 29, 14, 2, 1, 15, 2, 3, 0, 0, 0, 0, 0, 0, 0}, | |
637 }, | |
638 { /* profile 2 */ | |
639 /* ramp-up */ | |
640 { 31, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 27, 24, 1, 0}, | |
641 /* ramp-down */ | |
642 { 30, 31, 25, 14, 2, 2, 15, 7, 2, 0, 0, 0, 0, 0, 0, 0}, | |
643 }, | |
644 { /* profile 3 */ | |
645 /* ramp-up */ | |
646 { 31, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 14, 29, 1, 0}, | |
647 /* ramp-down */ | |
648 { 31, 29, 31, 13, 2, 2, 15, 2, 3, 0, 0, 0, 0, 0, 0, 0}, | |
649 }, | |
650 { /* profile 4 */ | |
651 /* ramp-up */ | |
652 { 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 17, 19, 0, 0}, | |
653 /* ramp-down */ | |
654 { 31, 30, 30, 15, 1, 2, 17, 2, 0, 0, 0, 0, 0, 0, 0, 0}, | |
655 }, | |
656 { /* profile 5 */ | |
657 /* ramp-up */ | |
658 { 31, 31, 7, 0, 0, 0, 0, 0, 0, 0, 0, 31, 19, 7, 2, 0}, | |
659 /* ramp-down */ | |
660 { 29, 31, 29, 16, 4, 0, 14, 2, 1, 2, 0, 0, 0, 0, 0, 0}, | |
661 }, | |
662 { /* profile 6 */ | |
663 /* ramp-up */ | |
664 { 31, 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 20, 0, 0}, | |
665 /* ramp-down */ | |
666 { 19, 26, 26, 28, 10, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
667 }, | |
668 { /* profile 7 */ | |
669 /* ramp-up */ | |
670 { 31, 31, 25, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 8, 2, 0}, | |
671 /* ramp-down */ | |
672 { 19, 28, 31, 24, 4, 0, 19, 3, 0, 0, 0, 0, 0, 0, 0, 0}, | |
673 }, | |
674 { /* profile 8 */ | |
675 /* ramp-up */ | |
676 { 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 31, 2, 0, 0, 0}, | |
677 /* ramp-down */ | |
678 { 19, 28, 31, 24, 4, 0, 17, 5, 0, 0, 0, 0, 0, 0, 0, 0}, | |
679 }, | |
680 { /* profile 9 */ | |
681 /* ramp-up */ | |
682 { 31, 31, 31, 9, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0}, | |
683 /* ramp-down */ | |
684 { 18, 25, 28, 31, 2, 2, 19, 3, 0, 0, 0, 0, 0, 0, 0, 0}, | |
685 }, | |
686 { /* profile 10 */ | |
687 /* ramp-up */ | |
688 { 31, 31, 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0}, | |
689 /* ramp-down */ | |
690 { 14, 21, 24, 29, 6, 2, 23, 5, 4, 0, 0, 0, 0, 0, 0, 0}, | |
691 }, | |
692 { /* profile 11 */ | |
693 /* ramp-up */ | |
694 { 31, 31, 31, 22, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 1, 0}, | |
695 /* ramp-down */ | |
696 { 8, 26, 26, 28, 12, 12, 5, 5, 0, 6, 0, 0, 0, 0, 0, 0}, | |
697 }, | |
698 { /* profile 12 */ | |
699 /* ramp-up */ | |
700 { 31, 31, 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0}, | |
701 /* ramp-down */ | |
702 { 8, 14, 27, 30, 20, 19, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
703 }, | |
704 { /* profile 13 */ | |
705 /* ramp-up */ | |
706 { 31, 31, 31, 31, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 0}, | |
707 /* ramp-down */ | |
708 { 9, 10, 15, 26, 25, 10, 17, 13, 3, 0, 0, 0, 0, 0, 0, 0}, | |
709 }, | |
710 { /* profile 14 */ | |
711 /* ramp-up */ | |
712 { 31, 31, 30, 30, 1, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
713 /* ramp-down */ | |
714 { 0, 4, 15, 21, 21, 21, 21, 15, 10, 0, 0, 0, 0, 0, 0, 0}, | |
715 }, | |
716 { /* profile 15 */ | |
717 /* ramp-up */ | |
718 { 31, 31, 30, 30, 1, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
719 /* ramp-down */ | |
720 { 0, 4, 15, 21, 21, 21, 21, 15, 10, 0, 0, 0, 0, 0, 0, 0}, | |
721 }, | |
722 #elif defined(CONFIG_TARGET_C139) | |
723 /* from Mot C139 official fw */ | |
724 { /* profile 0 */ | |
725 /* ramp-up */ | |
726 { 0, 0, 2, 0, 0, 0, 0, 0, 13, 24, 24, 25, 26, 14, 0, 0}, | |
727 /* ramp-down */ | |
728 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
729 }, | |
730 { /* profile 1 */ | |
731 /* ramp-up */ | |
732 { 0, 0, 3, 0, 0, 0, 0, 0, 16, 24, 24, 30, 31, 0, 0, 0}, | |
733 /* ramp-down */ | |
734 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
735 }, | |
736 { /* profile 2 */ | |
737 /* ramp-up */ | |
738 { 0, 0, 3, 0, 0, 0, 0, 0, 16, 24, 24, 30, 31, 0, 0, 0}, | |
739 /* ramp-down */ | |
740 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
741 }, | |
742 { /* profile 3 */ | |
743 /* ramp-up */ | |
744 { 0, 0, 0, 4, 0, 0, 0, 0, 0, 31, 31, 30, 30, 2, 0, 0}, | |
745 /* ramp-down */ | |
746 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
747 }, | |
748 { /* profile 4 */ | |
749 /* ramp-up */ | |
750 { 0, 0, 0, 4, 0, 0, 0, 0, 0, 31, 31, 30, 30, 2, 0, 0}, | |
751 /* ramp-down */ | |
752 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
753 }, | |
754 { /* profile 5 */ | |
755 /* ramp-up */ | |
756 { 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 31, 31, 31, 20, 0, 0}, | |
757 /* ramp-down */ | |
758 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
759 }, | |
760 { /* profile 6 */ | |
761 /* ramp-up */ | |
762 { 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 31, 31, 31, 20, 0, 0}, | |
763 /* ramp-down */ | |
764 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
765 }, | |
766 { /* profile 7 */ | |
767 /* ramp-up */ | |
768 { 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 31, 31, 31, 20, 0, 0}, | |
769 /* ramp-down */ | |
770 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
771 }, | |
772 { /* profile 8 */ | |
773 /* ramp-up */ | |
774 { 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 31, 31, 31, 20, 0, 0}, | |
775 /* ramp-down */ | |
776 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
777 }, | |
778 { /* profile 9 */ | |
779 /* ramp-up */ | |
780 { 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 31, 31, 31, 17, 0, 0}, | |
781 /* ramp-down */ | |
782 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
783 }, | |
784 { /* profile 10 */ | |
785 /* ramp-up */ | |
786 { 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 31, 31, 31, 15, 0, 0}, | |
787 /* ramp-down */ | |
788 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
789 }, | |
790 { /* profile 11 */ | |
791 /* ramp-up */ | |
792 { 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 31, 31, 31, 10, 0, 0}, | |
793 /* ramp-down */ | |
794 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
795 }, | |
796 { /* profile 12 */ | |
797 /* ramp-up */ | |
798 { 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 31, 31, 31, 10, 0, 0}, | |
799 /* ramp-down */ | |
800 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
801 }, | |
802 { /* profile 13 */ | |
803 /* ramp-up */ | |
804 { 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 31, 31, 31, 10, 0, 0}, | |
805 /* ramp-down */ | |
806 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
807 }, | |
808 { /* profile 14 */ | |
809 /* ramp-up */ | |
810 { 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 31, 31, 31, 5, 0, 0}, | |
811 /* ramp-down */ | |
812 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
813 }, | |
814 { /* profile 15 */ | |
815 /* ramp-up */ | |
816 { 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 31, 31, 31, 5, 0, 0}, | |
817 /* ramp-down */ | |
818 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
819 }, | |
820 #elif defined(CONFIG_TARGET_J100) | |
821 /* from SE J100 fw version R1C004 */ | |
822 { /* profile 0 */ | |
823 /* ramp-up */ | |
824 { 1, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0, 0}, | |
825 /* ramp-down */ | |
826 { 25, 25, 31, 16, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
827 }, | |
828 { /* profile 1 */ | |
829 /* ramp-up */ | |
830 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0}, | |
831 /* ramp-down */ | |
832 { 27, 31, 31, 8, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
833 }, | |
834 { /* profile 2 */ | |
835 /* ramp-up */ | |
836 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0}, | |
837 /* ramp-down */ | |
838 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
839 }, | |
840 { /* profile 3 */ | |
841 /* ramp-up */ | |
842 { 1, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0, 0}, | |
843 /* ramp-down */ | |
844 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
845 }, | |
846 { /* profile 4 */ | |
847 /* ramp-up */ | |
848 { 1, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0, 0}, | |
849 /* ramp-down */ | |
850 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
851 }, | |
852 { /* profile 5 */ | |
853 /* ramp-up */ | |
854 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0}, | |
855 /* ramp-down */ | |
856 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
857 }, | |
858 { /* profile 6 */ | |
859 /* ramp-up */ | |
860 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0}, | |
861 /* ramp-down */ | |
862 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
863 }, | |
864 { /* profile 7 */ | |
865 /* ramp-up */ | |
866 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0}, | |
867 /* ramp-down */ | |
868 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
869 }, | |
870 { /* profile 8 */ | |
871 /* ramp-up */ | |
872 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0}, | |
873 /* ramp-down */ | |
874 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
875 }, | |
876 { /* profile 9 */ | |
877 /* ramp-up */ | |
878 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0}, | |
879 /* ramp-down */ | |
880 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
881 }, | |
882 { /* profile 10 */ | |
883 /* ramp-up */ | |
884 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
885 /* ramp-down */ | |
886 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
887 }, | |
888 { /* profile 11 */ | |
889 /* ramp-up */ | |
890 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
891 /* ramp-down */ | |
892 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
893 }, | |
894 { /* profile 12 */ | |
895 /* ramp-up */ | |
896 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
897 /* ramp-down */ | |
898 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
899 }, | |
900 { /* profile 13 */ | |
901 /* ramp-up */ | |
902 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0}, | |
903 /* ramp-down */ | |
904 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
905 }, | |
906 { /* profile 14 */ | |
907 /* ramp-up */ | |
908 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0}, | |
909 /* ramp-down */ | |
910 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
911 }, | |
912 { /* profile 15 */ | |
913 /* ramp-up */ | |
914 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
915 /* ramp-down */ | |
916 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
917 }, | |
918 #else | |
919 /* TI/Openmoko version */ | |
920 { /* profile 0 */ | |
921 /* ramp-up */ | |
922 { 0, 0, 0, 0, 0, 0, 0, 0, 9, 18, 25, 31, 30, 15, 0, 0}, | |
923 /* ramp-down */ | |
924 { 0, 11, 31, 31, 31, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
925 }, | |
926 { /* profile 1 */ | |
927 /* ramp-up */ | |
928 { 0, 0, 0, 0, 0, 0, 1, 1, 7, 16, 28, 31, 31, 13, 0, 0}, | |
929 /* ramp-down */ | |
930 { 0, 8, 31, 31, 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
931 }, | |
932 { /* profile 2 */ | |
933 /* ramp-up */ | |
934 { 0, 0, 0, 0, 0, 0, 1, 1, 8, 16, 29, 31, 31, 11, 0, 0}, | |
935 /* ramp-down */ | |
936 { 0, 8, 28, 31, 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
937 }, | |
938 { /* profile 3 */ | |
939 /* ramp-up */ | |
940 { 0, 0, 0, 0, 0, 0, 2, 0, 6, 18, 28, 31, 31, 12, 0, 0}, | |
941 /* ramp-down */ | |
942 { 0, 9, 24, 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
943 }, | |
944 { /* profile 4 */ | |
945 /* ramp-up */ | |
946 { 0, 0, 0, 0, 0, 0, 3, 0, 5, 19, 31, 31, 31, 8, 0, 0}, | |
947 /* ramp-down */ | |
948 { 0, 7, 31, 31, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
949 }, | |
950 { /* profile 5 */ | |
951 /* ramp-up */ | |
952 { 0, 0, 0, 0, 0, 0, 2, 0, 7, 18, 31, 31, 31, 8, 0, 0}, | |
953 /* ramp-down */ | |
954 { 0, 7, 31, 31, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
955 }, | |
956 { /* profile 6 */ | |
957 /* ramp-up */ | |
958 { 0, 0, 0, 0, 0, 0, 3, 0, 5, 20, 31, 31, 31, 7, 0, 0}, | |
959 /* ramp-down */ | |
960 { 0, 10, 21, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
961 }, | |
962 { /* profile 7 */ | |
963 /* ramp-up */ | |
964 { 0, 0, 0, 0, 0, 0, 4, 0, 9, 23, 22, 31, 31, 8, 0, 0}, | |
965 /* ramp-down */ | |
966 { 0, 9, 24, 30, 31, 30, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
967 }, | |
968 { /* profile 8 */ | |
969 /* ramp-up */ | |
970 { 0, 0, 0, 0, 0, 0, 5, 0, 8, 21, 24, 31, 31, 8, 0, 0}, | |
971 /* ramp-down */ | |
972 { 0, 8, 23, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
973 }, | |
974 { /* profile 9 */ | |
975 /* ramp-up */ | |
976 { 0, 0, 0, 0, 0, 5, 0, 3, 1, 27, 22, 31, 31, 8, 0, 0}, | |
977 /* ramp-down */ | |
978 { 0, 8, 27, 25, 26, 31, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
979 }, | |
980 { /* profile 10 */ | |
981 /* ramp-up */ | |
982 { 0, 0, 0, 0, 5, 0, 0, 2, 7, 22, 23, 31, 31, 7, 0, 0}, | |
983 /* ramp-down */ | |
984 { 0, 7, 25, 30, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
985 }, | |
986 { /* profile 11 */ | |
987 /* ramp-up */ | |
988 { 0, 0, 0, 0, 0, 5, 0, 4, 8, 21, 21, 31, 31, 7, 0, 0}, | |
989 /* ramp-down */ | |
990 { 0, 8, 21, 31, 31, 31, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
991 }, | |
992 { /* profile 12 */ | |
993 /* ramp-up */ | |
994 { 0, 0, 0, 0, 0, 7, 0, 0, 12, 22, 25, 31, 27, 4, 0, 0}, | |
995 /* ramp-down */ | |
996 { 0, 9, 12, 21, 31, 31, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
997 }, | |
998 { /* profile 13 */ | |
999 /* ramp-up */ | |
1000 { 0, 0, 0, 0, 0, 0, 7, 0, 8, 15, 31, 31, 31, 5, 0, 0}, | |
1001 /* ramp-down */ | |
1002 { 0, 6, 14, 23, 31, 31, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1003 }, | |
1004 { /* profile 14 */ | |
1005 /* ramp-up */ | |
1006 { 0, 0, 0, 0, 0, 20, 0, 0, 8, 15, 14, 31, 31, 9, 0, 0}, | |
1007 /* ramp-down */ | |
1008 { 0, 7, 31, 31, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1009 }, | |
1010 { /* profile 15 */ | |
1011 /* ramp-up */ | |
1012 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1013 /* ramp-down */ | |
1014 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1015 }, | |
1016 #endif | |
1017 }, | |
1018 { /* Tx temperature compensation */ | |
1019 #if (ORDER2_TX_TEMP_CAL==1) | |
1020 { -11, 0, 0, 0 }, | |
1021 { +9, 0, 0, 0 }, | |
1022 { +39, 0, 0, 0 }, | |
1023 { +59, 0, 0, 0 }, | |
1024 { 127, 0, 0, 0 } | |
1025 #else | |
1026 { -11, 0 }, | |
1027 { +9, 0 }, | |
1028 { +39, 0 }, | |
1029 { +59, 0 }, | |
1030 { 127, 0 } | |
1031 #endif | |
1032 }, | |
1033 }, | |
1034 //IQ swap | |
1035 SWAP_IQ_GSM, | |
1036 }; | |
1037 | |
1038 const T_RF_BAND rf_1800 = { | |
1039 { /* Rx structure */ | |
1040 { /* T_RX_CAL_PARAMS */ | |
1041 200, | |
1042 40, | |
1043 40, | |
1044 44, | |
1045 }, | |
1046 { /* T_RF_AGC_BANDs */ | |
1047 { 548, 0}, | |
1048 { 622, 0}, | |
1049 { 680, 0}, | |
1050 { 745, 0}, | |
1051 { 812, 0}, | |
1052 { 860, 0}, | |
1053 { 885, 0}, | |
1054 { 0, 0}, | |
1055 { 0, 0}, | |
1056 { 0, 0}, | |
1057 }, | |
1058 { /* Rx temperature compensation */ | |
1059 { -15, 0}, | |
1060 { -5, 0}, | |
1061 { 6, 0}, | |
1062 { 16, 0}, | |
1063 { 25, 0}, | |
1064 { 35, 0}, | |
1065 { 45, 0}, | |
1066 { 56, 0}, | |
1067 { 66, 0}, | |
1068 { 75, 0}, | |
1069 { 100, 0}, | |
1070 }, | |
1071 }, | |
1072 { /* Tx structure */ | |
1073 { /* levels */ | |
1074 { 436, 0, 0}, /* 0 */ | |
1075 { 363, 1, 0}, /* 1 */ | |
1076 { 310, 2, 0}, /* 2 */ | |
1077 { 253, 3, 0}, /* 3 */ | |
1078 { 205, 4, 0}, /* 4 */ | |
1079 { 168, 5, 0}, /* 5 */ | |
1080 { 138, 6, 0}, /* 6 */ | |
1081 { 113, 7, 0}, /* 7 */ | |
1082 { 93, 8, 0}, /* 8 */ | |
1083 { 76, 9, 0}, /* 9 */ | |
1084 { 61, 10, 0}, /* 10 */ | |
1085 { 50, 11, 0}, /* 11 */ | |
1086 { 40, 12, 0}, /* 12 */ | |
1087 { 32, 13, 0}, /* 13 */ | |
1088 { 26, 14, 0}, /* 14 */ | |
1089 { 20, 15, 0}, /* 15 */ | |
1090 { 20, 15, 0}, /* 16 */ | |
1091 { 20, 15, 0}, /* 17 */ | |
1092 { 20, 15, 0}, /* 18 */ | |
1093 { 20, 15, 0}, /* 19 */ | |
1094 { 20, 15, 0}, /* 20 */ | |
1095 { 20, 15, 0}, /* 21 */ | |
1096 { 20, 15, 0}, /* 22 */ | |
1097 { 20, 15, 0}, /* 23 */ | |
1098 { 20, 15, 0}, /* 24 */ | |
1099 { 20, 15, 0}, /* 25 */ | |
1100 { 20, 15, 0}, /* 26 */ | |
1101 { 20, 15, 0}, /* 27 */ | |
1102 { 20, 15, 0}, /* 28 */ | |
1103 { 20, 0, 0}, /* 29 */ | |
1104 { 20, 0, 0}, /* 30 */ | |
1105 { 20, 0, 0}, /* 31 */ | |
1106 }, | |
1107 { /* channel calibration tables */ | |
1108 { /* calibration table 0 */ | |
1109 { 554, 128}, | |
1110 { 722, 128}, | |
1111 { 746, 128}, | |
1112 { 774, 128}, | |
1113 { 808, 128}, | |
1114 { 851, 128}, | |
1115 { 870, 128}, | |
1116 { 885, 128}, | |
1117 }, | |
1118 { /* calibration table 1 */ | |
1119 { 554, 128}, | |
1120 { 722, 128}, | |
1121 { 746, 128}, | |
1122 { 774, 128}, | |
1123 { 808, 128}, | |
1124 { 851, 128}, | |
1125 { 870, 128}, | |
1126 { 885, 128}, | |
1127 }, | |
1128 { /* calibration table 2 */ | |
1129 { 554, 128}, | |
1130 { 722, 128}, | |
1131 { 746, 128}, | |
1132 { 774, 128}, | |
1133 { 808, 128}, | |
1134 { 851, 128}, | |
1135 { 870, 128}, | |
1136 { 885, 128}, | |
1137 }, | |
1138 { /* calibration table 3 */ | |
1139 { 554, 128}, | |
1140 { 722, 128}, | |
1141 { 746, 128}, | |
1142 { 774, 128}, | |
1143 { 808, 128}, | |
1144 { 851, 128}, | |
1145 { 870, 128}, | |
1146 { 885, 128}, | |
1147 }, | |
1148 }, | |
1149 { /* ramps */ | |
1150 #if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) | |
1151 /* from Motorola R87.2.1.03.m0 fw for the C11x family */ | |
1152 { /* profile 0 */ | |
1153 /* ramp-up */ | |
1154 { 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 27, 4, 0}, | |
1155 /* ramp-down */ | |
1156 { 28, 31, 18, 8, 8, 13, 9, 13, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1157 }, | |
1158 { /* profile 1 */ | |
1159 /* ramp-up */ | |
1160 { 31, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 24, 0, 0}, | |
1161 /* ramp-down */ | |
1162 { 10, 30, 30, 20, 8, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1163 }, | |
1164 { /* profile 2 */ | |
1165 /* ramp-up */ | |
1166 { 31, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 16, 0, 0}, | |
1167 /* ramp-down */ | |
1168 { 10, 30, 31, 24, 31, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1169 }, | |
1170 { /* profile 3 */ | |
1171 /* ramp-up */ | |
1172 { 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 23, 19, 0, 0}, | |
1173 /* ramp-down */ | |
1174 { 31, 14, 31, 5, 24, 13, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1175 }, | |
1176 { /* profile 4 */ | |
1177 /* ramp-up */ | |
1178 { 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 10, 21, 31, 0, 0}, | |
1179 /* ramp-down */ | |
1180 { 20, 22, 31, 10, 22, 13, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1181 }, | |
1182 { /* profile 5 */ | |
1183 /* ramp-up */ | |
1184 { 31, 31, 13, 0, 0, 0, 0, 0, 0, 0, 0, 31, 22, 0, 0, 0}, | |
1185 /* ramp-down */ | |
1186 { 22, 14, 26, 22, 22, 17, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1187 }, | |
1188 { /* profile 6 */ | |
1189 /* ramp-up */ | |
1190 { 31, 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 24, 21, 0, 0, 0}, | |
1191 /* ramp-down */ | |
1192 { 10, 31, 31, 25, 17, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1193 }, | |
1194 { /* profile 7 */ | |
1195 /* ramp-up */ | |
1196 { 31, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 28, 10, 0, 0, 0}, | |
1197 /* ramp-down */ | |
1198 { 17, 24, 28, 21, 24, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1199 }, | |
1200 { /* profile 8 */ | |
1201 /* ramp-up */ | |
1202 { 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 27, 4, 0, 0, 0}, | |
1203 /* ramp-down */ | |
1204 { 9, 23, 31, 24, 24, 13, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1205 }, | |
1206 { /* profile 9 */ | |
1207 /* ramp-up */ | |
1208 { 31, 31, 31, 12, 0, 0, 0, 0, 0, 0, 0, 0, 13, 10, 0, 0}, | |
1209 /* ramp-down */ | |
1210 { 9, 23, 31, 24, 24, 13, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1211 }, | |
1212 { /* profile 10 */ | |
1213 /* ramp-up */ | |
1214 { 31, 31, 31, 17, 0, 0, 0, 0, 0, 0, 0, 0, 12, 6, 0, 0}, | |
1215 /* ramp-down */ | |
1216 { 10, 10, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1217 }, | |
1218 { /* profile 11 */ | |
1219 /* ramp-up */ | |
1220 { 31, 31, 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0}, | |
1221 /* ramp-down */ | |
1222 { 4, 14, 31, 31, 26, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1223 }, | |
1224 { /* profile 12 */ | |
1225 /* ramp-up */ | |
1226 { 31, 31, 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0}, | |
1227 /* ramp-down */ | |
1228 { 2, 14, 31, 31, 28, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1229 }, | |
1230 { /* profile 13 */ | |
1231 /* ramp-up */ | |
1232 { 31, 31, 31, 29, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0}, | |
1233 /* ramp-down */ | |
1234 { 0, 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0}, | |
1235 }, | |
1236 { /* profile 14 */ | |
1237 /* ramp-up */ | |
1238 { 31, 31, 31, 31, 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0}, | |
1239 /* ramp-down */ | |
1240 { 2, 4, 4, 18, 31, 31, 24, 5, 5, 4, 0, 0, 0, 0, 0, 0}, | |
1241 }, | |
1242 { /* profile 15 */ | |
1243 /* ramp-up */ | |
1244 { 31, 31, 31, 31, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1245 /* ramp-down */ | |
1246 { 3, 2, 2, 22, 22, 21, 21, 21, 9, 5, 0, 0, 0, 0, 0, 0}, | |
1247 }, | |
1248 #elif defined(CONFIG_TARGET_C139) | |
1249 /* from Mot C139 official fw */ | |
1250 { /* profile 0 */ | |
1251 /* ramp-up */ | |
1252 { 6, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 30, 30, 10, 0, 0}, | |
1253 /* ramp-down */ | |
1254 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1255 }, | |
1256 { /* profile 1 */ | |
1257 /* ramp-up */ | |
1258 { 6, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 30, 30, 10, 0, 0}, | |
1259 /* ramp-down */ | |
1260 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1261 }, | |
1262 { /* profile 2 */ | |
1263 /* ramp-up */ | |
1264 { 6, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 30, 30, 10, 0, 0}, | |
1265 /* ramp-down */ | |
1266 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1267 }, | |
1268 { /* profile 3 */ | |
1269 /* ramp-up */ | |
1270 { 6, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 30, 30, 2, 0, 0}, | |
1271 /* ramp-down */ | |
1272 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1273 }, | |
1274 { /* profile 4 */ | |
1275 /* ramp-up */ | |
1276 { 6, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 30, 30, 2, 0, 0}, | |
1277 /* ramp-down */ | |
1278 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1279 }, | |
1280 { /* profile 5 */ | |
1281 /* ramp-up */ | |
1282 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
1283 /* ramp-down */ | |
1284 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1285 }, | |
1286 { /* profile 6 */ | |
1287 /* ramp-up */ | |
1288 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
1289 /* ramp-down */ | |
1290 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1291 }, | |
1292 { /* profile 7 */ | |
1293 /* ramp-up */ | |
1294 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
1295 /* ramp-down */ | |
1296 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1297 }, | |
1298 { /* profile 8 */ | |
1299 /* ramp-up */ | |
1300 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
1301 /* ramp-down */ | |
1302 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1303 }, | |
1304 { /* profile 9 */ | |
1305 /* ramp-up */ | |
1306 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
1307 /* ramp-down */ | |
1308 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1309 }, | |
1310 { /* profile 10 */ | |
1311 /* ramp-up */ | |
1312 { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 30, 18, 0, 0}, | |
1313 /* ramp-down */ | |
1314 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1315 }, | |
1316 { /* profile 11 */ | |
1317 /* ramp-up */ | |
1318 { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 30, 18, 0, 0}, | |
1319 /* ramp-down */ | |
1320 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1321 }, | |
1322 { /* profile 12 */ | |
1323 /* ramp-up */ | |
1324 { 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 30, 15, 0, 0}, | |
1325 /* ramp-down */ | |
1326 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1327 }, | |
1328 { /* profile 13 */ | |
1329 /* ramp-up */ | |
1330 { 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 30, 10, 0, 0}, | |
1331 /* ramp-down */ | |
1332 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1333 }, | |
1334 { /* profile 14 */ | |
1335 /* ramp-up */ | |
1336 { 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 30, 7, 0, 0}, | |
1337 /* ramp-down */ | |
1338 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1339 }, | |
1340 { /* profile 15 */ | |
1341 /* ramp-up */ | |
1342 { 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 30, 7, 0, 0}, | |
1343 /* ramp-down */ | |
1344 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1345 }, | |
1346 #elif defined(CONFIG_TARGET_J100) | |
1347 /* from SE J100 fw version R1C004 */ | |
1348 { /* profile 0 */ | |
1349 /* ramp-up */ | |
1350 { 1, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0, 0}, | |
1351 /* ramp-down */ | |
1352 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1353 }, | |
1354 { /* profile 1 */ | |
1355 /* ramp-up */ | |
1356 { 1, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0, 0}, | |
1357 /* ramp-down */ | |
1358 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1359 }, | |
1360 { /* profile 2 */ | |
1361 /* ramp-up */ | |
1362 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0}, | |
1363 /* ramp-down */ | |
1364 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1365 }, | |
1366 { /* profile 3 */ | |
1367 /* ramp-up */ | |
1368 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 30, 31, 31, 31, 4, 0, 0}, | |
1369 /* ramp-down */ | |
1370 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1371 }, | |
1372 { /* profile 4 */ | |
1373 /* ramp-up */ | |
1374 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 30, 31, 31, 31, 4, 0, 0}, | |
1375 /* ramp-down */ | |
1376 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1377 }, | |
1378 { /* profile 5 */ | |
1379 /* ramp-up */ | |
1380 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0}, | |
1381 /* ramp-down */ | |
1382 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1383 }, | |
1384 { /* profile 6 */ | |
1385 /* ramp-up */ | |
1386 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
1387 /* ramp-down */ | |
1388 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1389 }, | |
1390 { /* profile 7 */ | |
1391 /* ramp-up */ | |
1392 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
1393 /* ramp-down */ | |
1394 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1395 }, | |
1396 { /* profile 8 */ | |
1397 /* ramp-up */ | |
1398 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
1399 /* ramp-down */ | |
1400 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1401 }, | |
1402 { /* profile 9 */ | |
1403 /* ramp-up */ | |
1404 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0}, | |
1405 /* ramp-down */ | |
1406 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1407 }, | |
1408 { /* profile 10 */ | |
1409 /* ramp-up */ | |
1410 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0}, | |
1411 /* ramp-down */ | |
1412 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1413 }, | |
1414 { /* profile 11 */ | |
1415 /* ramp-up */ | |
1416 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0}, | |
1417 /* ramp-down */ | |
1418 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1419 }, | |
1420 { /* profile 12 */ | |
1421 /* ramp-up */ | |
1422 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0}, | |
1423 /* ramp-down */ | |
1424 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1425 }, | |
1426 { /* profile 13 */ | |
1427 /* ramp-up */ | |
1428 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0}, | |
1429 /* ramp-down */ | |
1430 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1431 }, | |
1432 { /* profile 14 */ | |
1433 /* ramp-up */ | |
1434 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0}, | |
1435 /* ramp-down */ | |
1436 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1437 }, | |
1438 { /* profile 15 */ | |
1439 /* ramp-up */ | |
1440 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0}, | |
1441 /* ramp-down */ | |
1442 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1443 }, | |
1444 #else | |
1445 /* TI/Openmoko version */ | |
1446 { /* profile 0 */ | |
1447 /* ramp-up */ | |
1448 { 0, 0, 0, 0, 0, 0, 2, 3, 5, 16, 31, 31, 31, 9, 0, 0}, | |
1449 /* ramp-down */ | |
1450 { 0, 11, 31, 31, 31, 10, 11, 3, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1451 }, | |
1452 { /* profile 1 */ | |
1453 /* ramp-up */ | |
1454 { 0, 0, 0, 0, 0, 0, 2, 3, 4, 17, 30, 31, 31, 10, 0, 0}, | |
1455 /* ramp-down */ | |
1456 { 0, 10, 31, 31, 31, 13, 9, 3, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1457 }, | |
1458 { /* profile 2 */ | |
1459 /* ramp-up */ | |
1460 { 0, 0, 0, 0, 0, 0, 4, 2, 2, 18, 31, 31, 31, 9, 0, 0}, | |
1461 /* ramp-down */ | |
1462 { 0, 10, 26, 31, 31, 16, 10, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1463 }, | |
1464 { /* profile 3 */ | |
1465 /* ramp-up */ | |
1466 { 0, 0, 0, 0, 0, 0, 3, 4, 4, 15, 31, 31, 31, 9, 0, 0}, | |
1467 /* ramp-down */ | |
1468 { 0, 9, 31, 31, 31, 13, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1469 }, | |
1470 { /* profile 4 */ | |
1471 /* ramp-up */ | |
1472 { 0, 0, 0, 0, 0, 0, 4, 3, 7, 11, 31, 31, 31, 10, 0, 0}, | |
1473 /* ramp-down */ | |
1474 { 0, 8, 31, 31, 31, 11, 9, 7, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1475 }, | |
1476 { /* profile 5 */ | |
1477 /* ramp-up */ | |
1478 { 0, 0, 0, 0, 0, 4, 3, 2, 7, 14, 25, 31, 31, 11, 0, 0}, | |
1479 /* ramp-down */ | |
1480 { 0, 14, 31, 31, 31, 9, 8, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1481 }, | |
1482 { /* profile 6 */ | |
1483 /* ramp-up */ | |
1484 { 0, 0, 0, 0, 0, 7, 1, 3, 10, 12, 25, 31, 31, 8, 0, 0}, | |
1485 /* ramp-down */ | |
1486 { 0, 7, 30, 31, 31, 14, 4, 6, 5, 0, 0, 0, 0, 0, 0, 0}, | |
1487 }, | |
1488 { /* profile 7 */ | |
1489 /* ramp-up */ | |
1490 { 0, 0, 0, 0, 3, 5, 0, 5, 8, 12, 26, 31, 31, 7, 0, 0}, | |
1491 /* ramp-down */ | |
1492 { 0, 7, 31, 31, 31, 15, 0, 8, 5, 0, 0, 0, 0, 0, 0, 0}, | |
1493 }, | |
1494 { /* profile 8 */ | |
1495 /* ramp-up */ | |
1496 { 0, 0, 0, 0, 0, 9, 0, 3, 10, 16, 21, 31, 31, 7, 0, 0}, | |
1497 /* ramp-down */ | |
1498 { 0, 11, 28, 31, 27, 10, 11, 0, 10, 0, 0, 0, 0, 0, 0, 0}, | |
1499 }, | |
1500 { /* profile 9 */ | |
1501 /* ramp-up */ | |
1502 { 0, 0, 0, 0, 0, 10, 0, 6, 9, 15, 22, 29, 31, 6, 0, 0}, | |
1503 /* ramp-down */ | |
1504 { 0, 9, 22, 31, 31, 12, 5, 0, 18, 0, 0, 0, 0, 0, 0, 0}, | |
1505 }, | |
1506 { /* profile 10 */ | |
1507 /* ramp-up */ | |
1508 { 0, 0, 0, 0, 14, 0, 0, 8, 6, 20, 21, 29, 24, 6, 0, 0}, | |
1509 /* ramp-down */ | |
1510 { 0, 8, 28, 29, 26, 14, 6, 0, 17, 0, 0, 0, 0, 0, 0, 0}, | |
1511 }, | |
1512 { /* profile 11 */ | |
1513 /* ramp-up */ | |
1514 { 0, 0, 0, 0, 16, 0, 3, 5, 8, 16, 31, 28, 18, 3, 0, 0}, | |
1515 /* ramp-down */ | |
1516 { 0, 6, 18, 26, 31, 16, 9, 7, 0, 15, 0, 0, 0, 0, 0, 0}, | |
1517 }, | |
1518 { /* profile 12 */ | |
1519 /* ramp-up */ | |
1520 { 0, 0, 0, 0, 19, 0, 3, 6, 8, 21, 24, 31, 14, 2, 0, 0}, | |
1521 /* ramp-down */ | |
1522 { 0, 0, 12, 31, 31, 27, 4, 0, 23, 0, 0, 0, 0, 0, 0, 0}, | |
1523 }, | |
1524 { /* profile 13 */ | |
1525 /* ramp-up */ | |
1526 { 0, 0, 0, 0, 0, 14, 14, 0, 0, 24, 31, 31, 14, 0, 0, 0}, | |
1527 /* ramp-down */ | |
1528 { 0, 0, 11, 31, 31, 22, 11, 3, 19, 0, 0, 0, 0, 0, 0, 0}, | |
1529 }, | |
1530 { /* profile 14 */ | |
1531 /* ramp-up */ | |
1532 { 0, 0, 0, 0, 0, 30, 1, 4, 8, 18, 31, 31, 5, 0, 0, 0}, | |
1533 /* ramp-down */ | |
1534 { 0, 0, 8, 31, 31, 22, 5, 0, 31, 0, 0, 0, 0, 0, 0, 0}, | |
1535 }, | |
1536 { /* profile 15 */ | |
1537 /* ramp-up */ | |
1538 { 0, 0, 0, 0, 0, 31, 13, 0, 0, 14, 31, 31, 8, 0, 0, 0}, | |
1539 /* ramp-down */ | |
1540 { 0, 0, 4, 31, 31, 25, 5, 0, 5, 26, 1, 0, 0, 0, 0, 0}, | |
1541 }, | |
1542 #endif | |
1543 }, | |
1544 { /* Tx temperature compensation */ | |
1545 #if (ORDER2_TX_TEMP_CAL==1) | |
1546 { -11, 0, 0, 0 }, | |
1547 { +9, 0, 0, 0 }, | |
1548 { +39, 0, 0, 0 }, | |
1549 { +59, 0, 0, 0 }, | |
1550 { 127, 0, 0, 0 } | |
1551 #else | |
1552 { -11, 0 }, | |
1553 { +9, 0 }, | |
1554 { +39, 0 }, | |
1555 { +59, 0 }, | |
1556 { 127, 0 } | |
1557 #endif | |
1558 }, | |
1559 }, | |
1560 //IQ swap | |
1561 SWAP_IQ_DCS | |
1562 }; | |
1563 | |
1564 const T_RF_BAND rf_850 = { | |
1565 { /* Rx structure */ | |
1566 { /* T_RX_CAL_PARAMS */ | |
1567 200, | |
1568 40, | |
1569 40, | |
1570 44, | |
1571 }, | |
1572 { /* T_RF_AGC_BANDs */ | |
1573 { 138, 0}, | |
1574 { 157, 0}, | |
1575 { 178, 0}, | |
1576 { 199, 0}, | |
1577 { 217, 0}, | |
1578 { 239, 0}, | |
1579 { 251, 0}, | |
1580 { 0, 0}, | |
1581 { 0, 0}, | |
1582 { 0, 0}, | |
1583 }, | |
1584 { /* Rx temperature compensation */ | |
1585 { -15, 0}, | |
1586 { -5, 0}, | |
1587 { 6, 0}, | |
1588 { 16, 0}, | |
1589 { 25, 0}, | |
1590 { 35, 0}, | |
1591 { 45, 0}, | |
1592 { 56, 0}, | |
1593 { 66, 0}, | |
1594 { 75, 0}, | |
1595 { 100, 0}, | |
1596 }, | |
1597 }, | |
1598 { /* Tx structure */ | |
1599 { /* levels */ | |
1600 { 507, 0, 0}, /* 0 */ | |
1601 { 507, 0, 0}, /* 1 */ | |
1602 { 507, 0, 0}, /* 2 */ | |
1603 { 507, 0, 0}, /* 3 */ | |
1604 { 507, 0, 0}, /* 4 */ | |
1605 { 507, 0, 0}, /* 5 */ | |
1606 { 417, 1, 0}, /* 6 */ | |
1607 { 350, 2, 0}, /* 7 */ | |
1608 { 282, 3, 0}, /* 8 */ | |
1609 { 226, 4, 0}, /* 9 */ | |
1610 { 183, 5, 0}, /* 10 */ | |
1611 { 148, 6, 0}, /* 11 */ | |
1612 { 121, 7, 0}, /* 12 */ | |
1613 { 98, 8, 0}, /* 13 */ | |
1614 { 80, 9, 0}, /* 14 */ | |
1615 { 66, 10, 0}, /* 15 */ | |
1616 { 54, 11, 0}, /* 16 */ | |
1617 { 44, 12, 0}, /* 17 */ | |
1618 { 36, 13, 0}, /* 18 */ | |
1619 { 29, 14, 0}, /* 19 */ | |
1620 { 29, 14, 0}, /* 20 */ | |
1621 { 29, 14, 0}, /* 21 */ | |
1622 { 29, 14, 0}, /* 22 */ | |
1623 { 29, 14, 0}, /* 23 */ | |
1624 { 29, 14, 0}, /* 24 */ | |
1625 { 29, 14, 0}, /* 25 */ | |
1626 { 29, 14, 0}, /* 26 */ | |
1627 { 29, 14, 0}, /* 27 */ | |
1628 { 29, 14, 0}, /* 28 */ | |
1629 { 29, 14, 0}, /* 29 */ | |
1630 { 29, 14, 0}, /* 30 */ | |
1631 { 29, 14, 0}, /* 31 */ | |
1632 }, | |
1633 { /* channel calibration tables */ | |
1634 { /* calibration table 0 */ | |
1635 { 134, 128}, | |
1636 { 150, 128}, | |
1637 { 166, 128}, | |
1638 { 182, 128}, | |
1639 { 197, 128}, | |
1640 { 213, 128}, | |
1641 { 229, 128}, | |
1642 { 251, 128}, | |
1643 }, | |
1644 { /* calibration table 1 */ | |
1645 { 134, 128}, | |
1646 { 150, 128}, | |
1647 { 166, 128}, | |
1648 { 182, 128}, | |
1649 { 197, 128}, | |
1650 { 213, 128}, | |
1651 { 229, 128}, | |
1652 { 251, 128}, | |
1653 }, | |
1654 { /* calibration table 2 */ | |
1655 { 134, 128}, | |
1656 { 150, 128}, | |
1657 { 166, 128}, | |
1658 { 182, 128}, | |
1659 { 197, 128}, | |
1660 { 213, 128}, | |
1661 { 229, 128}, | |
1662 { 251, 128}, | |
1663 }, | |
1664 { /* calibration table 3 */ | |
1665 { 134, 128}, | |
1666 { 150, 128}, | |
1667 { 166, 128}, | |
1668 { 182, 128}, | |
1669 { 197, 128}, | |
1670 { 213, 128}, | |
1671 { 229, 128}, | |
1672 { 251, 128}, | |
1673 }, | |
1674 }, | |
1675 { /* ramps */ | |
1676 #if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) | |
1677 /* from Motorola R87.2.1.03.m0 fw for the C11x family */ | |
1678 { /* profile 0 */ | |
1679 /* ramp-up */ | |
1680 { 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 31, 31, 31, 3, 0}, | |
1681 /* ramp-down */ | |
1682 { 31, 31, 18, 22, 6, 10, 2, 1, 1, 3, 3, 0, 0, 0, 0, 0}, | |
1683 }, | |
1684 { /* profile 1 */ | |
1685 /* ramp-up */ | |
1686 { 31, 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 0, 0}, | |
1687 /* ramp-down */ | |
1688 { 31, 31, 31, 6, 8, 8, 9, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1689 }, | |
1690 { /* profile 2 */ | |
1691 /* ramp-up */ | |
1692 { 31, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 29, 0, 0}, | |
1693 /* ramp-down */ | |
1694 { 31, 25, 21, 20, 13, 14, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1695 }, | |
1696 { /* profile 3 */ | |
1697 /* ramp-up */ | |
1698 { 31, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 22, 0, 0}, | |
1699 /* ramp-down */ | |
1700 { 27, 28, 23, 19, 13, 14, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1701 }, | |
1702 { /* profile 4 */ | |
1703 /* ramp-up */ | |
1704 { 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 14, 0, 0}, | |
1705 /* ramp-down */ | |
1706 { 31, 21, 31, 2, 31, 4, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1707 }, | |
1708 { /* profile 5 */ | |
1709 /* ramp-up */ | |
1710 { 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 5, 0, 0}, | |
1711 /* ramp-down */ | |
1712 { 21, 31, 31, 2, 31, 4, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1713 }, | |
1714 { /* profile 6 */ | |
1715 /* ramp-up */ | |
1716 { 31, 31, 7, 0, 0, 0, 0, 0, 0, 0, 0, 31, 28, 0, 0, 0}, | |
1717 /* ramp-down */ | |
1718 { 31, 31, 28, 14, 3, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1719 }, | |
1720 { /* profile 7 */ | |
1721 /* ramp-up */ | |
1722 { 31, 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 31, 19, 0, 0, 0}, | |
1723 /* ramp-down */ | |
1724 { 20, 30, 30, 10, 28, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1725 }, | |
1726 { /* profile 8 */ | |
1727 /* ramp-up */ | |
1728 { 31, 31, 26, 0, 0, 0, 0, 0, 0, 0, 0, 31, 9, 0, 0, 0}, | |
1729 /* ramp-down */ | |
1730 { 20, 26, 26, 18, 18, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1731 }, | |
1732 { /* profile 9 */ | |
1733 /* ramp-up */ | |
1734 { 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 31, 2, 0, 0, 0}, | |
1735 /* ramp-down */ | |
1736 { 16, 16, 26, 26, 26, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1737 }, | |
1738 { /* profile 10 */ | |
1739 /* ramp-up */ | |
1740 { 31, 31, 31, 11, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0}, | |
1741 /* ramp-down */ | |
1742 { 10, 12, 31, 26, 29, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1743 }, | |
1744 { /* profile 11 */ | |
1745 /* ramp-up */ | |
1746 { 31, 31, 31, 18, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0}, | |
1747 /* ramp-down */ | |
1748 { 2, 20, 31, 26, 31, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1749 }, | |
1750 { /* profile 12 */ | |
1751 /* ramp-up */ | |
1752 { 31, 31, 31, 25, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0}, | |
1753 /* ramp-down */ | |
1754 { 2, 20, 31, 26, 31, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0}, | |
1755 }, | |
1756 { /* profile 13 */ | |
1757 /* ramp-up */ | |
1758 { 31, 31, 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0}, | |
1759 /* ramp-down */ | |
1760 { 1, 16, 31, 31, 31, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1761 }, | |
1762 { /* profile 14 */ | |
1763 /* ramp-up */ | |
1764 { 31, 31, 31, 31, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0}, | |
1765 /* ramp-down */ | |
1766 { 4, 8, 10, 20, 31, 31, 20, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1767 }, | |
1768 { /* profile 15 */ | |
1769 /* ramp-up */ | |
1770 { 31, 31, 31, 31, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0}, | |
1771 /* ramp-down */ | |
1772 { 4, 8, 10, 20, 31, 31, 20, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1773 }, | |
1774 #elif defined(CONFIG_TARGET_C139) | |
1775 /* from Mot C139 official fw */ | |
1776 { /* profile 0 */ | |
1777 /* ramp-up */ | |
1778 { 0, 0, 3, 0, 0, 0, 0, 0, 2, 31, 30, 31, 31, 0, 0, 0}, | |
1779 /* ramp-down */ | |
1780 { 20, 21, 31, 26, 10, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1781 }, | |
1782 { /* profile 1 */ | |
1783 /* ramp-up */ | |
1784 { 0, 0, 5, 0, 0, 0, 0, 0, 0, 31, 30, 31, 31, 0, 0, 0}, | |
1785 /* ramp-down */ | |
1786 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1787 }, | |
1788 { /* profile 2 */ | |
1789 /* ramp-up */ | |
1790 { 0, 0, 5, 0, 0, 0, 0, 0, 0, 31, 30, 31, 31, 0, 0, 0}, | |
1791 /* ramp-down */ | |
1792 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1793 }, | |
1794 { /* profile 3 */ | |
1795 /* ramp-up */ | |
1796 { 0, 0, 0, 5, 0, 0, 0, 0, 0, 31, 30, 31, 31, 0, 0, 0}, | |
1797 /* ramp-down */ | |
1798 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1799 }, | |
1800 { /* profile 4 */ | |
1801 /* ramp-up */ | |
1802 { 0, 0, 0, 5, 0, 0, 0, 0, 0, 31, 30, 31, 31, 0, 0, 0}, | |
1803 /* ramp-down */ | |
1804 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1805 }, | |
1806 { /* profile 5 */ | |
1807 /* ramp-up */ | |
1808 { 0, 0, 0, 8, 0, 0, 0, 0, 0, 28, 30, 31, 31, 0, 0, 0}, | |
1809 /* ramp-down */ | |
1810 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1811 }, | |
1812 { /* profile 6 */ | |
1813 /* ramp-up */ | |
1814 { 0, 0, 0, 8, 0, 0, 0, 0, 0, 28, 30, 31, 31, 0, 0, 0}, | |
1815 /* ramp-down */ | |
1816 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1817 }, | |
1818 { /* profile 7 */ | |
1819 /* ramp-up */ | |
1820 { 0, 0, 0, 12, 0, 0, 0, 0, 0, 20, 30, 31, 31, 4, 0, 0}, | |
1821 /* ramp-down */ | |
1822 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1823 }, | |
1824 { /* profile 8 */ | |
1825 /* ramp-up */ | |
1826 { 0, 0, 0, 12, 0, 0, 0, 0, 0, 20, 30, 31, 31, 4, 0, 0}, | |
1827 /* ramp-down */ | |
1828 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1829 }, | |
1830 { /* profile 9 */ | |
1831 /* ramp-up */ | |
1832 { 0, 0, 0, 17, 0, 0, 0, 0, 0, 25, 24, 31, 31, 0, 0, 0}, | |
1833 /* ramp-down */ | |
1834 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1835 }, | |
1836 { /* profile 10 */ | |
1837 /* ramp-up */ | |
1838 { 0, 0, 0, 17, 0, 0, 0, 0, 0, 25, 24, 31, 31, 0, 0, 0}, | |
1839 /* ramp-down */ | |
1840 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1841 }, | |
1842 { /* profile 11 */ | |
1843 /* ramp-up */ | |
1844 { 0, 0, 0, 17, 0, 0, 0, 0, 0, 14, 30, 31, 31, 5, 0, 0}, | |
1845 /* ramp-down */ | |
1846 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1847 }, | |
1848 { /* profile 12 */ | |
1849 /* ramp-up */ | |
1850 { 0, 0, 0, 17, 0, 0, 0, 0, 0, 14, 30, 31, 31, 5, 0, 0}, | |
1851 /* ramp-down */ | |
1852 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1853 }, | |
1854 { /* profile 13 */ | |
1855 /* ramp-up */ | |
1856 { 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 31, 31, 31, 7, 0, 0}, | |
1857 /* ramp-down */ | |
1858 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1859 }, | |
1860 { /* profile 14 */ | |
1861 /* ramp-up */ | |
1862 { 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 31, 31, 31, 7, 0, 0}, | |
1863 /* ramp-down */ | |
1864 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1865 }, | |
1866 { /* profile 15 */ | |
1867 /* ramp-up */ | |
1868 { 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 31, 31, 31, 7, 0, 0}, | |
1869 /* ramp-down */ | |
1870 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1871 }, | |
1872 #elif defined(CONFIG_TARGET_J100) | |
1873 /* from SE J100 fw version R1C004 */ | |
1874 { /* profile 0 */ | |
1875 /* ramp-up */ | |
1876 { 1, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0, 0}, | |
1877 /* ramp-down */ | |
1878 { 15, 31, 31, 20, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1879 }, | |
1880 { /* profile 1 */ | |
1881 /* ramp-up */ | |
1882 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0}, | |
1883 /* ramp-down */ | |
1884 { 20, 31, 31, 15, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1885 }, | |
1886 { /* profile 2 */ | |
1887 /* ramp-up */ | |
1888 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0}, | |
1889 /* ramp-down */ | |
1890 { 25, 31, 31, 10, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1891 }, | |
1892 { /* profile 3 */ | |
1893 /* ramp-up */ | |
1894 { 1, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0, 0}, | |
1895 /* ramp-down */ | |
1896 { 29, 31, 31, 31, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1897 }, | |
1898 { /* profile 4 */ | |
1899 /* ramp-up */ | |
1900 { 1, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0, 0}, | |
1901 /* ramp-down */ | |
1902 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1903 }, | |
1904 { /* profile 5 */ | |
1905 /* ramp-up */ | |
1906 { 1, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0, 0}, | |
1907 /* ramp-down */ | |
1908 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1909 }, | |
1910 { /* profile 6 */ | |
1911 /* ramp-up */ | |
1912 { 1, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0, 0}, | |
1913 /* ramp-down */ | |
1914 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1915 }, | |
1916 { /* profile 7 */ | |
1917 /* ramp-up */ | |
1918 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0}, | |
1919 /* ramp-down */ | |
1920 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1921 }, | |
1922 { /* profile 8 */ | |
1923 /* ramp-up */ | |
1924 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0}, | |
1925 /* ramp-down */ | |
1926 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1927 }, | |
1928 { /* profile 9 */ | |
1929 /* ramp-up */ | |
1930 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
1931 /* ramp-down */ | |
1932 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1933 }, | |
1934 { /* profile 10 */ | |
1935 /* ramp-up */ | |
1936 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
1937 /* ramp-down */ | |
1938 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1939 }, | |
1940 { /* profile 11 */ | |
1941 /* ramp-up */ | |
1942 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
1943 /* ramp-down */ | |
1944 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1945 }, | |
1946 { /* profile 12 */ | |
1947 /* ramp-up */ | |
1948 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0}, | |
1949 /* ramp-down */ | |
1950 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1951 }, | |
1952 { /* profile 13 */ | |
1953 /* ramp-up */ | |
1954 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0}, | |
1955 /* ramp-down */ | |
1956 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1957 }, | |
1958 { /* profile 14 */ | |
1959 /* ramp-up */ | |
1960 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0}, | |
1961 /* ramp-down */ | |
1962 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1963 }, | |
1964 { /* profile 15 */ | |
1965 /* ramp-up */ | |
1966 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1967 /* ramp-down */ | |
1968 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1969 }, | |
1970 #else | |
1971 /* TI/Openmoko version */ | |
1972 { /* profile 0 */ | |
1973 /* ramp-up */ | |
1974 { 0, 0, 0, 0, 0, 0, 0, 0, 9, 18, 25, 31, 30, 15, 0, 0}, | |
1975 /* ramp-down */ | |
1976 { 0, 11, 31, 31, 31, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1977 }, | |
1978 { /* profile 1 */ | |
1979 /* ramp-up */ | |
1980 { 0, 0, 0, 0, 0, 0, 1, 1, 7, 16, 28, 31, 31, 13, 0, 0}, | |
1981 /* ramp-down */ | |
1982 { 0, 8, 31, 31, 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1983 }, | |
1984 { /* profile 2 */ | |
1985 /* ramp-up */ | |
1986 { 0, 0, 0, 0, 0, 0, 1, 1, 8, 16, 29, 31, 31, 11, 0, 0}, | |
1987 /* ramp-down */ | |
1988 { 0, 8, 28, 31, 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1989 }, | |
1990 { /* profile 3 */ | |
1991 /* ramp-up */ | |
1992 { 0, 0, 0, 0, 0, 0, 2, 0, 6, 18, 28, 31, 31, 12, 0, 0}, | |
1993 /* ramp-down */ | |
1994 { 0, 9, 24, 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1995 }, | |
1996 { /* profile 4 */ | |
1997 /* ramp-up */ | |
1998 { 0, 0, 0, 0, 0, 0, 3, 0, 5, 19, 31, 31, 31, 8, 0, 0}, | |
1999 /* ramp-down */ | |
2000 { 0, 7, 31, 31, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2001 }, | |
2002 { /* profile 5 */ | |
2003 /* ramp-up */ | |
2004 { 0, 0, 0, 0, 0, 0, 2, 0, 7, 18, 31, 31, 31, 8, 0, 0}, | |
2005 /* ramp-down */ | |
2006 { 0, 7, 31, 31, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2007 }, | |
2008 { /* profile 6 */ | |
2009 /* ramp-up */ | |
2010 { 0, 0, 0, 0, 0, 0, 3, 0, 5, 20, 31, 31, 31, 7, 0, 0}, | |
2011 /* ramp-down */ | |
2012 { 0, 10, 21, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2013 }, | |
2014 { /* profile 7 */ | |
2015 /* ramp-up */ | |
2016 { 0, 0, 0, 0, 0, 0, 4, 0, 9, 23, 22, 31, 31, 8, 0, 0}, | |
2017 /* ramp-down */ | |
2018 { 0, 9, 24, 30, 31, 30, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2019 }, | |
2020 { /* profile 8 */ | |
2021 /* ramp-up */ | |
2022 { 0, 0, 0, 0, 0, 0, 5, 0, 8, 21, 24, 31, 31, 8, 0, 0}, | |
2023 /* ramp-down */ | |
2024 { 0, 8, 23, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2025 }, | |
2026 { /* profile 9 */ | |
2027 /* ramp-up */ | |
2028 { 0, 0, 0, 0, 0, 5, 0, 3, 1, 27, 22, 31, 31, 8, 0, 0}, | |
2029 /* ramp-down */ | |
2030 { 0, 8, 27, 25, 26, 31, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2031 }, | |
2032 { /* profile 10 */ | |
2033 /* ramp-up */ | |
2034 { 0, 0, 0, 0, 5, 0, 0, 2, 7, 22, 23, 31, 31, 7, 0, 0}, | |
2035 /* ramp-down */ | |
2036 { 0, 7, 25, 30, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2037 }, | |
2038 { /* profile 11 */ | |
2039 /* ramp-up */ | |
2040 { 0, 0, 0, 0, 0, 5, 0, 4, 8, 21, 21, 31, 31, 7, 0, 0}, | |
2041 /* ramp-down */ | |
2042 { 0, 8, 21, 31, 31, 31, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2043 }, | |
2044 { /* profile 12 */ | |
2045 /* ramp-up */ | |
2046 { 0, 0, 0, 0, 0, 7, 0, 0, 12, 22, 25, 31, 27, 4, 0, 0}, | |
2047 /* ramp-down */ | |
2048 { 0, 9, 12, 21, 31, 31, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2049 }, | |
2050 { /* profile 13 */ | |
2051 /* ramp-up */ | |
2052 { 0, 0, 0, 0, 0, 0, 7, 0, 8, 15, 31, 31, 31, 5, 0, 0}, | |
2053 /* ramp-down */ | |
2054 { 0, 6, 14, 23, 31, 31, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2055 }, | |
2056 { /* profile 14 */ | |
2057 /* ramp-up */ | |
2058 { 0, 0, 0, 0, 0, 20, 0, 0, 8, 15, 14, 31, 31, 9, 0, 0}, | |
2059 /* ramp-down */ | |
2060 { 0, 7, 31, 31, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2061 }, | |
2062 { /* profile 15 */ | |
2063 /* ramp-up */ | |
2064 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2065 /* ramp-down */ | |
2066 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2067 }, | |
2068 #endif | |
2069 }, | |
2070 { /* Tx temperature compensation */ | |
2071 #if (ORDER2_TX_TEMP_CAL==1) | |
2072 { -11, 0, 0, 0 }, | |
2073 { +9, 0, 0, 0 }, | |
2074 { +39, 0, 0, 0 }, | |
2075 { +59, 0, 0, 0 }, | |
2076 { 127, 0, 0, 0 } | |
2077 #else | |
2078 { -11, 0 }, | |
2079 { +9, 0 }, | |
2080 { +39, 0 }, | |
2081 { +59, 0 }, | |
2082 { 127, 0 } | |
2083 #endif | |
2084 }, | |
2085 }, | |
2086 //IQ swap | |
2087 SWAP_IQ_GSM850, | |
2088 }; | |
2089 | |
2090 const T_RF_BAND rf_1900 = { | |
2091 { /* Rx structure */ | |
2092 { /* T_RX_CAL_PARAMS */ | |
2093 200, | |
2094 40, | |
2095 40, | |
2096 44, | |
2097 }, | |
2098 { /* T_RF_AGC_BANDs */ | |
2099 { 548, 0}, | |
2100 { 622, 0}, | |
2101 { 680, 0}, | |
2102 { 745, 0}, | |
2103 { 795, 0}, | |
2104 { 810, 0}, | |
2105 { 0, 0}, | |
2106 { 0, 0}, | |
2107 { 0, 0}, | |
2108 { 0, 0}, | |
2109 }, | |
2110 { /* Rx temperature compensation */ | |
2111 { -15, 0}, | |
2112 { -5, 0}, | |
2113 { 6, 0}, | |
2114 { 16, 0}, | |
2115 { 25, 0}, | |
2116 { 35, 0}, | |
2117 { 45, 0}, | |
2118 { 56, 0}, | |
2119 { 66, 0}, | |
2120 { 75, 0}, | |
2121 { 100, 0}, | |
2122 }, | |
2123 }, | |
2124 { /* Tx structure */ | |
2125 { /* levels */ | |
2126 { 429, 0, 0}, /* 0 */ | |
2127 { 353, 1, 0}, /* 1 */ | |
2128 { 302, 2, 0}, /* 2 */ | |
2129 { 246, 3, 0}, /* 3 */ | |
2130 { 200, 4, 0}, /* 4 */ | |
2131 { 164, 5, 0}, /* 5 */ | |
2132 { 135, 6, 0}, /* 6 */ | |
2133 { 111, 7, 0}, /* 7 */ | |
2134 { 91, 8, 0}, /* 8 */ | |
2135 { 75, 9, 0}, /* 9 */ | |
2136 { 60, 10, 0}, /* 10 */ | |
2137 { 49, 11, 0}, /* 11 */ | |
2138 { 40, 12, 0}, /* 12 */ | |
2139 { 33, 13, 0}, /* 13 */ | |
2140 { 26, 14, 0}, /* 14 */ | |
2141 { 26, 15, 0}, /* 15 */ | |
2142 { 26, 15, 0}, /* 16 */ | |
2143 { 26, 15, 0}, /* 17 */ | |
2144 { 26, 15, 0}, /* 18 */ | |
2145 { 26, 15, 0}, /* 19 */ | |
2146 { 26, 15, 0}, /* 20 */ | |
2147 { 26, 15, 0}, /* 21 */ | |
2148 { 26, 15, 0}, /* 22 */ | |
2149 { 26, 15, 0}, /* 23 */ | |
2150 { 26, 15, 0}, /* 24 */ | |
2151 { 26, 15, 0}, /* 25 */ | |
2152 { 26, 15, 0}, /* 26 */ | |
2153 { 26, 15, 0}, /* 27 */ | |
2154 { 26, 15, 0}, /* 28 */ | |
2155 { 26, 0, 0}, /* 29 */ | |
2156 { 26, 0, 0}, /* 30 */ | |
2157 { 26, 0, 0}, /* 31 */ | |
2158 }, | |
2159 { /* channel calibration tables */ | |
2160 { /* calibration table 0 */ | |
2161 { 554, 128}, | |
2162 { 722, 128}, | |
2163 { 746, 128}, | |
2164 { 774, 128}, | |
2165 { 808, 128}, | |
2166 { 810, 128}, | |
2167 { 810, 128}, | |
2168 { 810, 128}, | |
2169 }, | |
2170 { /* calibration table 1 */ | |
2171 { 554, 128}, | |
2172 { 722, 128}, | |
2173 { 746, 128}, | |
2174 { 774, 128}, | |
2175 { 808, 128}, | |
2176 { 810, 128}, | |
2177 { 810, 128}, | |
2178 { 810, 128}, | |
2179 }, | |
2180 { /* calibration table 2 */ | |
2181 { 554, 128}, | |
2182 { 722, 128}, | |
2183 { 746, 128}, | |
2184 { 774, 128}, | |
2185 { 808, 128}, | |
2186 { 810, 128}, | |
2187 { 810, 128}, | |
2188 { 810, 128}, | |
2189 }, | |
2190 { /* calibration table 3 */ | |
2191 { 554, 128}, | |
2192 { 722, 128}, | |
2193 { 746, 128}, | |
2194 { 774, 128}, | |
2195 { 808, 128}, | |
2196 { 810, 128}, | |
2197 { 810, 128}, | |
2198 { 810, 128}, | |
2199 }, | |
2200 }, | |
2201 { /* ramps */ | |
2202 #if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) | |
2203 /* from Motorola R87.2.1.03.m0 fw for the C11x family */ | |
2204 { /* profile 0 */ | |
2205 /* ramp-up */ | |
2206 { 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 17, 0, 0}, | |
2207 /* ramp-down */ | |
2208 { 31, 31, 15, 25, 8, 10, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2209 }, | |
2210 { /* profile 1 */ | |
2211 /* ramp-up */ | |
2212 { 31, 8, 0, 0, 0, 0, 0, 0, 0, 0, 5, 31, 31, 22, 0, 0}, | |
2213 /* ramp-down */ | |
2214 { 31, 21, 31, 20, 4, 0, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2215 }, | |
2216 { /* profile 2 */ | |
2217 /* ramp-up */ | |
2218 { 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 6, 31, 31, 13, 0, 0}, | |
2219 /* ramp-down */ | |
2220 { 30, 31, 24, 31, 10, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2221 }, | |
2222 { /* profile 3 */ | |
2223 /* ramp-up */ | |
2224 { 31, 24, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 8, 0, 0}, | |
2225 /* ramp-down */ | |
2226 { 31, 31, 19, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2227 }, | |
2228 { /* profile 4 */ | |
2229 /* ramp-up */ | |
2230 { 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 6, 31, 22, 5, 0, 0}, | |
2231 /* ramp-down */ | |
2232 { 31, 31, 14, 24, 5, 13, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2233 }, | |
2234 { /* profile 5 */ | |
2235 /* ramp-up */ | |
2236 { 31, 31, 10, 0, 0, 0, 0, 0, 0, 0, 0, 31, 25, 0, 0, 0}, | |
2237 /* ramp-down */ | |
2238 { 31, 19, 20, 8, 24, 17, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2239 }, | |
2240 { /* profile 6 */ | |
2241 /* ramp-up */ | |
2242 { 31, 30, 19, 0, 0, 0, 0, 0, 0, 0, 0, 31, 17, 0, 0, 0}, | |
2243 /* ramp-down */ | |
2244 { 2, 31, 31, 25, 17, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2245 }, | |
2246 { /* profile 7 */ | |
2247 /* ramp-up */ | |
2248 { 31, 31, 26, 0, 0, 0, 0, 0, 0, 0, 0, 31, 9, 0, 0, 0}, | |
2249 /* ramp-down */ | |
2250 { 14, 24, 25, 30, 24, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2251 }, | |
2252 { /* profile 8 */ | |
2253 /* ramp-up */ | |
2254 { 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 31, 2, 0, 0, 0}, | |
2255 /* ramp-down */ | |
2256 { 12, 17, 27, 31, 24, 13, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2257 }, | |
2258 { /* profile 9 */ | |
2259 /* ramp-up */ | |
2260 { 31, 31, 30, 10, 0, 0, 0, 0, 0, 0, 0, 25, 1, 0, 0, 0}, | |
2261 /* ramp-down */ | |
2262 { 21, 31, 31, 26, 13, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2263 }, | |
2264 { /* profile 10 */ | |
2265 /* ramp-up */ | |
2266 { 31, 31, 31, 11, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0}, | |
2267 /* ramp-down */ | |
2268 { 14, 31, 31, 28, 13, 5, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2269 }, | |
2270 { /* profile 11 */ | |
2271 /* ramp-up */ | |
2272 { 31, 31, 31, 19, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0}, | |
2273 /* ramp-down */ | |
2274 { 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2275 }, | |
2276 { /* profile 12 */ | |
2277 /* ramp-up */ | |
2278 { 31, 31, 31, 25, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0}, | |
2279 /* ramp-down */ | |
2280 { 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2281 }, | |
2282 { /* profile 13 */ | |
2283 /* ramp-up */ | |
2284 { 31, 31, 31, 29, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0}, | |
2285 /* ramp-down */ | |
2286 { 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2287 }, | |
2288 { /* profile 14 */ | |
2289 /* ramp-up */ | |
2290 { 31, 31, 31, 31, 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0}, | |
2291 /* ramp-down */ | |
2292 { 3, 16, 31, 31, 24, 14, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2293 }, | |
2294 { /* profile 15 */ | |
2295 /* ramp-up */ | |
2296 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2297 /* ramp-down */ | |
2298 { 4, 6, 21, 21, 21, 21, 15, 15, 4, 0, 0, 0, 0, 0, 0, 0}, | |
2299 }, | |
2300 #elif defined(CONFIG_TARGET_C139) | |
2301 /* from Mot C139 official fw */ | |
2302 { /* profile 0 */ | |
2303 /* ramp-up */ | |
2304 { 10, 0, 0, 0, 0, 0, 0, 0, 6, 15, 31, 31, 23, 12, 0, 0}, | |
2305 /* ramp-down */ | |
2306 { 31, 31, 27, 27, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2307 }, | |
2308 { /* profile 1 */ | |
2309 /* ramp-up */ | |
2310 { 10, 0, 0, 0, 0, 0, 0, 0, 6, 15, 31, 31, 23, 12, 0, 0}, | |
2311 /* ramp-down */ | |
2312 { 31, 31, 27, 27, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2313 }, | |
2314 { /* profile 2 */ | |
2315 /* ramp-up */ | |
2316 { 10, 0, 0, 0, 0, 0, 0, 0, 6, 15, 31, 31, 23, 12, 0, 0}, | |
2317 /* ramp-down */ | |
2318 { 31, 31, 27, 27, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2319 }, | |
2320 { /* profile 3 */ | |
2321 /* ramp-up */ | |
2322 { 10, 0, 0, 0, 0, 0, 0, 0, 6, 15, 31, 31, 23, 12, 0, 0}, | |
2323 /* ramp-down */ | |
2324 { 31, 31, 27, 27, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2325 }, | |
2326 { /* profile 4 */ | |
2327 /* ramp-up */ | |
2328 { 10, 0, 0, 0, 0, 0, 0, 0, 6, 15, 31, 31, 23, 12, 0, 0}, | |
2329 /* ramp-down */ | |
2330 { 31, 31, 27, 27, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2331 }, | |
2332 { /* profile 5 */ | |
2333 /* ramp-up */ | |
2334 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
2335 /* ramp-down */ | |
2336 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2337 }, | |
2338 { /* profile 6 */ | |
2339 /* ramp-up */ | |
2340 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
2341 /* ramp-down */ | |
2342 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2343 }, | |
2344 { /* profile 7 */ | |
2345 /* ramp-up */ | |
2346 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
2347 /* ramp-down */ | |
2348 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2349 }, | |
2350 { /* profile 8 */ | |
2351 /* ramp-up */ | |
2352 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
2353 /* ramp-down */ | |
2354 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2355 }, | |
2356 { /* profile 9 */ | |
2357 /* ramp-up */ | |
2358 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
2359 /* ramp-down */ | |
2360 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2361 }, | |
2362 { /* profile 10 */ | |
2363 /* ramp-up */ | |
2364 { 11, 0, 0, 0, 0, 0, 0, 0, 0, 15, 25, 26, 31, 10, 0, 0}, | |
2365 /* ramp-down */ | |
2366 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2367 }, | |
2368 { /* profile 11 */ | |
2369 /* ramp-up */ | |
2370 { 16, 0, 0, 0, 0, 0, 0, 0, 0, 10, 30, 31, 31, 10, 0, 0}, | |
2371 /* ramp-down */ | |
2372 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2373 }, | |
2374 { /* profile 12 */ | |
2375 /* ramp-up */ | |
2376 { 16, 0, 0, 0, 0, 0, 0, 0, 0, 10, 30, 31, 31, 10, 0, 0}, | |
2377 /* ramp-down */ | |
2378 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2379 }, | |
2380 { /* profile 13 */ | |
2381 /* ramp-up */ | |
2382 { 19, 0, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 7, 0, 0}, | |
2383 /* ramp-down */ | |
2384 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2385 }, | |
2386 { /* profile 14 */ | |
2387 /* ramp-up */ | |
2388 { 23, 0, 0, 0, 0, 0, 0, 0, 0, 25, 31, 31, 31, 7, 0, 0}, | |
2389 /* ramp-down */ | |
2390 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2391 }, | |
2392 { /* profile 15 */ | |
2393 /* ramp-up */ | |
2394 { 23, 0, 0, 0, 0, 0, 0, 0, 0, 25, 31, 31, 31, 7, 0, 0}, | |
2395 /* ramp-down */ | |
2396 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2397 }, | |
2398 #elif defined(CONFIG_TARGET_J100) | |
2399 /* from SE J100 fw version R1C004 */ | |
2400 { /* profile 0 */ | |
2401 /* ramp-up */ | |
2402 { 1, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0, 0}, | |
2403 /* ramp-down */ | |
2404 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2405 }, | |
2406 { /* profile 1 */ | |
2407 /* ramp-up */ | |
2408 { 1, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0, 0}, | |
2409 /* ramp-down */ | |
2410 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2411 }, | |
2412 { /* profile 2 */ | |
2413 /* ramp-up */ | |
2414 { 1, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0, 0}, | |
2415 /* ramp-down */ | |
2416 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2417 }, | |
2418 { /* profile 3 */ | |
2419 /* ramp-up */ | |
2420 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0}, | |
2421 /* ramp-down */ | |
2422 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2423 }, | |
2424 { /* profile 4 */ | |
2425 /* ramp-up */ | |
2426 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0}, | |
2427 /* ramp-down */ | |
2428 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2429 }, | |
2430 { /* profile 5 */ | |
2431 /* ramp-up */ | |
2432 { 1, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0, 0}, | |
2433 /* ramp-down */ | |
2434 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2435 }, | |
2436 { /* profile 6 */ | |
2437 /* ramp-up */ | |
2438 { 1, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0, 0}, | |
2439 /* ramp-down */ | |
2440 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2441 }, | |
2442 { /* profile 7 */ | |
2443 /* ramp-up */ | |
2444 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0}, | |
2445 /* ramp-down */ | |
2446 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2447 }, | |
2448 { /* profile 8 */ | |
2449 /* ramp-up */ | |
2450 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0}, | |
2451 /* ramp-down */ | |
2452 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2453 }, | |
2454 { /* profile 9 */ | |
2455 /* ramp-up */ | |
2456 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
2457 /* ramp-down */ | |
2458 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2459 }, | |
2460 { /* profile 10 */ | |
2461 /* ramp-up */ | |
2462 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0}, | |
2463 /* ramp-down */ | |
2464 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2465 }, | |
2466 { /* profile 11 */ | |
2467 /* ramp-up */ | |
2468 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0}, | |
2469 /* ramp-down */ | |
2470 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2471 }, | |
2472 { /* profile 12 */ | |
2473 /* ramp-up */ | |
2474 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0}, | |
2475 /* ramp-down */ | |
2476 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2477 }, | |
2478 { /* profile 13 */ | |
2479 /* ramp-up */ | |
2480 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0}, | |
2481 /* ramp-down */ | |
2482 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2483 }, | |
2484 { /* profile 14 */ | |
2485 /* ramp-up */ | |
2486 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 0, 0}, | |
2487 /* ramp-down */ | |
2488 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2489 }, | |
2490 { /* profile 15 */ | |
2491 /* ramp-up */ | |
2492 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 0, 0}, | |
2493 /* ramp-down */ | |
2494 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2495 }, | |
2496 #else | |
2497 /* TI/Openmoko version */ | |
2498 { /* profile 0 */ | |
2499 /* ramp-up */ | |
2500 { 0, 0, 0, 0, 0, 0, 7, 0, 0, 16, 31, 31, 31, 12, 0, 0}, | |
2501 /* ramp-down */ | |
2502 { 0, 13, 31, 31, 31, 18, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2503 }, | |
2504 { /* profile 1 */ | |
2505 /* ramp-up */ | |
2506 { 0, 0, 0, 0, 0, 0, 2, 3, 4, 17, 30, 31, 31, 10, 0, 0}, | |
2507 /* ramp-down */ | |
2508 { 0, 10, 31, 31, 31, 13, 9, 3, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2509 }, | |
2510 { /* profile 2 */ | |
2511 /* ramp-up */ | |
2512 { 0, 0, 0, 0, 0, 0, 4, 2, 2, 18, 31, 31, 31, 9, 0, 0}, | |
2513 /* ramp-down */ | |
2514 { 0, 10, 26, 31, 31, 16, 10, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2515 }, | |
2516 { /* profile 3 */ | |
2517 /* ramp-up */ | |
2518 { 0, 0, 0, 0, 0, 0, 3, 4, 4, 15, 31, 31, 31, 9, 0, 0}, | |
2519 /* ramp-down */ | |
2520 { 0, 9, 31, 31, 31, 13, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2521 }, | |
2522 { /* profile 4 */ | |
2523 /* ramp-up */ | |
2524 { 0, 0, 0, 0, 0, 0, 4, 3, 0, 18, 31, 31, 31, 10, 0, 0}, | |
2525 /* ramp-down */ | |
2526 { 0, 8, 31, 31, 31, 11, 9, 7, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2527 }, | |
2528 { /* profile 5 */ | |
2529 /* ramp-up */ | |
2530 { 0, 0, 0, 0, 0, 4, 3, 2, 7, 14, 25, 31, 31, 11, 0, 0}, | |
2531 /* ramp-down */ | |
2532 { 0, 14, 31, 31, 31, 9, 8, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2533 }, | |
2534 { /* profile 6 */ | |
2535 /* ramp-up */ | |
2536 { 0, 0, 0, 0, 0, 7, 1, 3, 10, 12, 25, 31, 31, 8, 0, 0}, | |
2537 /* ramp-down */ | |
2538 { 0, 7, 30, 31, 31, 14, 4, 6, 5, 0, 0, 0, 0, 0, 0, 0}, | |
2539 }, | |
2540 { /* profile 7 */ | |
2541 /* ramp-up */ | |
2542 { 0, 0, 0, 0, 3, 5, 0, 5, 8, 12, 26, 31, 31, 7, 0, 0}, | |
2543 /* ramp-down */ | |
2544 { 0, 7, 31, 31, 31, 15, 0, 8, 5, 0, 0, 0, 0, 0, 0, 0}, | |
2545 }, | |
2546 { /* profile 8 */ | |
2547 /* ramp-up */ | |
2548 { 0, 0, 0, 0, 0, 9, 0, 3, 10, 16, 21, 31, 31, 7, 0, 0}, | |
2549 /* ramp-down */ | |
2550 { 0, 11, 28, 31, 27, 10, 11, 0, 10, 0, 0, 0, 0, 0, 0, 0}, | |
2551 }, | |
2552 { /* profile 9 */ | |
2553 /* ramp-up */ | |
2554 { 0, 0, 0, 0, 0, 10, 0, 6, 9, 15, 22, 29, 31, 6, 0, 0}, | |
2555 /* ramp-down */ | |
2556 { 0, 9, 22, 31, 31, 12, 5, 0, 18, 0, 0, 0, 0, 0, 0, 0}, | |
2557 }, | |
2558 { /* profile 10 */ | |
2559 /* ramp-up */ | |
2560 { 0, 0, 0, 0, 14, 0, 0, 4, 10, 20, 21, 29, 24, 6, 0, 0}, | |
2561 /* ramp-down */ | |
2562 { 0, 8, 28, 29, 26, 14, 6, 0, 17, 0, 0, 0, 0, 0, 0, 0}, | |
2563 }, | |
2564 { /* profile 11 */ | |
2565 /* ramp-up */ | |
2566 { 0, 0, 0, 0, 16, 0, 3, 5, 8, 16, 31, 28, 18, 3, 0, 0}, | |
2567 /* ramp-down */ | |
2568 { 0, 6, 18, 26, 31, 16, 9, 7, 0, 15, 0, 0, 0, 0, 0, 0}, | |
2569 }, | |
2570 { /* profile 12 */ | |
2571 /* ramp-up */ | |
2572 { 0, 0, 0, 0, 19, 0, 3, 6, 8, 21, 24, 31, 14, 2, 0, 0}, | |
2573 /* ramp-down */ | |
2574 { 0, 0, 12, 31, 31, 27, 4, 0, 23, 0, 0, 0, 0, 0, 0, 0}, | |
2575 }, | |
2576 { /* profile 13 */ | |
2577 /* ramp-up */ | |
2578 { 0, 0, 0, 0, 0, 14, 14, 0, 0, 24, 31, 31, 14, 0, 0, 0}, | |
2579 /* ramp-down */ | |
2580 { 0, 0, 11, 31, 31, 22, 11, 3, 19, 0, 0, 0, 0, 0, 0, 0}, | |
2581 }, | |
2582 { /* profile 14 */ | |
2583 /* ramp-up */ | |
2584 { 0, 0, 0, 0, 0, 30, 1, 4, 8, 18, 31, 31, 5, 0, 0, 0}, | |
2585 /* ramp-down */ | |
2586 { 0, 0, 8, 31, 31, 22, 5, 0, 31, 0, 0, 0, 0, 0, 0, 0}, | |
2587 }, | |
2588 { /* profile 15 */ | |
2589 /* ramp-up */ | |
2590 { 0, 0, 0, 0, 0, 30, 1, 4, 8, 18, 31, 31, 5, 0, 0, 0}, | |
2591 /* ramp-down */ | |
2592 { 0, 0, 8, 31, 31, 22, 5, 0, 31, 0, 0, 0, 0, 0, 0, 0}, | |
2593 }, | |
2594 #endif | |
2595 }, | |
2596 { /* Tx temperature compensation */ | |
2597 #if (ORDER2_TX_TEMP_CAL==1) | |
2598 { -11, 0, 0, 0 }, | |
2599 { +9, 0, 0, 0 }, | |
2600 { +39, 0, 0, 0 }, | |
2601 { +59, 0, 0, 0 }, | |
2602 { 127, 0, 0, 0 } | |
2603 #else | |
2604 { -11, 0 }, | |
2605 { +9, 0 }, | |
2606 { +39, 0 }, | |
2607 { +59, 0 }, | |
2608 { 127, 0 } | |
2609 #endif | |
2610 }, | |
2611 }, | |
2612 //IQ swap | |
2613 SWAP_IQ_PCS | |
2614 }; | |
2615 | |
2616 /*------------------------------------------*/ | |
2617 /* ABB Initialization words | |
2618 /*------------------------------------------*/ | |
2619 #if (ANLG_FAM == 1) | |
2620 UWORD16 abb[ABB_TABLE_SIZE] = | |
2621 { | |
2622 C_AFCCTLADD, // Value at reset | |
2623 C_VBUCTRL, // Uplink gain amp 0dB, Sidetone gain to mute | |
2624 C_VBDCTRL, // Downlink gain amp 0dB, Volume control 0 dB | |
2625 C_BBCTRL, // value at reset | |
2626 C_APCOFF, // value at reset | |
2627 C_BULIOFF, // value at reset | |
2628 C_BULQOFF, // value at reset | |
2629 C_DAI_ON_OFF, // value at reset | |
2630 C_AUXDAC, // value at reset | |
2631 C_VBCTRL, // VULSWITCH=0, VDLAUX=1, VDLEAR=1 | |
2632 C_APCDEL1 // value at reset | |
2633 }; | |
2634 #elif (ANLG_FAM == 2) | |
2635 UWORD16 abb[ABB_TABLE_SIZE] = | |
2636 { | |
2637 C_AFCCTLADD, | |
2638 C_VBUCTRL, | |
2639 C_VBDCTRL, | |
2640 C_BBCTRL, | |
2641 C_BULGCAL, | |
2642 C_APCOFF, | |
2643 C_BULIOFF, | |
2644 C_BULQOFF, | |
2645 C_DAI_ON_OFF, | |
2646 C_AUXDAC, | |
2647 C_VBCTRL1, | |
2648 C_VBCTRL2, | |
2649 C_APCDEL1, | |
2650 C_APCDEL2 | |
2651 }; | |
2652 | |
2653 #elif (ANLG_FAM == 3) | |
2654 UWORD16 abb[ABB_TABLE_SIZE] = | |
2655 { | |
2656 C_AFCCTLADD, | |
2657 C_VBUCTRL, | |
2658 C_VBDCTRL, | |
2659 C_BBCTRL, | |
2660 C_BULGCAL, | |
2661 C_APCOFF, | |
2662 C_BULIOFF, | |
2663 C_BULQOFF, | |
2664 C_DAI_ON_OFF, | |
2665 C_AUXDAC, | |
2666 C_VBCTRL1, | |
2667 C_VBCTRL2, | |
2668 C_APCDEL1, | |
2669 C_APCDEL2, | |
2670 C_VBPOP, | |
2671 C_VAUDINITD, | |
2672 C_VAUDCR, | |
2673 C_VAUOCR, | |
2674 C_VAUSCR, | |
2675 C_VAUDPLL | |
2676 }; | |
2677 | |
2678 #endif | |
2679 | |
2680 /*------------------------------------------*/ | |
2681 /* Gain table */ | |
2682 /* specified in the TRF6053 spec */ | |
2683 /* 2 dB steps - LNA always ON */ | |
2684 /*------------------------------------------*/ | |
2685 UWORD16 AGC_TABLE[AGC_TABLE_SIZE] = | |
2686 { | |
2687 0x00, //reserved | |
2688 0x01, //reserved | |
2689 0x02, //reserved | |
2690 0x03, //reserved | |
2691 0x04, //reserved | |
2692 0x05, //reserved | |
2693 0x06, //14 dB | |
2694 0x07, //16 | |
2695 0x08, //18 | |
2696 0x09, //20 | |
2697 0x0a, //22 | |
2698 0x0b, //24 | |
2699 0x0c, //26 | |
2700 0x0d, //28 | |
2701 0x0e, //30 | |
2702 0x0f, //32 | |
2703 0x10, //34 | |
2704 0x11, //36 | |
2705 0x12, //38 | |
2706 0x13, //40 | |
2707 /* | |
2708 0x14, //reserved | |
2709 0x15, //reserved | |
2710 0x16, //reserved | |
2711 0x17, //reserved | |
2712 0x18, //reserved | |
2713 0x19, //reserved | |
2714 0x1a, //reserved | |
2715 0x1b, //reserved | |
2716 0x1c, //reserved | |
2717 0x1d, //reserved | |
2718 0x1e, //reserved | |
2719 0x1f, //reserved | |
2720 */ | |
2721 }; | |
2722 | |
2723 // structure for ADC conversion (4 Internal channel + 5 Ext channels max.) | |
2724 T_ADC adc; | |
2725 | |
2726 // MADC calibration structure | |
2727 T_ADCCAL adc_cal= | |
2728 { // a: 0,..,8 | |
2729 // b, 0,..,8 | |
2730 // cal_a = 4*1750 is the Typical value 1.75 V ref voltage , divide by 4 | |
2731 7000, 8750, 7000, 7000, 7000, 7000, 7000, 256, 7000, | |
2732 0, 0, 0, 0, 0, 0, 0, 0, 0 | |
2733 }; | |
2734 | |
2735 #if (BOARD == 41) | |
2736 // table which converts ADC value into RF temperature | |
2737 T_TEMP temperature[TEMP_TABLE_SIZE] = | |
2738 { | |
2739 // Temperature compensation for EVARITA - S.Glock, J.Demay 04/23/2003 | |
2740 582, -40, | |
2741 640, -10, | |
2742 698, 25, | |
2743 756, 60, | |
2744 815, 90 | |
2745 }; | |
2746 #else | |
2747 // table which converts ADC value into RF temperature | |
2748 T_TEMP temperature[TEMP_TABLE_SIZE] = | |
2749 { | |
2750 7, -35, | |
2751 7, -34, | |
2752 8, -33, | |
2753 8, -32, | |
2754 9, -31, | |
2755 9, -30, | |
2756 10, -29, | |
2757 11, -28, | |
2758 11, -27, | |
2759 12, -26, | |
2760 13, -25, | |
2761 14, -24, | |
2762 14, -23, | |
2763 15, -22, | |
2764 16, -21, | |
2765 17, -20, | |
2766 18, -19, | |
2767 19, -18, | |
2768 21, -17, | |
2769 22, -16, | |
2770 23, -15, | |
2771 24, -14, | |
2772 26, -13, | |
2773 27, -12, | |
2774 29, -11, | |
2775 30, -10, | |
2776 32, -9, | |
2777 34, -8, | |
2778 36, -7, | |
2779 37, -6, | |
2780 39, -5, | |
2781 41, -4, | |
2782 44, -3, | |
2783 46, -2, | |
2784 48, -1, | |
2785 51, 0, | |
2786 53, 1, | |
2787 56, 2, | |
2788 59, 3, | |
2789 61, 4, | |
2790 64, 5, | |
2791 68, 6, | |
2792 71, 7, | |
2793 74, 8, | |
2794 78, 9, | |
2795 81, 10, | |
2796 85, 11, | |
2797 89, 12, | |
2798 93, 13, | |
2799 97, 14, | |
2800 101, 15, | |
2801 105, 16, | |
2802 110, 17, | |
2803 115, 18, | |
2804 119, 19, | |
2805 124, 20, | |
2806 130, 21, | |
2807 135, 22, | |
2808 140, 23, | |
2809 146, 24, | |
2810 152, 25, | |
2811 158, 26, | |
2812 164, 27, | |
2813 170, 28, | |
2814 176, 29, | |
2815 183, 30, | |
2816 190, 31, | |
2817 197, 32, | |
2818 204, 33, | |
2819 211, 34, | |
2820 219, 35, | |
2821 226, 36, | |
2822 234, 37, | |
2823 242, 38, | |
2824 250, 39, | |
2825 259, 40, | |
2826 267, 41, | |
2827 276, 42, | |
2828 285, 43, | |
2829 294, 44, | |
2830 303, 45, | |
2831 312, 46, | |
2832 322, 47, | |
2833 331, 48, | |
2834 341, 49, | |
2835 351, 50, | |
2836 361, 51, | |
2837 371, 52, | |
2838 382, 53, | |
2839 392, 54, | |
2840 403, 55, | |
2841 413, 56, | |
2842 424, 57, | |
2843 435, 58, | |
2844 446, 59, | |
2845 458, 60, | |
2846 469, 61, | |
2847 480, 62, | |
2848 492, 63, | |
2849 503, 64, | |
2850 515, 65, | |
2851 527, 66, | |
2852 539, 67, | |
2853 550, 68, | |
2854 562, 69, | |
2855 574, 70, | |
2856 586, 71, | |
2857 598, 72, | |
2858 611, 73, | |
2859 623, 74, | |
2860 635, 75, | |
2861 647, 76, | |
2862 659, 77, | |
2863 671, 78, | |
2864 683, 79, | |
2865 696, 80, | |
2866 708, 81, | |
2867 720, 82, | |
2868 732, 83, | |
2869 744, 84, | |
2870 756, 85, | |
2871 768, 86, | |
2872 780, 87, | |
2873 792, 88, | |
2874 804, 89, | |
2875 816, 90, | |
2876 827, 91, | |
2877 839, 92, | |
2878 851, 93, | |
2879 862, 94, | |
2880 873, 95 | |
2881 }; | |
2882 #endif |