blob: d855c51fadb89bd46f8f842d0934d1cc2fe8f53b [file] [log] [blame]
/*******************************************************************************
* Modification Notice:
* --------------------------
* This software is modified by MediaTek Inc. and the information contained
* herein is confidential. The software may not be copied and the information
* contained herein may not be used or disclosed except with the written
* permission of MediaTek Inc. (C) 2016
*
* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
*
* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
*
* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
*
*******************************************************************************/
/*******************************************************************************
*
* Filename:
* ---------
* cl1tstl1psif.h
*
* Project:
* --------
* MTXXXX Project
*
* Description:
* ------------
* This file contains the log IQ functions.
*
* Author:
* -------
*
*
*==============================================================================
* HISTORY
* Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*------------------------------------------------------------------------------
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
*
*
*
*
*
*
*------------------------------------------------------------------------------
* Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*==============================================================================
******************************************************************************/
#ifndef _CL1TST_L1PS_IF_H_
#define _CL1TST_L1PS_IF_H_
/*----------------------------------------------------------------------------
Include Files
----------------------------------------------------------------------------*/
#include "cl1tsteltif.h"
#include "valapi.h"
typedef enum
{
CL1_DISABLE_MODE = 0,
CL1_MAINRX_ONLY_MODE = 1,
CL1_DIVERSITYRX_ONLY_MODE,
CL1_DUAL_MODE,
CL1_TESTMODE_NUM
} Cl1AntennaTestModeT;
typedef enum
{
H_ANT = 0,
L_ANT_1,
L_ANT_2,
INVALID_ANT = 255
} Cl1MainAntennaInfoT;
typedef struct
{
Cl1AntennaTestModeT AntTestMode;
} Cl1TstAntennaTestModeMsgT;
typedef struct
{
LOCAL_PARA_HDR
Cl1TstAntennaTestModeMsgT msg;
}cl1tst_val_rx_test_mode_msg_struct;
typedef struct
{
ValCl1tstReqModeT Mode;
kal_uint16 Channel;
kal_uint8 Band;
kal_int8 TxPower;/*Q0*/
ValCl1tstTxSigTypeT TxSigType;
} Cl1tstValRxTxPwrDetectMsgT;
/** define Tx CDMA channel contorl message*/
typedef struct
{
LOCAL_PARA_HDR
Cl1tstValRxTxPwrDetectMsgT Msg;
} cl1tst_val_rxtx_pwr_detect_msg_struct;
typedef struct
{
kal_uint8 RatType;
kal_bool MonitoringReq;
} Cl1tstValGetAntInfoReqMsgT;
/** define Tx CDMA channel contorl message*/
typedef struct
{
LOCAL_PARA_HDR
Cl1tstValGetAntInfoReqMsgT Msg;
} cl1tst_val_get_ant_info_req_msg_struct;
typedef struct
{
kal_uint8 RatType;
kal_uint8 AntennaIndex;
} Cl1tstTasMainPathSwitchInfoMsgT;
/** define Tx CDMA channel contorl message*/
typedef struct
{
LOCAL_PARA_HDR
Cl1tstTasMainPathSwitchInfoMsgT Msg;
} cl1tst_tas_main_path_switch_info_msg_struct;
#ifdef __RF_SCAN_FOR_DESENSE_TEST__
typedef struct
{
kal_uint8 RatType;/*1xRTT or EVDO*/
kal_uint8 Band;
kal_uint16 Channel;
kal_bool TxOnFlag;
kal_int8 TxPower;/*Q0*/
kal_uint8 RepeatTimes;
} Cl1tstValRxScanMsgT;
/** define Tx CDMA channel contorl message*/
typedef struct
{
LOCAL_PARA_HDR
Cl1tstValRxScanMsgT Msg;
} cl1tst_val_rx_scan_msg_struct;
#endif
#ifdef __EM_MAX_TX_POWER_SUPPORT__
/*MSG_ID_CL1TST_VAL_MAX_TX_PWR_SET_MSG: define Max TxPower Adjust Offset set message : */
typedef struct
{
kal_uint8 Band;
kal_int16 MaxTxPwrOffset; /* Adjust Max TxPower for test*/
} Cl1tstValMaxTxPwrSetMsgT;
typedef struct
{
LOCAL_PARA_HDR
Cl1tstValMaxTxPwrSetMsgT Msg;
} cl1tst_val_max_tx_pwr_set_msg_struct;
#endif
#ifdef MTK_DEV_ENGINEER_MODE
/**MSG_ID_CL1TST_RCP_TX_TRANSMIT_CTRL_MSG */
typedef struct
{
RfTstControlActionT Action;
kal_uint16 Channel;
kal_uint8 Band;
kal_int8 TxPower;/*Q0*/
Cl1TstTxSigTypeT TxSigType;
} Cl1TstRcpRxTxTransmitCtrlMsgT;
/** define Tx CDMA channel contorl message*/
typedef struct
{
LOCAL_PARA_HDR
Cl1TstRcpRxTxTransmitCtrlMsgT Msg;
} cl1tst_rcp_tx_transmit_ctrl_msg_struct;
#endif
typedef struct
{
kal_uint32 SetResult;
} Cl1tstSetMobileIdRspT;
typedef struct
{
LOCAL_PARA_HDR
Cl1tstSetMobileIdRspT Msg;
} cl1tst_set_mobile_id_rsp_msg_struct;
typedef struct
{
kal_uint64 Meid;
kal_uint32 Esn;
} Cl1tstGetMobileIdRspT;
typedef struct
{
LOCAL_PARA_HDR
Cl1tstGetMobileIdRspT Msg;
} cl1tst_get_mobile_id_rsp_msg_struct;
#if (defined(MTK_PLT_ON_PC_IT))||(defined(MTK_C2K_L1_TST))
typedef struct
{
kal_bool result;/* 1->Pass, 0->Fail */
}Cl1tstPhyUtTstRptT;
typedef struct
{
LOCAL_PARA_HDR
Cl1tstPhyUtTstRptT msg;
} Cl1TstPhyutRptMsgStruct;
#endif
/*----------------------------------------------------------------------------
Global Typedefs
----------------------------------------------------------------------------*/
extern void Cl1TstRxTestModeSetCtrl(Cl1TstAntennaTestModeMsgT *MsgPtr);
extern void Cl1TstValRxTxPwrDetect(Cl1tstValRxTxPwrDetectMsgT *MsgPtr);
#ifdef __RF_SCAN_FOR_DESENSE_TEST__
extern void Cl1TstValRxScan(Cl1tstValRxScanMsgT *MsgPtr);
#endif
#ifdef MTK_DEV_ENGINEER_MODE
extern void Cl1tstRcpTxTransmitCtrl(Cl1TstRcpRxTxTransmitCtrlMsgT *MsgPtr);
#endif
extern void Cl1TstValGetAntInfoReq(Cl1tstValGetAntInfoReqMsgT *MsgPtr);
extern void Cl1TstValGetAntInfoInd(Cl1tstTasMainPathSwitchInfoMsgT *MsgPtr);
extern void Cl1TstFhcReportToFt(void);
extern Cl1AntennaTestModeT Cl1TstGetAntennaTestMode(SysCdmaBandT CurrentBand);
extern kal_bool Cl1TstDiversityOnlyTestCtrl(void);
extern kal_bool Cl1TstMainOnlyTestCtrl(void);
extern kal_bool IsTestModeValid(Cl1AntennaTestModeT AntTestMode);
extern kal_bool Cl1TstRfIsDiversityCompiledIn(void);
extern void Cl1TstEltIfTempRead(EltTstReadTempT *MsgPtr);
#if (defined(MTK_PLT_ON_PC_IT))||(defined(MTK_C2K_L1_TST))
extern void Cl1TstShPhyutReport(Cl1tstPhyUtTstRptT *MsgPtr);
#endif
extern kal_bool Cl1TstRxDiversityOnlyTestEnable(SysCdmaBandT CurrentBand);
extern kal_bool Cl1TstRfCustRxDiversityEnable(SysCdmaBandT CurrentBand);
extern void Cl1TstNstPowerUpProc(Cl1TstNstPowerUpCmdT *Ptr);
extern void Cl1TstNstTchFerCfgProc(Cl1TstNstTchFerCfgCmdT *Ptr);
extern void Cl1TstNstTxPwrMeasCfgProc(Cl1TstNstTxPwrMeasCfgCmdT *Ptr);
extern void Cl1TstNstRxPwrMeasCfgProc(Cl1TstNstRxPwrMeasCfgCmdT *Ptr);
extern void Cl1TstNstListSetCfgProc(Cl1TstNstListSetCfgCmdT *Ptr);
extern void Cl1TstNstEnterTestModeProc(Cl1TstNstEnterTestModeCmdT *Ptr);
extern void Cl1TstNstExitTestModeProc(Cl1TstNstExitTestModeCmdT *Ptr);
extern void Cl1TstNstPowerUpCnfProcess(PswNstPowerupAckRspMsgT *MsgPtr);
extern void Cl1TstNstTchFerCfgCnfProcess(PswNstTchFerCfgCnfMsgT *MsgPtr);
extern void Cl1TstNstTxMeasCfgCnfProcess(PswNstTransmitTchAckMsgT *MsgPtr);
extern void Cl1TstNstRxMeasCfgCnfProcess(PswNstRxPwrRespMsgT *MsgPtr);
extern void Cl1TstNstListSetCfgCnfProcess(PswNstListSetRespMsgT *MsgPtr);
extern void Cl1tstL4CEnterFacModeReqPro(msg_type msg_id);
extern void Cl1tstL4CEnterNorModeReqPro(msg_type msg_id);
extern void Cl1tstSetMobileIdRspPro(Cl1tstSetMobileIdRspT *Ptr);
extern void Cl1tstGetMobileIdRspPro(Cl1tstGetMobileIdRspT *Ptr);
extern void Cl1TstRxAntTestModeSetProc(Cl1TstRxAntTestModeSetCmdT *Ptr);
#endif /* _CL1TST_L1PS_IF_H_ */