| /* |
| * Copyright (c) 2012 The Linux Foundation. All rights reserved. |
| * |
| * Previously licensed under the ISC license by Qualcomm Atheros, Inc. |
| * |
| * |
| * Permission to use, copy, modify, and/or distribute this software for |
| * any purpose with or without fee is hereby granted, provided that the |
| * above copyright notice and this permission notice appear in all |
| * copies. |
| * |
| * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL |
| * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED |
| * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE |
| * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL |
| * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR |
| * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER |
| * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR |
| * PERFORMANCE OF THIS SOFTWARE. |
| */ |
| |
| /* |
| * This file was originally distributed by Qualcomm Atheros, Inc. |
| * under proprietary terms before Copyright ownership was assigned |
| * to the Linux Foundation. |
| */ |
| |
| /** |
| |
| |
| pttMsgApi.h: Contains messages to PTT Module for physical layer testing |
| Author: Mark Nelson |
| Date: 6/21/05 |
| |
| History - |
| Date Modified by Modification Information |
| -------------------------------------------------------------------------- |
| |
| */ |
| |
| #ifndef PTT_MSG_API_H |
| #define PTT_MSG_API_H |
| |
| #include "halCompiler.h" |
| #include "wlan_nv.h" |
| #include "wlan_phy.h" |
| #include "pttFrameGen.h" |
| #include "pttModule.h" |
| |
| #include "halLegacyPalTypes.h" |
| |
| typedef tANI_U8 tQWPTT_U8; |
| typedef tANI_S8 tQWPTT_S8; |
| |
| typedef tANI_U16 tQWPTT_U16; |
| typedef tANI_S16 tQWPTT_S16; |
| |
| typedef tANI_U32 tQWPTT_U32; |
| typedef tANI_S32 tQWPTT_S32; |
| |
| typedef tANI_U8 tQWPTT_BYTE; |
| typedef tANI_S9 tQWPTT_S9; |
| |
| typedef tANI_U8 tQWPTT_BOOLEAN; |
| |
| #define PTT_MEM_ACCESS_MAX_SIZE 256 |
| |
| //Messages to/from socket or pttApi.c |
| typedef enum { |
| PTT_MSG_TYPES_BEGIN = 0x3000, |
| |
| // Init |
| PTT_MSG_INIT = PTT_MSG_TYPES_BEGIN, //extra: internal only |
| |
| //NV Service |
| PTT_MSG_GET_TPC_CAL_STATE_OBSOLETE = 0x3011, |
| PTT_MSG_RESET_TPC_CAL_STATE_OBSOLETE = 0x3012, |
| |
| PTT_MSG_SET_NV_CKSUM_OBSOLETE = 0x3013, |
| PTT_MSG_GET_NV_CKSUM_OBSOLETE = 0x3014, |
| PTT_MSG_GET_NV_TABLE = 0x3016, |
| PTT_MSG_SET_NV_TABLE = 0x3017, |
| PTT_MSG_SET_NV_IMAGE_OBSOLETE = 0x3018, |
| PTT_MSG_BLANK_NV = 0x3019, |
| PTT_MSG_GET_NV_IMAGE_OBSOLETE = 0x301E, |
| PTT_MSG_DEL_NV_TABLE = 0x301F, |
| PTT_MSG_GET_NV_FIELD = 0x3020, |
| PTT_MSG_SET_NV_FIELD = 0x3021, |
| PTT_MSG_STORE_NV_TABLE = 0x3022, |
| PTT_MSG_SET_REG_DOMAIN = 0x3023, |
| |
| //new NV format Service |
| PTT_MSG_GET_NV_BIN = 0x3030, |
| PTT_MSG_SET_NV_BIN = 0x3031, |
| PTT_MSG_GET_DICTIONARY = 0x3032, |
| |
| //Device Register Access |
| PTT_MSG_DBG_READ_REGISTER = 0x3040, |
| PTT_MSG_DBG_WRITE_REGISTER = 0x3041, |
| PTT_MSG_API_WRITE_REGISTER_OBSOLETE = 0x3042, |
| PTT_MSG_API_READ_REGISTER_OBSOLETE = 0x3043, |
| PTT_MSG_DBG_READ_MEMORY = 0x3044, |
| PTT_MSG_DBG_WRITE_MEMORY = 0x3045, |
| |
| //Device MAC Test Setup |
| PTT_MSG_ENABLE_CHAINS = 0x304F, |
| PTT_MSG_SET_CHANNEL = 0x3050, |
| |
| //Tx Waveform Gen Service |
| PTT_MSG_SET_WAVEFORM = 0x3071, |
| PTT_MSG_SET_TX_WAVEFORM_GAIN = 0x3072, |
| PTT_MSG_GET_WAVEFORM_POWER_ADC = 0x3073, |
| PTT_MSG_START_WAVEFORM = 0x3074, |
| PTT_MSG_STOP_WAVEFORM = 0x3075, |
| PTT_MSG_SET_RX_WAVEFORM_GAIN = 0x3076, |
| PTT_MSG_SET_TX_WAVEFORM_GAIN_PRIMA_V1 = 0x3077, |
| |
| //Tx Frame Gen Service |
| PTT_MSG_CONFIG_TX_PACKET_GEN = 0x3081, |
| PTT_MSG_START_STOP_TX_PACKET_GEN = 0x3082, |
| PTT_MSG_POLL_TX_PACKET_PROGRESS_OBSOLETE = 0x3083, |
| PTT_MSG_FRAME_GEN_STOP_IND_OBSOLETE = 0x3088, |
| PTT_MSG_QUERY_TX_STATUS = 0x3089, |
| |
| |
| //Tx Frame Power Service |
| PTT_MSG_CLOSE_TPC_LOOP = 0x30A0, |
| |
| //open loop service |
| PTT_MSG_SET_PACKET_TX_GAIN_TABLE = 0x30A1, |
| PTT_MSG_SET_PACKET_TX_GAIN_INDEX = 0x30A2, |
| PTT_MSG_FORCE_PACKET_TX_GAIN = 0x30A3, |
| |
| //closed loop(CLPC) service |
| PTT_MSG_SET_PWR_INDEX_SOURCE = 0x30A4, |
| PTT_MSG_SET_TX_POWER = 0x30A5, |
| PTT_MSG_GET_TX_POWER_REPORT = 0x30A7, |
| PTT_MSG_SAVE_TX_PWR_CAL_TABLE_OBSOLETE = 0x30A8, |
| PTT_MSG_SET_POWER_LUT = 0x30A9, |
| PTT_MSG_GET_POWER_LUT = 0x30AA, |
| PTT_MSG_GET_PACKET_TX_GAIN_TABLE = 0x30AB, |
| PTT_MSG_SAVE_TX_PWR_FREQ_TABLE_OBSOLETE = 0x30AC, |
| PTT_MSG_CLPC_TEMP_COMPENSATION_OBSOLETE = 0x30AD, |
| |
| //Rx Gain Service |
| PTT_MSG_DISABLE_AGC_TABLES = 0x30D0, |
| PTT_MSG_ENABLE_AGC_TABLES = 0x30D1, |
| PTT_MSG_SET_AGC_TABLES_OBSOLETE = 0x30D2, |
| PTT_MSG_GET_RX_RSSI = 0x30D3, |
| PTT_MSG_GET_AGC_TABLE_OBSOLETE = 0x30D5, |
| |
| //Rx Frame Catcher Service |
| PTT_MSG_SET_RX_DISABLE_MODE = 0x30D4, |
| PTT_MSG_GET_RX_PKT_COUNTS = 0x30E0, |
| PTT_MSG_RESET_RX_PACKET_STATISTICS = 0x30E2, |
| PTT_MSG_GET_UNI_CAST_MAC_PKT_RX_RSSI = 0x30E3, |
| PTT_MSG_GET_UNI_CAST_MAC_PKT_RX_RSSI_CONFIG = 0x30E4, |
| |
| //Rx Symbol Service |
| PTT_MSG_GRAB_RAM = 0x30F0, |
| PTT_MSG_GRAB_RAM_ONE_CHAIN_OBSOLETE = 0x30F1, |
| |
| //Phy Calibration Service |
| PTT_MSG_RX_IQ_CAL = 0x3100, |
| PTT_MSG_RX_DCO_CAL = 0x3101, |
| PTT_MSG_TX_CARRIER_SUPPRESS_CAL = 0x3102, |
| PTT_MSG_TX_IQ_CAL = 0x3103, |
| PTT_MSG_EXECUTE_INITIAL_CALS = 0x3104, |
| PTT_MSG_HDET_CAL = 0x3105, |
| PTT_MSG_VCO_LINEARITY_CAL_OBSOLETE = 0x3106, |
| |
| //Phy Calibration Override Service |
| PTT_MSG_SET_TX_CARRIER_SUPPRESS_CORRECT = 0x3110, |
| PTT_MSG_GET_TX_CARRIER_SUPPRESS_CORRECT = 0x3111, |
| PTT_MSG_SET_TX_IQ_CORRECT = 0x3112, |
| PTT_MSG_GET_TX_IQ_CORRECT = 0x3113, |
| PTT_MSG_SET_RX_IQ_CORRECT = 0x3114, |
| PTT_MSG_GET_RX_IQ_CORRECT = 0x3115, |
| PTT_MSG_SET_RX_DCO_CORRECT = 0x3116, |
| PTT_MSG_GET_RX_DCO_CORRECT = 0x3117, |
| PTT_MSG_SET_TX_IQ_PHASE_NV_TABLE_OBSOLETE = 0x3118, |
| PTT_MSG_GET_HDET_CORRECT_OBSOLETE = 0x3119, |
| |
| //RF Chip Access |
| PTT_MSG_GET_TEMP_ADC = 0x3202, |
| PTT_MSG_READ_RF_REG = 0x3203, |
| PTT_MSG_WRITE_RF_REG = 0x3204, |
| PTT_MSG_GET_RF_VERSION = 0x3205, |
| |
| //Deep sleep support |
| PTT_MSG_DEEP_SLEEP = 0x3220, |
| PTT_MSG_READ_SIF_BAR4_REGISTER = 0x3221, |
| PTT_MSG_WRITE_SIF_BAR4_REGISTER = 0x3222, |
| PTT_MSG_ENTER_FULL_POWER = 0x3223, |
| |
| //Misc |
| PTT_MSG_SYSTEM_RESET = 0x32A0, //is there any meaning for this in Gen6? |
| PTT_MSG_LOG_DUMP = 0x32A1, |
| PTT_MSG_GET_BUILD_RELEASE_NUMBER = 0x32A2, |
| |
| |
| //Messages for Socket App |
| PTT_MSG_ADAPTER_DISABLED_RSP_OBSOLETE = 0x32A3, |
| PTT_MSG_ENABLE_ADAPTER = 0x32A4, |
| PTT_MSG_DISABLE_ADAPTER = 0x32A5, |
| PTT_MSG_PAUSE_RSP_OBSOLETE = 0x32A6, |
| PTT_MSG_CONTINUE_RSP_OBSOLETE = 0x32A7, |
| |
| PTT_MSG_HALPHY_INIT = 0x32A8, |
| PTT_MSG_TEST_RXIQ_CAL = 0x32A9, |
| PTT_MSG_START_TONE_GEN = 0x32AA, |
| PTT_MSG_STOP_TONE_GEN = 0x32AB, |
| PTT_MSG_RX_IM2_CAL = 0x32AC, |
| PTT_MSG_SET_RX_IM2_CORRECT = 0x31AD, |
| PTT_MSG_GET_RX_IM2_CORRECT = 0x31AE, |
| PTT_MSG_TEST_DPD_CAL = 0x32AF, // not handle |
| PTT_MSG_SET_CALCONTROL_BITMAP = 0x32B0, |
| |
| //[RY] specific new messages for PRIMA |
| PTT_MSG_START_WAVEFORM_RF = 0x32B1, |
| PTT_MSG_STOP_WAVEFORM_RF = 0x32B2, |
| PTT_MSG_HKDAC_TX_IQ_CAL = 0x32B3, |
| PTT_MSG_SET_HKADC_TX_IQ_CORRECT = 0x32B4, |
| PTT_MSG_GET_HKADC_TX_IQ_CORRECT = 0x32B5, |
| PTT_MSG_SET_DPD_CORRECT = 0x32B6, |
| PTT_MSG_GET_DPD_CORRECT = 0x32B7, |
| PTT_MSG_SET_WAVEFORM_RF = 0x32B8, |
| PTT_MSG_LNA_BAND_CAL = 0x32B9, |
| PTT_MSG_GET_LNA_BAND_CORRECT = 0x32BA, |
| PTT_MSG_SET_LNA_BAND_CORRECT = 0x32BB, |
| PTT_MSG_DPD_CAL = 0x32BC, |
| |
| // Suffix'ed Message ID to differential from existing Message name. |
| // =============================================================== |
| PTT_MSG_GET_NV_TABLE_PRIMA_V1 = 0x32BD, |
| PTT_MSG_SET_NV_TABLE_PRIMA_V1 = 0x32BE, |
| PTT_MSG_RX_IQ_CAL_PRIMA_V1 = 0x32BF, |
| PTT_MSG_TX_IQ_CAL_PRIMA_V1 = 0x32C0, |
| PTT_MSG_SET_TX_IQ_CORRECT_PRIMA_V1 = 0x32C1, |
| PTT_MSG_GET_TX_IQ_CORRECT_PRIMA_V1 = 0x32C2, |
| PTT_MSG_SET_RX_IQ_CORRECT_PRIMA_V1 = 0x32C3, |
| PTT_MSG_GET_RX_IQ_CORRECT_PRIMA_V1 = 0x32C4, |
| PTT_MSG_START_WAVEFORM_PRIMA_V1 = 0x32C5, |
| PTT_MSG_FORCE_PACKET_TX_GAIN_PRIMA_V1 = 0x32C6, |
| PTT_MSG_CLPC_CAL_SETUP_PRIMA_V1 = 0x32C7, |
| PTT_MSG_CLPC_CAL_RESTORE_PRIMA_V1 = 0x32C8, |
| PTT_MSG_CLOSE_TPC_LOOP_PRIMA_V1 = 0x32C9, |
| PTT_MSG_SW_CLPC_CAL_PRIMA_V1 = 0x32CA, |
| PTT_MSG_CLPC_CAL_EXTRA_MEASUREMENT_PRIMA_V1 = 0x32CB, |
| PTT_MSG_PRIMA_GENERIC_CMD = 0x32CC, |
| PTT_MSG_DIGITAL_PIN_CONNECTIVITY_TEST_RES = 0X32CD, |
| |
| PTT_MSG_EXIT = 0x32ff, |
| PTT_MAX_MSG_ID = PTT_MSG_EXIT |
| } ePttMsgId; |
| |
| enum |
| { |
| PTT_MSG_PRIMA_GENERIC_CMD_FAST_SET_CHANNEL = 0x0, |
| }; |
| |
| #define PTT_MSG_TYPES_BEGIN_30 PTT_MSG_TYPES_BEGIN |
| #define PTT_MSG_TYPES_BEGIN_31 PTT_MSG_TYPES_BEGIN + 0x100 |
| #define PTT_MSG_TYPES_BEGIN_32 PTT_MSG_TYPES_BEGIN + 0x200 |
| |
| // for FTM PER feature |
| enum { |
| Legacy_FTM = 0, |
| FTM_PER_TX = 1, |
| FTM_PER_RX = 2, |
| }; |
| |
| #ifndef tANI_BOOLEAN |
| #define tANI_BOOLEAN tANI_U8 |
| #endif |
| |
| |
| |
| /****************************************************************************************************************** |
| PTT MESSAGES |
| ******************************************************************************************************************/ |
| //Init |
| typedef PACKED_PRE struct PACKED_POST { |
| tPttModuleVariables ptt; |
| } tMsgPttMsgInit; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 tableSize; |
| tANI_U32 chunkSize; |
| eNvTable nvTable; |
| } tMsgPttGetNvTable; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 tableSize; |
| tANI_U32 chunkSize; |
| eNvTable nvTable; |
| } tMsgPttSetNvTable; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| eNvTable nvTable; |
| } tMsgPttDelNvTable; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 notUsed; |
| } tMsgPttBlankNv; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| eNvField nvField; |
| uNvFields fieldData; |
| } tMsgPttGetNvField; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| eNvField nvField; |
| uNvFields fieldData; |
| } tMsgPttSetNvField; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| eNvTable nvTable; |
| } tMsgPttStoreNvTable; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| eRegDomainId regDomainId; |
| } tMsgPttSetRegDomain; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 tableSize; |
| tANI_U32 chunkSize; |
| eNvTable nvTable; |
| tANI_U8 nvData[MAX_NV_BIN_SIZE]; |
| } tMsgPttGetNvBin; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 tableSize; |
| tANI_U32 chunkSize; |
| eNvTable nvTable; |
| tANI_U8 nvData[MAX_NV_BIN_SIZE]; |
| } tMsgPttSetNvBin; |
| |
| //Device Register Access |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 regAddr; |
| tANI_U32 regValue; |
| } tMsgPttDbgReadRegister; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 regAddr; |
| tANI_U32 regValue; |
| } tMsgPttDbgWriteRegister; |
| |
| #define PTT_READ_MEM_MAX 512 |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 memAddr; |
| tANI_U32 nBytes; |
| tANI_U32 pMemBuf[PTT_READ_MEM_MAX]; //caller should allocate space |
| } tMsgPttDbgReadMemory; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 memAddr; |
| tANI_U32 nBytes; |
| tANI_U32 pMemBuf[PTT_READ_MEM_MAX]; |
| } tMsgPttDbgWriteMemory; |
| |
| //Device MAC Test Setup |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 chId; |
| ePhyChanBondState cbState; |
| } tMsgPttSetChannel; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| ePhyChainSelect chainSelect; |
| } tMsgPttEnableChains; |
| |
| typedef tIQSamples tWaveformSample; |
| |
| //Tx Waveform Gen Service |
| typedef PACKED_PRE struct PACKED_POST { |
| tWaveformSample waveform[MAX_TEST_WAVEFORM_SAMPLES]; |
| tANI_U16 numSamples; |
| tANI_BOOLEAN clk80; |
| tANI_U8 reserved[1]; |
| } tMsgPttSetWaveform; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| ePhyTxChains txChain; |
| tANI_U8 gain; |
| } tMsgPttSetTxWaveformGain; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| ePhyTxChains txChain; |
| tANI_U32 gain; |
| } tMsgPttSetTxWaveformGain_PRIMA_V1; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| ePhyRxChains rxChain; |
| tANI_U8 gain; |
| } tMsgPttSetRxWaveformGain; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsPowerAdcReadings txPowerAdc; |
| } tMsgPttGetWaveformPowerAdc; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 notUsed; |
| } tMsgPttStopWaveform; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 notUsed; |
| } tMsgPttClpcCalSetup_PRIMA_V1; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U16 setup_measure; |
| tANI_U16 setup_txDmdPwrOffset; |
| tANI_U16 measure_totalExtraPt; |
| tANI_U16 measure_currentMeasurePtIdx; |
| tANI_U8 plut[256]; |
| } tMsgPttClpcCalExtraMeasurement_PRIMA_V1; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 notUsed; |
| } tMsgPttClpcCalRestore_PRIMA_V1; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 startIndex; |
| tANI_U32 numSamples; |
| } tMsgPttStartWaveform; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 startIndex; |
| tANI_U32 numSamples; |
| } tMsgPttStartWaveform_PRIMA_V1; |
| |
| // Added for PRIMA |
| typedef PACKED_PRE struct PACKED_POST { |
| tWaveformSample waveform[MAX_TEST_WAVEFORM_SAMPLES]; |
| tANI_U16 numSamples; |
| tANI_BOOLEAN clk80; |
| tANI_U8 reserved[1]; |
| } tMsgPttSetWaveformRF; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 startIndex; |
| tANI_U32 numSamples; |
| } tMsgPttStartWaveformRF; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 notUsed; |
| } tMsgPttStopWaveformRF; |
| |
| //Tx Frame Gen Service |
| typedef PACKED_PRE struct PACKED_POST { |
| sPttFrameGenParams frameParams; |
| } tMsgPttConfigTxPacketGen; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_BOOLEAN startStop; |
| tANI_U8 reserved[3]; |
| } tMsgPttStartStopTxPacketGen; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxFrameCounters numFrames; |
| tANI_BOOLEAN status; |
| tANI_U8 reserved[3]; |
| } tMsgPttQueryTxStatus; |
| |
| //Tx Frame Power Service |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_BOOLEAN tpcClose; |
| tANI_U8 reserved[3]; |
| } tMsgPttCloseTpcLoop; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 tpcClose; |
| } tMsgPttCloseTpcLoop_PRIMA_V1; |
| |
| |
| //open loop service |
| typedef PACKED_PRE struct PACKED_POST { |
| |
| ePhyTxChains txChain; |
| tANI_U8 minIndex; |
| tANI_U8 maxIndex; |
| tANI_U8 reserved[2]; |
| tANI_U8 gainTable[TPC_MEM_GAIN_LUT_DEPTH]; |
| } tMsgPttSetPacketTxGainTable; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| ePhyTxChains txChain; |
| tANI_U8 gainTable[TPC_MEM_GAIN_LUT_DEPTH]; |
| } tMsgPttGetPacketTxGainTable; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U8 index; |
| tANI_U8 reserved[3]; |
| } tMsgPttSetPacketTxGainIndex; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| ePhyTxChains txChain; |
| tANI_U8 gain; |
| tANI_U8 reserved[3]; |
| } tMsgPttForcePacketTxGain; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| ePhyTxChains txChain; |
| tANI_U32 gain; |
| } tMsgPttForcePacketTxGain_PRIMA_V1; |
| |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| ePowerTempIndexSource indexSource; |
| } tMsgPttSetPwrIndexSource; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| t2Decimal dbmPwr; |
| tANI_U8 reserved[2]; |
| } tMsgPttSetTxPower; |
| |
| typedef tTxPowerReport tMsgPttGetTxPowerReport; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| ePhyTxChains txChain; |
| |
| tANI_U8 minIndex; |
| tANI_U8 maxIndex; |
| tANI_U8 reserved[2]; |
| |
| tANI_U8 powerLut[TPC_MEM_POWER_LUT_DEPTH]; |
| } tMsgPttSetPowerLut; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| ePhyTxChains txChain; |
| |
| tANI_U8 powerLut[TPC_MEM_POWER_LUT_DEPTH]; |
| } tMsgPttGetPowerLut; |
| |
| |
| //Rx Gain Service |
| typedef PACKED_PRE struct PACKED_POST { |
| sRxChainsAgcDisable gains; |
| } tMsgPttDisableAgcTables; |
| |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sRxChainsAgcEnable enables; |
| } tMsgPttEnableAgcTables; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sRxChainsRssi rssi; |
| } tMsgPttGetRxRssi; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sRxChainsRssi rssi; |
| }tMsgPttGetUnicastMacPktRxRssi; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 conf; |
| }tMsgPttGetUnicastMacPktRxRssiConf_PRIMA_V1; |
| |
| //Rx Frame Catcher Service |
| typedef PACKED_PRE struct PACKED_POST { |
| sRxTypesDisabled disabled; |
| } tMsgPttSetRxDisableMode; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sRxFrameCounters counters; |
| } tMsgPttGetRxPktCounts; |
| |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 notUsed; |
| } tMsgPttResetRxPacketStatistics; |
| |
| |
| |
| |
| |
| //ADC Sample Service |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 startSample; //index of first requested sample, 0 causes new capture |
| tANI_U32 numSamples; //number of samples to transfer to host |
| eGrabRamSampleType sampleType; |
| tGrabRamSample grabRam[MAX_REQUESTED_GRAB_RAM_SAMPLES]; |
| } tMsgPttGrabRam; |
| |
| |
| //Phy Calibration Service |
| typedef PACKED_PRE struct PACKED_POST { |
| sRxChainsIQCalValues calValues; |
| eGainSteps gain; |
| } tMsgPttRxIqCal; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tRxChainsDcoCorrections calValues; |
| tANI_U8 gain; |
| } tMsgPttRxDcoCal; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tRxChainsIm2Corrections calValues; |
| eGainSteps gain; |
| tANI_U8 im2CalOnly; |
| } tMsgPttRxIm2Cal; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsLoCorrections calValues; |
| tANI_U8 reserve[2]; |
| eGainSteps gain; |
| } tMsgPttTxCarrierSuppressCal; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsIQCalValues calValues; |
| tANI_U8 reserve[2]; |
| eGainSteps gain; |
| } tMsgPttTxIqCal; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsHKIQCalValues calValues; |
| eGainSteps gain; |
| } tMsgPttHKdacTxIqCal; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 unused; |
| } tMsgPttExecuteInitialCals; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sRfHdetCalValues hdetCalValues; |
| } tMsgPttHdetCal; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U16 clpcMode; |
| tANI_U16 txCmdPwr; |
| tANI_U16 pwrMax_pwrMin; |
| tANI_U16 step; |
| tANI_U8 plut[256]; |
| } tMsgPttClpcSwCal_PRIMA_V1; |
| |
| |
| //Phy Calibration Override Service |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsLoCorrections calValues; |
| tANI_U8 reserve[2]; |
| eGainSteps gain; |
| } tMsgPttSetTxCarrierSuppressCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsLoCorrections calValues; |
| tANI_U8 reserve[2]; |
| eGainSteps gain; |
| } tMsgPttGetTxCarrierSuppressCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsIQCalValues calValues; |
| tANI_U8 reserve[2]; |
| eGainSteps gain; |
| } tMsgPttSetTxIqCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsIQCalValues calValues; |
| tANI_U8 reserve[2]; |
| eGainSteps gain; |
| } tMsgPttGetTxIqCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsHKIQCalValues calValues; |
| eGainSteps gain; |
| } tMsgPttHKdacSetTxIqCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsHKIQCalValues calValues; |
| eGainSteps gain; |
| } tMsgPttHKdacGetTxIqCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sRxChainsIQCalValues calValues; |
| eGainSteps gain; |
| } tMsgPttSetRxIqCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sRxChainsIQCalValues calValues; |
| eGainSteps gain; |
| } tMsgPttGetRxIqCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tRxChainsDcoCorrections calValues; |
| tANI_U8 gain; |
| } tMsgPttSetRxDcoCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tRxChainsDcoCorrections calValues; |
| tANI_U8 gain; |
| } tMsgPttGetRxDcoCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tRxChainsIm2Corrections calValues; |
| tANI_U8 dummy; |
| } tMsgPttSetRxIm2Correct; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tRxChainsIm2Corrections calValues; |
| tANI_U8 dummy; |
| } tMsgPttGetRxIm2Correct; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| eRfTempSensor tempSensor; |
| tTempADCVal tempAdc; |
| tANI_U8 reserved[4 - sizeof(tTempADCVal)]; |
| } tMsgPttGetTempAdc; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 addr; |
| tANI_U32 mask; |
| tANI_U32 shift; |
| tANI_U32 value; |
| } tMsgPttReadRfField; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 addr; |
| tANI_U32 mask; |
| tANI_U32 shift; |
| tANI_U32 value; |
| } tMsgPttWriteRfField; |
| |
| //SIF bar4 Register Access |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 sifRegAddr; |
| tANI_U32 sifRegValue; |
| } tMsgPttReadSifBar4Register; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 sifRegAddr; |
| tANI_U32 sifRegValue; |
| } tMsgPttWriteSifBar4Register; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 notUsed; |
| } tMsgPttDeepSleep; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 notUsed; |
| } tMsgPttEnterFullPower; |
| |
| //Misc. |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 notUsed; |
| } tMsgPttSystemReset; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 cmd; |
| tANI_U32 arg1; |
| tANI_U32 arg2; |
| tANI_U32 arg3; |
| tANI_U32 arg4; |
| } tMsgPttLogDump; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sBuildReleaseParams relParams; |
| } tMsgPttGetBuildReleaseNumber; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 revId; |
| } tMsgPttGetRFVersion; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 option; //dummy variable |
| } tMsgPttCalControlBitmap; |
| |
| //#ifdef VERIFY_HALPHY_SIMV_MODEL |
| |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 option; //dummy variable |
| } tMsgPttHalPhyInit; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 option; //dummy variable |
| } tMsgPttRxIQTest; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsDPDCalValues calValues; |
| eGainSteps gain; |
| } tMsgPttDpdCal; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U8 lutIdx; |
| tANI_U8 band; |
| } tMsgPttStartToneGen; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U32 option; //dummy variable |
| } tMsgPttStopToneGen; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsLnaBandCalValues calValues; |
| eGainSteps gain; |
| } tMsgPttLnaBandCal; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsLnaBandCalValues calValues; |
| eGainSteps gain; |
| } tMsgPttGetLnaBandCalCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsLnaBandCalValues calValues; |
| eGainSteps gain; |
| } tMsgPttSetLnaBandCalCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsDPDCalValues calValues; |
| eGainSteps gain; |
| }tMsgPttSetDPDCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| sTxChainsDPDCalValues calValues; |
| eGainSteps gain; |
| }tMsgPttGetDPDCorrect; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tQWPTT_U32 cmdIdx; |
| tQWPTT_U32 param1; |
| tQWPTT_U32 param2; |
| tQWPTT_U32 param3; |
| tQWPTT_U32 param4; |
| } tMsgPttPrimaGenericCmd; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U16 testID; |
| tANI_U16 result; |
| } tMsgPttPinConnTestRes; |
| //#endif |
| |
| /****************************************************************************************************************** |
| END OF PTT MESSAGES |
| ******************************************************************************************************************/ |
| |
| typedef PACKED_PRE union PACKED_POST pttMsgUnion{ |
| //typedef union pttMsgUnion { |
| tMsgPttMsgInit MsgInit; |
| tMsgPttGetNvTable GetNvTable; |
| tMsgPttSetNvTable SetNvTable; |
| tMsgPttDelNvTable DelNvTable; |
| tMsgPttBlankNv BlankNv; |
| tMsgPttStoreNvTable StoreNvTable; |
| tMsgPttSetRegDomain SetRegDomain; |
| tMsgPttGetNvField GetNvField; |
| tMsgPttSetNvField SetNvField; |
| tMsgPttGetNvBin GetNvBin; |
| tMsgPttSetNvBin SetNvBin; |
| tMsgPttDbgReadRegister DbgReadRegister; |
| tMsgPttDbgWriteRegister DbgWriteRegister; |
| tMsgPttDbgReadMemory DbgReadMemory; |
| tMsgPttDbgWriteMemory DbgWriteMemory; |
| tMsgPttEnableChains EnableChains; |
| tMsgPttSetChannel SetChannel; |
| tMsgPttSetWaveform SetWaveform; |
| tMsgPttSetTxWaveformGain SetTxWaveformGain; |
| tMsgPttSetTxWaveformGain_PRIMA_V1 SetTxWaveformGain_PRIMA_V1; |
| tMsgPttGetWaveformPowerAdc GetWaveformPowerAdc; |
| tMsgPttStartWaveform StartWaveform; |
| tMsgPttStartWaveform_PRIMA_V1 StartWaveform_PRIMA_V1; |
| tMsgPttStopWaveform StopWaveform; |
| tMsgPttSetRxWaveformGain SetRxWaveformGain; |
| tMsgPttConfigTxPacketGen ConfigTxPacketGen; |
| tMsgPttStartStopTxPacketGen StartStopTxPacketGen; |
| tMsgPttQueryTxStatus QueryTxStatus; |
| tMsgPttCloseTpcLoop CloseTpcLoop; |
| tMsgPttCloseTpcLoop_PRIMA_V1 CloseTpcLoop_PRIMA_V1; |
| tMsgPttSetPacketTxGainTable SetPacketTxGainTable; |
| tMsgPttGetPacketTxGainTable GetPacketTxGainTable; |
| tMsgPttSetPacketTxGainIndex SetPacketTxGainIndex; |
| tMsgPttForcePacketTxGain ForcePacketTxGain; |
| tMsgPttForcePacketTxGain_PRIMA_V1 ForcePacketTxGain_PRIMA_V1; |
| tMsgPttSetPwrIndexSource SetPwrIndexSource; |
| tMsgPttSetTxPower SetTxPower; |
| tMsgPttGetTxPowerReport GetTxPowerReport; |
| tMsgPttSetPowerLut SetPowerLut; |
| tMsgPttGetPowerLut GetPowerLut; |
| tMsgPttDisableAgcTables DisableAgcTables; |
| tMsgPttEnableAgcTables EnableAgcTables; |
| tMsgPttGetRxRssi GetRxRssi; |
| tMsgPttGetUnicastMacPktRxRssi GetUnicastMacPktRxRssi; |
| tMsgPttGetUnicastMacPktRxRssiConf_PRIMA_V1 GetUnicastMacPktRxRssiConf_PRIMA_V1; |
| tMsgPttSetRxDisableMode SetRxDisableMode; |
| tMsgPttGetRxPktCounts GetRxPktCounts; |
| tMsgPttResetRxPacketStatistics ResetRxPacketStatistics; |
| tMsgPttGrabRam GrabRam; |
| tMsgPttRxIqCal RxIqCal; |
| tMsgPttRxDcoCal RxDcoCal; |
| tMsgPttRxIm2Cal RxIm2Cal; |
| |
| tMsgPttExecuteInitialCals ExecuteInitialCals; |
| tMsgPttTxCarrierSuppressCal TxCarrierSuppressCal; |
| tMsgPttTxIqCal TxIqCal; |
| tMsgPttHKdacTxIqCal HKdacTxIqCal; |
| tMsgPttClpcCalSetup_PRIMA_V1 ClpcCalSetup_PRIMA_V1; |
| tMsgPttClpcCalRestore_PRIMA_V1 ClpcCalRestore_PRIMA_V1; |
| tMsgPttHdetCal HdetCal; |
| tMsgPttClpcSwCal_PRIMA_V1 ClpcSwCal_PRIMA_V1; |
| tMsgPttClpcCalExtraMeasurement_PRIMA_V1 ClpcCalExtraMeasurement_PRIMA_V1; |
| tMsgPttSetTxCarrierSuppressCorrect SetTxCarrierSuppressCorrect; |
| tMsgPttGetTxCarrierSuppressCorrect GetTxCarrierSuppressCorrect; |
| tMsgPttSetTxIqCorrect SetTxIqCorrect; |
| tMsgPttGetTxIqCorrect GetTxIqCorrect; |
| tMsgPttSetRxIqCorrect SetRxIqCorrect; |
| tMsgPttGetRxIqCorrect GetRxIqCorrect; |
| tMsgPttSetRxDcoCorrect SetRxDcoCorrect; |
| tMsgPttGetRxDcoCorrect GetRxDcoCorrect; |
| tMsgPttSetRxIm2Correct SetRxIm2Correct; |
| tMsgPttGetRxIm2Correct GetRxIm2Correct; |
| tMsgPttHKdacSetTxIqCorrect HKdacSetTxIqCorrect; |
| tMsgPttHKdacGetTxIqCorrect HKdacGetTxIqCorrect; |
| |
| tMsgPttGetTempAdc GetTempAdc; |
| tMsgPttReadRfField ReadRfField; |
| tMsgPttWriteRfField WriteRfField; |
| tMsgPttCalControlBitmap SetCalControlBitmap; |
| |
| //#ifdef VERIFY_HALPHY_SIMV_MODEL |
| |
| tMsgPttHalPhyInit InitOption; |
| tMsgPttRxIQTest RxIQTest; |
| tMsgPttDpdCal DpdCal; |
| tMsgPttStartToneGen StartToneGen; |
| tMsgPttStopToneGen StopToneGen; |
| //#endif |
| tMsgPttDeepSleep DeepSleep; |
| tMsgPttReadSifBar4Register ReadSifBar4Register; |
| tMsgPttWriteSifBar4Register WriteSifBar4Register; |
| tMsgPttEnterFullPower EnterFullPower; |
| tMsgPttSystemReset SystemReset; |
| tMsgPttLogDump LogDump; |
| tMsgPttGetBuildReleaseNumber GetBuildReleaseNumber; |
| tMsgPttGetRFVersion GetRFVersion; |
| |
| //[RY] added for PRIMA |
| tMsgPttSetWaveformRF SetWaveformRF; |
| tMsgPttStopWaveformRF StopWaveformRF; |
| tMsgPttStartWaveformRF StartWaveformRF; |
| tMsgPttLnaBandCal LnaBandCal; |
| tMsgPttGetLnaBandCalCorrect GetLnaBandCalCorrect; |
| tMsgPttSetLnaBandCalCorrect SetLnaBandCalCorrect; |
| tMsgPttGetDPDCorrect GetDPDCorrect; |
| tMsgPttSetDPDCorrect SetDPDCorrect; |
| tMsgPttDpdCal DPDCal; |
| tMsgPttPrimaGenericCmd PrimaGenericCmd; |
| tMsgPttPinConnTestRes PinConnTestRes; |
| } uPttMsgs; |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| tANI_U16 msgId; |
| tANI_U16 msgBodyLength; //actually, the length of all the fields in this structure |
| eQWPttStatus msgResponse; |
| uPttMsgs msgBody; |
| } tPttMsgbuffer, *tpPttMsgbuffer; |
| |
| |
| typedef PACKED_PRE struct PACKED_POST { |
| /* |
| * success or failure |
| */ |
| tANI_U32 status; |
| tPttMsgbuffer pttMsgBuffer; |
| } tProcessPttRspParams, *tpProcessPttRspParams; |
| |
| /* End of Ptt Parameters */ |
| |
| #endif |