164064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************
264064216a8433360745f69edddce19a606659163The Android Open Source Project**+-----------------------------------------------------------------------+**
364064216a8433360745f69edddce19a606659163The Android Open Source Project**|                                                                       |**
464064216a8433360745f69edddce19a606659163The Android Open Source Project**| Copyright(c) 1998 - 2008 Texas Instruments. All rights reserved.      |**
564064216a8433360745f69edddce19a606659163The Android Open Source Project**| All rights reserved.                                                  |**
664064216a8433360745f69edddce19a606659163The Android Open Source Project**|                                                                       |**
764064216a8433360745f69edddce19a606659163The Android Open Source Project**| Redistribution and use in source and binary forms, with or without    |**
864064216a8433360745f69edddce19a606659163The Android Open Source Project**| modification, are permitted provided that the following conditions    |**
964064216a8433360745f69edddce19a606659163The Android Open Source Project**| are met:                                                              |**
1064064216a8433360745f69edddce19a606659163The Android Open Source Project**|                                                                       |**
1164064216a8433360745f69edddce19a606659163The Android Open Source Project**|  * Redistributions of source code must retain the above copyright     |**
1264064216a8433360745f69edddce19a606659163The Android Open Source Project**|    notice, this list of conditions and the following disclaimer.      |**
1364064216a8433360745f69edddce19a606659163The Android Open Source Project**|  * Redistributions in binary form must reproduce the above copyright  |**
1464064216a8433360745f69edddce19a606659163The Android Open Source Project**|    notice, this list of conditions and the following disclaimer in    |**
1564064216a8433360745f69edddce19a606659163The Android Open Source Project**|    the documentation and/or other materials provided with the         |**
1664064216a8433360745f69edddce19a606659163The Android Open Source Project**|    distribution.                                                      |**
1764064216a8433360745f69edddce19a606659163The Android Open Source Project**|  * Neither the name Texas Instruments nor the names of its            |**
1864064216a8433360745f69edddce19a606659163The Android Open Source Project**|    contributors may be used to endorse or promote products derived    |**
1964064216a8433360745f69edddce19a606659163The Android Open Source Project**|    from this software without specific prior written permission.      |**
2064064216a8433360745f69edddce19a606659163The Android Open Source Project**|                                                                       |**
2164064216a8433360745f69edddce19a606659163The Android Open Source Project**| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS   |**
2264064216a8433360745f69edddce19a606659163The Android Open Source Project**| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT     |**
2364064216a8433360745f69edddce19a606659163The Android Open Source Project**| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |**
2464064216a8433360745f69edddce19a606659163The Android Open Source Project**| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT  |**
2564064216a8433360745f69edddce19a606659163The Android Open Source Project**| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |**
2664064216a8433360745f69edddce19a606659163The Android Open Source Project**| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT      |**
2764064216a8433360745f69edddce19a606659163The Android Open Source Project**| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |**
2864064216a8433360745f69edddce19a606659163The Android Open Source Project**| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |**
2964064216a8433360745f69edddce19a606659163The Android Open Source Project**| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT   |**
3064064216a8433360745f69edddce19a606659163The Android Open Source Project**| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |**
3164064216a8433360745f69edddce19a606659163The Android Open Source Project**| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  |**
3264064216a8433360745f69edddce19a606659163The Android Open Source Project**|                                                                       |**
3364064216a8433360745f69edddce19a606659163The Android Open Source Project**+-----------------------------------------------------------------------+**
3464064216a8433360745f69edddce19a606659163The Android Open Source Project****************************************************************************/
3564064216a8433360745f69edddce19a606659163The Android Open Source Project
3664064216a8433360745f69edddce19a606659163The Android Open Source Project/** \file public_radio.h
3764064216a8433360745f69edddce19a606659163The Android Open Source Project *  \brief Contains information element defines/structures used by the TNETxxxx and host and Radio Module.
3864064216a8433360745f69edddce19a606659163The Android Open Source Project *
3964064216a8433360745f69edddce19a606659163The Android Open Source Project */
4064064216a8433360745f69edddce19a606659163The Android Open Source Project
4164064216a8433360745f69edddce19a606659163The Android Open Source Project/*
4264064216a8433360745f69edddce19a606659163The Android Open Source Project=======================================================================================================================
4364064216a8433360745f69edddce19a606659163The Android Open Source Project                      R E V I S I O N    H I S T O R Y
4464064216a8433360745f69edddce19a606659163The Android Open Source Project
4564064216a8433360745f69edddce19a606659163The Android Open Source Project  04/29/05  BRK  1. retrieved from ClearCase and added this rev. history
4664064216a8433360745f69edddce19a606659163The Android Open Source Project                 2. added two new entries to RadioParamType_e  enum
4764064216a8433360745f69edddce19a606659163The Android Open Source Project                 3. increased MAX_RADIO_PARAM_POWER_TABLE (from 20 to 56)
4864064216a8433360745f69edddce19a606659163The Android Open Source Project                    - this is sort of a kludge, struct RadioParam_t  should have used an
4964064216a8433360745f69edddce19a606659163The Android Open Source Project                      array pointer instead of an actual data block
5064064216a8433360745f69edddce19a606659163The Android Open Source Project  06/10/05  BRK  changed MAX_RADIO_PARAM_POWER_TABLE for 1251 support (sort of a KLUDGE)
5164064216a8433360745f69edddce19a606659163The Android Open Source Project  07/15/05  BRK  added RADIO_PABIAS_TABLE entry to RadioParamType_e  enum
5264064216a8433360745f69edddce19a606659163The Android Open Source Project  04/12/06  MH   Added new run-time calibration state: RFPLL_CALIBRATION_NEEDED
5364064216a8433360745f69edddce19a606659163The Android Open Source Project
5464064216a8433360745f69edddce19a606659163The Android Open Source Project  Note: This code should only be edited with TAB stops set at 4
5564064216a8433360745f69edddce19a606659163The Android Open Source Project=======================================================================================================================
5664064216a8433360745f69edddce19a606659163The Android Open Source Project */
5764064216a8433360745f69edddce19a606659163The Android Open Source Project#ifndef PUBLIC_RADIO
5864064216a8433360745f69edddce19a606659163The Android Open Source Project#define PUBLIC_RADIO
5964064216a8433360745f69edddce19a606659163The Android Open Source Project
6064064216a8433360745f69edddce19a606659163The Android Open Source Project// radio parameter to set
6164064216a8433360745f69edddce19a606659163The Android Open Source Project #ifdef TNETW1251
6264064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_RADIO_PARAM_POWER_TABLE  4*48   // cPowLmtTbl[] max size for ABG radios
6364064216a8433360745f69edddce19a606659163The Android Open Source Project #else
6464064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_RADIO_PARAM_POWER_TABLE  56     // cPowLmtTbl[] max size for BG radios
6564064216a8433360745f69edddce19a606659163The Android Open Source Project #endif
6664064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_RADIO_PARAM_LEN          MAX_RADIO_PARAM_POWER_TABLE
6764064216a8433360745f69edddce19a606659163The Android Open Source Project
6864064216a8433360745f69edddce19a606659163The Android Open Source Project#define RADIO_PARAM_POWER_TABLE_ENABLE        0x01  // mask for RADIO_PARAM_POWER_ENABLES usage
6964064216a8433360745f69edddce19a606659163The Android Open Source Project#define RADIO_PARAM_POWER_LIMIT_TABLE_ENABLE  0x02  // mask for RADIO_PARAM_POWER_ENABLES usage
7064064216a8433360745f69edddce19a606659163The Android Open Source Project#define RADIO_PARAM_POWER_ADJ_TABLE_ENABLE    0x04  // mask for RADIO_PARAM_POWER_ENABLES usage
7164064216a8433360745f69edddce19a606659163The Android Open Source Project
7264064216a8433360745f69edddce19a606659163The Android Open Source Project
7364064216a8433360745f69edddce19a606659163The Android Open Source Project#define NUM_OF_SUB_BANDS        5
7464064216a8433360745f69edddce19a606659163The Android Open Source Project#define NUM_OF_POWER_LEVEL      4
7564064216a8433360745f69edddce19a606659163The Android Open Source Project
7664064216a8433360745f69edddce19a606659163The Android Open Source Project#ifndef HOST_IF_ENUMS_DISABLED
7764064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum RadioParamType_e
7864064216a8433360745f69edddce19a606659163The Android Open Source Project{
7964064216a8433360745f69edddce19a606659163The Android Open Source Project    RADIO_PARAM_POWER_TABLE = 1,
8064064216a8433360745f69edddce19a606659163The Android Open Source Project    RADIO_PARAM_POWER_LIMIT_TABLE,
8164064216a8433360745f69edddce19a606659163The Android Open Source Project    RADIO_PARAM_POWER_ADJ_TABLE,
8264064216a8433360745f69edddce19a606659163The Android Open Source Project    RADIO_PARAM_POWER_ENABLES,
8364064216a8433360745f69edddce19a606659163The Android Open Source Project    RADIO_PABIAS_TABLE,
8464064216a8433360745f69edddce19a606659163The Android Open Source Project	RADIO_PARAM_POWER_LEVELS,
8564064216a8433360745f69edddce19a606659163The Android Open Source Project    MAX_RADIO_PARAM_TYPE = 0x7FFFFFFF /* force this enum to be uint32 */
8664064216a8433360745f69edddce19a606659163The Android Open Source Project} RadioParamType_e;
8764064216a8433360745f69edddce19a606659163The Android Open Source Project#else
8864064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint32 RadioParamType_e;
8964064216a8433360745f69edddce19a606659163The Android Open Source Project#endif
9064064216a8433360745f69edddce19a606659163The Android Open Source Project
9164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct RadioParam_t
9264064216a8433360745f69edddce19a606659163The Android Open Source Project{
9364064216a8433360745f69edddce19a606659163The Android Open Source Project    RadioParamType_e parameterType;
9464064216a8433360745f69edddce19a606659163The Android Open Source Project    int8  parameter[MAX_RADIO_PARAM_LEN];
9564064216a8433360745f69edddce19a606659163The Android Open Source Project} RadioParam_t;
9664064216a8433360745f69edddce19a606659163The Android Open Source Project
9764064216a8433360745f69edddce19a606659163The Android Open Source Project
9864064216a8433360745f69edddce19a606659163The Android Open Source Project/******************************************************************************
9964064216a8433360745f69edddce19a606659163The Android Open Source Project
10064064216a8433360745f69edddce19a606659163The Android Open Source Project    Name:	ACX_CAL_ASSESSMENT
10164064216a8433360745f69edddce19a606659163The Android Open Source Project	Type:	Configuration
10264064216a8433360745f69edddce19a606659163The Android Open Source Project	Access:	Write Only
10364064216a8433360745f69edddce19a606659163The Android Open Source Project	Length: 4
10464064216a8433360745f69edddce19a606659163The Android Open Source Project	Note:	OBSOLETE !!! (DO_CALIBRATION_IN_DRIVER is not defined)
10564064216a8433360745f69edddce19a606659163The Android Open Source Project
10664064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/
10764064216a8433360745f69edddce19a606659163The Android Open Source Project
10864064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum
10964064216a8433360745f69edddce19a606659163The Android Open Source Project{
11064064216a8433360745f69edddce19a606659163The Android Open Source Project    RUNTIME_CALIBRATION_NOT_NEEDED = 1,
11164064216a8433360745f69edddce19a606659163The Android Open Source Project    RUNTIME_CALIBRATION_NEEDED = 2,
11264064216a8433360745f69edddce19a606659163The Android Open Source Project    RFPLL_CALIBRATION_NEEDED = 3,
11364064216a8433360745f69edddce19a606659163The Android Open Source Project    MAX_RUNTIME_CALIBRATION_OPTIONS = 0x7FFFFFFF // force this enum to be uint32
11464064216a8433360745f69edddce19a606659163The Android Open Source Project} RadioRuntimeCalState_enum;
11564064216a8433360745f69edddce19a606659163The Android Open Source Project
11664064216a8433360745f69edddce19a606659163The Android Open Source Project
11764064216a8433360745f69edddce19a606659163The Android Open Source Project
11864064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE
11964064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint32 RadioRuntimeCalState_e;
12064064216a8433360745f69edddce19a606659163The Android Open Source Project#else
12164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef RadioRuntimeCalState_enum RadioRuntimeCalState_e;
12264064216a8433360745f69edddce19a606659163The Android Open Source Project#endif
12364064216a8433360745f69edddce19a606659163The Android Open Source Project
12464064216a8433360745f69edddce19a606659163The Android Open Source Project/************************************************************************/
12564064216a8433360745f69edddce19a606659163The Android Open Source Project/*																		*/
12664064216a8433360745f69edddce19a606659163The Android Open Source Project/*							Commands section                            */
12764064216a8433360745f69edddce19a606659163The Android Open Source Project/*																		*/
12864064216a8433360745f69edddce19a606659163The Android Open Source Project/************************************************************************/
12964064216a8433360745f69edddce19a606659163The Android Open Source Project
13064064216a8433360745f69edddce19a606659163The Android Open Source Project
13164064216a8433360745f69edddce19a606659163The Android Open Source Project/******************************************************************************
13264064216a8433360745f69edddce19a606659163The Android Open Source Project
13364064216a8433360745f69edddce19a606659163The Android Open Source Project	Name:	    ACX_PLT_NVS_BUFFER_UPDATE
13464064216a8433360745f69edddce19a606659163The Android Open Source Project	TestCmdId:	TEST_CMD_PLT_GET_NVS_UPDATE_BUFFER
13564064216a8433360745f69edddce19a606659163The Android Open Source Project	Description: This PLT function provides the all information required by
13664064216a8433360745f69edddce19a606659163The Android Open Source Project					the upper driver in order to update the NVS image.
13764064216a8433360745f69edddce19a606659163The Android Open Source Project					It received a parameter defining the type of update
13864064216a8433360745f69edddce19a606659163The Android Open Source Project					information required and provides an array of elements defining
13964064216a8433360745f69edddce19a606659163The Android Open Source Project					the data bytes to be written to the NVS image and the byte
14064064216a8433360745f69edddce19a606659163The Android Open Source Project					offset in which they should be written.
14164064216a8433360745f69edddce19a606659163The Android Open Source Project	Type:	PLT
14264064216a8433360745f69edddce19a606659163The Android Open Source Project	Access:	Read Only
14364064216a8433360745f69edddce19a606659163The Android Open Source Project	Length: 420
14464064216a8433360745f69edddce19a606659163The Android Open Source Project
14564064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/
14664064216a8433360745f69edddce19a606659163The Android Open Source Project#define  NVS_RESULTS_MAX_NUM_OF_TABLES		4
14764064216a8433360745f69edddce19a606659163The Android Open Source Project#define  NVS_RESULTS_MAX_UPDATE_TABLE_SIZE 100
14864064216a8433360745f69edddce19a606659163The Android Open Source Project
14964064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct resultsBuffer_t
15064064216a8433360745f69edddce19a606659163The Android Open Source Project{
15164064216a8433360745f69edddce19a606659163The Android Open Source Project	 uint16	  size;								      /* size of table*/
15264064216a8433360745f69edddce19a606659163The Android Open Source Project     uint16   offset;							      /* offset in the binary image of the NVS file*/
15364064216a8433360745f69edddce19a606659163The Android Open Source Project     uint8    data[NVS_RESULTS_MAX_UPDATE_TABLE_SIZE];/* the actual table data */
15464064216a8433360745f69edddce19a606659163The Android Open Source Project}resultsBuffer_t;
15564064216a8433360745f69edddce19a606659163The Android Open Source Project
15664064216a8433360745f69edddce19a606659163The Android Open Source Project
15764064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct PltNvsResultsBuffer_t
15864064216a8433360745f69edddce19a606659163The Android Open Source Project{
15964064216a8433360745f69edddce19a606659163The Android Open Source Project	resultsBuffer_t	tables[NVS_RESULTS_MAX_NUM_OF_TABLES];	/* array of structures of type containing the tables*/
16064064216a8433360745f69edddce19a606659163The Android Open Source Project	uint8			numOfTables;				            /* number of tables needed to be updated*/
16164064216a8433360745f69edddce19a606659163The Android Open Source Project	uint8			padding[3];
16264064216a8433360745f69edddce19a606659163The Android Open Source Project}PltNvsResultsBuffer_t;
16364064216a8433360745f69edddce19a606659163The Android Open Source Project
16464064216a8433360745f69edddce19a606659163The Android Open Source Project
16564064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct PltGainGet_t
16664064216a8433360745f69edddce19a606659163The Android Open Source Project{
16764064216a8433360745f69edddce19a606659163The Android Open Source Project            uint8 TxGain;            //Total TX chain gain according to the current setting
16864064216a8433360745f69edddce19a606659163The Android Open Source Project            uint8 TxUpperBound;      //the max gain setting allowed
16964064216a8433360745f69edddce19a606659163The Android Open Source Project            uint8 TxLowerBound;      //the min gain setting allowed
17064064216a8433360745f69edddce19a606659163The Android Open Source Project            uint8 padding;           /* padding to 32 bit */
17164064216a8433360745f69edddce19a606659163The Android Open Source Project}PltGainGet_t;
17264064216a8433360745f69edddce19a606659163The Android Open Source Project
17364064216a8433360745f69edddce19a606659163The Android Open Source Project#endif
174