1 /****************************************************************************
2 **+-----------------------------------------------------------------------+**
4 **| Copyright(c) 1998 - 2008 Texas Instruments. All rights reserved. |**
5 **| All rights reserved. |**
7 **| Redistribution and use in source and binary forms, with or without |**
8 **| modification, are permitted provided that the following conditions |**
11 **| * Redistributions of source code must retain the above copyright |**
12 **| notice, this list of conditions and the following disclaimer. |**
13 **| * Redistributions in binary form must reproduce the above copyright |**
14 **| notice, this list of conditions and the following disclaimer in |**
15 **| the documentation and/or other materials provided with the |**
17 **| * Neither the name Texas Instruments nor the names of its |**
18 **| contributors may be used to endorse or promote products derived |**
19 **| from this software without specific prior written permission. |**
21 **| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |**
22 **| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |**
23 **| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |**
24 **| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |**
25 **| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |**
26 **| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |**
27 **| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |**
28 **| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |**
29 **| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |**
30 **| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |**
31 **| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |**
33 **+-----------------------------------------------------------------------+**
34 ****************************************************************************/
36 /** \file public_radio.h
37 * \brief Contains information element defines/structures used by the TNETxxxx and host and Radio Module.
42 =======================================================================================================================
43 R E V I S I O N H I S T O R Y
45 04/29/05 BRK 1. retrieved from ClearCase and added this rev. history
46 2. added two new entries to RadioParamType_e enum
47 3. increased MAX_RADIO_PARAM_POWER_TABLE (from 20 to 56)
48 - this is sort of a kludge, struct RadioParam_t should have used an
49 array pointer instead of an actual data block
50 06/10/05 BRK changed MAX_RADIO_PARAM_POWER_TABLE for 1251 support (sort of a KLUDGE)
51 07/15/05 BRK added RADIO_PABIAS_TABLE entry to RadioParamType_e enum
52 04/12/06 MH Added new run-time calibration state: RFPLL_CALIBRATION_NEEDED
54 Note: This code should only be edited with TAB stops set at 4
55 =======================================================================================================================
60 // radio parameter to set
62 #define MAX_RADIO_PARAM_POWER_TABLE 4*48 // cPowLmtTbl[] max size for ABG radios
64 #define MAX_RADIO_PARAM_POWER_TABLE 56 // cPowLmtTbl[] max size for BG radios
66 #define MAX_RADIO_PARAM_LEN MAX_RADIO_PARAM_POWER_TABLE
68 #define RADIO_PARAM_POWER_TABLE_ENABLE 0x01 // mask for RADIO_PARAM_POWER_ENABLES usage
69 #define RADIO_PARAM_POWER_LIMIT_TABLE_ENABLE 0x02 // mask for RADIO_PARAM_POWER_ENABLES usage
70 #define RADIO_PARAM_POWER_ADJ_TABLE_ENABLE 0x04 // mask for RADIO_PARAM_POWER_ENABLES usage
73 #define NUM_OF_SUB_BANDS 5
74 #define NUM_OF_POWER_LEVEL 4
76 #ifndef HOST_IF_ENUMS_DISABLED
77 typedef enum RadioParamType_e
79 RADIO_PARAM_POWER_TABLE = 1,
80 RADIO_PARAM_POWER_LIMIT_TABLE,
81 RADIO_PARAM_POWER_ADJ_TABLE,
82 RADIO_PARAM_POWER_ENABLES,
84 RADIO_PARAM_POWER_LEVELS,
85 MAX_RADIO_PARAM_TYPE = 0x7FFFFFFF /* force this enum to be uint32 */
88 typedef uint32 RadioParamType_e;
91 typedef struct RadioParam_t
93 RadioParamType_e parameterType;
94 int8 parameter[MAX_RADIO_PARAM_LEN];
98 /******************************************************************************
100 Name: ACX_CAL_ASSESSMENT
104 Note: OBSOLETE !!! (DO_CALIBRATION_IN_DRIVER is not defined)
106 ******************************************************************************/
110 RUNTIME_CALIBRATION_NOT_NEEDED = 1,
111 RUNTIME_CALIBRATION_NEEDED = 2,
112 RFPLL_CALIBRATION_NEEDED = 3,
113 MAX_RUNTIME_CALIBRATION_OPTIONS = 0x7FFFFFFF // force this enum to be uint32
114 } RadioRuntimeCalState_enum;
119 typedef uint32 RadioRuntimeCalState_e;
121 typedef RadioRuntimeCalState_enum RadioRuntimeCalState_e;
124 /************************************************************************/
126 /* Commands section */
128 /************************************************************************/
131 /******************************************************************************
133 Name: ACX_PLT_NVS_BUFFER_UPDATE
134 TestCmdId: TEST_CMD_PLT_GET_NVS_UPDATE_BUFFER
135 Description: This PLT function provides the all information required by
136 the upper driver in order to update the NVS image.
137 It received a parameter defining the type of update
138 information required and provides an array of elements defining
139 the data bytes to be written to the NVS image and the byte
140 offset in which they should be written.
145 ******************************************************************************/
146 #define NVS_RESULTS_MAX_NUM_OF_TABLES 4
147 #define NVS_RESULTS_MAX_UPDATE_TABLE_SIZE 100
149 typedef struct resultsBuffer_t
151 uint16 size; /* size of table*/
152 uint16 offset; /* offset in the binary image of the NVS file*/
153 uint8 data[NVS_RESULTS_MAX_UPDATE_TABLE_SIZE];/* the actual table data */
157 typedef struct PltNvsResultsBuffer_t
159 resultsBuffer_t tables[NVS_RESULTS_MAX_NUM_OF_TABLES]; /* array of structures of type containing the tables*/
160 uint8 numOfTables; /* number of tables needed to be updated*/
162 }PltNvsResultsBuffer_t;
165 typedef struct PltGainGet_t
167 uint8 TxGain; //Total TX chain gain according to the current setting
168 uint8 TxUpperBound; //the max gain setting allowed
169 uint8 TxLowerBound; //the min gain setting allowed
170 uint8 padding; /* padding to 32 bit */