| /****************************************************************************** |
| * |
| * This file is provided under a dual license. When you use or |
| * distribute this software, you may choose to be licensed under |
| * version 2 of the GNU General Public License ("GPLv2 License") |
| * or BSD License. |
| * |
| * GPLv2 License |
| * |
| * Copyright(C) 2016 MediaTek Inc. |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of version 2 of the GNU General Public License as |
| * published by the Free Software Foundation. |
| * |
| * This program is distributed in the hope that it will be useful, but |
| * WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
| * See http://www.gnu.org/licenses/gpl-2.0.html for more details. |
| * |
| * BSD LICENSE |
| * |
| * Copyright(C) 2016 MediaTek Inc. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * |
| * * Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * * Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in |
| * the documentation and/or other materials provided with the |
| * distribution. |
| * * Neither the name of the copyright holder nor the names of its |
| * contributors may be used to endorse or promote products derived |
| * from this software without specific prior written permission. |
| * |
| * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| * |
| *****************************************************************************/ |
| /* |
| ** Id: //Department/DaVinci/BRANCHES/MT6620_WIFI_DRIVER_V2_3/include/rftest.h#1 |
| */ |
| |
| /*! \file "rftest.h" |
| * \brief definitions for RF Productino test |
| * |
| */ |
| |
| #ifndef _RFTEST_H |
| #define _RFTEST_H |
| |
| /******************************************************************************* |
| * C O M P I L E R F L A G S |
| ******************************************************************************** |
| */ |
| |
| /******************************************************************************* |
| * E X T E R N A L R E F E R E N C E S |
| ******************************************************************************** |
| */ |
| |
| /******************************************************************************* |
| * C O N S T A N T S |
| ******************************************************************************** |
| */ |
| /* Table Version */ |
| #define RF_AUTO_TEST_FUNCTION_TABLE_VERSION 0x01000001 |
| |
| /* Power */ |
| #define RF_AT_PARAM_POWER_MASK BITS(0, 7) |
| #define RF_AT_PARAM_POWER_MAX RF_AT_PARAM_POWER_MASK |
| |
| /* Rate */ |
| #define RF_AT_PARAM_RATE_MCS_MASK BIT(31) |
| #define RF_AT_PARAM_RATE_MASK BITS(0, 7) |
| #define RF_AT_PARAM_RATE_CCK_MAX 3 |
| #define RF_AT_PARAM_RATE_1M 0 |
| #define RF_AT_PARAM_RATE_2M 1 |
| #define RF_AT_PARAM_RATE_5_5M 2 |
| #define RF_AT_PARAM_RATE_11M 3 |
| #define RF_AT_PARAM_RATE_6M 4 |
| #define RF_AT_PARAM_RATE_9M 5 |
| #define RF_AT_PARAM_RATE_12M 6 |
| #define RF_AT_PARAM_RATE_18M 7 |
| #define RF_AT_PARAM_RATE_24M 8 |
| #define RF_AT_PARAM_RATE_36M 9 |
| #define RF_AT_PARAM_RATE_48M 10 |
| #define RF_AT_PARAM_RATE_54M 11 |
| |
| /* Antenna */ |
| #define RF_AT_PARAM_ANTENNA_ID_MASK BITS(0, 7) |
| #define RF_AT_PARAM_ANTENNA_ID_MAX 1 |
| |
| /* Packet Length */ |
| #define RF_AT_PARAM_TX_80211HDR_BYTE_MAX (32) |
| #define RF_AT_PARAM_TX_80211PAYLOAD_BYTE_MAX (2048) |
| |
| #define RF_AT_PARAM_TX_PKTLEN_BYTE_DEFAULT 1024 |
| #define RF_AT_PARAM_TX_PKTLEN_BYTE_MAX \ |
| ((UINT_16)(RF_AT_PARAM_TX_80211HDR_BYTE_MAX + RF_AT_PARAM_TX_80211PAYLOAD_BYTE_MAX)) |
| |
| /* Packet Count */ |
| #define RF_AT_PARAM_TX_PKTCNT_DEFAULT 1000 |
| #define RF_AT_PARAM_TX_PKTCNT_UNLIMITED 0 |
| |
| /* Packet Interval */ |
| #define RF_AT_PARAM_TX_PKT_INTERVAL_US_DEFAULT 50 |
| |
| /* ALC */ |
| #define RF_AT_PARAM_ALC_DISABLE 0 |
| #define RF_AT_PARAM_ALC_ENABLE 1 |
| |
| /* TXOP */ |
| #define RF_AT_PARAM_TXOP_DEFAULT 0 |
| #define RF_AT_PARAM_TXOPQUE_QMASK BITS(16, 31) |
| #define RF_AT_PARAM_TXOPQUE_TMASK BITS(0, 15) |
| #define RF_AT_PARAM_TXOPQUE_AC0 (0<<16) |
| #define RF_AT_PARAM_TXOPQUE_AC1 (1<<16) |
| #define RF_AT_PARAM_TXOPQUE_AC2 (2<<16) |
| #define RF_AT_PARAM_TXOPQUE_AC3 (3<<16) |
| #define RF_AT_PARAM_TXOPQUE_AC4 (4<<16) |
| #define RF_AT_PARAM_TXOPQUE_QOFFSET 16 |
| |
| /* Retry Limit */ |
| #define RF_AT_PARAM_TX_RETRY_DEFAULT 0 |
| #define RF_AT_PARAM_TX_RETRY_MAX 6 |
| |
| /* QoS Queue */ |
| #define RF_AT_PARAM_QOSQUE_AC0 0 |
| #define RF_AT_PARAM_QOSQUE_AC1 1 |
| #define RF_AT_PARAM_QOSQUE_AC2 2 |
| #define RF_AT_PARAM_QOSQUE_AC3 3 |
| #define RF_AT_PARAM_QOSQUE_AC4 4 |
| #define RF_AT_PARAM_QOSQUE_DEFAULT RF_AT_PARAM_QOSQUE_AC0 |
| |
| /* Bandwidth */ |
| #define RF_AT_PARAM_BANDWIDTH_20MHZ 0 |
| #define RF_AT_PARAM_BANDWIDTH_40MHZ 1 |
| #define RF_AT_PARAM_BANDWIDTH_U20_IN_40MHZ 2 |
| #define RF_AT_PARAM_BANDWIDTH_D20_IN_40MHZ 3 |
| #define RF_AT_PARAM_BANDWIDTH_DEFAULT RF_AT_PARAM_BANDWIDTH_20MHZ |
| |
| /* GI (Guard Interval) */ |
| #define RF_AT_PARAM_GI_800NS 0 |
| #define RF_AT_PARAM_GI_400NS 1 |
| #define RF_AT_PARAM_GI_DEFAULT RF_AT_PARAM_GI_800NS |
| |
| /* STBC */ |
| #define RF_AT_PARAM_STBC_DISABLE 0 |
| #define RF_AT_PARAM_STBC_ENABLE 1 |
| |
| /* RIFS */ |
| #define RF_AT_PARAM_RIFS_DISABLE 0 |
| #define RF_AT_PARAM_RIFS_ENABLE 1 |
| |
| /******************************************************************************* |
| * D A T A T Y P E S |
| ******************************************************************************** |
| */ |
| /* Function ID List */ |
| typedef enum _ENUM_RF_AT_FUNCID_T { |
| RF_AT_FUNCID_VERSION = 0, |
| RF_AT_FUNCID_COMMAND, |
| RF_AT_FUNCID_POWER, |
| RF_AT_FUNCID_RATE, |
| RF_AT_FUNCID_PREAMBLE, |
| RF_AT_FUNCID_ANTENNA, |
| RF_AT_FUNCID_PKTLEN, |
| RF_AT_FUNCID_PKTCNT, |
| RF_AT_FUNCID_PKTINTERVAL, |
| RF_AT_FUNCID_TEMP_COMPEN, |
| RF_AT_FUNCID_TXOPLIMIT, |
| RF_AT_FUNCID_ACKPOLICY, |
| RF_AT_FUNCID_PKTCONTENT, |
| RF_AT_FUNCID_RETRYLIMIT, |
| RF_AT_FUNCID_QUEUE, |
| RF_AT_FUNCID_BANDWIDTH, |
| RF_AT_FUNCID_GI, |
| RF_AT_FUNCID_STBC, |
| RF_AT_FUNCID_CHNL_FREQ, |
| RF_AT_FUNCID_RIFS, |
| RF_AT_FUNCID_TRSW_TYPE, |
| RF_AT_FUNCID_RF_SX_SHUTDOWN, |
| RF_AT_FUNCID_PLL_SHUTDOWN, |
| RF_AT_FUNCID_SLOW_CLK_MODE, |
| RF_AT_FUNCID_ADC_CLK_MODE, |
| RF_AT_FUNCID_MEASURE_MODE, |
| RF_AT_FUNCID_VOLT_COMPEN, |
| RF_AT_FUNCID_DPD_TX_GAIN, |
| RF_AT_FUNCID_DPD_MODE, |
| RF_AT_FUNCID_TSSI_MODE, |
| RF_AT_FUNCID_TX_GAIN_CODE, |
| RF_AT_FUNCID_TX_PWR_MODE, |
| |
| /* Query command */ |
| RF_AT_FUNCID_TXED_COUNT = 32, |
| RF_AT_FUNCID_TXOK_COUNT, |
| RF_AT_FUNCID_RXOK_COUNT, |
| RF_AT_FUNCID_RXERROR_COUNT, |
| RF_AT_FUNCID_RESULT_INFO, |
| RF_AT_FUNCID_TRX_IQ_RESULT, |
| RF_AT_FUNCID_TSSI_RESULT, |
| RF_AT_FUNCID_DPD_RESULT, |
| RF_AT_FUNCID_RXV_DUMP, |
| RF_AT_FUNCID_RX_PHY_STATIS, |
| RF_AT_FUNCID_MEASURE_RESULT, |
| RF_AT_FUNCID_TEMP_SENSOR, |
| RF_AT_FUNCID_VOLT_SENSOR, |
| RF_AT_FUNCID_READ_EFUSE, |
| RF_AT_FUNCID_RX_RSSI, |
| RF_AT_FUNCID_FW_INFO, |
| RF_AT_FUNCID_DRV_INFO, |
| RF_AT_FUNCID_PWR_DETECTOR, |
| RF_AT_FUNCID_WBRSSI_IBSSI, |
| |
| /* Set command */ |
| RF_AT_FUNCID_SET_DPD_RESULT = 64, |
| RF_AT_FUNCID_SET_CW_MODE, |
| RF_AT_FUNCID_SET_JAPAN_CH14_FILTER, |
| RF_AT_FUNCID_WRITE_EFUSE, |
| RF_AT_FUNCID_SET_MAC_ADDRESS, |
| RF_AT_FUNCID_SET_TA, |
| RF_AT_FUNCID_SET_RX_MATCH_RULE, |
| |
| /* 80211AC & Jmode */ |
| RF_AT_FUNCID_SET_CBW = 71, |
| RF_AT_FUNCID_SET_DBW, |
| RF_AT_FUNCID_SET_PRIMARY_CH, |
| RF_AT_FUNCID_SET_ENCODE_MODE, |
| RF_AT_FUNCID_SET_J_MODE, |
| |
| /* ICAP command */ |
| RF_AT_FUNCID_SET_ICAP_CONTENT = 80, |
| RF_AT_FUNCID_SET_ICAP_MODE, |
| RF_AT_FUNCID_SET_ICAP_STARTCAP, |
| RF_AT_FUNCID_SET_ICAP_SIZE = 83, |
| RF_AT_FUNCID_SET_ICAP_TRIGGER_OFFSET, |
| RF_AT_FUNCID_QUERY_ICAP_DUMP_FILE = 85, |
| |
| #if CFG_SUPPORT_QA_TOOL |
| /* 2G 5G Band */ |
| RF_AT_FUNCID_SET_BAND = 90, |
| |
| /* Reset Counter */ |
| RF_AT_FUNCID_RESETTXRXCOUNTER = 91, |
| |
| /* FAGC RSSI Path */ |
| RF_AT_FUNCID_FAGC_RSSI_PATH = 92, |
| |
| /* Set RX Filter Packet Length */ |
| RF_AT_FUNCID_RX_FILTER_PKT_LEN = 93, |
| |
| /* Tone */ |
| RF_AT_FUNCID_SET_TONE_RF_GAIN = 96, |
| RF_AT_FUNCID_SET_TONE_DIGITAL_GAIN = 97, |
| RF_AT_FUNCID_SET_TONE_TYPE = 98, |
| RF_AT_FUNCID_SET_TONE_DC_OFFSET = 99, |
| RF_AT_FUNCID_SET_TONE_BW = 100, |
| |
| /* MT6632 Add */ |
| RF_AT_FUNCID_SET_MAC_HEADER = 101, |
| RF_AT_FUNCID_SET_SEQ_CTRL = 102, |
| RF_AT_FUNCID_SET_PAYLOAD = 103, |
| RF_AT_FUNCID_SET_DBDC_BAND_IDX = 104, |
| RF_AT_FUNCID_SET_BYPASS_CAL_STEP = 105, |
| |
| /* Set RX Path */ |
| RF_AT_FUNCID_SET_RX_PATH = 106, |
| |
| /* Set Frequency Offset */ |
| RF_AT_FUNCID_SET_FRWQ_OFFSET = 107, |
| |
| /* Get Frequency Offset */ |
| RF_AT_FUNCID_GET_FREQ_OFFSET = 108, |
| |
| /* Set RXV Debug Index */ |
| RF_AT_FUNCID_SET_RXV_INDEX = 109, |
| |
| /* Set Test Mode DBDC Enable */ |
| RF_AT_FUNCID_SET_DBDC_ENABLE = 110, |
| |
| /* Get Test Mode DBDC Enable */ |
| RF_AT_FUNCID_GET_DBDC_ENABLE = 111, |
| |
| /* Set ICAP Ring Capture */ |
| RF_AT_FUNCID_SET_ICAP_RING = 112, |
| |
| /* Set TX Path */ |
| RF_AT_FUNCID_SET_TX_PATH = 113, |
| |
| /* Set Nss */ |
| RF_AT_FUNCID_SET_NSS = 114, |
| |
| /* Set TX Antenna Mask */ |
| RF_AT_FUNCID_SET_ANTMASK = 115, |
| |
| /* TMR set command */ |
| RF_AT_FUNCID_SET_TMR_ROLE = 116, |
| RF_AT_FUNCID_SET_TMR_MODULE = 117, |
| RF_AT_FUNCID_SET_TMR_DBM = 118, |
| RF_AT_FUNCID_SET_TMR_ITER = 119, |
| |
| /* Set ADC For IRR Feature */ |
| RF_AT_FUNCID_SET_ADC = 120, |
| |
| /* Set RX Gain For IRR Feature */ |
| RF_AT_FUNCID_SET_RX_GAIN = 121, |
| |
| /* Set TTG For IRR Feature */ |
| RF_AT_FUNCID_SET_TTG = 122, |
| |
| /* Set TTG ON/OFF For IRR Feature */ |
| RF_AT_FUNCID_TTG_ON_OFF = 123, |
| |
| /* Set TSSI for QA Tool Setting */ |
| RF_AT_FUNCID_SET_TSSI = 124, |
| |
| /* Set Recal Cal Step */ |
| RF_AT_FUNCID_SET_RECAL_CAL_STEP = 125, |
| |
| /* Set iBF/eBF enable */ |
| RF_AT_FUNCID_SET_IBF_ENABLE = 126, |
| RF_AT_FUNCID_SET_EBF_ENABLE = 127, |
| |
| /* Set MPS Setting */ |
| RF_AT_FUNCID_SET_MPS_SIZE = 128, |
| RF_AT_FUNCID_SET_MPS_SEQ_DATA = 129, |
| RF_AT_FUNCID_SET_MPS_PAYLOAD_LEN = 130, |
| RF_AT_FUNCID_SET_MPS_PKT_CNT = 131, |
| RF_AT_FUNCID_SET_MPS_PWR_GAIN = 132, |
| RF_AT_FUNCID_SET_MPS_NSS = 133, |
| RF_AT_FUNCID_SET_MPS_PACKAGE_BW = 134 |
| #endif |
| } ENUM_RF_AT_FUNCID_T; |
| |
| /* Command */ |
| typedef enum _ENUM_RF_AT_COMMAND_T { |
| RF_AT_COMMAND_STOPTEST = 0, |
| RF_AT_COMMAND_STARTTX, |
| RF_AT_COMMAND_STARTRX, |
| RF_AT_COMMAND_RESET, |
| RF_AT_COMMAND_OUTPUT_POWER, /* Payload */ |
| RF_AT_COMMAND_LO_LEAKAGE, /* Local freq is renamed to Local leakage */ |
| RF_AT_COMMAND_CARRIER_SUPPR, /* OFDM (LTF/STF), CCK (PI,PI/2) */ |
| RF_AT_COMMAND_TRX_IQ_CAL, |
| RF_AT_COMMAND_TSSI_CAL, |
| RF_AT_COMMAND_DPD_CAL, |
| RF_AT_COMMAND_CW, |
| RF_AT_COMMAND_ICAP, |
| RF_AT_COMMAND_RDD, |
| RF_AT_COMMAND_CH_SWITCH_FOR_ICAP, |
| RF_AT_COMMAND_RESET_DUMP_NAME, |
| RF_AT_COMMAND_SINGLE_TONE, |
| RF_AT_COMMAND_RDD_OFF, |
| RF_AT_COMMAND_NUM |
| } ENUM_RF_AT_COMMAND_T; |
| |
| /* Preamble */ |
| typedef enum _ENUM_RF_AT_PREAMBLE_T { |
| RF_AT_PREAMBLE_NORMAL = 0, |
| RF_AT_PREAMBLE_CCK_SHORT, |
| RF_AT_PREAMBLE_11N_MM, |
| RF_AT_PREAMBLE_11N_GF, |
| RF_AT_PREAMBLE_11AC, |
| RF_AT_PREAMBLE_NUM |
| } ENUM_RF_AT_PREAMBLE_T; |
| |
| /* Ack Policy */ |
| typedef enum _ENUM_RF_AT_ACK_POLICY_T { |
| RF_AT_ACK_POLICY_NORMAL = 0, |
| RF_AT_ACK_POLICY_NOACK, |
| RF_AT_ACK_POLICY_NOEXPLICTACK, |
| RF_AT_ACK_POLICY_BLOCKACK, |
| RF_AT_ACK_POLICY_NUM |
| } ENUM_RF_AT_ACK_POLICY_T; |
| |
| typedef enum _ENUM_RF_AUTOTEST_STATE_T { |
| RF_AUTOTEST_STATE_STANDBY = 0, |
| RF_AUTOTEST_STATE_TX, |
| RF_AUTOTEST_STATE_RX, |
| RF_AUTOTEST_STATE_RESET, |
| RF_AUTOTEST_STATE_OUTPUT_POWER, |
| RF_AUTOTEST_STATE_LOCA_FREQUENCY, |
| RF_AUTOTEST_STATE_CARRIER_SUPRRESION, |
| RF_AUTOTEST_STATE_NUM |
| } ENUM_RF_AUTOTEST_STATE_T; |
| |
| /******************************************************************************* |
| * P U B L I C D A T A |
| ******************************************************************************** |
| */ |
| |
| /******************************************************************************* |
| * P R I V A T E D A T A |
| ******************************************************************************** |
| */ |
| |
| /******************************************************************************* |
| * M A C R O S |
| ******************************************************************************** |
| */ |
| |
| /******************************************************************************* |
| * F U N C T I O N D E C L A R A T I O N S |
| ******************************************************************************** |
| */ |
| |
| WLAN_STATUS rftestSetATInfo(IN P_ADAPTER_T prAdapter, UINT_32 u4FuncIndex, UINT_32 u4FuncData); |
| |
| WLAN_STATUS |
| rftestQueryATInfo(IN P_ADAPTER_T prAdapter, |
| UINT_32 u4FuncIndex, UINT_32 u4FuncData, OUT PVOID pvQueryBuffer, IN UINT_32 u4QueryBufferLen); |
| |
| WLAN_STATUS rftestSetFrequency(IN P_ADAPTER_T prAdapter, IN UINT_32 u4FreqInKHz, IN PUINT_32 pu4SetInfoLen); |
| |
| #endif /* _RFTEST_H */ |