| /***************************************************************************** |
| * 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). |
| * |
| *****************************************************************************/ |
| /************************************************************* |
| * |
| * This Software is the property of VIA Telecom, Inc. and may only be used pursuant to a license from VIA Telecom, Inc. |
| * |
| * Any unauthorized use inconsistent with the terms of such license is strictly prohibited. |
| * |
| * Copyright (c) 1998-2010 VIA Telecom, Inc. All rights reserved. |
| * |
| *************************************************************/ |
| #ifndef _HLPDEF_H_ |
| #define _HLPDEF_H_ |
| /***************************************************************************** |
| * |
| * FILE NAME : hlpdef.h |
| * |
| * DESCRIPTION : |
| * |
| * This include file provides unit wide regional type declarations and |
| * constants |
| * |
| * HISTORY : |
| * See Log at end of file. |
| * |
| *****************************************************************************/ |
| |
| /*---------------------------------------------------------------------------- |
| Include Files |
| ----------------------------------------------------------------------------*/ |
| #include "valapi.h" |
| #include "hlpcam.h" |
| #include "do_rcpapi.h" |
| #include "reg_base.h" |
| #include "cssapi.h" |
| #include "do_almpapi.h" |
| #include "hlpem.h" |
| #include "sim_exported_enum.h" |
| |
| /*---------------------------------------------------------------------------- |
| Global Defines and Macros |
| ----------------------------------------------------------------------------*/ |
| #define MAX_SIZE_REVERSE_BUFFER 512 |
| #define MAX_NUM_DATA_PAGE 2 |
| #define MAX_NUMBER_OF_TIMERS 20 |
| #define MAX_NUM_DECODE_RESULTS 20 |
| #define WFR_HAND_OFF_HYST_TMR 10000 |
| |
| #define START_DECODER_OPERATION 0x0001 |
| #define DEFAULT_DECODER_CONFIG 0x0350 |
| #define START_ENCODER_OPERATION 0x0001 |
| #define DEFAULT_ENCODER_CONFIG 0x0350 |
| |
| #define PPPReMap(data) ((kal_uint32)(data)) |
| #define PPP_MAX_ENC0_SRC 75 /* 75 entries max. */ |
| #define PPP_MAX_ENC1_SRC 150 /* 150 entries max. */ |
| #define PPP_MAX_RESULT0 75 /* 75 entries max. */ |
| #define PPP_MAX_RESULT1 150 /* 150 entries max. */ |
| #define PPP_MAX_LLD0 480 /* 480 entries max. */ |
| #define PPP_MAX_LLD1 480 /* 480 entries max. */ |
| |
| #define PPP_MAX_DEST0 0x8000 /* 32K bytes. */ |
| #define PPP_MAX_DEST1 0x4000 /* 64K bytes. */ |
| |
| /*--------------------------------- |
| Foward path : ENC0 & DEC0 |
| Reverse path: ENC1 & DEC1 |
| ----------------------------------*/ |
| #define PPPHA_BASE_ADDR BASE_MADDR_MDINFRA_PPPHA |
| #define PPP_ENC0_SRC_ADR (PPPHA_BASE_ADDR + 0x0000) |
| #define PPP_ENC0_DST_ADR (PPPHA_BASE_ADDR + 0x0004) |
| #define PPP_ENC0_TRNSCNT (PPPHA_BASE_ADDR + 0x0008) |
| #define PPP_ENC0_CNFG (PPPHA_BASE_ADDR + 0x000C) |
| #define PPP_ENC0_CNTL (PPPHA_BASE_ADDR + 0x0010) |
| #define PPP_ENC0_ACCM (PPPHA_BASE_ADDR + 0x0014) |
| #define PPP_ENC0_BYTECNT (PPPHA_BASE_ADDR + 0x0018) |
| #define PPP_ENC0_BYTES_TOT (PPPHA_BASE_ADDR + 0x001C) |
| |
| #define PPP_ENC1_SRC_ADR (PPPHA_BASE_ADDR + 0x0040) |
| #define PPP_ENC1_DST_ADR (PPPHA_BASE_ADDR + 0x0044) |
| #define PPP_ENC1_TRNSCNT (PPPHA_BASE_ADDR + 0x0048) |
| #define PPP_ENC1_CNFG (PPPHA_BASE_ADDR + 0x004C) |
| #define PPP_ENC1_CNTL (PPPHA_BASE_ADDR + 0x0050) |
| #define PPP_ENC1_ACCM (PPPHA_BASE_ADDR + 0x0054) |
| #define PPP_ENC1_BYTECNT (PPPHA_BASE_ADDR + 0x0058) |
| #define PPP_ENC1_BYTES_TOT (PPPHA_BASE_ADDR + 0x005C) |
| |
| #define PPP_DEC0_LLD_ADR (PPPHA_BASE_ADDR + 0x0080) |
| #define PPP_DEC0_DST_ADR (PPPHA_BASE_ADDR + 0x0084) |
| #define PPP_DEC0_TRNSCNT (PPPHA_BASE_ADDR + 0x0088) |
| #define PPP_DEC0_CNFG (PPPHA_BASE_ADDR + 0x008C) |
| #define PPP_DEC0_CNTL (PPPHA_BASE_ADDR + 0x0090) |
| #define PPP_DEC0_RES_ADR (PPPHA_BASE_ADDR + 0x0094) |
| #define PPP_DEC0_MAX_ADR (PPPHA_BASE_ADDR + 0x0098) |
| #define PPP_DEC0_CRT_ADR (PPPHA_BASE_ADDR + 0x009C) |
| |
| #define PPP_DEC1_LLD_ADR (PPPHA_BASE_ADDR + 0x00C0) |
| #define PPP_DEC1_DST_ADR (PPPHA_BASE_ADDR + 0x00C4) |
| #define PPP_DEC1_TRNSCNT (PPPHA_BASE_ADDR + 0x00C8) |
| #define PPP_DEC1_CNFG (PPPHA_BASE_ADDR + 0x00CC) |
| #define PPP_DEC1_CNTL (PPPHA_BASE_ADDR + 0x00D0) |
| #define PPP_DEC1_RES_ADR (PPPHA_BASE_ADDR + 0x00D4) |
| #define PPP_DEC1_MAX_ADR (PPPHA_BASE_ADDR + 0x00D8) |
| #define PPP_DEC1_CRT_ADR (PPPHA_BASE_ADDR + 0x00DC) |
| |
| #define PPP_DMA_SUSPEND (PPPHA_BASE_ADDR + 0x00E0) |
| |
| /* #define PPP_SRAM_ACCESS 0xABC0001C */ |
| |
| #define HLP_DEFAULT_ACCM 0xFFFFFFFF |
| |
| #define HLP_BURST_LENGTH_4 |
| #define HLP_HA_DEC_DST_BURST_LEN_MASK 0xFF3F |
| |
| #if defined(HLP_BURST_LENGTH_8) /* burst length 8 */ |
| #define HLP_DEFAULT_HA_ENC_CFG 0x03a0 |
| #define HLP_HA_32BIT_ENC_CFG 0x03a2 |
| #define HLP_HA_16BIT_ENC_CFG 0x03a1 |
| |
| #define HLP_DEFAULT_HA_DEC_CFG 0x07a0 |
| #define HLP_HA_32BIT_DEC_CFG 0x07a2 |
| #define HLP_HA_16BIT_DEC_CFG 0x07a1 |
| |
| #elif defined(HLP_BURST_LENGTH_4) /* burst length 4 */ |
| #define HLP_DEFAULT_HA_ENC_CFG 0x0350 |
| #define HLP_HA_16BIT_ENC_CFG 0x0351 |
| |
| #define HLP_HA_32BIT_ENC_CFG 0x0368 |
| |
| #define HLP_DEFAULT_HA_DEC_CFG 0x07a0 |
| #define HLP_HA_32BIT_DEC_CFG 0x07a2 |
| #define HLP_HA_16BIT_DEC_CFG 0x07a1 |
| |
| #else /* non-burst 1 */ |
| #define HLP_DEFAULT_HA_CFG 0x0300 |
| #define HLP_HA_32BIT_CFG 0x0302 |
| #define HLP_HA_16BIT_CFG 0x0301 |
| #endif |
| |
| #define TCP_TAG_NOT_PURE_ACK 38 |
| #define TCP_TAG_PURE_ACK 49 |
| #define TCP_TAG_RETRANSMIT 50 |
| |
| |
| /* Define Macros that manages the PPP_DMA_SUSPEND register (This feature is not used) */ |
| #define PppDmaSuspend() HwdWrite(PPP_DMA_SUSPEND, 0x0001) |
| #define PppDmaResume() HwdWrite(PPP_DMA_SUSPEND, 0x0000) |
| |
| #define HLP_UIM_MAX_PROFILE_NUM 16 |
| #define HLP_UIM_MAX_MIP_ADD_ACT_NAI_NUM 16 |
| |
| #define WFR_PPP_RSP_TM 20000 /* 250 seconds, seems too long. changed to 10 seconds by Fenix */ |
| #define WFR_NWK_RSP_TM 15000 |
| #define WFR_USER_RSP_TM 60000 /*1 minute for call setup*/ |
| |
| /* memory size occupied by ppp header, 2B as its data type is kal_uint16 */ |
| #define HLP_PPP_HEADER_DATA_TYPE_SIZE sizeof(kal_uint16) |
| |
| extern kal_spinlockid chlp_spinlock; |
| |
| #if defined (__SMP_ARCH__) |
| #define CHLP_TAKE_SPINLOCK() kal_take_spinlock(chlp_spinlock, KAL_INFINITE_WAIT) |
| #define CHLP_GIVE_SPINLOCK() kal_give_spinlock(chlp_spinlock) |
| #else |
| #define CHLP_TAKE_SPINLOCK() |
| #define CHLP_GIVE_SPINLOCK() |
| #endif /* __SMP_ARCH__ */ |
| |
| enum |
| { |
| HO_NULL, |
| HO_TO_DO, |
| HO_TO_1X, |
| HO_TO_EHRPD |
| }; |
| |
| typedef enum |
| { |
| CAM_SYS_HSPD, |
| CAM_SYS_HRPD, |
| CAM_SYS_EHRPD, |
| CAM_SYS_MAX |
| } CamSysTypeT; |
| |
| typedef enum |
| { |
| PPPHA_NOT_INITIALIZED, |
| PPPHA_CLOSE_TO_END_DEC0, |
| PPPHA_CLOSE_TO_END_DEC1, |
| PPPHA_FLOW_CTRL_TURNED_ON, |
| PPPHA_BUF_FAIL, |
| PPPHA_CRC_FAIL, |
| PPPHA_DEST_ADDR_NULL, |
| PPPHA_STATUS_MAX |
| } PpphaStatusT; |
| |
| typedef enum |
| { |
| PPPHA_ENC0,/*Rev Encode*/ |
| PPPHA_DEC0,/*Fwd Decode*/ |
| PPPHA_ENC1,/*Fwd Encode*/ |
| PPPHA_DEC1 /*Rev Decode*/ |
| } PpphaPhaseT; |
| |
| typedef enum |
| { |
| DATA_SERVICE_SIP, |
| DATA_SERVICE_MIP, |
| DATA_SERVICE_HRPD, |
| DATA_SERVICE_3GPDEXT, |
| DATA_SERVICE_IPv6, |
| DATA_SERVICE_UST_ACL, |
| DATA_SERVICE_EST_ACL |
| } DataServiceTypeT; |
| |
| typedef enum |
| { |
| HLP_DATA_DIR_UL, |
| HLP_DATA_DIR_DL, |
| HLP_DATA_DIR_MAX |
| }HlpDataDirEnum; |
| |
| typedef enum |
| { |
| HLP_NV_IP_COUNTER_ERR, |
| HLP_NV_IP_COUNTER_LEN_ERR, |
| HLP_NV_HSPD_DATA_ERR, |
| HLP_NV_HSPD_DATA_LEN_ERR, |
| HLP_NV_HSPD_SECURE_ERR, |
| HLP_NV_HSPD_SECURE_LEN_ERR, |
| HLP_NV_EHRPD_DATA_ERR, |
| HLP_NV_EHRPD_DATA_LEN_ERR, |
| HLP_NV_DMU_PUBKEY_ERR, |
| HLP_NV_DMU_PUBKEY_LEN_ERR, |
| HLP_NV_ERR_MAX |
| } HlpNvRdWtErrT; |
| |
| typedef enum |
| { |
| NO_SILENTLY_RETRY, /*don't retry by modem, directly notify AP*/ |
| SILENTLY_AFRESH_CONN,/*re-establish connection*/ |
| SILENTLY_AFRESH_PS,/*re-establish connection and re-nego ppp*/ |
| SILENTLY_PPP_RENEGO /*re-establish PPP*/ |
| } HlpRecoverFlagT; |
| |
| typedef enum |
| { |
| HLP_PROTOCOL_COMPRESSION, /* Protocol Compression */ |
| HLP_ADDRESS_CONTROL_COMPRESSION, /* Address/Control Compression */ |
| HLP_PPP_HEADER_ENC_GETBUFF_NULL |
| }HlpPppHeaderEncWarningT; |
| |
| typedef struct |
| { |
| kal_uint16 tcpTag; |
| kal_uint32 tcpPort; |
| kal_uint32 srcIpAddr; |
| kal_uint32 dstIpAddr; |
| }socketInfoT; |
| |
| typedef struct |
| { |
| CpBufferT* sourceAddr; |
| CpBufferT* destAddr; |
| kal_uint8* directSrcAddr; |
| kal_uint32 xferCount; |
| kal_uint32 configReg; |
| #ifdef SYS_OPTION_PPPHA_ENC_ENH |
| kal_uint8 leadingPad; |
| kal_uint8 tailingPad; |
| #endif |
| kal_uint32 accmInUse; |
| kal_uint16 encodedLen; |
| kal_uint16 sourceOffset; |
| kal_bool isCpBufPtr; |
| AppSubTypeT AppSubType; |
| socketInfoT dstSocket; |
| } HlpPPPHaEncTableT; |
| |
| typedef struct |
| { |
| ExeRspMsgT RspInfo; |
| } HlpGetIPServiceTypeMsgT; |
| |
| typedef struct |
| { |
| kal_uint8 pureAckTagRateTD; |
| kal_uint8 pureAckTagRate; |
| } HlpEtsPureAckRateMsgT; |
| |
| typedef struct |
| { |
| kal_uint32 tmrStatusHspd; |
| kal_uint32 tmrSysIdHspd[MAX_NUM_SYS_TMR_ENTRY]; |
| kal_uint32 tmrStatusHrpd; |
| kal_uint32 tmrSysIdHrpd[MAX_NUM_SYS_TMR_ENTRY]; |
| kal_uint32 tmrStatusEhrpd; |
| kal_uint32 tmrSysIdEhrpd[MAX_NUM_SYS_TMR_ENTRY]; |
| } HlpEtsThrottlingTmrStatusMsgT; |
| |
| #define HLP_UIM_MAX_PROFILE_NUM 16 |
| #define HLP_UIM_MAX_MIP_ADD_ACT_NAI_NUM 16 |
| typedef struct |
| { |
| kal_uint8 MaxNumNAI; |
| kal_uint8 MaxNAILen; |
| kal_uint8 MaxSSLen; |
| kal_uint8 AuthAlgo; |
| } HlpUim3GPDSipCapT; |
| |
| typedef struct |
| { |
| kal_uint8 MaxNumNAI; |
| kal_uint8 MaxNAILen; |
| kal_uint8 MaxMNAAASSLen; |
| kal_uint8 MNAAAAuthAlgo; |
| kal_uint8 MaxMNHASSLen; |
| kal_uint8 MNHAAuthAlgo; |
| } HlpUim3GPDMipCapT; |
| |
| typedef struct |
| { |
| kal_uint8 NAIEntryIndex; |
| kal_uint8 NAILen; |
| kal_uint8 NAI[MN_NAI_MAX_SIZE]; |
| kal_uint8 AuthAlgo; |
| } HlpSipUserProfileT; |
| |
| typedef struct |
| { |
| kal_uint8 NumNAI; |
| HlpSipUserProfileT SipUserProfile[HLP_UIM_MAX_PROFILE_NUM]; |
| } HlpUim3GPDSipUserProfileT; |
| |
| typedef struct |
| { |
| kal_uint8 NAIEntryIndex; |
| kal_uint8 NAILen; |
| kal_uint8 NAI[MN_NAI_MAX_SIZE]; |
| kal_bool TBit; |
| kal_uint32 HomeAddress; |
| kal_uint32 PrimaryHomeAgent; |
| kal_uint32 SecondaryHomeAgent; |
| kal_uint8 MNAAAAuthAlgo; |
| kal_bool MNAAASpiInd; |
| kal_uint32 MNAAASpi; |
| kal_uint8 MNHAAuthAlgo; |
| kal_bool MNHASpiInd; |
| kal_uint32 MNHASpi; |
| } HlpMipUserProfileT; |
| |
| typedef struct |
| { |
| kal_bool RetryInfoIncluded; |
| kal_uint8 MaxNumRetry; |
| kal_uint8 FirstRetryTimeOut; |
| kal_uint8 ReregThreshold; |
| kal_uint8 NumNAI; |
| HlpMipUserProfileT MipUserProfile[HLP_UIM_MAX_PROFILE_NUM]; |
| } HlpUim3GPDMipUserProfileT; |
| |
| typedef struct |
| { |
| kal_uint8 ActNAIEntryIndex; |
| kal_uint8 NumAddActNAI; |
| kal_uint8 AddActNaiEntryIndex[HLP_UIM_MAX_MIP_ADD_ACT_NAI_NUM]; |
| } HlpUim3GPDMipStatusT; |
| |
| typedef struct |
| { |
| kal_uint8 ActNAIEntryIndex; |
| kal_uint8 SSLen; |
| kal_uint8 SS[32]; |
| } HlpSipPapSSParmsT; |
| |
| typedef struct |
| { |
| kal_uint8 NumNAI; |
| HlpSipPapSSParmsT SipPapSSParms[HLP_UIM_MAX_PROFILE_NUM]; |
| } HlpUim3GPDSipPapSSParmsT; |
| |
| typedef struct |
| { |
| kal_uint8 NAIEntryIndex; |
| kal_uint32 Application; |
| kal_uint8 Priority; |
| kal_uint8 DataRateMode; |
| kal_uint8 DataBearer; |
| } HlpUserProfileExtParamsT; |
| |
| typedef struct |
| { |
| kal_uint8 NumNAI; |
| HlpUserProfileExtParamsT UppExtParams[HLP_UIM_MAX_PROFILE_NUM]; |
| } HlpUim3GPDUserProfileExtT; |
| |
| typedef struct |
| { |
| kal_uint16 InitNeighborSolicitDelayTime; |
| kal_uint16 SolicitInterval; |
| kal_uint16 ReSolicitInterval; |
| kal_uint16 MaxSolicitAttempt; |
| kal_uint16 MaxReSolicitAttempt; |
| kal_uint16 PreRAExpiryReSolicitTime; |
| kal_uint8 IidInfo[8]; |
| kal_uint8 Flags; |
| } HlpUim3GPDIpv6capT; |
| |
| typedef struct |
| { |
| kal_uint8 Flags; |
| kal_uint8 KeepAliveIdleTimer; |
| } HlpUim3GPDTcpConfigT; |
| |
| typedef struct |
| { |
| kal_uint8 DataDormTimer; |
| kal_uint8 EpzidTypeInfo; |
| kal_uint8 HystActTime; |
| } HlpUim3GPDDgcT; |
| |
| typedef struct |
| { |
| kal_uint8 MaxNaiLen; |
| kal_uint8 MaxSsLen; |
| kal_uint8 AuthAlgo; |
| } HlpUimHrpdAccessAuthCapT; |
| |
| typedef struct |
| { |
| kal_uint8 NaiLen; |
| kal_uint8 Nai[HLP_MAX_USRID_LEN]; |
| kal_uint8 AuthAlgo; |
| } HlpUimHrpdAccessAuthUppT; |
| |
| typedef struct |
| { |
| /* this field indicates the EFcst, EFust, EFest file be used or not |
| * used only for UIM file test critical checking |
| * KAL_FALSE, not use the files |
| * KAL_TRUE, use the files |
| * default value should be KAL_FALSE |
| */ |
| kal_bool TurnOnCheck; |
| kal_bool SipEnabled; |
| kal_bool MipEnabled; |
| kal_bool HrpdEnabled; |
| kal_bool Msg3gpdExtEnabled; |
| kal_bool Ipv6Enabled; |
| /* EFust, 6F38, byte5.bit3 */ |
| kal_bool UstAclEnabled; |
| /* EFest, 6F56, byte1.bit3 */ |
| kal_bool EstAclEnabled; |
| } HlpUimServiceTableT; |
| |
| typedef struct |
| { |
| kal_bool Flag; |
| kal_uint16 FileId[2]; |
| kal_bool IsNeededForCTCard; |
| } HlpUimFileTableT; |
| |
| typedef struct |
| { |
| /*-------------card status----------------*/ |
| kal_uint8 CardStatus; |
| /*-------------card index----------------*/ |
| sim_interface_enum sim_index; |
| /*-------------card type-----------------*/ |
| kal_bool is_uicc_card; |
| kal_bool is_omh_card; |
| kal_bool is_ct_card; |
| /*-------------file read flag-------------*/ |
| /* read index point to next file index */ |
| kal_uint8 ReadIndex; |
| kal_bool ReadDone; |
| /* this flag is ugly! to solve the duplicated 0x6F56 EF ID |
| * in RUIM/CSIM, it's EFhrpdcap, in USIM, it's EFest |
| * in HLP_UIM_FILE_CHANGED_MSG, if 0x6F56 received, both files are read |
| * EFhrpdcap will always be handled before EFest |
| * default value is KAL_FALSE, once EFhrpdcap is handled, this flag is set to KAL_TRUE |
| * after the whole read procedure is finished, this flag is reset to KAL_FALSE |
| */ |
| kal_bool Cur6F56IsUsimFile; |
| |
| /*-------------service table--------------*/ |
| HlpUimServiceTableT srvtbl; |
| |
| /*-------------operation mode-------------*/ |
| /* EFme3gpdopc */ |
| kal_uint8 opc; |
| /* EF3gpdopm */ |
| kal_uint8 opm; |
| |
| /*----------------simpe IP----------------*/ |
| /* EFsipsp */ |
| kal_uint8 sipsp; |
| /* EFsipcap */ |
| HlpUim3GPDSipCapT sipcap; |
| /* EFsipupp */ |
| HlpUim3GPDSipUserProfileT sipupp; |
| /* EFsippapss */ |
| HlpUim3GPDSipPapSSParmsT sippapss; |
| |
| /*----------------mobile IP----------------*/ |
| /* EFmipsp */ |
| HlpUim3GPDMipStatusT mipsp; |
| /* EFmipcap */ |
| HlpUim3GPDMipCapT mipcap; |
| /* EFmipupp */ |
| HlpUim3GPDMipUserProfileT mipupp; |
| |
| /*-------------extension files-------------*/ |
| /* EFmipflags */ |
| kal_uint8 mipflags; |
| /* EF3gpduppext */ |
| HlpUim3GPDUserProfileExtT uppext; |
| /* EFtcpconfig */ |
| HlpUim3GPDTcpConfigT tcpcfg; |
| /* EFdgc */ |
| HlpUim3GPDDgcT dgc; |
| /* EFipv6cap */ |
| HlpUim3GPDIpv6capT ipv6cap; |
| |
| /*---------HRPD Access Auth files---------*/ |
| /* EFhrpdcap */ |
| HlpUimHrpdAccessAuthCapT hrpdcap; |
| /* EFhrpdupp */ |
| HlpUimHrpdAccessAuthUppT hrpdupp; |
| /* EFimsi */ |
| IMSIType imsi; |
| kal_bool bUSIMIMSINeedUpdate; |
| /* EFad */ |
| kal_uint8 MncLen; |
| } HlpUimFilesT; |
| |
| typedef void (*hlp_timer_expiry_func)(hlp_timer_enum timer_id); |
| |
| typedef struct |
| { |
| eventid id; |
| hlp_timer_enum timer_id; |
| kal_bool pending; |
| kal_uint32 duration_ms; |
| hlp_timer_expiry_func expiry_func; |
| }hlp_es_struct; |
| |
| typedef struct |
| { |
| peer_buff_struct *head; |
| peer_buff_struct *tail; |
| }hlp_sll_ul_queue_struct; |
| |
| typedef struct |
| { |
| peer_buff_struct *head; |
| peer_buff_struct *tail; |
| kal_uint8 pdn_id; |
| }hlp_sll_dl_queue_struct; |
| |
| /*---------------------------------------------------------------------------- |
| Global Variable Declarations |
| ----------------------------------------------------------------------------*/ |
| extern kal_bool PppRenego; |
| |
| /*---------------------------------------------------------------------------- |
| Function Declarations |
| ----------------------------------------------------------------------------*/ |
| void HlpConnectionIndMsg(void *MsgDataP, kal_bool atDONetwork); |
| void Hlp1XMTConnInNullStIndMsg(void *MsgDataP); |
| void HlpConnectionReleasedIndMsg(void *MsgDataP); |
| void HlpConnectionFailedIndMsg(void *MsgDataP); |
| void HlpPppConnectReqMsg(void *MsgDataP); |
| void HlpPppDisconnectReqMsg(void *MsgDataP); |
| void HlpPppUpdateReqMsg(void *MsgDataP); |
| void HlpPppReleaseReqMsg(void *MsgDataP); |
| void HlpPppStatusMsg(void *MsgDataP); |
| void HlpUmAppInstance(void * MsgDataPtr); |
| void HlpPppAnswerReqMsg(void *MsgDataP); |
| void HlpRlpResetIndMsg(void *MsgDataP); |
| void HlpFwdDataIndSig(void); |
| void HlpRevDataIndSig(void); |
| void HlpRlpRevDataRspMsg(void *MsgDataP); |
| void HlpRlpIdleIndMsg(void *MsgDataP); |
| void HlpRlpOpenFailedMsg(void *MsgDataP); |
| void HlpRlpRevDataRspMsg(void *MsgDataP); |
| void HlpUpbConnStatusMsg(void *MsgDataP); |
| void HlpUpbConnReqMsg(void* MsgDataP); |
| void HlpAiwBeginUdpMsg(void* MsgDataP); |
| void HlpUpbEndMsg(void* MsgDataP); |
| void HlpUpbSendDataMsg(void* MsgDataP); |
| void HlpUpbDormantReq(void *MsgDataP); |
| void HlpUpbRecvDataRspMsg(void *MsgDataP); |
| void HlpRmPppBeginMsg(void* MsgDataP); |
| void HlpRmDisconnectInd(void *MsgDataP); |
| void HlpRmConnectStatusMsg(void *MsgDataP); |
| void HlpServiceStatusMsg(void *MsgDataPtr); |
| void HlpUmPppBeginMsg(void* MsgDataP); |
| void HlpUmRestartRlpMsg(void* MsgDataP); |
| void HlpUmDisconnMsg(void* MagDataP); |
| void HlpDormantReconnectReqMsg(void* MagDataP); |
| void HlpUmAbortReqMsg(void* MagDataP); |
| void HlpMipUmPppStatusMsg(void * MsgDataP); |
| void HlpPktZoneIdMsg(void* MagDataP); |
| void HlpTimerExpiredMsg(void* MsgDataP); |
| void HlpTestBrowserConnectMsg(void* MsgDataP); |
| void HlpTcpbConnReqMsg(void* MsgDataP); |
| void HlpTcpbConnEndMsg(void* MsgDataP); |
| void HlpTcpbDataSendReqMsg(void* MsgDataP); |
| void HlpTcpbDataRecvRspMsg(void *MsgDataP); |
| void HlpSocketCreateMsg(void *MsgDataP); |
| void HlpSocketBindMsg(void *MsgDataP); |
| void HlpSocketConnectMsg(void *MsgDataP); |
| void HlpSocketCloseMsg(void *MsgDataP); |
| void HlpSocketSendReqMsg(void *MsgDataP); |
| void HlpSocketListenMsg(void *MsgDataP); |
| void HlpSocketOptionMsg(void *MsgDataP); |
| void HlpSocketShutDownMsg(void *MsgDataP); |
| void HlpSocketLingerMsg(void *MsgDataP); |
| void HlpUartReadyMsg(void *MsgDataP); |
| void HlpMipInit(void); |
| void HlpMipRrpMsg(void *MsgDataP); |
| void HlpMipAgentAdvMsg(void *MsgDataP); |
| void HlpMipUmPppStatusMsg(void *MsgDataP); |
| void HlpOosaIndMsg(void *MsgDataPtr); |
| void HlpSystemQueryRspMsg(void* MsgDataPtr); |
| void HlpSysSelPrefSetMsg(void* MsgDataPtr); |
| void HlpUmPppReNegotiationMsg(void *MsgDataPtr); |
| void HlpSetNetworkOrRelayModeMsg(void *MsgDataPtr); |
| void HlpAlmpConnReleased(void); |
| void HlpAlmpConnFailed(void); |
| void HlpXoffRspRcvdMsg(void); |
| #ifdef KDDI_EXTENSIONS |
| extern void HlpDORetryTmrExp(void); |
| #endif |
| void HlpDormantReqMsg(void); |
| void HlpValCtaUpdateReqMsg(HlpValCtaUpdateReqMsgT* MsgDataPtr); |
| void HlpSetHoFlag(kal_uint8 direction); |
| kal_uint8 HlpGetHoFlag(void); |
| extern void HlpVoiceCallReleaseIndMsg(void); |
| #ifdef MTK_DEV_C2K_IRAT |
| void HlpSetHO21xFlag(kal_bool bHO21xEnabledFlag); |
| kal_bool HlpGetHO21xFlag(void); |
| void HlpSetByPassThresholdCheckFlag(kal_bool bNewFlag); |
| kal_bool HlpGetByPassThresholdCheckFlag(void); |
| #endif /* MTK_DEV_C2K_IRAT */ |
| void HlpValDMUVSetMsg(void *MsgDataPtr); |
| void HlpDOInactivityExprMsg(void); |
| #ifdef MTK_DEV_C2K_IRAT |
| void HlpSendPppMtu2Val(void); |
| #endif |
| HlpDataChRetStatus HlpWrite(RmDataCpBuffDescT *Buff); |
| HlpDataChRetStatus HlpRead(RmDataCpBuffDescT *Buff); |
| kal_uint16 GetRevHlpDataSize(void); |
| kal_uint16 HlpCheckRxReadyStatus(void); |
| void HlpAccessStreamStart(void); |
| void HlpGetPPPConnParams(PppConnParamsT *connPtr); |
| |
| /* System ID Change message function prototypes */ |
| void HlpSidNidChangeIndMsg(void *MsgDataPtr); |
| void HlpPktZoneIdChangeIndMsg(void *MsgDataPtr); |
| void HlpSubnetIdChangeIndMsg(void *MsgDataPtr); |
| void HlpColorCodeIndMsg(void *MsgDataP); |
| |
| /* Hlpdbm function prototypes */ |
| void HlpDbmHspdSegInitReq(void); |
| void HlpNvHspdSegDataReadHandler(void); |
| void HlpParmSetMsg(void *MsgDataPtr); |
| void hlp_elt_set_parm_msg(ilm_struct* ilm_ptr, HlpParmOperationId ParmId); |
| |
| void HlpNvSecureDataReadHandler(void); |
| void HlpParmGetMsg(void *MsgDataPtr); |
| void hlp_elt_get_parm_msg(ilm_struct* ilm_ptr, HlpParmOperationId ParmId); |
| void HlpDbmGetEsnMeidRspMsg(void *MsgDataPtr); |
| void HlpDmuSecureDataChangedMsg(void *MsgDataP); |
| void HlpPswMDNUpdatedMsg(void *MsgDataPtr); |
| void HlpSetMipPasswordMsg(void *MsgDataPtr); |
| kal_uint8 HlpDbmGetMipMode(void); |
| kal_uint8 HlpDbmGetHaAuthMode(void); |
| kal_uint8 HlpDbmGetVJCompressionEnabled(void); |
| void HlpDbmGetPppUmCfg(HlpPppUmCfg_APIStruct *HlpPppUmCfg); |
| void HlpDbmGetPppRmCfg(HlpPppRmCfg_APIStruct *HlpPppRmCfg); |
| void HlpDbmGetTcpCfg(HlpTcpCfg_APIStruct *HlpTcpCfg); |
| kal_bool HlpDbmGetHspdLocked(void); |
| void HlpNvEHrpdDataReadHandler(void); |
| |
| void HlpDormancyTimersSetMsg(void *MsgDataPtr); |
| void HlpDORetryTimersSetMsg(void *MsgDataPtr); |
| |
| /* Timer expiration function prototypes */ |
| void HlpTimerStartReq(hlp_timer_enum timer_id); |
| void HlpTimerKillReq(hlp_timer_enum timer_id); |
| void HlpTimerSetDuration(hlp_timer_enum timer_id, kal_uint32 duration); |
| void HlpTimerSetPending(hlp_timer_enum timer_id, kal_bool pending); |
| kal_bool HlpTimerIsActive(hlp_timer_enum timer_id); |
| kal_bool HlpTimerIsPending(hlp_timer_enum timer_id); |
| kal_uint32 HlpTimerGetDuration(hlp_timer_enum timer_id); |
| void WfrFastConnTimeUp(hlp_timer_enum timer_id); |
| void HlpWfsSysRspTimeup(hlp_timer_enum timer_id); |
| void HlpWfrUimAuthRspTimeup(hlp_timer_enum timer_id); |
| void WfrRmConnectionTimeUp(hlp_timer_enum timer_id); |
| void DataRetryTimeUp(hlp_timer_enum timer_id); |
| void DoRetryTimeUp(hlp_timer_enum timer_id); |
| void HlpWaitForIratReleaseTimerExp(hlp_timer_enum timer_id); |
| void HlpWfrFallBack1XConnectTimeUp(hlp_timer_enum timer_id); |
| void HlpSetC109LowExp(hlp_timer_enum timer_id); |
| void HlpProcThrottlingTmrExp(hlp_timer_enum timer_id); |
| void DormantReconnectBackOffTimerUp(hlp_timer_enum timer_id); |
| void HlpPppConnectBackOffTimerExp (hlp_timer_enum timer_id); |
| void HlpFiveMinsTimeOut(hlp_timer_enum timer_id); |
| void HlpForceCpIdle(hlp_timer_enum timer_id); |
| void HlpCloseConnAtDO(hlp_timer_enum timer_id); |
| void HlpMipTimerRrpRegTimeUp(hlp_timer_enum timer_id); |
| void HlpMipTimerRrpDeregTimeUp(hlp_timer_enum timer_id); |
| void HlpMipTimerRrqRegTimeUp(hlp_timer_enum timer_id); |
| void HlpMipTimerAgentAdvTimeUp(hlp_timer_enum timer_id); |
| void HlpMipTimerLifetimeTimeUp(hlp_timer_enum timer_id); |
| void HlpIp6TestTmrExp(hlp_timer_enum timer_id); |
| void natTimerExpire(hlp_timer_enum timer_id); |
| void HlpPendingRedailA12TmrExp(hlp_timer_enum timer_id); |
| void HlpSetPendingRedailA12Flag(kal_bool flag); |
| kal_bool HlpGetPendingRedailA12Flag(void); |
| void HlpRsvasAbortReqTimeUp(hlp_timer_enum timer_id); |
| |
| /* Throttling function prototypes */ |
| void HlpThrottSetEnable(kal_bool enable); |
| kal_bool HlpThrottGetEnable(void); |
| void HlpThrottSetCurrSys(CamSysTypeT system); |
| CamSysTypeT HlpThrottGetCurrSys(void); |
| kal_bool HlpThrottIsActive(CamSysTypeT SystemType); |
| void HlpThrottLogSysId(CamSysTypeT SystemType); |
| void HlpThrottInit(void); |
| void HlpThrottResetAll(void); |
| void HlpThrottStop(CamSysTypeT SystemType); |
| void HlpThrottStart(void); |
| |
| /* IPv6 function prototypes */ |
| #ifdef CBP7_EHRPD |
| kal_bool EapAkaFailureByNwkRejFlagGet(void); |
| void EapAkaFailureByNwkRejFlagSet(kal_bool bRejByNetworkNotification); |
| #endif |
| |
| void HlpFwdPktDataIndSig( void ); |
| |
| /* PPP free mode support */ |
| void HLPRouteTypeSet(HlpPppRouteTypeE type); |
| HlpPppRouteTypeE HLPRouteTypeGet(void); |
| /* TCP/IP filter-mux function prototypes */ |
| void IP_Add_TCP_FilterMux(MuxInfo *Info, kal_uint32 address, kal_uint16 port); |
| void IP_Delete_TCP_FilterMux(MuxInfo *Info, kal_uint32 address, kal_uint16 port); |
| kal_bool CheckTcpPacketWithTcpFilterMux(MuxInfo *Info, kal_uint32 address, kal_uint16 port, kal_bool fragmentIpPkt); |
| void IP_Init_TCP_FilterMux(MuxInfo *Info); |
| |
| /* UIM function prototypes */ |
| void HlpUimNotifyRegisterMsg(void *MsgDataPtr); |
| void HlpDbmPowerCycleMsg(void); |
| void HlpUim3GPDDataUpdate(void); |
| void HlpUimGet3GPDOpcRspMsg(void *MsgDataPtr); |
| void HlpUimUpdate3GPDOpcRspMsg(void *MsgDataPtr); |
| void HlpUimGet3GPDOpmRspMsg(void *MsgDataPtr); |
| void HlpUimUpdate3GPDOpmRspMsg(void *MsgDataPtr); |
| void HlpUimGet3GPDSipCapRspMsg(void *MsgDataPtr); |
| void HlpUimGet3GPDMipCapRspMsg(void *MsgDataPtr); |
| void HlpUimGet3GPDSipUPPRspMsg(void *MsgDataPtr); |
| void HlpUimGet3GPDMipUPPRspMsg(void *MsgDataPtr); |
| void HlpUimGet3GPDSipSPRspMsg(void *MsgDataPtr); |
| void HlpUimUpdate3GPDSipSPRspMsg(void *MsgDataPtr); |
| void HlpUimGet3GPDMipSPRspMsg(void *MsgDataPtr); |
| void HlpUimUpdate3GPDMipSPRspMsg(void *MsgDataPtr); |
| void HlpUimGet3GPDSipPapSSRspMsg(void *MsgDataPtr); |
| void HlpUimUpdate3GPDSipPapSSRspMsg(void *MsgDataPtr); |
| void HlpUimUpdate3GPDImsiRspMsg(void *MsgDataPtr, kal_bool NeedToReadOtherFile); |
| void HlpUimUpdate3GPDAdRspMsg(void *MsgDataPtr); |
| kal_uint8 HlpUimGetMipMnHaAuthAlgorithm(void); |
| |
| /* System ID function prototypes */ |
| void HlpSetCurrentSidNid(kal_uint16 sid, kal_uint16 nid); |
| void HlpSetCurrentPid(kal_uint8 pid); |
| kal_uint8 *HlpGetCurrentSidPid(void); |
| void HlpSetCurrentSubnetId(kal_uint8 *pSubnetId); |
| kal_uint8 *HlpGetCurrentSubnetId(void); |
| void HlpColorCodeIndMsg(void *MsgDataP); |
| kal_uint16 HlpGetDormancyTimer(kal_bool bForRDUD); |
| IMSIType HlpGetImsiInfoInUimCntx(void); |
| kal_uint8 HlpGetMncLenInUimCntx(void); |
| kal_bool HlpCheckImsiInfoNeedUpdate(void); |
| void HlpWaitForExtMsg(kal_uint32 expMsgId, ilm_struct *ilm); |
| #ifdef CBP7_EHRPD |
| void HlpGetImsiFromUsim(void); |
| #endif |
| void HlpSendTchSetupStatusToCss(CssTchSetupStatusT status); |
| void HlpSendConnStatusMsg2Val(ValWmcConnStatusT connStatus); |
| void HlpSendPppConnStatusMsg2Val(ValHlpPppConnStatusMsgT *ConnStatus); |
| void HlpSendPppConnStatusMsg2ValAtc(ValHlpPppConnStatusMsgT *ConnStatus); |
| |
| void hlp_nvram_read_cnf_handler(local_para_struct *local_para_ptr, peer_buff_struct *peer_buff_ptr); |
| void hlp_nvram_write_cnf_handler(local_para_struct *local_para_ptr, peer_buff_struct *peer_buff_ptr); |
| void HlpProcessRevDataFromHIF(void* MsgDataP); |
| AlmpStateT HlpGetAlmpState(void); |
| void HlpTcpPacketTagPureAck(kal_uint8 *pIpPacket, socketInfoT *dstSocketPtr); |
| kal_uint16 PPP_HeaderEncode_CopyFree(kal_uint16 prot, kal_uint8 *data, kal_bool acomp, kal_bool pcomp, kal_uint8 pdn_id); |
| void HlpHandleDnsQueryNoNwRsp(kal_uint8 *pIpPacket, kal_bool *pToRelPpp); |
| HlpRecoverFlagT HlpGetRecoverFlag(void); |
| void HlpSetRecoverFlag(HlpRecoverFlagT value); |
| kal_bool HlpTransferToLower(char* pStrIn, char* pStrOut, kal_uint32 nLen); |
| DialingInfoT* HlpCallInfoGet(void); |
| void HlpSendXonXoffToFcp(kal_bool bXOnOff, StreamType StreamID); |
| kal_uint8 HlpGetPPPConnParamsCid(void); |
| kal_bool HlpUimIsUiccCard(void); |
| kal_bool HlpUimIsOmhCard(void); |
| void HlpConnectionSuspendCmd(void); |
| void HlpConnectionResumeCmd(void); |
| void HlpConnectionDisableCmd(void); |
| void HlpConnectionResetCmd(void); |
| void HlpConnectionFallbackCmd(void); |
| |
| void HlpSetHOEHRPDEnableFlag(kal_bool bEnable); |
| kal_bool HlpGetHOEHRPDEnableFlag(void); |
| sim_interface_enum HlpUimGetCurSimIndex(void); |
| kal_uint16 HlpRmCheckRxReadyStatus(void); |
| |
| /***************************************************************************** |
| * End of File |
| *****************************************************************************/ |
| #endif |
| |