| /***************************************************************************** |
| * Copyright Statement: |
| * -------------------- |
| * This software is protected by Copyright 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). |
| * |
| *****************************************************************************/ |
| |
| #ifndef _CL1TSKLL1ADEFS_H_ |
| #define _CL1TSKLL1ADEFS_H_ |
| |
| |
| #ifdef MTK_DEV_93M_PREIT |
| #include "kal_public_defs.h" |
| #include "systyp.h" |
| #include "valapi.h" |
| |
| |
| /***************************************************************************** |
| |
| FILE NAME: cl1tskll1adefs.h |
| |
| DESCRIPTION: |
| |
| This file contains the data type definition of LL1A module in 93m |
| |
| *****************************************************************************/ |
| |
| /*---------------------------------------------------------------------------- |
| * Definitions |
| *----------------------------------------------------------------------------*/ |
| #define PNULL (void*)(0) |
| |
| #define TICK_BITMAP_LPS (0x01) |
| #define TICK_BITMAP_HPS (0x02) |
| #define TICK_BITMAP_RES (0x04) |
| #define TICK_BITMAP_MPSR (0x08) |
| |
| #define LL1A_MEAS_PURPOSE_CELL_SEARCH (0x02) |
| #define LL1A_MEAS_PURPOSE_MEASURE (0x01) |
| |
| #define C2K_SRLTE_LL1A_ON C2K_SRLTE_ON |
| |
| #ifndef MTK_PLT_ON_PC |
| //#define MTK_DEV_93M_LL1A_BYPASS_ENABLE |
| //#define C2K_LL1_STUB_TARGET_SUPPORT |
| #endif |
| |
| |
| |
| |
| |
| |
| /*---------------------------------------------------------------------------- |
| Macros Definition |
| ----------------------------------------------------------------------------*/ |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| /*---------------------------------------------------------------------------- |
| * Enums |
| *----------------------------------------------------------------------------*/ |
| /** The EVDO's Rat Status Enum. */ |
| typedef enum |
| { |
| RAT_FLIGHT, |
| RAT_STANDBY, |
| RAT_ACTIVE, |
| RAT_PSEUDO_FLIGHT, |
| RAT_PSEUDO_ACTIVE, |
| RAT_NULL |
| }RmcRatStatusT; |
| |
| /** The LL1A's Internal State Definition. */ |
| typedef enum |
| { |
| LL1A_FLIGHT, |
| LL1A_STANDBY, |
| LL1A_ACTIVE, |
| LL1A_RAT_MODE_INIT, |
| LL1A_SUSPEND |
| }Ll1aStateTypeT; |
| |
| /** The EVDO's mode status enmu. */ |
| typedef enum |
| { |
| RMC_MODE_BEGIN, |
| RMC_NULL_MODE, |
| RMC_IDLE_MODE, |
| RMC_CONNECT_MODE |
| }RmcModeStatusT; |
| |
| /** The 1xRTT's mode status enmu. */ |
| typedef enum |
| { |
| L1D_NON_DATA_CONNECTED_MODE, |
| L1D_DATA_CONNECTED_MODE |
| }L1dModeStatusT; |
| |
| /** LL1A gap offered status.*/ |
| typedef enum |
| { |
| GAP_NOT_OFFERED, |
| GAP_OFFERED, |
| WAIT_FOR_GAP_STOP_CNF |
| }Ll1aGapOfferedStatusT; |
| |
| /** LL1A autogap available status.*/ |
| typedef enum |
| { |
| AUTO_GAP_STATUS_UNKNOWN, |
| AUTO_GAP_STATUS_AVAIL, |
| AUTO_GAP_STATUS_UNAVAIL |
| }Ll1aAutoGapAvailStatusT; |
| |
| /** LL1A autogap request state.*/ |
| typedef enum |
| { |
| AUTO_GAP_NULL, |
| AUTO_GAP_REQ_PENDING, |
| AUTO_GAP_WAIT_RESULT, |
| AUTO_GAP_ACTIVE |
| }Ll1aAutoGapReqStateT; |
| |
| /** LL1A Active Gap Pattern type.*/ |
| typedef enum |
| { |
| ACTIVE_NULL_GAP, |
| ACTIVE_IDLE_GAP, |
| ACTIVE_MMO_GAP |
| }Ll1aActiveGapPatternTypeT; |
| |
| typedef struct |
| { |
| kal_uint32 RttGapLen; /* 1xRTT ps connect gap length for LTE MMO : unit ms */ |
| kal_uint32 EvdoGapLen; /* EVDO connect gap length for LTE MMO : unit ms */ |
| kal_bool RtbaMmoGapEnable; /* TRUE:LL1A have sent enable to RTBA; FALSE: LL1A have sent disable to RTBA */ |
| }Ll1aC2kConnGapT; |
| |
| /** L1d Mode Status Ind. */ |
| typedef struct |
| { |
| L1dModeStatusT L1dModeStatus; /* Non_Data/Data. */ |
| }Ll1aL1dModeStatusIndMsgT; |
| |
| /** LL1A's internal parameters definiton.*/ |
| typedef struct |
| { |
| Ll1aStateTypeT RatState; /** LL1A's internal RatState. */ |
| RmcRatStatusT RmcRatStatus; /** LL1A record the rat status of EVDO.*/ |
| RmcModeStatusT RmcModeStatus; /** RMC's Mode Status restored in LL1A. */ |
| L1dModeStatusT L1dModeStatus; /** L1D's mode status recorded in LL1A */ |
| |
| Ll1aGapOfferedStatusT GapOfferedStatus; /** Indicate the gap offered status for evdo active. */ |
| SysAirInterfaceT GapOfferedOwner; /** Indicate the gap offered owner for evdo or rtt active. */ |
| Ll1aAutoGapAvailStatusT AutoGapAvailStatus; /** Indicate the auto-gap available information for evdo standby. */ |
| Ll1aAutoGapReqStateT AutoGapReqState; /** Indicate the auto-gap request state for evdo standby. */ |
| kal_uint8 GapIgnoreFlag; /** Indicate the whether needs to ignore the active gap pattern ind or standby gap notify ind. |
| Bit0 - Ignore the active gap pattern when set as 1; Bit1 - Ignore the standby gap notify when set as 1.*/ |
| kal_bool GapServiceEnable; /** Indicate the gap service enable status. */ |
| kal_uint8 GapStopSuspendEvent; /** To record the gap stop req and gap suspend req event.*/ |
| kal_uint32 AutoGapStartTime; /** The GM need LL1A to return the auto time.*/ |
| kal_uint16 DrxCycleLen; /** LL1A Needs to record the DrxCycle Length for evdo active idle mode.*/ |
| kal_bool IsC2kOnSim2; /* to indicate EVDO in SIM1 or SIM2 */ |
| }Ll1aScheInfoT; |
| |
| //#ifdef C2K_LL1_STUB_TARGET_SUPPORT /* for NWSIM UT/IT build in elt_msg_struct.h */ |
| /** The 1xRTT's mode status enmu. */ |
| typedef enum |
| { |
| LTE_ACTIVE_NULL, |
| LTE_ACTIVE_IDLE, |
| LTE_ACTIVE_CONNECT |
| }Ll1aLteStubModeT; |
| |
| |
| /* Ll1a stub definitaion for target standby */ |
| typedef struct |
| { |
| Ll1aLteStubModeT LteMode; /* LTE active mode. */ |
| kal_bool StopGapInGapRange; /* whether need LL1A send stop gap to EVL1 during gap range */ |
| }Ll1aLteActiveInfoT; |
| |
| /* Ll1a stub definitaion for target standby */ |
| typedef struct |
| { |
| kal_uint32 NullGapLen; /* LTE active Null gap length, Max is 5000000, Uint:us . */ |
| kal_uint32 IdleGapLen; /* LTE active Idle gap length, Max is 10000000, Uint:us . */ |
| kal_uint32 ConnGapLen; /* LTE active Connect gap length, Max is 6000, Uint:us . */ |
| kal_uint32 AutoGapLen; /* LL1A send auto gap stop with this length when has offer auto gap to EVL1,Max is 600000 Uint:us . */ |
| }Ll1aStandbyGapLenIndT; |
| |
| |
| /* Ll1a stub definitaion for target standby */ |
| typedef struct |
| { |
| Ll1aLteActiveInfoT LteActiveInfo; /* LTE active info. */ |
| kal_uint16 NormalGapCnt; /* to record how many gaps have sent to EVL1 */ |
| kal_uint16 AutoGapCnt; /* to record how many gaps have sent to EVL1 */ |
| Ll1aStandbyGapLenIndT GapLength; /* to record gap length from script indication */ |
| }Ll1aStubInfoT; |
| |
| |
| //#endif |
| |
| |
| /***************************************************************************** |
| * End of File |
| *****************************************************************************/ |
| #endif |
| #endif |