annotate gsm-fw/L1/cust0/l1_rf35.h @ 992:a7b0b426f9ca

target-utils: boot ROM UART autodetection revamped The new implementation should work with both the familiar Calypso C035 boot ROM version found in our regular targets as well as the older Calypso F741979B version found on the vintage D-Sample board.
author Mychaela Falconia <falcon@ivan.Harhan.ORG>
date Wed, 30 Dec 2015 21:28:41 +0000
parents 26472940e5b0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
1 /************* Revision Controle System Header *************
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
2 * GSM Layer 1 software
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
3 *
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
4 * Filename l1_rf35.h
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
5 * Copyright 2003 (C) Texas Instruments
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
6 *
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
7 ************* Revision Controle System Header *************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
8
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
9 #ifndef __L1_RF_H__
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
10 #define __L1_RF_H__
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
11
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
12 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
13 /* SYNTHESIZER setup time... */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
14 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
15 #define RX_SYNTH_SETUP_TIME (PROVISION_TIME - TRF_R1)//RX Synthesizer setup time in qbit.
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
16 #define TX_SYNTH_SETUP_TIME (- TRF_T1) //TX Synthesizer setup time in qbit.
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
17
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
18 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
19 /* time for TPU scenario ending... */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
20 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
21 #define RX_TPU_SCENARIO_ENDING DLT_1B - SL_SU_DELAY2 // execution time of BDLENA down
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
22 // minus serialization time
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
23 #define TX_TPU_SCENARIO_ENDING DLT_1B - SL_SU_DELAY2 // execution time of BULON down
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
24 // minus serialization time
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
25
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
26 /******************************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
27 /* TXPWR configuration... */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
28 /* Fixed TXPWR value when GSM management is disabled. */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
29 /******************************************************/
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
30 #if ((ANALOG == 1) || (ANALOG == 2))
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
31 // #define FIXED_TXPWR 0x3f12 // TXPWR=10, value=252
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
32 // #define FIXED_TXPWR 0x0a12 // TXPWR=15, value=40
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
33 #define FIXED_TXPWR 0x1a12 // TXPWR=15, EVA4, CRTP1
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
34 #endif
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
35
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
36
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
37 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
38 /* ANALOG delay (in qbits) */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
39 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
40 #define DL_DELAY_RF 1 // time spent in the Downlink global RF chain by the modulated signal
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
41 #define UL_DELAY_1RF 5 // time spent in the first uplink RF block
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
42 #define UL_DELAY_2RF 0 // time spent in the second uplink RF block
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
43 #if (ANALOG == 1)
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
44 #define UL_ABB_DELAY 6 // modulator input to output delay
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
45 #endif
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
46 #if (ANALOG == 2)
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
47 #define UL_ABB_DELAY 3 // modulator input to output delay
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
48 #endif
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
49
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
50 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
51 /* TX Propagation delay... */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
52 /************************************/
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
53 #if ((ANALOG == 1) || (ANALOG == 2))
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
54 #define PRG_TX (DL_DELAY_RF + UL_DELAY_2RF + (GUARD_BITS*4) + UL_DELAY_1RF + UL_ABB_DELAY) // = 40 + NB_MARGIN
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
55 #endif
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
56
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
57 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
58 /* Initial value for APC DELAY */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
59 /************************************/
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
60 #if (ANALOG == 1)
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
61 //#define APCDEL_DOWN (32 - GUARD_BITS*4) // minimum value: 2
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
62 #define APCDEL_DOWN 2 // minimum value: 2
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
63 #define APCDEL_UP (6+5) // minimum value: 6
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
64 #endif
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
65 #if (ANALOG == 2)
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
66 //#define APCDEL_DOWN (32 - GUARD_BITS*4) // minimum value: 2
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
67 #define APCDEL_DOWN 2 // minimum value: 2
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
68 #define APCDEL_UP (6+2) // minimum value: 6
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
69 #endif
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
70
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
71 #define GUARD_BITS 7
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
72
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
73 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
74 /* Initial value for AFC... */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
75 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
76 #define EEPROM_AFC ((-55)*8) // F13.3 required!!!!! (default : -952*8, initial deviation of -2400 forced)
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
77
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
78 #define SETUP_AFC_AND_RF 2 // time to have a stable output of the AFC (in Frames)
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
79 // !! minimum Value : 1 Frame due to the fact there is no
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
80 // hisr() in the first wake-up frame !!!!
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
81
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
82 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
83 /* Baseband registers */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
84 /************************************/
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
85 #if (ANALOG == 1)
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
86 // Omega registers values will be programmed at 1st DSP communication interrupt
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
87 #define C_DEBUG1 0x0000 // Enable f_tx delay of 400000 cyc DEBUG
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
88 #define C_AFCCTLADD 0x002a | TRUE // Value at reset
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
89 #define C_VBUCTRL 0x418e | TRUE // Uplink gain amp 0dB, Sidetone gain to mute
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
90 #define C_VBDCTRL 0x098c | TRUE // Downlink gain amp 0dB, Volume control 0 dB
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
91 #define C_BBCTRL 0x604c | TRUE // OUTLEV1=OUTLEV1=SELVMID1=SELVMID0=1 for B-sample 'modified'
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
92 #define C_APCOFF 0x1016 | (0x34 << 6)/*(0x3c << 6)*/ | TRUE // value at reset-Changed from 0x0016- CR 27.12
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
93 #define C_BULIOFF 0x3fc4 | TRUE // value at reset
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
94 #define C_BULQOFF 0x3fc6 | TRUE // value at reset
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
95 #define C_DAI_ON_OFF 0x0000 // value at reset
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
96 #define C_AUXDAC 0x0018 | TRUE // value at reset
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
97 #define C_VBCTRL 0x02d0 | TRUE // VULSWITCH=1, VDLAUX=1, VDLEAR=1
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
98 // BULRUDEL will be initialized on rach only ....
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
99 #define C_APCDEL1 (((APCDEL_DOWN-2)<<11) | ((APCDEL_UP-6)<<6) | 0x0004)
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
100 #define C_BBCTRL 0x604c | TRUE // OUTLEV1=OUTLEV1=SELVMID1=SELVMID0=1 for B-sample 'modified'
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
101 #endif
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
102 #if (ANALOG == 2)
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
103 // IOTA registers values will be programmed at 1st DSP communication interrupt
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
104 #define C_DEBUG1 0x0001 // Enable f_tx delay of 400000 cyc DEBUG
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
105 #define C_AFCCTLADD 0x002a | TRUE // Value at reset
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
106 #define C_VBUCTRL 0x418e | TRUE // No uplink mute, Side tone mute, PGA_UL 0dB
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
107 #define C_VBDCTRL 0x098c | TRUE // PGA_DL 0dB, Volume 0dB
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
108 #define C_APCOFF 0x1016 | TRUE // x2 slope 128
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
109 #define C_BULIOFF 0x3fc4 | TRUE // value at reset
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
110 #define C_BULQOFF 0x3fc6 | TRUE // value at reset
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
111 #define C_DAI_ON_OFF 0x0000 // value at reset
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
112 #define C_AUXDAC 0x0018 | TRUE // value at reset
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
113 #define C_VBCTRL 0x02d0 | TRUE // VULSWITCH=1, VDLAUX=1, VDLEAR=1
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
114 #define C_VBCTRL2 0x0016 | TRUE // MICBIASEL=0, VDLHSO=0, MICAUX=0
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
115
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
116 // BULRUDEL will be initialized on rach only ....
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
117 #define C_APCDEL1 (((APCDEL_DOWN-2)<<11) | ((APCDEL_UP-6)<<6) | 0x0004)
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
118 #define C_APCDEL2 0x0034
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
119 #define C_BBCTRL 0x304c | TRUE // Internal autocalibration, Output common mode=1.35V
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
120 // Monoslot, Vpp=8/15*Vref
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
121 #define C_BULGCAL 0x001c | TRUE // IAG=0 dB, QAG=0 dB
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
122 #endif
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
123
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
124 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
125 /* Automatic frequency compensation */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
126 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
127 /********************* C_Psi_sta definition *****************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
128 /* C_Psi_sta = (2*pi*Fr) / (N * Fb) */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
129 /* (1) = (2*pi*V*ppm*0.9) / (N*V*Fb) */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
130 /* regarding Vega V/N = 2.4/4096 */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
131 /* regarding VCO ppm/V = 16 / 1 (average slope of the VCO) */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
132 /* (1) = (2*pi*2.4*16*0.9) / (4096*1*270.83) */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
133 /* = 0.000195748 */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
134 /* C_Psi_sta_inv = 1/C_Psi_sta = 5108 */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
135 /************************************************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
136 #define C_Psi_sta_inv 11677L // (1/C_Psi_sta)
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
137 #define C_Psi_st 4L // C_Psi_sta * 0.8 F0.16
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
138 #define C_Psi_st_32 294257L // F0.32
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
139 #define C_Psi_st_inv 14596L // (1/C_Psi_st)
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
140
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
141 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
142 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
143 WORD16 eeprom_afc;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
144 UWORD32 psi_sta_inv;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
145 UWORD32 psi_st;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
146 UWORD32 psi_st_32;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
147 UWORD32 psi_st_inv;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
148 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
149 T_AFC_PARAMS;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
150
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
151 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
152 /* Swap IQ definitions... */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
153 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
154 /* 0=No Swap, 1=Swap RX only, 2=Swap TX only, 3=Swap RX and TX */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
155 #define SWAP_IQ_GSM 0
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
156 #define SWAP_IQ_DCS 3
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
157 #define SWAP_IQ_PCS 3
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
158 #define SWAP_IQ_GSM850 0 //TBD
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
159
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
160 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
161 /* RF bands supported */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
162 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
163 #define RF_HW_BAND_SUPPORT (0x0020 | 0x0004) // radio_band_support E-GSM/DCS + PC
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
164
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
165 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
166 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
167 // typedef
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
168 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
169 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
170
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
171 /*************************************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
172 /* Define structure for apc of TX Power ******/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
173 /*************************************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
174 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
175 { // pcm-file "rf/tx/level.gsm|dcs"
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
176 UWORD16 apc; // 0..31
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
177 UWORD8 ramp_index; // 0..RF_TX_RAMP_SIZE
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
178 UWORD8 chan_cal_index; // 0..RF_TX_CHAN_CAL_TABLE_SIZE
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
179 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
180 T_TX_LEVEL;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
181
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
182 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
183 /* Automatic Gain Control */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
184 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
185 /* Define structure for sub-band definition of TX Power ******/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
186 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
187 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
188 UWORD16 upper_bound; //highest physical arfcn of the sub-band
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
189 WORD16 agc_calib; // AGC for each TXPWR
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
190 }T_RF_AGC_BAND;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
191
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
192 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
193 /* Ramp definitions */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
194 /************************************/
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
195 #if ((ANALOG == 1) || (ANALOG == 2))
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
196 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
197 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
198 UWORD8 ramp_up [16]; // Ramp-up profile
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
199 UWORD8 ramp_down [16]; // Ramp-down profile
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
200 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
201 T_TX_RAMP;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
202 #endif
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
203
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
204
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
205 // RF structure definition
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
206 //========================
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
207
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
208 enum RfRevision {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
209 RF_IGNORE = 0x0000,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
210 RF_SL2 = 0x1000,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
211 RF_GAIA_20X = 0x2000,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
212 RF_GAIA_20A = 0x2001,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
213 RF_GAIA_20B = 0x2002,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
214 RF_ATLAS_20B = 0x2020,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
215 RF_PASCAL_20 = 0x2030
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
216 };
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
217
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
218 // Number of bands supported
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
219 #define GSM_BANDS 2
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
220
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
221 #define MULTI_BAND1 0
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
222 #define MULTI_BAND2 1
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
223 // RF table sizes
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
224 #define RF_RX_CAL_CHAN_SIZE 10 // number of AGC sub-bands
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
225 #define RF_RX_CAL_TEMP_SIZE 11 // number of temperature ranges
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
226
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
227 #define RF_TX_CHAN_CAL_TABLE_SIZE 4 // channel calibration table size
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
228 #define RF_TX_NUM_SUB_BANDS 8 // number of sub-bands in channel calibration table
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
229 #define RF_TX_LEVELS_TABLE_SIZE 32 // level table size
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
230 #define RF_TX_RAMP_SIZE 16 // number of ramp definitions
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
231 #define RF_TX_CAL_TEMP_SIZE 5 // number of temperature ranges
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
232
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
233 #define AGC_TABLE_SIZE 36
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
234
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
235 #define TEMP_TABLE_SIZE 131 // number of elements in ADC->temp conversion table
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
236
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
237
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
238 // RX parameters and tables
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
239 //-------------------------
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
240
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
241 // AGC parameters and tables
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
242 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
243 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
244 UWORD16 low_agc_noise_thr;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
245 UWORD16 high_agc_sat_thr;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
246 UWORD16 low_agc;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
247 UWORD16 high_agc;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
248 UWORD8 il2agc_pwr[121];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
249 UWORD8 il2agc_max[121];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
250 UWORD8 il2agc_av[121];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
251 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
252 T_AGC;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
253
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
254 // Calibration parameters
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
255 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
256 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
257 UWORD16 g_magic;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
258 UWORD16 lna_att;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
259 UWORD16 lna_switch_thr_low;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
260 UWORD16 lna_switch_thr_high;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
261 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
262 T_RX_CAL_PARAMS;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
263
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
264 // RX temperature compensation
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
265 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
266 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
267 WORD16 temperature;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
268 WORD16 agc_calib;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
269 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
270 T_RX_TEMP_COMP;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
271
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
272 // RF RX structure
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
273 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
274 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
275 T_AGC agc;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
276 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
277 T_RF_RX; //common
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
278
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
279 // RF RX structure
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
280 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
281 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
282 T_RX_CAL_PARAMS rx_cal_params;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
283 T_RF_AGC_BAND agc_bands[RF_RX_CAL_CHAN_SIZE];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
284 T_RX_TEMP_COMP temp[RF_RX_CAL_TEMP_SIZE];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
285 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
286 T_RF_RX_BAND;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
287
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
288
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
289 // TX parameters and tables
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
290 //-------------------------
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
291
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
292 // TX temperature compensation
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
293 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
294 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
295 WORD16 temperature;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
296 WORD16 apc_calib;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
297 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
298 T_TX_TEMP_CAL;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
299
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
300 // Ramp up and ramp down delay
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
301 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
302 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
303 UWORD16 up;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
304 UWORD16 down;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
305 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
306 T_RAMP_DELAY;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
307
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
308 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
309 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
310 UWORD16 arfcn_limit;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
311 WORD16 chan_cal;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
312 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
313 T_TX_CHAN_CAL;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
314
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
315 // RF TX structure
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
316 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
317 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
318 T_RAMP_DELAY ramp_delay;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
319 UWORD8 guard_bits; // number of guard bits needed for ramp up
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
320 UWORD8 prg_tx;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
321 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
322 T_RF_TX; //common
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
323
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
324 // RF TX structure
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
325 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
326 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
327 T_TX_LEVEL levels[RF_TX_LEVELS_TABLE_SIZE];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
328 T_TX_CHAN_CAL chan_cal_table[RF_TX_CHAN_CAL_TABLE_SIZE][RF_TX_NUM_SUB_BANDS];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
329 T_TX_RAMP ramp_tables[RF_TX_RAMP_SIZE];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
330 T_TX_TEMP_CAL temp[RF_TX_CAL_TEMP_SIZE];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
331 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
332 T_RF_TX_BAND;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
333
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
334 // band structure
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
335 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
336 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
337 T_RF_RX_BAND rx;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
338 T_RF_TX_BAND tx;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
339 UWORD8 swap_iq;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
340 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
341 T_RF_BAND;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
342
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
343 // RF structure
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
344 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
345 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
346 // common for all bands
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
347 UWORD8 rf_revision;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
348 UWORD16 radio_band_support;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
349 T_RF_RX rx;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
350 T_RF_TX tx;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
351 T_AFC_PARAMS afc;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
352 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
353 T_RF;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
354
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
355 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
356 /* MADC definitions */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
357 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
358 // Omega: 5 external channels if touch screen not used, 3 otherwise
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
359 enum ADC_INDEX {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
360 ADC_VBAT,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
361 ADC_VCHARG,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
362 ADC_ICHARG,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
363 ADC_VBACKUP,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
364 ADC_BATTEMP,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
365 ADC_RFTEMP,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
366 ADC_ADC3,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
367 ADC_ADC4,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
368 ADC_ADC5,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
369 ADC_INDEX_END // ADC_INDEX_END must be the end of the enums
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
370 };
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
371
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
372 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
373 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
374 WORD16 converted[ADC_INDEX_END]; // converted
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
375 UWORD16 raw[ADC_INDEX_END]; // raw from ADC
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
376 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
377 T_ADC;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
378
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
379 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
380 /* MADC calibration */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
381 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
382 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
383 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
384 UWORD16 a[ADC_INDEX_END];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
385 WORD16 b[ADC_INDEX_END];
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
386 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
387 T_ADCCAL;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
388
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
389 // Conversion table: ADC value -> temperature
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
390 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
391 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
392 UWORD16 adc; // ADC reading is 10 bits
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
393 WORD16 temp; // temp is in approx. range -30..+80
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
394 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
395 T_TEMP;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
396
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
397 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
398 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
399 char *name;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
400 void *addr;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
401 int size;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
402 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
403 T_CONFIG_FILE;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
404
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
405 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
406 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
407 char *name; // name of ffs file suffix
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
408 T_RF_BAND *addr; // address to default flash structure
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
409 UWORD16 max_carrier; // max carrier
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
410 UWORD16 max_txpwr; // max tx power
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
411 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
412 T_BAND_CONFIG;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
413
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
414 typedef struct
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
415 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
416 UWORD8 band[GSM_BANDS]; // index to band address
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
417 UWORD8 txpwr_tp; // tx power turning point
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
418 UWORD16 first_arfcn; // first index
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
419 }
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
420 T_STD_CONFIG;
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
421
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
422 enum GSMBAND_DEF
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
423 {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
424 BAND_NONE,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
425 BAND_EGSM900,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
426 BAND_DCS1800,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
427 BAND_PCS1900,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
428 BAND_GSM850,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
429 // put new bands here
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
430 BAND_GSM900 //last entry
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
431 };
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
432
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
433
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
434 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
435 /* ABB (Omega) Initialization */
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
436 /************************************/
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
437
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
438 #define ABB_TABLE_SIZE 16
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
439
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
440 // Note that this translation is probably not needed at all. But until L1 is
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
441 // (maybe) changed to simply initialize the ABB from a table of words, we
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
442 // use this to make things more easy-readable.
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
443 #if (ANALOG == 1)
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
444 enum ABB_REGISTERS {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
445 ABB_AFCCTLADD = 0,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
446 ABB_VBUCTRL,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
447 ABB_VBDCTRL,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
448 ABB_BBCTRL,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
449 ABB_APCOFF,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
450 ABB_BULIOFF,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
451 ABB_BULQOFF,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
452 ABB_DAI_ON_OFF,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
453 ABB_AUXDAC,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
454 ABB_VBCTRL,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
455 ABB_APCDEL1
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
456 };
152
26472940e5b0 l1_rf<N>.h headers preened
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 151
diff changeset
457 #elif (ANALOG == 2)
151
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
458 enum ABB_REGISTERS {
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
459 ABB_AFCCTLADD = 0,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
460 ABB_VBUCTRL,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
461 ABB_VBDCTRL,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
462 ABB_BBCTRL,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
463 ABB_BULGCAL,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
464 ABB_APCOFF,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
465 ABB_BULIOFF,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
466 ABB_BULQOFF,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
467 ABB_DAI_ON_OFF,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
468 ABB_AUXDAC,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
469 ABB_VBCTRL,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
470 ABB_VBCTRL2,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
471 ABB_APCDEL1,
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
472 ABB_APCDEL2
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
473 };
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
474 #endif
d0de2d0a426d more L1 header files brought in
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
475 #endif