blob: 4d9562e1777c230838e57a590dbc314a059d417c [file] [log] [blame]
rjw6c1fd8f2022-11-30 14:33:01 +08001/*****************************************************************************
2* Copyright Statement:
3* --------------------
4* This software is protected by Copyright and the information contained
5* herein is confidential. The software may not be copied and the information
6* contained herein may not be used or disclosed except with the written
7* permission of MediaTek Inc. (C) 2016
8*
9* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
10* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS (""MEDIATEK SOFTWARE"")
11* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
12* AN ""AS-IS"" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
13* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
14* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
15* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
16* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
17* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
18* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
19* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
20* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
21*
22* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
23* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
24* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
25* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
26* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
27*
28* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
29* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
30* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
31* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
32* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
33*
34*****************************************************************************/
35#ifndef _HLPAPI_H_
36#define _HLPAPI_H_
37/*****************************************************************************
38*
39* FILE NAME : hlpapi.h
40*
41* DESCRIPTION :
42*
43* This include file provides system wide global type declarations and
44* constants
45*
46* HISTORY :
47* See Log at end of file.
48*
49*****************************************************************************/
50
51/*----------------------------------------------------------------------------
52 Include Files
53----------------------------------------------------------------------------*/
54#include "module_msg_range.h"
55#include "sysdefs.h"
56#include "pswcustom.h"
57#include "valatdata.h"
58#include "cpbuf.h"
59#include "iopapi.h"
60#include "sbp_public_utility.h"
61#include "hlp_nvram.h"
62#include "slc_nvram.h"
63
64#define EAP_AKA_PRIME 1
65
66/*----------------------------------------------------------------------------
67 Global Defines and Macros
68----------------------------------------------------------------------------*/
69#define HLP_MAILBOX_CMD EXE_MAILBOX_1_ID
70#define HLP_MAILBOX2_CMD EXE_MAILBOX_2_ID
71#define HLP_SEC_MAILBOX EXE_MESSAGE_MBOX_3
72#define HLP_SEC_CMD EXE_MAILBOX_3_ID
73
74#define HLP_MAX_SIZE_DATA 240
75#define HLP_MAX_NUM_REV_RLP 300
76#define HLP_MAX_SPY_LEN 164
77#define MAX_NUM_DO_INACTIVITY_TICKS 4500 /* 4500 x 6.67ms = 30 sec */
78#define MAX_NUM_1X_INACTIVITY_TICKS 30 /* second */
79
80#define HLP_AKA_KEY_LEN 16 /*128 bits 3G TS 33.105.v.3.0(2000-03)*/
81#define HLP_AKA_RAND_LEN 16 /*128 bits 3G TS 33.105.v.3.0(2000-03)*/
82#define HLP_AKA_FMK_LEN 4 /*32 bits */
83#define HLP_AKA_AMF_LEN 2 /*16 bits 3G TS 33.105.v.3.0(2000-03)*/
84#define HLP_AKA_MACA_LEN 8 /*64 bits 3G TS 33.105.v.3.0(2000-03)*/
85#define HLP_AKA_MACS_LEN 8 /*64 bits 3G TS 33.105.v.3.0(2000-03)*/
86#define HLP_AKA_RES_LEN 16 /*32<->128 bits 3G TS 33.105.v.3.0(2000-03)*/
87#define HLP_AKA_CK_LEN 16 /*128 bits 3G TS 33.105.v.3.0(2000-03)*/
88#define HLP_AKA_IK_LEN 16 /*128 bits 3G TS 33.105.v.3.0(2000-03)*/
89#define HLP_AKA_AK_LEN 6 /*48 bits 3G TS 33.105.v.3.0(2000-03)*/
90#define HLP_AKA_AKS_LEN 6 /*48 bits 3G TS 33.105.v.3.0(2000-03)*/
91#define HLP_AKA_UAK_LEN 16
92#define HLP_AKA_AUTN_LEN 16
93#define HLP_AKA_AUTS_LEN 16
94
95#define EAP_AKA_NONCE_S_LEN 16
96#define EAP_AKA_NONCE_MT_LEN 16
97#define EAP_AKA_MAC_LEN 16
98#define EAP_AKA_K_AUT_LEN 32
99#define EAP_AKA_K_ENCR_LEN 16
100#define EAP_AKA_MSK_DATA_LEN 64
101#define EAP_AKA_IV_LEN 16
102
103#define EAP_AKA_RAND_LEN 16
104#define EAP_AKA_AUTN_LEN 16
105#define EAP_AKA_RES_MAX_LEN 16
106#define EAP_AKA_MK_LEN 20
107#define EAP_AKA_MSK_LEN 64
108#define EAP_AKA_AUTS_LEN 14
109#define EAP_AKA_IK_LEN 16
110#define EAP_AKA_CK_LEN 16
111#define EAP_AKA_SHA1_MAC_LEN 20
112
113#define EAP_AKA_PSEUDONYM_LEN 128
114#define EAP_AKA_REAUTH_ID_LEN 128
115#define EAP_AKA_KC_LEN 8
116#define RM_WRITE_FLAG_SND_ACK 1
117
118#if EAP_AKA_PRIME
119#define EAP_AKA_K_RE_LEN 32
120#define EAP_AKA_EMSK_DATA_LEN 64
121#define EAP_AKA_PRIME_MK_LEN 208
122#endif
123
124#define HLP_MAX_SOCKET 10
125
126#define HLP_MN_PASSWD_MAX_SIZE HLP_MAX_PSWD_LEN
127#define HLP_BETTER_SYSTEM_THRESH 20
128#define MN_NAI_MAX_SIZE HLP_MAX_USRID_LEN
129#define HLP_NUM_DIAL_STRING_DIGITS 11
130
131#ifdef CBP7_EHRPD
132#define MAX_HLP_FLOW_SUPPORTED 8 /* 6 */ /*Must be same as MAX_RLP_FLOW_SUPPORTED*/
133#define MAX_RLP_FRAMES_PER_IP_PKT 32
134#define NUM_HLP_FWD_IP_DATA_IND_ENTRIES 16
135#endif
136
137#define HSPD_PRI
138
139
140#define VAL_UIM_FILE_CHANGE_LIST_MAX 50
141#define HLP_VZW_PCO_CODE 0xFF00
142#define HLP_VZW_PCO_CODE_STR "FF00"
143#define HLP_VZW_PCO_MCCMNC_LEN 6
144#define HLP_VZW_PCO_MCCMNC_STR "311480"
145#define HLP_VZW_PCO_CODE_STR_LEN 4
146
147#define HLP_MAX_APN_NUM 10
148#define HLP_UIM_USIM_ACL_TAG 0xDD
149#define HLP_UIM_USIM_ACL_SEPERATOR 0x2E
150#define HLP_MIP_ERROR_CODE_BASE 0x80b0
151#define HLP_PDN_ERROR_CODE_BASE 0x8000
152
153/***********************************************************************/
154/* Global Typedefs */
155/**********************************************************************/
156
157
158/***********************************************************************/
159/* Enumeration Definitions */
160/***********************************************************************/
161typedef enum
162{
163 HlpDataChRetOK,
164 HlpDataChRetOK_Empty,
165 HlpDataChRetFull,
166 HlpDataChRetErr
167} HlpDataChRetStatus;
168
169typedef struct {
170 CpBufferT *bufPtr;
171 kal_uint16 offset;
172 kal_uint16 dataLen;
173 kal_uint8 nRLPFlow;
174 kal_uint8 streamType;
175
176 kal_uint16 tcpTag;
177 kal_uint32 tcpPort;
178 kal_uint32 srcIpAddr;
179 kal_uint32 dstIpAddr;
180
181#ifdef CBP7_EHRPD
182 kal_uint16 FrameType; /* distinguish Ipv4/Ipv6 and PDN-ID */
183#endif
184
185 kal_uint8 BearerId;
186} RmDataCpBuffDescT;
187
188typedef enum
189{
190 RmDataQBuffOK,/*Process successfully*/
191 RmDataQBuffOK_Empty,/* Buffer Q empty after read successfully */
192 RmDataQBuffFull,/* Buffer Q full */
193 RmDataQBuffErr /* Error occurred. */
194} RmDataQBuffStatusE;
195
196typedef enum
197{
198 DO_NETWORK,
199 RTT_NETWORK,
200 NON_CONNECTED
201} NetworkT;
202
203typedef enum
204{
205 IN_SERVICE,
206 OOSA,
207 TO_ACQUIRE
208} SvcStatusT;
209
210typedef enum
211{
212 ASYNC_DATA,
213 NETWORK_RM,
214 PPP_ONLY,
215 RELAY_RM,
216 MAIN_CONN
217} NspeAppT;
218
219typedef enum
220{
221 DO_ONLY, /* DO is active and is the only system that is allowed. */
222 DO_PREFERRED, /* DO and 1X are both active, DO is preferred. */
223 RTT_ONLY, /* 1X is active and is the only system that is allowed. */
224 RTT_PREFERRED, /* DO and 1X are both active, 1X is preferred. */
225 NO_PREFERENCE,
226#ifdef MTK_CBP
227 HLP_NTW_PREF_NONE
228#endif
229} NetworkPrefT;
230
231typedef enum
232{
233 CONNECTION_FAILED_IND,
234 CONNECTION_CLOSED_IND,
235 CONNECTION_OPENED_IND
236} ConnectionRspT;
237
238typedef enum
239{
240 Um, /* Service Stream */
241 Rm,
242 Um_AccessStream,
243 PppEndPointMax
244} pppEndPointT;
245
246typedef enum
247{
248 DO_FOUND, /* Only DO network is found */
249 RTT_FOUND, /* Only 1X network is found */
250 BOTH, /* Both network are found */
251 NEITHER /* Nothing available */
252} NetworkRspT;
253
254typedef enum
255{
256 HA_DEC0,
257 HA_DEC1,
258 HA_ENC0,
259 HA_ENC1
260} pppHaPortT;
261
262typedef enum
263{
264 HLP_NETWORK_ERROR_EVDO_CO_NO_SERVICE,
265 HLP_NETWORK_ERROR_EVDO_CO_ACCESS_FAILURE,
266 HLP_NETWORK_ERROR_EVDO_CO_REDIRECTION,
267 HLP_NETWORK_ERROR_EVDO_CO_NOT_PREFERRED,
268 HLP_NETWORK_ERROR_EVDO_CO_MODE_HANDOFF,
269 HLP_NETWORK_ERROR_EVDO_CO_IN_PROGRESS,
270 HLP_NETWORK_ERROR_EVDO_CO_SETUP_TIMEOUT,
271 HLP_NETWORK_ERROR_EVDO_CO_SESSION_NOT_OPEN,
272 HLP_NETWORK_ERROR_EVDO_RELEASE_NO_REASON,
273 HLP_NETWORK_ERROR_EVDO_PROTOCOL_FAILURE,
274 HLP_NETWORK_ERROR_EVDO_DENY_NO_REASON,
275 HLP_NETWORK_ERROR_EVDO_DENY_NETWORK_BUSY,
276 HLP_NETWORK_ERROR_EVDO_DENY_AUTHENTICATION,
277 HLP_NETWORK_ERROR_EVDO_REDIRECT_TO_1X,
278 HLP_NETWORK_ERROR_EVDO_FADE,
279 HLP_NETWORK_ERROR_EVDO_USER_DISCONNECTED
280#if defined (MTK_DEV_C2K_IRAT) && defined (MTK_DEV_C2K_SRLTE_L1)
281 ,
282 HLP_NETWORK_ERROR_EVDO_RSVAS_SUSPEND,
283 HLP_NETWORK_ERROR_EVDO_RSVAS_VIRTUAL_SUSPEND
284#endif
285 ,
286 HLP_NETWORK_SESSION_NEGOTIATION_COMPLETE,
287 HLP_NETWORK_ERROR_EVDO_LAST
288}HlpConnCloseReasonT;
289
290typedef struct HlpPPPHaLLD
291{
292 kal_uint32 sourceAddr;
293 kal_uint32 xferCount;
294 kal_uint32 configReg;
295 kal_uint32 nextInLLD;
296} HlpPPPHaLLDT;
297
298typedef enum
299{
300 REG_TIMER_EXPIRED,
301 DORMANT_RECONN,
302 SID_NID_CHANGE,
303 PKT_ZID_CHANGE,
304 COLOR_CODE_CHANGE
305} MipReRegReasonT;
306
307typedef enum
308{
309 Check_T_Dormancy = 0x01,
310 Check_T_HRPD_Search = 0x02,
311 Check_T_Rapid_Dormancy = 0x04,
312 Check_T_ResDef_Dormancy = 0x08,
313 Check_Dormancy_All = 0x0f
314} DormParmCheckT;
315
316typedef enum
317{
318 HLP_TIMER_TCH_SETUP,
319 HLP_TIMER_WFR_SYS_RSP,
320 HLP_TIMER_1X_CONNECTION_5MIN,
321 HLP_TIMER_WFR_FAST_CONN,
322 HLP_TIMER_DATA_RETRY,
323 HLP_TIMER_DO_RETRY,
324 HLP_TIMER_FALLBACK,
325 HLP_TIMER_DO_OOSA_CONNECT_1X,
326 HLP_TIMER_WFR_RM_CONNECT,
327 HLP_TIMER_PPP_UM_REQ,
328 HLP_TIMER_PPP_RM_REQ,
329 HLP_TIMER_PPP_A12_REQ,
330 HLP_TIMER_PPP_AUX_REQ,
331 HLP_TIMER_PPP_UM_LOCAL_AUTH_REQ,
332 HLP_TIMER_PPP_RM_LOCAL_AUTH_REQ,
333 HLP_TIMER_PPP_A12_LOCAL_AUTH_REQ,
334 HLP_TIMER_PPP_AUX_LOCAL_AUTH_REQ,
335 HLP_TIMER_PPP_UM_REMOTE_AUTH_REQ,
336 HLP_TIMER_PPP_RM_REMOTE_AUTH_REQ,
337 HLP_TIMER_PPP_A12_REMOTE_AUTH_REQ,
338 HLP_TIMER_PPP_AUX_REMOTE_AUTH_REQ,
339 HLP_TIMER_PPP_MNRP_REQ,
340 HLP_TIMER_WFR_UIM_AUTH_RSP,
341 HLP_TIMER_THROTTLING_HSPD,
342 HLP_TIMER_THROTTLING_HRPD,
343 HLP_TIMER_IP_250MS,
344 HLP_TIMER_DRMNT_RCNT_BACKOFF,
345 HLP_TIMER_WFR_HANDOFF_HYST,
346 HLP_TIMER_XOFF_RSP,
347 HLP_TIMER_TCH_REL,
348 HLP_TIMER_C109_PULSE,
349 HLP_TIMER_PPP_CONNECT_BACKOFF,
350 HLP_TIMER_DATA_RELEASE,
351 HLP_TIMER_PDN_REQ_0, /* ehrpd start, 0-4 not the pdn id, but the pdn array index */
352 HLP_TIMER_PDN_REQ_1,
353 HLP_TIMER_PDN_REQ_2,
354 HLP_TIMER_PDN_REQ_3,
355 HLP_TIMER_PDN_REQ_4,
356 HLP_TIMER_VSE_VER_CAP_IND,
357 HLP_TIMER_VSE_PPP_INACT,
358 HLP_TIMER_IMS_WFR_RSP,
359 HLP_TIMER_PDN_INACT_0,
360 HLP_TIMER_PDN_INACT_1,
361 HLP_TIMER_PDN_INACT_2,
362 HLP_TIMER_PDN_INACT_3,
363 HLP_TIMER_PDN_INACT_4,
364 HLP_TIMER_THROTTLING_EHRPD,
365 HLP_TIMER_UE_PARTIAL_CONTEXT, /* ehrpd end */
366 HLP_TIMER_MIP_RRP_REG, /* mip start */
367 HLP_TIMER_MIP_RRP_DEREG,
368 HLP_TIMER_MIP_RRQ_REG,
369 HLP_TIMER_MIP_AGENT_ADV,
370 HLP_TIMER_MIP_LIFETIME, /* mip end */
371 HLP_TIMER_IPV6_TEST,
372 HLP_TIMER_NAT,
373 HLP_TIMER_A12_REDIAL_PENDING,
374 HLP_TIMER_RSVAS_ABORT_REQ,
375 HLP_TIMER_VSNCP_PDN_OPEN,
376 HLP_TIMER_MAX_NUM
377}hlp_timer_enum;
378
379typedef enum
380{
381 /*Network Generates PDN Error*/
382 GeneralError = 0x8000,
383 UnauthorizedAPN,
384 PDNLimitExceeded,
385 NoPGWAvailable,
386 PGWUnreachable,
387 PGWReject,
388 InsufficientParameters,
389 ResourceUnavailable,
390 AdminProhibited,
391 PDNIDAlreadyInUse,
392 SubScriptionLimitation,
393 PDNConnAlreadyExistForPDN,
394 EmergencyNotSupported,
395 ReconnectNotAllowed,
396 /*User Defined PDN Error*/
397 EAPAKAfailure = 0x8080,
398 RetryTmrThrottling,
399 NetworkNoRsp,
400 PDNAttachAbort,
401 PDNLimitExceededInUESide,
402 PDNIDAlreadyInUseInUESide,
403 InvalidPDNAttachReq,
404 PdnRecFailure,
405 MainConnSetupFailure,
406 BearerResourceUnAvailable,
407 OpAbortByUser,
408 RttDataConnected,
409 EAPAKAReject,
410 LCPNego3Failure,
411 TCHSetupFailure,
412 NwNoRspInLCP,
413 NwNoRspInAuth,
414 A12Retry3Failure,
415 RsvasSuspended,
416 AbortByGMSS,
417 /*User Defined PPP Error*/
418 PppAuthFail = 0x80b0,
419 MipPppLcpTmo,
420 MipPppNcpTmo,
421 SipPppLcpTmo,
422 SipPppNcpTmo,
423 MipPppOptMismatch,
424 SipPppOptMismatch,
425 MipSolTmo,
426 MipRrqTmo,
427 MipRrpErr,
428 MipLcpFail,
429 SipLcpFail,
430 MipNcpFail,
431 SipNcpFail,
432 A12AuthFail,
433 EapAkaAuthFail,
434 MipAdminProhibFail,
435 MultiTchFail,
436 PppA12LcpTmo,
437 DnsNoResponse,
438 /*Network Generates MIP Error*/
439 /*0x80f0 - 0x8140: MIP error code, shall not disorder it*/
440 MipUnspecifiedFailure = 0x80f0,
441 MipAdminProhibited,
442 MipInsuffResources1,
443 MipMnFailedAuth,
444 MipHaFailedAuth,
445 MipLifetimeTooLong,
446 MipPoorlyFormedReq,
447 MipPoorlyFormedReply,
448 MipEncapUnavail,
449 MipReservedUnavail,
450 MipRevTunUnavail,
451 MipRTNTNotSet,
452 MipMnTooDistant,
453 MipInvalidCareOfAddr,
454 MipRegTimeout,
455 MipDsNotSupport,
456 MipHnUnreachable,
457 MipHaHostUnreachable,
458 MipHaPortUnreachable,
459 MipHaUnreachable = 0x8108,
460 MipVendorSpecific,
461 MipNonzeroHaAddr,
462 MipNonzeroHomeAddr = 0x8110,
463 MipMissingNai,
464 MipMissingHa,
465 MipMissingHomeAddr,
466 MipUnknownChall = 0x8118,
467 MipMissingChall,
468 MipStaleChall,
469 MipMissingMnFa,
470 MipReasonUnspec = 0x8130,
471 MipAdminProhib,
472 MipInsuffResources2,
473 MipMnFailedAuth2,
474 MipFaFailedAuth,
475 MipIdentMismatch,
476 MipPoorlyFormedReq2,
477 MipTooManyBindings,
478 MipUnknownHaAddr,
479 MipRevTunnelUnavail,
480 MipRTNTNotSet2,
481 MipEncapsulationUnavail = 0x813b,
482 MipRegWithRedirected = 0x813f,
483 MipErrCodeFromHome = 0x8140,
484 NullError = 0xeeee,
485 NoError = 0xffff
486}DataConnErrCodeT;
487
488/***********************************************************************/
489/* Message/Struct Definitions */
490/***********************************************************************/
491typedef struct
492{
493 NetworkT networkType;
494 SvcStatusT svcStatus;
495} networkSvcT;
496
497typedef struct
498{
499 networkSvcT ServiceStatus;
500} HlpOosaIndMsgT;
501
502typedef struct
503{
504 NetworkRspT SysToBeConnected;
505} HlpSystemQueryRspMsgT;
506
507/* Same as ValPswCallEndReasonT defined in valpswapi.h */
508typedef enum
509{
510 HLP_PSW_ORIG_FAIL=2,
511 HLP_PSW_ORIG_CANCELED_NDSS,
512 HLP_PSW_ORIG_CANCELED,
513 HLP_PSW_INTERCEPT,
514 HLP_PSW_REORDER,
515 HLP_PSW_CC_RELEASE,
516 HLP_PSW_CC_RELEASE_SO_REJ,
517 HLP_PSW_FNM_RELEASE,
518 HLP_PSW_DIALING_COMPLETE,
519 HLP_PSW_DIALING_CONTINUE,
520 HLP_PSW_MAINTENANCE,
521 HLP_PSW_VP_ON,
522 HLP_PSW_VP_OFF,
523 HLP_PSW_PSIST_FAIL,
524 HLP_PSW_TC_RELEASE_MS,
525 HLP_PSW_TC_RELEASE_PDOWN,
526 HLP_PSW_TC_RELEASE_DISABLE,
527 HLP_PSW_TC_RELEASE_BS,
528 HLP_PSW_TC_RELEASE_SO_REJECT,
529 HLP_PSW_TC_RELEASE_TIMEOUT,
530 HLP_PSW_TC_RELEASE_ACK_FAIL,
531 HLP_PSW_TC_RELEASE_FADE,
532 HLP_PSW_TC_RELEASE_LOCK,
533 HLP_PSW_PAGE_FAIL,
534 HLP_PSW_RETRY_TIMER_ACTIVE,
535 HLP_PSW_RETRY_TIMER_INACTIVE,
536 HLP_PSW_AMPS_INSVC,
537 HLP_PSW_ORIG_REJECTED,
538 HLP_PSW_EV_ORIG_RETRY_ORDER,
539 HLP_PSW_SO_REDIRECT
540} HlpPswCallEndReasonT;
541
542typedef struct
543{
544 HlpPswCallEndReasonT reason;
545} HlpConnectionFailedIndMsgT;
546
547typedef struct
548{
549 ConnectionRspT ConnRsp;
550} HlpConnectionRspMsgT;
551
552typedef struct
553{
554 kal_uint16 sid;
555 kal_uint16 nid;
556} HlpSidNidChangIndMsgT;
557
558typedef struct
559{
560 kal_uint8 pid;
561} HlpPktZoneIdChangIndMsgT;
562
563typedef struct
564{
565 kal_uint8 subnetId[16];
566} HlpSubnetIdChangIndMsgT;
567
568typedef struct
569{
570 kal_uint8 CallNumber[HLP_MAX_BWSR_DIG_LEN]; /* ASCII chars, NULL terminated */
571 kal_uint8 UserId[HLP_MAX_USRID_LEN]; /* Username use for SIP */
572 kal_uint8 Pswd[HLP_MAX_PSWD_LEN]; /* Password use for SIP */
573} DialingInfoT;
574
575typedef struct
576{
577 NspeAppT AppInstance;
578 kal_uint8 Action;
579} HlpUmAppInstanceMsgT;
580
581typedef struct
582{
583 kal_uint8 FileCount;
584 kal_uint16 FileId[VAL_UIM_FILE_CHANGE_LIST_MAX];
585} HlpUimFileChangeMsgT;
586
587typedef struct {
588 kal_uint32 ipaddress;
589 kal_uint16 port;
590} FilterMux;
591
592typedef struct {
593 FilterMux socket[4];
594 kal_uint16 currentSocketNum;
595}MuxInfo;
596
597typedef struct
598{
599 kal_bool gotoDormant;
600} HlpConnectionReleasedIndMsgT;
601
602typedef struct
603{
604 kal_bool success; /* True = TCH connection and 1X RLP established. */
605} HlpConnectionIndMsgT;
606
607typedef struct
608{
609 kal_bool TcpType; /* KAL_TRUE=TCP, KAL_FALSE=UDP */
610 kal_int16 socketId; /* input socket Id, will be used in the response message */
611 ExeRspMsgT SocketCreateRspInfo;
612 ExeRspMsgT SocketConnRspInfo;
613 ExeRspMsgT SocketCloseRspInfo;
614} HlpSocketCreateMsgT;
615
616typedef struct
617{
618 kal_uint32 IpAddr;
619 kal_uint16 Port;
620} HlpAppAddrT;
621
622typedef struct
623{
624 kal_uint8 Sap;
625 HlpAppAddrT ResourceAddr;
626 ExeRspMsgT SocketBindRspInfo;
627} HlpSocketBindMsgT;
628
629typedef struct
630{
631 kal_uint8 Sap;
632 kal_bool Passive; /* KAL_FALSE=active, TURE=listen */
633 HlpAppAddrT DestAddr; /* IP and port number if active mode is chosen */
634} HlpSocketConnectMsgT;
635
636typedef enum
637{
638 HLP_IP6_ADDR_TYPE_PUBLIC,
639 HLP_IP6_ADDR_TYPE_PUBLIC_TEMP,
640 HLP_IP6_ADDR_TYPE_LOCAL
641} HlpIp6AddrTypeE;
642
643typedef struct
644{
645 kal_uint8 Sap;
646 kal_uint8 FlowId;
647 HlpIp6AddrTypeE AddrType;
648 kal_uint16 PeerAddrPort;
649 kal_uint32 PeerAddrIp[4];
650} HlpIp6SocketConnectMsgT;
651
652typedef struct
653{
654 kal_uint8 Sap;
655} HlpIp6SocketConnectRspMsgT;
656
657typedef struct
658{
659 kal_uint8 Sap;
660 kal_bool Graceful;
661} HlpSocketCloseMsgT;
662
663typedef struct
664{
665 kal_uint8 Sap; /*server's sap*/
666 kal_int16 SockListenfd;
667 kal_int16 sockfd[5];
668 kal_uint8 SocketNum;
669 ExeRspMsgT MmiSocketListenRspInfo;
670} HlpSocketListenMsgT;
671
672typedef struct
673{
674 kal_uint8 Sap;
675 kal_uint8 opt_type; /* Specifies which option is being set */
676 kal_uint16 size;
677} HlpOptionRequestMsgT;
678
679typedef struct
680{
681 kal_uint8 Sap;
682 kal_int8 how;
683} HlpSocketShutDownMsgT;
684
685typedef struct
686{
687 kal_uint8 Sap;
688 kal_bool lingerOnOff;
689 kal_uint32 lingerTime;
690} HlpSocketLingerMsgT;
691
692typedef struct
693{
694 kal_uint32 IpAddr; /* 32-bit IP address. */
695 kal_uint16 UdpPort; /* UDP port address. */
696} HlpDatagramAddrT;
697
698typedef struct
699{
700 kal_uint8* DataBufP; /* Point to the first byte */
701 kal_uint16 DataLen; /* size of data in byte */
702 kal_uint8 Flags; /* if IP_MOREDATA is set in the flag
703 it indicates that datagram is not
704 able to fit into allocated buffer
705 Datagram is truncated to fit. */
706} HlpDatagramT;
707
708typedef struct
709{
710#if defined(MTK_PLT_ON_PC) && defined(MTK_PLT_ON_PC_UT)
711 kal_uint8 data[255];
712#endif
713 kal_uint8* DataP; /* point to the first byte of data. */
714 kal_uint16 Size; /* The size of data in byte. */
715 kal_bool Push; /* KAL_TRUE, send immediately; */
716 /* KAL_FALSE, TCP determine by itself. */
717 HlpDatagramAddrT To; /* The address of receipent for UDP */
718 kal_uint8 Sap; /* Socket of which the data is going to
719 be sent. */
720} HlpSocketSendReqMsgT;
721
722typedef struct
723{
724 kal_uint8 Sap;
725} HlpUpbRecvDataRspMsgT;
726
727typedef struct
728{
729 kal_uint8 Sap;
730} HlpTcpbRecvRspMsgT;
731
732typedef struct
733{
734 kal_uint32 SrcIp;
735 kal_uint32 DestIp;
736 kal_uint16 SrcPort;
737 kal_uint16 DestPort;
738 kal_uint16 DataLength;
739 kal_uint8 *DataPtr;
740} HlpMipRrpMsgT;
741
742typedef struct
743{
744 kal_uint32 SrcIp;
745 kal_uint32 DestIp;
746 kal_uint16 DataLength;
747 kal_uint8 *DataPtr;
748} HlpMipAgentAdvMsgT;
749
750typedef struct
751{
752 kal_uint8 Status;
753 kal_uint32 LocalIp;
754 kal_uint32 RemoteIp;
755} HlpMipUmPppStatusMsgT;
756
757typedef struct
758{
759 pppEndPointT interface;
760 kal_uint8 status;
761 kal_uint32 localAddr;
762 kal_uint32 remoteAddr;
763 kal_uint32 priDNS;
764 kal_uint32 secDNS;
765} HlpPppStatusMsgT;
766
767typedef struct
768{
769 kal_uint8 UserId[HLP_MAX_USRID_LEN];
770 kal_uint8 Pswd[HLP_MAX_PSWD_LEN];
771} HlpUsernamePasswdMsgT;
772
773typedef struct
774{
775 hlp_timer_enum TimerID;
776} HlpTimerExpiredMsgT;
777
778typedef struct
779{
780 kal_uint8* DataP; /* point to the first byte of data. */
781 kal_uint16 Size; /* The size of data in byte. */
782 kal_bool Push; /* KAL_TRUE, send immediately; */
783 /* KAL_FALSE, TCP determine by itself. */
784 kal_uint8 Sap; /* Socket of which the data is going to
785 be sent. */
786} HlpTcpbDataSendReqMsgT;
787
788typedef struct
789{
790 HlpDatagramT SendData; /* Datagram itself.. */
791 HlpDatagramAddrT To; /* The address of receipent. */
792 kal_uint8 Sap; /* SAP to TCB */
793} HlpUpbSendDataMsgT;
794
795typedef struct
796{
797 kal_bool NetworkMode; /* True: Network Mode, +CRM=2 */
798 /* False: Relay Mode, +CRM=1 */
799} HlpSetNetworkOrRelayModeMsgT;
800
801#ifdef CBP7_EHRPD
802typedef struct {
803 CpBufferT *dataPtr;
804 kal_uint16 offset;
805 kal_uint16 dataLen;
806} PafHlpFwdDataPktT;
807
808typedef struct
809{
810 kal_uint8 nAppType;
811 kal_uint8 nRLPFlowId;
812 kal_uint8 nRoute;
813 kal_bool bRohcEnabled;
814 kal_uint8 numRlpFrames;
815 PafHlpFwdDataPktT rlpFrames[MAX_RLP_FRAMES_PER_IP_PKT];
816} HlpRlpFwdIPDataPktT;
817#endif
818
819#if 1 //!defined (MTK_DEV_MEMORY_OPT)
820#define NUM_HLP_FWD_DATA_IND_ENTRIES 600
821#define NUM_HLP_REV_DATA_IND_ENTRIES 150
822#else
823/* under construction !*/
824/* under construction !*/
825#endif
826
827typedef RmDataCpBuffDescT HlpRlpFwdDataPktT;
828typedef RmDataCpBuffDescT HlpRlpRevDataPktT;
829
830typedef struct
831{
832 kal_uint8 forceNetworkPref;
833 kal_uint8 forceCSSResp;
834} HlpSysSelPrefSetMsgT;
835
836typedef struct
837{
838 kal_uint8 nDMUV;
839} HlpValDMUVSetMsgT;
840
841typedef struct
842{
843 HlpConnCloseReasonT ConnCloseReason;
844} HlpConnStatusMsgT;
845
846#ifdef HSPD_PRI
847
848#define RSA_PUBLIC_KEY_BIT (1<<0)
849#define AUTH_SET_BIT (1<<1)
850#define PKOID_SET_BIT (1<<2)
851
852typedef enum
853{
854 RSA_PUBLIC_KEY_SET = RSA_PUBLIC_KEY_BIT,
855 AUTH_SET = AUTH_SET_BIT,
856 SET_BOTH = RSA_PUBLIC_KEY_BIT|AUTH_SET_BIT,
857 PKOID_SET = PKOID_SET_BIT
858} RsaSetE;
859
860typedef struct
861{
862 kal_uint8 nPKOID;
863 kal_uint8 nActiveDmuRsaPublicKeyNo;
864 kal_uint8 MN_Authenticator[MN_AUTH_MAX_SIZE];
865} HlpRSAPublicKeyOrgIdInfoT;
866
867typedef enum
868{
869 /* Set All Params in a Profile */
870 HL_PARM_SET_HSPD_SEG_PROFILE_DATA = 0,
871 HL_PARM_GET_HSPD_SEG_PROFILE_DATA,
872 HL_PARM_SET_HSPD_SECURE_SEG_PROFILE_DATA, /* no Gets for Secure Data */
873
874 HL_PARM_SET_HSPD_SECURE_SEG_PROFILE_BYTE_DATA,
875
876 HL_PARM_GET_HSPD_SECURE_SEG_PROFILE_DATA,
877
878 /* Set All HSPD SegData together, that are not part of a Profile */
879 HL_PARM_SET_HSPD_SEG_ALL_DATA,
880 HL_PARM_GET_HSPD_SEG_ALL_DATA,
881
882 /* Init HSPD Db to defaults */
883 HL_PARM_SET_HSPD_SEG_INIT, /* Init Hspd Data that are not part of a Profile */
884 HL_PARM_SET_HSPD_SEG_PROFILE_INIT, /* Init a Profile, with ProfileId */
885
886 /* Set Individual Params in HSPD SegData, that are not part of a Profile */
887 HL_PARM_SET_ACTIVE_PROFILE, /* ActiveProfile */
888 HL_PARM_GET_ACTIVE_PROFILE = 10,
889 HL_PARM_SET_NUM_PROFILE, /* NumProfiles */
890 HL_PARM_GET_NUM_PROFILE,
891 HL_PARM_SET_RRP_TIMEOUT, /* RRPTimeout */
892 HL_PARM_GET_RRP_TIMEOUT,
893 HL_PARM_SET_NUM_REG_RETRIES, /* NumRegRetries */
894 HL_PARM_GET_NUM_REG_RETRIES,
895 HL_PARM_SET_REG_BACKOFF, /* RRA */
896 HL_PARM_GET_REG_BACKOFF,
897 HL_PARM_SET_IS801_IPADDR, /* Is801_IpAddr */
898 HL_PARM_GET_IS801_IPADDR = 20,
899 HL_PARM_SET_IS801_PORTNUM, /* Is801_PortNum */
900 HL_PARM_GET_IS801_PORTNUM,
901 HL_PARM_SET_IS801_USERID, /* Is801_UserId[HLP_MAX_USRID_LEN]*/
902 HL_PARM_GET_IS801_USERID,
903 HL_PARM_SET_IS801_PSWD, /* Is801_Pswd[HLP_MAX_PSWD_LEN] */
904 HL_PARM_GET_IS801_PSWD,
905 HL_PARM_SET_IS801_CALLEDNUMBER, /* Is801_CalledNumber[HLP_MAX_BWSR_DIG_LEN] */
906 HL_PARM_GET_IS801_CALLEDNUMBER,
907 HL_PARM_SET_MN_HA_AUTH, /* 0-RFC2002, 1-RFC2002bis */
908 HL_PARM_GET_MN_HA_AUTH = 30,
909 HL_PARM_SET_MN_HA_AUTH_ALGO, /* MN_HA_Auth_Algo */
910 HL_PARM_GET_MN_HA_AUTH_ALGO,
911 HL_PARM_SET_MN_AAA_AUTH_ALGO, /* MN_AAA_Auth_Algo */
912 HL_PARM_GET_MN_AAA_AUTH_ALGO,
913 HL_PARM_SET_MN_AUTHENTICATOR, /* MN_Authenticator[MN_AUTH_MAX_SIZE] */
914 HL_PARM_GET_MN_AUTHENTICATOR,
915 HL_PARM_SET_ACTIVE_DMURSA_PK, /* ActiveDmuRsaPublicKey */
916 HL_PARM_GET_ACTIVE_DMURSA_PK,
917 HL_PARM_SET_NPKOID, /* nPKOID */
918 HL_PARM_GET_NPKOID = 40,
919 HL_PARM_SET_SIP_NAI, /* SIP_NAI[HLP_MN_NAI_MAX_SIZE] */
920 HL_PARM_GET_SIP_NAI,
921 HL_PARM_SET_SIP_DUN_NAI, /* SIP_DUN_NAI[HLP_MN_NAI_MAX_SIZE] */
922 HL_PARM_GET_SIP_DUN_NAI,
923 HL_PARM_SET_AN_NAI, /* AN_NAI[HLP_MN_NAI_MAX_SIZE] */
924 HL_PARM_GET_AN_NAI,
925 HL_PARM_SET_DORMANT_HANDOFF_OPTSET, /* DormantHandoffOptSet */
926 HL_PARM_GET_DORMANT_HANDOFF_OPTSET,
927 HL_PARM_SET_DATA_SCRM_ENABLED, /* DataScrmEnabled */
928 HL_PARM_GET_DATA_SCRM_ENABLED = 50,
929 HL_PARM_SET_DATA_TRTL_ENABLED, /* DataTrtlEnabled */
930 HL_PARM_GET_DATA_TRTL_ENABLED,
931 HL_PARM_SET_PREFRC, /* PrefRc */
932 HL_PARM_GET_PREFRC,
933 HL_PARM_SET_DNS_PRI_IP_ADDR,
934 HL_PARM_GET_DNS_PRI_IP_ADDR,
935 HL_PARM_SET_DNS_SEC_IP_ADDR,
936 HL_PARM_GET_DNS_SEC_IP_ADDR,
937 HL_PARM_GET_DNS_IP_ADDR,
938 HL_PARM_SET_DNS_IP_ADDR = 60,
939 HL_PARM_SET_MIP_MODE,
940 HL_PARM_GET_MIP_MODE,
941
942 /* Set Individual Params in HSPD Secure SegData, that are not part of a Profile */
943 HL_PARM_SET_SIP_STRING_PASSWORD,
944 HL_PARM_GET_SIP_STRING_PASSWORD,
945 HL_PARM_SET_AN_PASSWORD,
946 HL_PARM_GET_AN_PASSWORD,
947 HL_PARM_SET_AN_BINARY_PASSWORD,
948 HL_PARM_SET_SIP_BINARY_PASSWORD,
949 HL_PARM_SET_PACKET_DIAL_STRING,
950 HL_PARM_GET_PACKET_DIAL_STRING = 70,
951 HL_PARM_SET_VJ_COMPRESSION_ENABLE,
952 HL_PARM_GET_VJ_COMPRESSION_ENABLE,
953 HL_PARM_SET_MIP_STRING_PASSWORD,
954 HL_PARM_GET_MIP_STRING_PASSWORD,
955 HL_PARM_SET_MIP_BINARY_PASSWORD,
956 HL_PARM_GET_MIP_BINARY_PASSWORD,
957 HL_PARM_SET_QNC_ENABLED,
958 HL_PARM_GET_QNC_ENABLED,
959 HL_PARM_SET_MDR_MODE_ENABLED,
960 HL_PARM_GET_MDR_MODE_ENABLED = 80,
961 HL_PARM_SECURE_PROFILE_DATA_INIT,
962 HL_PARM_GET_SIP_BINARY_PASSWORD,
963#ifdef CBP7_EHRPD
964 HL_PARM_SET_AKA_PASSWORD = 83,
965 HL_PARM_GET_AKA_PASSWORD,
966 HL_PARM_SET_AKA_RROFILEDATA,
967 HL_PARM_GET_AKA_PROFILEDATA,
968#endif
969 HL_PARM_GET_HSPD_LOCK = 87,
970 HL_PARM_SET_HSPD_LOCK,
971 HL_PARM_SET_HSPD_LOCK_CODE,
972 HL_PARM_SET_DATA_AUTO_PACKET_DETECTION,
973 HL_PARM_GET_DATA_AUTO_PACKET_DETECTION,
974 HL_PARM_SET_DATA_SO,
975 HL_PARM_GET_DATA_SO,
976 HL_PARM_SET_MN_NAI,
977 HL_PARM_GET_MN_NAI,
978 HL_PARM_SET_MN_DUN_NAI,
979 HL_PARM_GET_MN_DUN_NAI,
980 HL_PARM_SET_MN_HA_SPI_ENABLE,
981 HL_PARM_GET_MN_HA_SPI_ENABLE,
982 HL_PARM_SET_MN_HA_SPI,
983 HL_PARM_GET_MN_HA_SPI,
984 HL_PARM_SET_MN_AAA_SPI_ENABLE,
985 HL_PARM_GET_MN_AAA_SPI_ENABLE,
986 HL_PARM_SET_MN_AAA_SPI,
987 HL_PARM_GET_MN_AAA_SPI,
988 HL_PARM_SET_MN_REVERSE_TUNNELING,
989 HL_PARM_GET_MN_REVERSE_TUNNELING,
990 HL_PARM_SET_MN_HOME_IP_ADDRESS,
991 HL_PARM_GET_MN_HOME_IP_ADDRESS,
992 HL_PARM_SET_HOME_AGENT_PRIMARY_IP_ADDRESS,
993 HL_PARM_GET_HOME_AGENT_PRIMARY_IP_ADDRESS,
994 HL_PARM_SET_HOME_AGENT_SECONDARY_IP_ADDRESS,
995 HL_PARM_GET_HOME_AGENT_SECONDARY_IP_ADDRESS,
996
997 HL_PARM_SET_HSPD_NETWORKMODE,
998 HL_PARM_GET_HSPD_NETWORKMODE,
999
1000 HL_PARM_SET_HSPD_DORMANT_TIMER_MODE,
1001 HL_PARM_GET_HSPD_DORMANT_TIMER_MODE,
1002
1003 HL_PARM_SET_MIP_DE_REG_RETRIES = 118,
1004 HL_PARM_GET_MIP_DE_REG_RETRIES,
1005 HL_PARM_SET_MIP_RE_REG_ONLYIF_TRAFFIC,
1006 HL_PARM_GET_MIP_RE_REG_ONLYIF_TRAFFIC,
1007 HL_PARM_SET_MIP_NAI_ENABLE,
1008 HL_PARM_GET_MIP_NAI_ENABLE,
1009
1010 HL_PARM_SET_DATA_DO_TO_1X_ENABLE,
1011 HL_PARM_GET_DATA_DO_TO_1X_ENABLE,
1012
1013 HL_PARM_SET_DATA_PPP_UM_CONFIG = 126,
1014 HL_PARM_GET_DATA_PPP_UM_CONFIG,
1015 HL_PARM_SET_DATA_PPP_RM_CONFIG,
1016 HL_PARM_GET_DATA_PPP_RM_CONFIG,
1017 HL_PARM_SET_DATA_TCP_CONFIG,
1018 HL_PARM_GET_DATA_TCP_CONFIG,
1019
1020 HL_PARM_SET_DO_RETRY_TIMER = 132,
1021 HL_PARM_GET_DO_RETRY_TIMER,
1022
1023#ifdef CBP7_EHRPD
1024 HL_PARM_SET_EHRPD_TEST_MODE = 148,
1025 HL_PARM_GET_EHRPD_TEST_MODE,
1026#endif
1027
1028 HL_PARM_SET_PROFILE_VALID = 150,
1029 HL_PARM_GET_PROFILE_VALID,
1030 HL_PARM_VAL_AT_SET_HSPD_NETWORKMODE,
1031 HL_PARM_VAL_AT_SET_AN_NAI,
1032 HL_PARM_VAL_AT_GET_AN_NAI,
1033
1034 HL_PARM_OPERATION_ID_END_LIST
1035} HlpParmOperationId;
1036
1037typedef enum
1038{
1039 HL_PARM_MIN_VALUE,
1040 HL_PARM_MAX_VALUE,
1041 HL_PARM_DEFAULT_VALUE,
1042 HL_PARM_CUSTOM_VALUE,
1043 HL_PARM_OP_TYPE_LIST_END
1044} HlpParmOperationType;
1045
1046typedef enum
1047{
1048 HL_PARM_OPERATION_SUCCESS,
1049 HL_PARM_OPERATION_FAIL_READ_NOT_ALLOWED,
1050 HL_PARM_OPERATION_FAIL_WRITE_NOT_ALLOWED,
1051 HL_PARM_OPERATION_NOT_ALLOWED_IN_HL_STATE,
1052 HL_PARM_OPERATION_FAIL_INVALID_PTR,
1053 HL_PARM_OPERATION_FAIL_INVALID_LENGTH,
1054 HL_PARM_OPERATION_GENERAL_FAILURE,
1055 HL_PARM_OPERATION_NO_CHANGE_IN_VALUE,
1056 HL_PARM_OPERATION_FAIL_VALUE_OUT_OF_RANGE,
1057 HL_PARM_OPERATION_PARAMETER_NOT_SUPPORTED,
1058 HL_PARM_OPERATION_INTERFACE_NOT_SUPPORTED,
1059 HL_PARM_OPERATION_FAIL_OP_TYPE_NOT_SUPPORTED,
1060 HL_PARM_OPERATION_FAIL_DEFAULT_NOT_DEFINED,
1061 HL_PARM_OPERATION_FAIL_DEFAULT_NOT_SUPPORTED_FOR_PARM,
1062 HL_PARM_OPERATION_RESULT_END_LIST
1063} HlpParmAccessResultCode;
1064
1065typedef enum
1066{
1067 NOT_CONNECTED,
1068 DO_CONNECTING,
1069 DO_CONNECTED,
1070 RTT_CONNECTING,
1071 RTT_CONNECTED
1072} ConnStateT;
1073
1074typedef struct
1075{
1076 ExeRspMsgT resp;
1077 kal_uint8 SMS_Over_IP_Networks_Indication;
1078 kal_uint8 SigComp;
1079 kal_uint8 ImsDomain[72];
1080 kal_uint8 AkaPassword[72];
1081 kal_uint16 SipT1Timer_ims;
1082 kal_uint16 SipTFTimer_ims;
1083 kal_uint16 SipT2Timer_ims;
1084 kal_uint16 SipPcscfPort;
1085} HlpSmsImsEtsCfgSetT;
1086
1087typedef struct
1088{
1089 kal_uint8 SMS_Over_IP_Networks_Indication;
1090 kal_uint8 SigComp;
1091 kal_uint8 ImsDomain[72];
1092 kal_uint8 AkaPassword[72];
1093 kal_uint16 SipT1Timer_ims;
1094 kal_uint16 SipTFTimer_ims;
1095 kal_uint16 SipT2Timer_ims;
1096 kal_uint16 SipPcscfPort;
1097} HlpSmsImsEtsCfgGetT;
1098
1099/* The following structures are to be obsolete
1100 but keep them for backword compatible now
1101typedef struct
1102{
1103 ExeRspMsgT resp;
1104 kal_uint16 restartTimer;
1105 kal_uint8 lcpReqTry;
1106 kal_uint8 lcpNakTry;
1107 kal_uint8 lcpTermTry;
1108 kal_uint8 authRetry;
1109 kal_uint8 ipcpReqTry;
1110 kal_uint8 ipcpNakTry;
1111 kal_uint8 ipcpTermTry;
1112 kal_uint8 ipcpCompression;
1113} HlpPppUmEtsCfgSetT;
1114
1115typedef struct
1116{
1117 kal_uint8 result;
1118} HlpPppUmEtsCfgSetRespT;
1119
1120typedef struct
1121{
1122 kal_uint8 result;
1123 kal_uint16 restartTimer;
1124 kal_uint8 lcpReqTry;
1125 kal_uint8 lcpNakTry;
1126 kal_uint8 lcpTermTry;
1127 kal_uint8 authRetry;
1128 kal_uint8 ipcpReqTry;
1129 kal_uint8 ipcpNakTry;
1130 kal_uint8 ipcpTermTry;
1131 kal_uint8 ipcpCompression;
1132} HlpPppUmEtsCfgGetT;
1133
1134typedef struct
1135{
1136 kal_uint16 restartTimer;
1137 kal_uint8 lcpReqTry;
1138 kal_uint8 lcpNakTry;
1139 kal_uint8 lcpTermTry;
1140 kal_uint8 authRetry;
1141 kal_uint8 ipcpReqTry;
1142 kal_uint8 ipcpNakTry;
1143 kal_uint8 ipcpTermTry;
1144 kal_uint8 ipcpCompression;
1145} HlpPppUmEtsCfgT;
1146 The above structures are to be obsolete
1147 but keep them for backword compatible now */
1148
1149
1150
1151typedef struct
1152{
1153 kal_uint32 RxBytes;
1154 kal_uint32 RxPackets;
1155 kal_uint32 BadRxPackets;
1156 kal_uint32 TxBytes;
1157 kal_uint32 TxPackets;
1158 kal_uint64 TotalRxBytes;
1159 kal_uint64 TotalRxPackets;
1160 kal_uint64 TotalBadRxPackets;
1161 kal_uint64 TotalTxBytes;
1162 kal_uint64 TotalTxPackets;
1163} IPCounterT;
1164
1165typedef struct
1166{
1167 kal_uint8 lcpReqTries;
1168 kal_uint8 lcpNakTries;
1169 kal_uint16 lcpRestartTimer;
1170 kal_uint8 lcpTermTries;
1171 kal_uint16 lcpTermTimer;
1172 kal_uint8 authRetries;
1173 kal_uint16 authTimer;
1174 kal_uint8 ncpReqTries;
1175 kal_uint8 ncpNakTries;
1176 kal_uint16 ncpReStrTimer;
1177 kal_uint8 ncpTermTries;
1178 kal_uint16 ncpTermTimer;
1179} HlpPppUmCfg_APIStruct;
1180
1181typedef struct
1182{
1183 kal_bool pppKeepAlive;
1184 kal_bool pppDetect;
1185 kal_uint8 lcpReqTries;
1186 kal_uint8 lcpNakTries;
1187} HlpPppRmCfg_APIStruct;
1188
1189typedef struct
1190{
1191 kal_uint16 tcpMtu;
1192} HlpTcpCfgSet_APIStruct;
1193
1194typedef struct
1195{
1196 kal_uint16 tcpMtu;
1197 kal_uint16 tcpWinSize_1XRTT;
1198 kal_uint16 tcpWinSize_EVDO;
1199} HlpTcpCfg_APIStruct;
1200
1201typedef struct{
1202 kal_uint8 ProfileId;
1203 kal_uint8 NAI[HLP_MN_NAI_MAX_SIZE];
1204} HlpHspdMNNAI_APIStruct;
1205
1206typedef struct{
1207 kal_uint8 ProfileId;
1208 kal_uint8 MN_REV_TUNNELING;
1209} HlpHspdRevTunneling_APIStruct;
1210
1211typedef struct{
1212 kal_uint8 ProfileId;
1213 kal_uint32 SPI;
1214} HlpHspdMNSPI_APIStruct;
1215
1216typedef struct{
1217 kal_uint8 ProfileId;
1218 kal_bool SPI_Enable;
1219} HlpHspdMNSPIEnable_APIStruct;
1220
1221typedef struct{
1222 kal_uint8 ProfileId;
1223 kal_uint32 IPAddress;
1224} HlpHspdProfileIPAddress_APIStruct;
1225
1226typedef struct{
1227 kal_uint8 ProfileId;
1228} HlpHspdProfileParmGet_APIStruct;
1229
1230typedef struct{
1231 kal_uint8 ProfileId;
1232 kal_bool Profile_Valid;
1233 kal_uint32 MN_HOME_IP_ADDR;
1234 kal_uint32 HA_PRI_IP_ADDR;
1235 kal_uint32 HA_SEC_IP_ADDR;
1236 kal_uint8 MN_NAI[HLP_MN_NAI_MAX_SIZE];
1237 kal_uint8 MN_DUN_NAI[HLP_MN_NAI_MAX_SIZE];
1238 kal_uint8 MN_REV_TUNNELING;
1239 kal_bool bMN_HA_SPI_Enable;
1240 kal_uint32 MN_HA_SPI;
1241 kal_bool bMN_AAA_SPI_Enable;
1242 kal_uint32 MN_AAA_SPI;
1243} HlpProfileData_APIStruct;
1244
1245typedef struct
1246{
1247 kal_uint8 ProfileId;
1248 kal_bool Profile_Valid;
1249 kal_uint8 MN_AAA_PASSWORD_LEN;
1250 kal_uint8 MN_AAA_PASSWORD[MN_PASSWD_MAX_SIZE]; /* MIP AAA Shared Secret*/
1251 kal_uint8 MN_HA_PASSWORD_LEN;
1252 kal_uint8 MN_HA_PASSWORD[MN_PASSWD_MAX_SIZE]; /* MIP HA Shared Secret */
1253} HlpSecureProfileData_APIStruct;
1254
1255typedef struct
1256{
1257 kal_uint8 ProfileId; /* Init the data to defaults, for this ProfileId */
1258} HlpInitHspdProfileData_APIStruct;
1259
1260typedef struct
1261{
1262 kal_uint8 ProfileId; /* Init the data to defaults, for this ProfileId */
1263} HlpGetHspdProfileData_APIStruct;
1264
1265typedef struct
1266{
1267
1268 /* HSPD Seg Data, that are not part of a profile */
1269 /*===============================================*/
1270 kal_uint8 RRPTimeout; /* RRP MIP Registration timeout */
1271 kal_uint8 NumRegRetries; /* RRP MIP Registration Retry Attempts */
1272 kal_uint16 RRA; /* Pre Re-registration backoff */
1273 kal_uint32 Is801_IpAddr;
1274 kal_uint16 Is801_PortNum;
1275 kal_uint8 Is801_UserId[HLP_MAX_USRID_LEN];
1276 kal_uint8 Is801_Pswd[HLP_MAX_PSWD_LEN];
1277 kal_uint8 Is801_CalledNumber[HLP_MAX_BWSR_DIG_LEN];
1278
1279 kal_uint8 MN_HA_AUTH; /* 0-RFC2002, 1-RFC2002bis, 2-bypassHA */
1280 kal_uint8 MN_HA_Auth_Algo;
1281 kal_uint8 MN_AAA_Auth_Algo;
1282 kal_uint8 MN_Authenticator[MN_AUTH_MAX_SIZE];
1283 kal_uint8 ActiveDmuRsaPublicKey; /* 0-TestKey, 1-CommercialKey */
1284 kal_uint8 nPKOID;
1285
1286 kal_uint8 SIP_NAI[HLP_MN_NAI_MAX_SIZE];
1287 kal_uint8 SIP_DUN_NAI[HLP_MN_NAI_MAX_SIZE];
1288 kal_uint8 AN_NAI[HLP_MN_NAI_MAX_SIZE];
1289
1290 kal_uint8 DormantHandoffOptSet; /* 0-Disabled, 1-Enabled */
1291 kal_uint8 DataScrmEnabled; /* Supp Chan Supported */
1292 kal_uint8 DataTrtlEnabled; /* Slow Down data at high CPU utilization */
1293 kal_uint8 PrefRc; /* Preferred Radio Cfg. Default-RC3 */
1294 kal_uint32 DNS_PRI_IP_ADDR;
1295 kal_uint32 DNS_SEC_IP_ADDR;
1296 kal_uint8 MIPMode;
1297
1298 kal_uint32 ActiveProfile;
1299 kal_uint8 NumProfiles;
1300 kal_uint8 VJCompEnabled;
1301 /* HSPD Secure Seg Data, that are not part of a profile */
1302 /*======================================================*/
1303 /* Only Set applies, no Gets for Secure Data */
1304 kal_uint8 SIP_PASSWORD[HLP_MAX_PSWD_LEN]; /* Simple IP User Password */
1305 kal_uint8 AN_PASSWORD[HLP_MAX_PSWD_LEN]; /* AN Shared Secret*/
1306} HlpHspdSegData_APIStruct;
1307
1308typedef struct
1309{
1310 kal_uint8 RRPTimeout;
1311} HlpRrpTimeout_APIStruct;
1312
1313typedef struct
1314{
1315 kal_uint8 NumRegRetries;
1316} HlpNumRegRetries_APIStruct;
1317
1318typedef struct
1319{
1320 kal_uint8 NumDeRegRetries;
1321} HlpDeRegRetries_APIStruct;
1322
1323typedef struct
1324{
1325 kal_bool ReRegOnlyIfTraffic;
1326} HlpReRegOnlyIfTraffic_APIStruct;
1327
1328typedef struct
1329{
1330 kal_bool MipNaiEnabled;
1331} HlpMipNaiEnable_APIStruct;
1332
1333typedef struct
1334{
1335 kal_uint16 RRA;
1336} HlpReRegBackoff_APIStruct;
1337
1338typedef struct
1339{
1340 kal_uint32 Is801_IpAddr;
1341} HlpIs801IpAddr_APIStruct;
1342
1343typedef struct
1344{
1345 kal_uint16 Is801_PortNum;
1346} HlpIs801PortNum_APIStruct;
1347
1348typedef struct
1349{
1350 kal_uint8 Is801_UserId[HLP_MAX_USRID_LEN];
1351} HlpIs801UserId_APIStruct;
1352
1353typedef struct
1354{
1355 kal_uint8 Is801_Pswd[HLP_MAX_PSWD_LEN];
1356} HlpIs801Pswd_APIStruct;
1357
1358typedef struct
1359{
1360 kal_uint8 Is801_CalledNumber[HLP_MAX_BWSR_DIG_LEN];
1361} HlpIs801CalledNumber_APIStruct;
1362
1363typedef struct
1364{
1365 kal_uint8 MN_HA_AUTH; /* 0-RFC2002, 1-RFC2002bis, 2-bypassHA */
1366} HlpMNHAAUTH_APIStruct;
1367typedef struct
1368{
1369 kal_uint8 MN_HA_Auth_Algo;
1370} HlpMNHAAuthAlgo_APIStruct;
1371
1372typedef struct
1373{
1374 kal_uint8 MN_AAA_Auth_Algo;
1375} HlpMNAAAAuthAlgo_APIStruct;
1376
1377typedef struct
1378{
1379 kal_uint8 MN_Authenticator[MN_AUTH_MAX_SIZE];
1380} HlpMNAuthenticator_APIStruct;
1381
1382typedef struct
1383{
1384 kal_uint8 ActiveDmuRsaPublicKey; /* 0-TestKey, 1-CommercialKey */
1385} HlpActiveDmuRsaPublicKey_APIStruct;
1386
1387typedef struct
1388{
1389 kal_uint8 nPKOID;
1390} HlpPKOID_APIStruct;
1391
1392typedef struct
1393{
1394 kal_uint8 SIP_NAI[HLP_MN_NAI_MAX_SIZE];
1395} HlpSIPNAI_APIStruct;
1396
1397typedef struct
1398{
1399 kal_uint8 SIP_DUN_NAI[HLP_MN_NAI_MAX_SIZE];
1400} HlpSIPDUNNAI_APIStruct;
1401
1402typedef struct
1403{
1404 kal_uint8 AN_NAI[HLP_MN_NAI_MAX_SIZE];
1405} HlpANNAI_APIStruct;
1406
1407typedef struct
1408{
1409 kal_uint8 DormantHandoffOptSet; /* 0-Disabled, 1-Enabled */
1410} HlpDormantHandoffOptSet_APIStruct;
1411
1412typedef struct
1413{
1414 kal_uint8 DataScrmEnabled; /* Supp Chan Supported */
1415} HlpDataScrmEnabled_APIStruct;
1416
1417typedef struct
1418{
1419 kal_uint8 DataTrtlEnabled; /* Slow Down data at high CPU utilization */
1420} HlpDataTrtlEnabled_APIStruct;
1421
1422typedef struct
1423{
1424 kal_uint8 PrefRc; /* Preferred Radio Cfg. Default-RC3 */
1425} HlpPrefRc_APIStruct;
1426
1427typedef struct
1428{
1429 kal_uint8 VJCompressionEnabled;
1430} HlpVJCompressionEnabled_APIStruct;
1431
1432typedef struct
1433{
1434 kal_uint8 DialString[HLP_NUM_DIAL_STRING_DIGITS];
1435} HlpDialString_APIStruct;
1436
1437typedef struct
1438{
1439 kal_bool QNC_Enabled;
1440} HlpQncEnabled_APIStruct;
1441
1442typedef struct
1443{
1444 kal_uint8 MDR_Mode;
1445} HlpMdrMode_APIStruct;
1446
1447typedef struct
1448{
1449 kal_bool DoTo1X_Enabled;
1450} HlpDoTo1XEnabled_APIStruct;
1451
1452typedef struct
1453{
1454 kal_uint32 DNS_PRI_IP_ADDR;
1455} HlpDNSPRIIPADDR_APIStruct;
1456
1457typedef struct
1458{
1459 kal_uint32 DNS_SEC_IP_ADDR;
1460} HlpDNSSECIPADDR_APIStruct;
1461
1462typedef struct
1463{
1464 HlpDNSPRIIPADDR_APIStruct PriIpAddr;
1465 HlpDNSSECIPADDR_APIStruct SecIpAddr;
1466} HlpDNSIPADDR_APIStruct;
1467
1468typedef struct
1469{
1470 kal_uint32 ActiveProfile;
1471} HlpActiveProfile_APIStruct;
1472
1473typedef struct
1474{
1475 kal_uint8 ProfileId;
1476 kal_bool Profile_Valid;
1477} HlpProfileValid_APIStruct;
1478
1479typedef struct
1480{
1481 kal_uint8 NumProfiles;
1482} HlpNumProfiles_APIStruct;
1483
1484typedef struct
1485{
1486 kal_uint8 MipMode;
1487} HlpMipMode_APIStruct;
1488
1489typedef struct
1490{
1491 kal_uint8 SIP_PASSWORD[HLP_MAX_PSWD_LEN];
1492} HlpSipPassword_APIStruct;
1493
1494typedef struct
1495{
1496 kal_uint8 AN_PASSWORD[HLP_MAX_PSWD_LEN];
1497} HlpAnPassword_APIStruct;
1498
1499typedef struct
1500{
1501 kal_uint8 AN_PASSWORD_LEN;
1502 kal_uint8 AN_PASSWORD[HLP_MAX_PSWD_LEN];
1503} HlpAnBinaryPassword_APIStruct;
1504
1505typedef struct
1506{
1507 kal_uint8 ProfileId;
1508 kal_uint8 MN_AAA_PASSWORD_LEN;
1509 kal_uint8 MN_AAA_PASSWORD[HLP_MN_PASSWD_MAX_SIZE];
1510 kal_uint8 MN_HA_PASSWORD_LEN;
1511 kal_uint8 MN_HA_PASSWORD[HLP_MN_PASSWD_MAX_SIZE];
1512} HlpMIPPasswordHex_APIStruct;
1513
1514typedef struct
1515{
1516 kal_uint8 ProfileId;
1517 kal_uint8 MN_HA_PASSWORD[HLP_MN_PASSWD_MAX_SIZE];
1518 kal_uint8 MN_AAA_PASSWORD[HLP_MN_PASSWD_MAX_SIZE];
1519} HlpMIPPasswordString_APIStruct;
1520
1521typedef struct
1522{
1523 kal_uint8 SIP_PASSWORD_LEN;
1524 kal_uint8 SIP_PASSWORD[HLP_MAX_PSWD_LEN];
1525} HlpSIPPasswordHex_APIStruct;
1526
1527typedef struct
1528{
1529 kal_uint8 ProfileId; /* Init the data to defaults, for this ProfileId */
1530} HlpSecureSegInit_APIStruct;
1531
1532typedef struct
1533{
1534 kal_bool HspdLocked;
1535} HlpHspdLockGet_APIStruct;
1536
1537typedef struct
1538{
1539 kal_uint16 LockCode;
1540 kal_bool Lock;
1541} HlpHspdLockSet_APIStruct;
1542
1543typedef struct
1544{
1545 kal_uint16 CurrentLockCode;
1546 kal_uint16 NewLockCode;
1547} HlpHspdLockCode_APIStruct;
1548
1549typedef struct
1550{
1551 kal_bool Enable; /* KAL_TRUE: Scan the serial link for PPP packets
1552 Default is KAL_FALSE: Wait for ATD #777*/
1553} HlpDataAutoPacketDetection_APIStruct;
1554
1555typedef struct
1556{
1557 kal_bool HspdNetworkMode;
1558} HlpHspdNetworkMode_APIStruct;
1559
1560typedef struct
1561{
1562 kal_uint16 T_Dormancy;
1563 kal_uint16 T_HRPD_Search;
1564 kal_uint16 T_Rapid_Dormancy;
1565 kal_uint16 T_ResDef_Dormancy;
1566#ifdef MTK_CBP
1567 /* refer to DormParmCheckT enum
1568 * bit3: T_ResDef_Dormancy; bit2: T_Rapid_Dormancy; bit1: T_HRPD_Search; bit0: T_Dormancy.
1569 * if 1, need check
1570 */
1571 DormParmCheckT Check_Flag;
1572#endif
1573} HlpDormantTimerData_APIStruct;
1574
1575typedef struct
1576{
1577 kal_uint16 T_DO_Retry;
1578} HlpDoRetryTimerData_APIStruct;
1579
1580typedef struct {
1581 kal_uint16 T_Dormancy;
1582} HlpValCtaUpdateReqMsgT;
1583
1584typedef enum
1585{
1586 HLP_DATA_SO_PRE701=0,
1587 HLP_DATA_SO_QP=1,
1588 HLP_DATA_SO_IS701=2
1589} HlpDataSOType;
1590
1591typedef struct
1592{
1593 HlpDataSOType SOSetType;
1594} HlpDataSO_APIStruct;
1595
1596typedef struct
1597{
1598 HlpParmOperationId ParmId;
1599 kal_bool InProgress;
1600 kal_bool RspNeeded;
1601 ExeRspMsgT RspInfo;
1602 kal_int16 RegId;
1603} HlpSecureRspType;
1604
1605typedef struct {
1606 kal_uint8 N_DIGITS;
1607 kal_uint8 MDN[OTA_MAX_MDN_DIGITS];
1608} HlpPswMDNUpdatedMsgT;
1609
1610typedef struct
1611{
1612 kal_bool TriggeredByCs;
1613} HlpPswRsvasAbortReqMsgT;
1614
1615#define MAX_CHAP_DATA_LEN 16
1616
1617typedef struct{
1618 kal_uint8 ChapId;
1619 kal_uint8 ChapLen;
1620 kal_uint8 ChapData[MAX_CHAP_DATA_LEN];
1621} HlpUimAccessChapTestMsgT;
1622
1623typedef struct {
1624 kal_uint16 T_Dormancy;
1625 kal_uint16 T_HRPD_Search;
1626 kal_uint16 T_Rapid_Dormancy;
1627 kal_uint16 T_ResDef_Dormancy;
1628 DormParmCheckT Check_Flag;
1629} HlpDormancyTimersSetMsgT;
1630
1631typedef struct {
1632 kal_uint16 T_DO_Retry;
1633} HlpDORetryTimersSetMsgT;
1634
1635typedef HlpSecureRspType HlpSegRspType;
1636#endif
1637
1638#ifdef CBP7_EHRPD
1639typedef struct
1640{
1641 kal_uint8 AKA_PASSWORD[HLP_MAX_PSWD_LEN];
1642} HlpAkaPassword_APIStruct;
1643
1644typedef struct
1645{
1646 HlpHspdAkaProfileDataT AkaProfileData;
1647} HlpAkaProfileData_APIStruct;
1648
1649typedef enum
1650{
1651 AKAAuth_Success,
1652 AKAAuth_AUTNFailure,
1653 AKAAuth_SQNSyncFailure,
1654 AKAAuth_RESInvalid,
1655 AKAAuth_CKInvalid,
1656 AKAAuth_IKInvalid,
1657 AKAAuth_UnknowFailure
1658#if EAP_AKA_PRIME
1659 ,
1660 AKAAuth_KDFIputInvalid,
1661 AKAAuth_KDFInvalid
1662#endif
1663} EapAkaAuthResultT;
1664
1665typedef struct
1666{
1667 EapAkaAuthResultT authResult;
1668} HlpSecAkaAuthRspMsgT;
1669#endif
1670
1671typedef struct
1672{
1673 kal_bool bEncryptDecryptResult;
1674} HlpSecAesCryptRspMsgT;
1675
1676typedef struct
1677{
1678 ExeRspMsgT RspInfo;
1679 kal_uint8 FlowId;
1680 HlpIp6AddrTypeE AddrType;
1681 kal_uint16 LocalAddrPort;
1682 kal_uint16 PeerAddrPort;
1683 kal_uint32 PeerAddrIp[4];
1684} HlpIp6TcpConnectionOpenMsgT;
1685
1686typedef struct
1687{
1688 kal_uint8 Sap;
1689} HlpTcpConnectionOpenRspMsgT;
1690
1691typedef struct
1692{
1693 ExeRspMsgT RspInfo;
1694 kal_uint16 LocalAddrPort;
1695 kal_uint16 PeerAddrPort;
1696 kal_uint32 PeerAddrIp;
1697} HlpIp4TcpConnectionOpenMsgT;
1698
1699#ifdef CBP7_EHRPD
1700typedef struct
1701{
1702 kal_bool eEHRPD;
1703} HlpImsEHRPDAttriMsgT;
1704
1705/* IP6 related Begin */
1706
1707typedef struct
1708{
1709 ExeRspMsgT RspInfo;
1710 kal_uint8 FlowId;
1711 HlpIp6AddrTypeE AddrType;
1712 kal_uint16 LocalAddrPort;
1713 kal_uint16 PeerAddrPort;
1714 kal_uint32 PeerAddrIp[4];
1715 kal_int32 PayloadSize;
1716} HlpIp6UdpConnectionOpenMsgT;
1717
1718typedef struct
1719{
1720 kal_uint8 Sap;
1721} HlpIp6UdpConnectionOpenRspMsgT;
1722
1723typedef struct
1724{
1725 kal_uint8 Sap;
1726} HlpIp6UdpConnectionCloseMsgT;
1727
1728typedef struct
1729{
1730 kal_uint8 Sap;
1731} HlpIp6TcpConnectionCloseMsgT;
1732
1733/* IP6 related End */
1734
1735
1736typedef struct
1737{
1738 kal_bool bRevRohcOnRlpFlow;
1739 HlpProtocolIdentifierT RevProtcolID;
1740 RevRohcProtocolParmsT RevRohcParms;
1741 kal_bool bFwdRohcOnRlpFlow;
1742 HlpProtocolIdentifierT FwdProtcolID;
1743 FwdRohcProtocolParmsT FwdRohcParms;
1744} HlpRlpFlowProtocolInfoT;
1745
1746typedef struct
1747{
1748 HlpRlpFlowProtocolInfoT RlpFlowProtocolInfo[MAX_HLP_FLOW_SUPPORTED];
1749} HlpRlpFlowProtocolInfoMsgT;
1750
1751typedef struct
1752{
1753 kal_uint8 curRoute;
1754} HlpRlpRouteChangedMsgT;
1755#endif
1756
1757typedef enum
1758{
1759 HLP_PPP_ROUTE_DEFAULT,
1760 HLP_PPP_ROUTE_NDIS
1761} HlpPppRouteTypeE;
1762
1763typedef struct
1764{
1765 kal_uint8 RouteType;
1766} HlpPppRouteTypeSetMsgT;
1767
1768typedef enum
1769{
1770 PATH_HDLC,
1771 PATH_IP,
1772 PATH_ROHC,
1773 PATH_IP_WITH_PDNMUX
1774} HlpRlpDataPathT;
1775
1776typedef struct
1777{
1778 NetworkT network;
1779 SvcStatusT svcStatus;
1780} HlpSvcStatusMsgT;
1781
1782typedef enum
1783{
1784 CONN_SUSPEND,
1785 CONN_RESUME,
1786 CONN_DISABLE,
1787 CONN_RELEASE,
1788 CONN_RESET
1789} ConnCmdT;
1790
1791typedef struct
1792{
1793 ConnCmdT dataCmd;
1794} HlpDataConnectionCmdT;
1795
1796typedef enum
1797{
1798 PowerUp,
1799 HybridRegistration,
1800 RTTOnlyRegistration,
1801 TriggerPDRegistration,
1802 DefaultAttach,
1803 SetIPv6Address,
1804 DedicateAttach,
1805 DetachAll,
1806 SendPING_IPv4,
1807 SendPING_IPv6
1808} ActionT;
1809
1810typedef struct
1811{
1812 ActionT myAction;
1813 kal_uint32 Ipv4Src;
1814 kal_uint32 Ipv4Dst;
1815 kal_uint32 Ipv6Src[4];
1816 kal_uint32 Ipv6Dst[4];
1817 kal_uint8 PDNid;
1818 kal_uint8 PDNtype;
1819 kal_uint8 AttachType;
1820 kal_uint8 APNstring[16];
1821} HlpTestBrowserConnectMsgT;
1822
1823typedef struct
1824{
1825 kal_bool bPowerUp;
1826} HlpPowerReqMsgT;
1827
1828
1829typedef enum
1830{
1831 HLP_DOANAUTH_CHINATELECOM,
1832 HLP_DOANAUTH_INDONESIASMART,
1833 HLP_DOANAUTH_CARRIER_MAX
1834} HlpDOANAuthT;
1835
1836typedef struct
1837{
1838 HlpDOANAuthT DOANAuthAlgo;
1839} HlpDOANAuthAlgoSetMsgT;
1840
1841typedef struct
1842{
1843 kal_uint32 SrcAddr;
1844 kal_uint32 DstAddress;
1845 kal_uint32 Length;
1846 kal_uint8 Data[520];
1847} HlpValPingReqMsgT;
1848
1849typedef struct
1850{
1851 kal_uint8 Apn[100]; /* APN of PDN which need update its inactivity timer */
1852} HlpValUpdatePdnInactivityTimerT;
1853
1854typedef enum
1855{
1856 HLP_VAL_SET_PCMT_MODE = 0,
1857 HLP_VAL_READ_PCMT_MODE,
1858 HLP_VAL_PCMT_INVALID_MODE = 255
1859}HlpValPcmtModeT;
1860
1861typedef struct
1862{
1863 ExeRspMsgT RspInfo;
1864 HlpValPcmtModeT mode;
1865 kal_bool pcmtIratSet;
1866 kal_uint32 pcmtIratValue;
1867 kal_bool pcmtEhrpdSet;
1868 kal_uint32 pcmtEhrpdValue;
1869} HlpValPcmtParaMsgT;
1870
1871typedef struct
1872{
1873 kal_uint8 AppSubType;
1874} HlpPppDataReqMsgT;
1875
1876typedef enum
1877{
1878 HLP_UT_CONFIG_PARAM_1X_PS_ORIG_FAIL_REASON,
1879 HLP_UT_CONFIG_PARAM_CONTINUE_PROCESS_RATDM_UL_DATA,
1880 HLP_UT_CONFIG_PARAM_MCC,
1881 HLP_UT_CONFIG_PARAM_COMPLETE_PROCESS_DL_DATA,
1882 HLP_UT_CONFIG_PARAM_SBP_ID,
1883 HLP_UT_CONFIG_PARAM_MAX
1884}HlpUtConfigParamT;
1885
1886typedef struct
1887{
1888 kal_uint32 LocalIPAddr;
1889 kal_uint32 PriDNSAddr;
1890 kal_uint32 RemoteIPAddr;
1891 kal_uint32 SecDNSAddr;
1892 kal_uint16 IPv4MTU;
1893}NwAppliedParm1xHRPDT;
1894
1895typedef struct
1896{
1897 kal_uint8 Cid; /*context id of PDP*/
1898 NetworkPrefT NetworkPref;
1899 NspeAppT AppType;
1900 DialingInfoT CallInfo;
1901 kal_uint16 InactivityTmr; /* number of seconds for 1X RLP only */
1902 kal_bool ReleaseTchWhenFallback; /* MIP to SIP fallback, release TCH */
1903 HlpPppRouteTypeE RouteType;
1904}HlpPppConnectReqMsgT;
1905
1906typedef struct
1907{
1908 kal_uint8 Cid; /*context id of PDP*/
1909 DataConnErrCodeT ErrCode;
1910 NwAppliedParm1xHRPDT Parm;
1911}HlpPppConnectCnfMsgT;
1912
1913typedef struct
1914{
1915 kal_uint8 Cid; /*context id of PDP*/
1916}HlpPppDisconnectReqMsgT;
1917
1918typedef struct
1919{
1920 kal_uint8 Cid; /*context id of PDP*/
1921}HlpPppUpdateReqMsgT;
1922
1923typedef struct
1924{
1925 kal_uint8 Cid; /*context id of PDP*/
1926}HlpPppDisconnectCnfMsgT;
1927
1928typedef enum
1929{
1930 DISCONNECT_BY_NW,
1931 DISCONNECT_BY_ME
1932}DataDiscCauseT;
1933
1934typedef struct
1935{
1936 kal_uint8 Cid; /*context id of PDP*/
1937 DataDiscCauseT Cause;
1938}HlpPppDisconnectIndMsgT;
1939
1940typedef struct
1941{
1942 kal_uint8 Cid; /*context id of PDP*/
1943 NwAppliedParm1xHRPDT Parm;
1944}HlpPppModifyIndMsgT;
1945
1946/*---------------------------------------------------------------
1947* Declare global variables
1948*----------------------------------------------------------------*/
1949extern kal_bool PppFilterIpMux;
1950
1951extern MuxInfo FilterMuxInfo;
1952/*---------------------------------------------------------------
1953* Declare global function prototypes
1954*----------------------------------------------------------------*/
1955
1956extern void PppHaDecode0Lisr (kal_uint32 irq_id);
1957extern void PppHaDecode1Lisr (kal_uint32 irq_id);
1958extern void PppHaEncode0Lisr (kal_uint32 irq_id);
1959extern void PppHaEncode1Lisr (kal_uint32 irq_id);
1960extern void HlpSetInternetPdnId(kal_uint8 PdnId);
1961
1962RmDataQBuffStatusE RmWrite(RmDataCpBuffDescT *Buff, kal_uint32 flags);
1963RmDataQBuffStatusE RmRead(RmDataCpBuffDescT * Buff);
1964void C2kPppLineStatusNotify(kal_uint32 PppStatus);
1965void C2kPppLineStatusIndicate(kal_uint32 PppStatus);
1966kal_bool HlpIsHightPriorityConnReq(void);
1967
1968#endif
1969
1970
1971