blob: 3540824d2530c15760b9a031fa96520f59b81396 [file] [log] [blame]
yu.dongc33b3072024-08-21 23:14:49 -07001/*****************************************************************************
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/*************************************************************
36*
37* This Software is the property of VIA Telecom, Inc. and may only be used pursuant to a license from VIA Telecom, Inc.
38*
39* Any unauthorized use inconsistent with the terms of such license is strictly prohibited.
40*
41* Copyright (c) 2010 VIA Telecom, Inc. All rights reserved.
42*
43*************************************************************/
44#ifndef _CSS_API_H_
45
46#define _CSS_API_H_ 1
47
48#include "sysdefs.h"
49#ifdef MTK_DEV_C2K_IRAT
50#include "hlpapi.h"
51#include "uimapi.h"
52#include "do_ims.h"
53#include "valiratapi.h"
54#include "iratapi.h"
55#endif /* MTK_DEV_C2K_IRAT */
56#include "module_msg_range.h"
57#include "css_nvram.h"
58#include "css_msgid.h"
59#include "clc_nvram.h"
60#include "rsva_msgid.h"
61
62/*----------------------------------------------------------------------------
63* EXE Interfaces - Definition of Signals and Mailboxes
64*----------------------------------------------------------------------------*/
65#ifdef MTK_DEV_C2K_IRAT
66#define MAX_IRAT_OOSA_TIME 0xFFFF
67#define MAX_INFINITE_OOSA_TIME 0xFFFF
68#endif
69#define CSS_1X_CPSM_ID 0
70#define CSS_DO_CPSM_ID 1
71
72/* Subnet field length, in the unit of byte*/
73#define SUBNET_LENGTH 16
74
75#define CP_HRPD_MAX_NUM_REDIRECT_CHANNELS 10 /* can be more, just taken for now */
76
77#ifdef MTK_DEV_C2K_IRAT
78#define PDN_ADD_LEN 5
79#endif
80
81#define MAX_ERI_TEXT_LENGTH 32
82
83/* CDMA Blocks */
84#define A_BLOCK 0
85#define B_BLOCK 1
86#define C_BLOCK 2
87#define D_BLOCK 3
88#define E_BLOCK 4
89#define F_BLOCK 5
90#define G_BLOCK 6
91#define H_BLOCK 7
92#define I_BLOCK 8
93#define J_BLOCK 9
94#define K_BLOCK 10
95#define L_BLOCK 11
96#define M_BLOCK 12
97#define N_BLOCK 13
98#define PSB_BLOCK 27 /* Public Safety Broadband block */
99
100#define UNDEF_BLK 254
101#define ALL_BLOCKS 255
102
103#define MAX_BLOCKS 14
104
105/*----------------------------------------------------------------------------
106* Basic Types
107*----------------------------------------------------------------------------*/
108typedef enum
109{
110 CSS_RAT_DO,
111 CSS_RAT_1X,
112 CSS_RAT_1X_DO
113}CssRatModeT;
114
115typedef enum
116{
117 CSS_LIST_SMALL_SIZE = 20,
118 CSS_LIST_MEDIUM_RARE_SIZE = 30,
119 CSS_LIST_MEDIUM_SIZE = 60,
120 CSS_LIST_MEDIUM_WELL_SIZE = 150,
121 CSS_LIST_LARGE_SIZE = 200
122} CssChanListSizeE;
123
124typedef enum
125{
126 MRU, /* Most recently used scan list */
127 MPL, /* Most preferred scan list */
128 CRSL, /* Channel release scan list */
129 PRL, /* PRL scan list */
130 DPCL, /* Default band scan list */
131 RSL, /* Redirection scan list */
132 OSL, /* OTASP scan list */
133 GSL, /* GEO scan list */
134 ADOSL, /* Associated DO scan list */
135 SRSL, /* Silent retry scan list */
136 ASMPL, /* DO Asso More Pref scan list */
137 ADOLOSL, /* DO Lost Asso scan list */
138 PRLOSL, /* DO Lost PRL MRU scan list */
139 GLOSL, /* DO Lost GEO scan list */
140 EMERGENCYSL, /* Emergency call scan list */
141 TEMPSL,
142 AVOIDL, /* Avoidance list */
143 HSRSL, /* hVoLte silent redial scan list */
144 IGSL, /* Idle GEO scan list */
145 PSREGRAL, /* Recently acquired list */
146 RSSI, /* Rssi Scan list */
147 EMCGMSSSL,/* Emergency call scan list from GMSS */
148 CSS_LIST_END
149} CssLists;
150
151typedef enum
152{
153 CP_SYS_DO,
154 CP_SYS_1X,
155 CP_SYS_BOTH,
156 CP_SYS_INVALID
157}CssCpSystemT;
158typedef PACKED_PREFIX struct _CHANNEL_DESC {
159 SysBandChannelT chan;
160
161 /* Association Tag, valid only for DO system, and assume they are valid only for
162 * associated DO scan list system */
163 kal_bool Pn_Association;
164 kal_bool Data_Association;
165} PACKED_POSTFIX CHANNEL_DESC, PACKED_POSTFIX *pCHANNEL_DESC;
166
167#define CHAN_LIST_HDR \
168 CssLists ListType; \
169 CssChanListSizeE ListSize; \
170 kal_uint16 ChanListNumChans; \
171 kal_uint16 ChanListIndex;
172
173typedef struct {
174 CHAN_LIST_HDR
175} ChanListHdr, *pChanListHdr;
176
177typedef struct
178{
179 CHAN_LIST_HDR
180 CHANNEL_DESC ChanList[CSS_LIST_LARGE_SIZE];
181 kal_uint16 AcqIndex[CSS_LIST_LARGE_SIZE];
182} ChannelList, *pChannelList;
183
184typedef struct
185{
186 CHAN_LIST_HDR
187 CHANNEL_DESC ChanList[CSS_LIST_MEDIUM_SIZE];
188 kal_uint16 AcqIndex[CSS_LIST_MEDIUM_SIZE];
189} MediumChannelList, *pMediumChannelList;
190
191typedef struct
192{
193 CHAN_LIST_HDR
194 CHANNEL_DESC ChanList[CSS_LIST_MEDIUM_WELL_SIZE];
195 kal_uint16 AcqIndex[CSS_LIST_MEDIUM_WELL_SIZE];
196} MediumWellChannelList, *pMediumWellChannelList;
197
198typedef struct
199{
200 CHAN_LIST_HDR
201 CHANNEL_DESC ChanList[CSS_LIST_SMALL_SIZE];
202 kal_uint16 AcqIndex[CSS_LIST_SMALL_SIZE];
203} SmallChannelList, *pSmallChannelList;
204
205typedef struct
206{
207 LOCAL_PARA_HDR
208 ChannelList *Rssi_ScanList_p;
209}Css_L1d_Rssi_Scan_ReqT;
210
211typedef struct
212{
213 SysBandChannelT chan;
214 kal_int16 rssiValue;
215} ChannelRssiValueT;
216
217typedef struct
218{
219 kal_uint16 ChanListNumChans;
220 ChannelRssiValueT ChannelRssiValue[CSS_LIST_LARGE_SIZE];
221} RssiResultT;
222
223typedef struct
224{
225 RssiResultT *RssiResult_p;
226}Css_L1d_Rssi_Scan_CnfT;
227
228typedef struct
229{
230 kal_uint8 blockId;
231 kal_uint16 FirstCh;
232 kal_uint8 NumCh;
233} _PrefCh;
234
235typedef struct
236{
237 kal_uint8 numBlocks;
238 kal_uint8 increment;
239 _PrefCh PrefCh[MAX_BLOCKS];
240} _BandBlockChannel;
241
242typedef enum
243{
244 HDM_1XVOICE,
245 HDM_DATAPREF,
246 HDM_VOIP
247}HybridPrefModeT;
248
249typedef enum
250{
251 MSPL_POWER_ON_SEARCHING,
252 MSPL_NORMAL_SERVICE,
253 MSPL_SEARCH_EXHAUSTED
254}MsplSearchStatusT;
255
256typedef enum
257{
258 CP_PREV_POWERUP = 1,
259 CP_PREV_ACQUISITION_FAILURE = 2,
260 CP_PREV_NEW_SYSTEM = 3,
261 CP_PREV_CDMA_AVAILABLE = 4,
262 CP_PREV_RESELECTION = 5,
263 CP_PREV_PROTOCOL_MISMATCH = 6,
264 CP_PREV_SYSTEM_LOST = 7,
265 CP_PREV_UNLOCK = 8,
266 CP_PREV_ACCESS_DENIED = 9,
267 CP_PREV_NDSS_OFF = 10,
268 CP_PREV_RELEASE = 11,
269 CP_PREV_ERROR = 12,
270 CP_PREV_REDIRECTION = 13,
271 CP_PREV_REGISTRATION_REJECT = 14,
272 CP_PREV_WRONG_SYSTEM = 15,
273 CP_PREV_WRONG_NETWORK = 16,
274 CP_PREV_RESCAN = 17,
275 CP_PREV_LOCK = 18,
276 CP_PREV_SYSTEM_LOST_ACCESS = 19,
277 CP_PREV_E911_CALL = 20,
278 CP_PREV_OTASP_CALL = 21,
279 CP_PREV_PERIODIC_RESCAN_OBSOLETE = 22,
280 CP_PREV_ADDITIONAL_CDMA = 23,
281 CP_PREV_SYSTEM_RESELECTION = 24,
282 CP_PREV_FORCE_BAND_MODE = 25,
283 CP_PREV_EXIT_E911_MODE = 26,
284 CP_PREV_SYSTEM_FOUND_NOT_BEST = 27,
285 CP_PREV_REDIRECTION_END_TIMER_EXPIRED = 28,
286 CP_PREV_FORCE_ANALOG_MODE = 29,
287 CP_PREV_MORE_PREF_SCAN_TIMER_EXPIRED = 30,
288 CP_PREV_ACCESS_FAILED_SILENT_RETRY = 31,
289 CP_PREV_ESPM_NOT_RECEIVED = 32,
290 CP_PREV_TIMING_CHANGE_FAILURE = 33,
291 CP_PREV_SYNCHRONIZATION_FAILURE = 34,
292 CP_PREV_REG_THROTTLING = 35,
293 CP_PREV_ACCESS_MAX_PROBES = 36,
294 CP_PREV_PAGING_MONITOR_TIMEOUT = 40,
295 CP_PREV_MODEM_FAILURE = 41,
296 CP_PREV_IRAT_RESET_1XCDMA = 42,
297 CP_PREV_MANUAL_AVOID_RESELECT = 43,
298 CP_PREV_1X_DO_COLLOCATED_BROKEN = 50,
299 CP_PREV_REINIT = 51,
300 CP_PREV_E911_TRAFF_CONV_FAIL = 52,
301 CP_GLOBALMODE_DO_ACQUISITION_FAILURE = 60,
302 CP_PREV_1X_RESUME_FROM_SUSPENDED = 61,
303 CP_PREV_1X_DATA_ACCESS_RELEASE = 62
304} SystemSelectIndE;
305
306/* CSS_NWK_RPT_CP_EVENT_MSG */
307typedef enum
308{
309 CSS_EV_DISCONNECT = 1,
310 CSS_EV_PAGE_RECEIVED,
311 CSS_EV_STOPALERT,
312 CSS_EV_ABBR_ALERT,
313 CSS_EV_NOSVC,
314 CSS_EV_CDMA_INSVC,
315 CSS_EV_CPENABLED,
316 CSS_EV_CPDISABLED,
317 CSS_EV_PDOWNACK,
318 CSS_EV_CONNANALOG,
319 CSS_EV_CONNDIGITAL,
320 CSS_EV_ASSIGNED,
321 CSS_EV_ORIG_FAIL,
322 CSS_EV_NDSS_ORIG_CANCEL,
323 CSS_EV_INTERCEPT,
324 CSS_EV_REORDER,
325 CSS_EV_CC_RELEASE,
326 CSS_EV_CC_RELEASE_SO_REJ,
327 CSS_EV_DIALING_COMPLETE,
328 CSS_EV_DILAING_CONTINUE,
329 CSS_EV_MAINTENANCE,
330 CSS_EV_VP_ON,
331 CSS_EV_VP_OFF,
332 CSS_EV_PSIST_FAIL,
333 CSS_EV_TC_RELEASE_MS,
334 CSS_EV_TC_RELEASE_PDOWN,
335 CSS_EV_TC_RELEASE_DISABLE,
336 CSS_EV_TC_RELEASE_BS,
337 CSS_EV_TC_RELEASE_SO_REJECT,
338 CSS_EV_TC_RELEASE_TIMEOUT,
339 CSS_EV_TC_RELEASE_ACK_FAIL,
340 CSS_EV_TC_RELEASE_FADE,
341 CSS_EV_TC_RELEASE_LOCK,
342 CSS_EV_PAGE_FAIL,
343 CSS_EV_RETRY_TIMER_ACTIVE,
344 CSS_EV_RETRY_TIMER_INACTIVE,
345 CSS_EV_AMPS_INSVC,
346 CSS_EV_ORIG_REJECTED,
347 CSS_EV_ORIG_REJECTED_SO_NOT_SUPPORTED,
348 CSS_EV_ORIG_BLOCKED_BY_IRAT,
349
350 CSS_EV_PKT_ACTIVE = 50,
351 CSS_EV_PKT_RELEASED,
352 CSS_EV_PKT_DORMANT,
353
354 CSS_EV_ORIG_USER_CANCEL = 60,
355 CSS_EV_ORIG_ACCESS_FAIL,
356 CSS_EV_ORIG_NO_SVC_FAIL,
357 CSS_EV_ORIG_RETRY_ORDER,
358 CSS_EV_SR_ENABLED,
359 CSS_EV_SR_DISABLED,
360 CSS_EV_ORIG_REQ_RECEIVED,
361 CSS_EV_PSW_POWER_UP,
362 CSS_EV_PSW_POWER_DOWN,
363
364 CSS_EV_FLASHFAIL = 80,
365 CSS_EV_ANALOG_PAGE_RECEIVED,
366 CSS_EV_AMPS_IDLE,
367
368 CSS_EV_ABBR_INTERCEPT,
369 CSS_EV_ABBR_REORDER,
370 CSS_EV_CONNCOMPLETE,
371 CSS_EV_ENTER_OOSA,
372 CSS_EV_FNM_RELEASE,
373 CSS_EV_MSID_UPDATED,
374 CSS_EV_BUSY_ORIG_FAIL,
375 CSS_EV_LOCKED_ORIG_FAIL,
376 CSS_EV_REG_MAX_PROBE,
377 CSS_EV_DOCONN_1XPREEMPT,
378 CSS_EV_ORIG_ACCT,
379 CSS_EV_REG_SYS_LOST,
380 CSS_EV_SMS_CANCEL_BY_PWRDOWN,
381 CSS_EV_RSVAS_SUSPEND_COMPLETE,
382 CSS_EV_SERVICE_SUCCESS,
383 CSS_EV_LOCKED,
384 CSS_EV_UNLOCKED,
385 CSS_RPT_CP_EVENT_INVALID
386} Css1xRptCpEventT;
387
388typedef enum
389{
390 IRAT_DEEPSLEEP = 0, /* no system state after disabled by MMC */
391 IRAT_CSSOOSA, /* css in OOSA sleep */
392 IRAT_INIT, /* no system state while scanning channel */
393 IRAT_RESCAN, /* conducting MPSS scan, ASSO scan,..*/
394 IRAT_SYSTEMLOST, /* no system state while scanning channel or OOSA after sys lost */
395 IRAT_IDLE,
396 IRAT_CONNECTION,
397
398 /* the followings are used as event only */
399 IRAT_EXHAUST, /* reach at the end of scan list */
400 IRAT_DO_NO_ASSO, /* current 1X has no associated DO system */
401 IRAT_HANDOFF, /* handoff to a new system */
402 IRAT_SCANNING, /* scanning channels */
403 IRAT_WAKEUP, /* wakeup from OOSA or DEEPSLEEP*/
404 IRAT_VALIDATE_FAIL, /* Validate fail from scanning or idle*/
405 IRAT_VALIDATE_SUCC, /* Validate success from scanning or idle*/
406 IRAT_1X_POWERUP, /* 1xRTT Power up done. */
407 IRAT_DO_POWERUP, /* EVDO Power up done. */
408 IRAT_1X_POWERDOWN, /* 1xRTT Power down done. */
409 IRAT_DO_POWERDOWN, /* EVDO Power down done. */
410 IRAT_1X_RSSI_SCAN_ABORTED, /* 1xRTT RSSI Abort done */
411 IRAT_1X_IN_SERVICE, /* 1xRTT is in service from PSW */
412} IRAT_CPStateT;
413
414typedef enum
415{
416 IRAT_STATE_INACTIVATE, /*0*/
417 IRAT_STATE_MCC_SEARCH, /*1*/
418 IRAT_STATE_SYS_ACQ, /*2*/
419 IRAT_STATE_GMSS_CS_REG, /*3*/
420 IRAT_STATE_GMSS_PS_REG, /*4*/
421 IRAT_STATE_L2C_RESEL, /*5*/
422 IRAT_STATE_L2C_REDIRECT, /*6*/
423 IRAT_STATE_C2L_RESEL, /*7*/
424 IRAT_STATE_SUSPEND, /*8*/
425 IRAT_STATE_VIRTUAL_SUSPEND, /*9*/
426 IRAT_STATE_RESUME, /*10*/
427 IRAT_STATE_DO_RESUME, /*11*/
428 IRAT_STATE_VIRTUAL_RESUME, /*12*/
429 IRAT_STATE_CS_SERVICE_START, /*13*/
430 IRAT_STATE_CS_SERVICE_FINISH, /*14*/
431 IRAT_STATE_GMSS_PS_DEREG, /*15*/
432 IRAT_STATE_DEACTIVATE, /*16*/
433 IRAT_STATE_LTE_DISABLE, /*17*/
434 IRAT_STATE_SET_RAT_MODE, /*18*/
435 IRAT_STATE_EMC_START, /*19*/
436 IRAT_STATE_EMC_STOP, /*20*/
437 IRAT_STATE_POWER_OFF, /*21*/
438 IRAT_STATE_CS_OCCUPY, /*22*/
439 IRAT_STATE_POWER_UP_SET_RAT, /*23*/
440 IRAT_STATE_POWER_DOWN_SET_RAT, /*24*/
441 IRAT_STATE_RAT_MODE_CHG, /*25*/
442 IRAT_STATE_NUM
443}IratMainStateE;
444
445typedef enum
446{
447 LLA_OCCUPY_OWNER_IRAT_LIST,
448 LLA_OCCUPY_OWNER_IRAT_MAJOR,
449 LLA_OCCUPY_OWNER_RSVAC,
450 LLA_OCCUPY_OWNER_NONE
451} LLAOccupyOwnerT, LLAReleaseOwnerT;
452
453typedef enum
454{
455 CSS_EV_DO_POWERUP,
456 CSS_EV_DO_POWERDOWN
457}CssDoRptCpEventT;
458
459typedef enum
460{
461 SUCC,
462 TCH_FAIL,
463 CONN_DENY,
464 RETRY_DELAY,
465 THROTTLING
466}CssTchSetupStatusT;
467
468typedef PACKED_PREFIX struct _RECORD_INDEX {
469 kal_uint8 *pByteOffset;
470 kal_uint32 bitOffset;
471 kal_uint16 recNum;
472 kal_uint16 recSize;
473} PACKED_POSTFIX RECORD_INDEX, PACKED_POSTFIX *pRECORD_INDEX;
474
475typedef PACKED_PREFIX struct
476{
477 kal_uint16 CPCA, CSCA; /* CDMA CELL PRI CH, SEC CH, respectively, Sys A */
478 kal_uint16 CPCB, CSCB; /* CDMA CELL PRI CH, SEC CH, respectively, Sys B */
479
480 kal_uint8 MAX_SID_NID;
481 kal_uint8 STORED_POS_SID_NID;
482 kal_uint16 SID[MAX_POSITIVE_SIDS];
483 kal_uint16 NID[MAX_POSITIVE_SIDS];
484
485 kal_uint8 STORED_NEG_SID_NID;
486 kal_uint16 NEG_SID[MAX_NEGATIVE_SIDS];
487 kal_uint16 NEG_NID[MAX_NEGATIVE_SIDS];
488
489 kal_uint8 SystemSelect;
490
491} PACKED_POSTFIX NAM_PREFERENCES, PACKED_POSTFIX *pNAM_PREFERENCES;
492
493typedef enum {
494 PRL_1X95 = 1,
495 RSVD,
496 PRL_EXT
497}PRL_PREV;
498
499typedef enum
500{
501 NORMAL_PRL = 0,
502 CONCATENATE_PRL =1
503}PRL_TYPE;
504
505#ifdef MTK_PLT_ON_PC_UT
506typedef enum
507{
508 CSS_CONF_LTE_IS_TURNED_OFF, /**< LTE is turned on or not */
509 CSS_CONF_UIM_IS_DISABLE, /**< UIM is disable or not */
510 CSS_CONF_UIM_STATE, /**< UIM state (no card, UICC, ..) */
511 CSS_CONF_IRAT_MODE, /**< C2K-LTE IRAT mode */
512 CSS_CONF_4G_SWITCH_OFF_BY_AT, /**< 4G is switch off by AT command or not */
513 CSS_CONF_SIM_INDEX, /**< SIM index of C2K modem */
514 CSS_CONF_PS_DATA_ATTACHED, /**< PS data attached */
515 CSS_CONF_OPERATOR_SBP_ID, /**< Opeartor SBP ID */
516 CSS_CONF_ECTM_MODE, /**< UUT test mode */
517 CSS_CONF_REL_TO_IDLE, /**< ReleaseToIdle is ture or false */
518 CSS_CONF_IDLE_GEO_LIST_SBP, /**< idle GEO list feature SBP */
519 CSS_CONF_MRU_FIRST_ENTRY_OPER_SID_NID, /**< MRU first entry operational SID/NID */
520 CSS_CONF_1X_REG_ENABELD, /**< 1x registration is allowed or not */
521 CSS_CONF_DATA_HOLD_SBP, /**< T_data_hold before data call feature SBP */
522 CSS_CONF_PREF_ONLY, /**< PREF_ONLY in PRL */
523 CSS_CONF_SYSTEM_SELECT_TYPE, /**< system select type */
524 CSS_CONF_SBP_FEATURE_SET, /**< set sbp feature */
525 CSS_CONF_INTL_ERI_VALUES_SET, /**< set intlEriVals*/
526 CSS_CONF_CSS_NAM_ROAMING_SET, /**< set _css_nam.RoamingSetting */
527 CSS_CONF_ACTIVE_BAND_BITMASK, /**< set active band bitmask */
528 CSS_CONF_PREFMODE, /**< set hybrid mode setting by AT+ PREFMODE */
529 CSS_CONF_GMSS_MRU_SBP, /**< GMSS MRU feature SBP */
530 CSS_CONF_VZW_E911_SBP, /**< VZW E911 SBP */
531 CSS_CONF_RAT_MODE, /**< RAT MODE */
532 CSS_CONF_ERI_SBP, /**< ERI feature SBP */
533 CSS_CONF_SBP_STATUS_POWERUP_1X_SCAN, /**< SBP_STATUS_POWERUP_1X_SCAN */
534 CSS_CONF_SBP_STATUS_SYS_CSS_1X_USE_NAM_FOR_VALIDATION_FEATURE,/**< SBP_STATUS_SYS_CSS_1X_USE_NAM_FOR_VALIDATION_FEATURE*/
535 CSS_CONF_SBP_STATUS_GMSS_MRU, /**< SBP_STATUS_GMSS_MRU*/
536 CSS_CONF_SBP_STATUS_VZW_E911, /**< SBP_STATUS_VZW_E911 */
537 CSS_CONF_SBP_STATUS_PS_REG_SRCH_IN_SAME_CYCLE_OPTI, /**< SBP_STATUS_PS_REG_SRCH_IN_SAME_CYCLE_OPTI */
538 CSS_CONF_SBP_STATUS_SYS_CSS_1X_MAPE_HOME_SYS_AVOID_FEATURE, /**< SBP_STATUS_SYS_CSS_1X_MAPE_HOME_SYS_AVOID_FEATURE */
539 CSS_CONF_SBP_ASSIGN_MRU0_IF_EMPTY, /**< SBP_ASSIGN_MRU0_IF_EMPTY */
540 CSS_CONF_SBP_STATUS_SYS_ENH_SYSTEM_SELECT_FEATURE, /**< SBP_STATUS_SYS_ENH_SYSTEM_SELECT_FEATURE */
541 CSS_CONF_SBP_STATUS_VZW_TDO, /**< SBP_STATUS_VZW_TDO */
542 CSS_CONF_SBP_STATUS_1X_PS_DELAY, /**< SBP_STATUS_1X_PS_DELAY */
543 CSS_CONF_SBP_STATUS_CHINATELECOM_EXTENSIONS, /**< SBP_STATUS_CHINATELECOM_EXTENSIONS */
544 CSS_CONF_SBP_STATUS_CDG_AVOIDANCE, /**< SBP_STATUS_CDG_AVOIDANCE */
545 CSS_CONF_SBP_STATUS_CDG_BSR, /**< SBP_STATUS_CDG_BSR */
546 CSS_CONF_SBP_STATUS_SYS_CSS_1X_RESTRICT_SILENTRETRY_TO_SAME_GEO_FEATURE, /**< SBP_STATUS_SYS_CSS_1X_RESTRICT_SILENTRETRY_TO_SAME_GEO_FEATURE */
547 CSS_CONF_INVALID = 0xff /* invalid access option, only for initialisation */
548}css_configure_enum;
549#endif
550
551
552enum cpsm_1x_states
553{
554 CPSM_1X_POWERUP_ST,
555 CPSM_1X_SCANNING_ST,
556 CPSM_1X_IDLE_ST,
557 CPSM_1X_CONNECTION_ST,
558 CPSM_1X_SCANPAUSE_ST,
559 CPSM_1X_OOSA_ST,
560 CPSM_1X_NUM_STATES
561};
562typedef enum cpsm_1x_states CPSM_1X_STATES;
563
564enum cpsm_do_states
565{
566 CPSM_DO_POWERUP_ST,
567 CPSM_DO_SCANNING_ST,
568 CPSM_DO_IDLE_ST,
569 CPSM_DO_CONNECTION_ST,
570 CPSM_DO_SCANPAUSE_ST,
571 CPSM_DO_OOSA_ST,
572 CPSM_DO_NUM_STATES
573};
574typedef enum cpsm_do_states CPSM_DO_STATES;
575
576typedef enum
577{
578 CSS_NOT_IN_FORCE_INIT = 0,
579 CSS_FORCE_INIT_TO_PAUSE,
580 CSS_FORCE_INIT_TO_SCAN
581} CssForceToInitStatusE;
582
583typedef PACKED_PREFIX struct {
584 kal_bool valid;
585 kal_uint16 PR_LIST_SIZEs;
586 kal_uint16 PR_LIST_IDs;
587 PRL_PREV SSPR_P_REV;
588 kal_bool PREF_ONLYs;
589 kal_uint8 DEF_ROAM_INDs;
590 kal_uint16 NUM_ACQ_RECSs;
591 kal_uint16 NUM_COMMON_SUBNET_RECS;
592 kal_uint16 NUM_SYS_RECSs;
593 RECORD_INDEX acquireTableStart;
594 RECORD_INDEX commSubnetTableStart;
595 RECORD_INDEX systemTableStart;
596 kal_uint16 PR_LIST_CRCs;
597 kal_uint16 NUM_GEO_AREASs;
598} PACKED_POSTFIX PRL_HEADER, PACKED_POSTFIX *pPRL_HEADER;
599
600typedef struct {
601 kal_bool valid;
602 kal_uint32 PRL_Length;
603 PRL_TYPE prl_type;
604 kal_uint16 IS683A_Length;
605 kal_uint16 IS683C_Length;
606 kal_uint16 PR_LIST_CRCs;
607
608 kal_uint16 PR_LIST_IDs;
609 kal_bool isEPRL;
610} PRL_INFO, *pPRL_INFO;
611
612typedef PACKED_PREFIX struct
613{
614 kal_bool e911;
615} PACKED_POSTFIX Css1xE911ModeSetMsgT;
616
617typedef PACKED_PREFIX struct _SYSTEM_INFO_1X {
618 kal_bool foundSomeSys;
619 kal_uint16 sid;
620 kal_uint16 nid;
621 kal_uint16 oper_sid;
622 kal_uint16 oper_nid;
623 kal_uint16 roamInd;
624 kal_uint8 systemPref;
625 kal_uint16 acqIndex;
626 CHANNEL_DESC system;
627 kal_uint16 pilotStrength;
628 kal_int16 rxPower;
629 kal_uint8 sys1xPriority; /* IRAT Priority: 0 (HOME), 1 (PREF), 2 (ANY), 255 (INVALID) */
630#if defined (__TC10__) && defined (__TC10_IPC_CDMA_SUPPORT__)
631 kal_uint16 mcc;
632#endif
633} PACKED_POSTFIX SYSTEM_INFO_1X, PACKED_POSTFIX *pSYSTEM_INFO_1X;
634
635typedef PACKED_PREFIX struct
636{
637 SYSTEM_INFO_1X Sys;
638} PACKED_POSTFIX OtaspSelectParmsT;
639
640typedef PACKED_PREFIX struct
641{
642 kal_uint16 expectedSid;
643 kal_bool ignoreCDMA;
644 kal_uint8 sysOrdering;
645 kal_uint8 maxRedirectDelay; /* only applies to Global redirect */
646} PACKED_POSTFIX SvcRedirAnalog;
647
648
649#define CSS_MAX_SERV_REDIR_NUM_CHANS 16 /* 4 bits */
650typedef PACKED_PREFIX struct
651{
652 kal_uint8 bandClass;
653 kal_uint16 expectedSid;
654 kal_uint16 expectedNid;
655 kal_uint8 numChans;
656 kal_uint16 cdmaChan[CSS_MAX_SERV_REDIR_NUM_CHANS];
657} PACKED_POSTFIX SvcRedirCDMA;
658
659typedef PACKED_PREFIX union
660{
661 SvcRedirAnalog analog;
662 SvcRedirCDMA cdma;
663} PACKED_POSTFIX RedirType;
664
665typedef PACKED_PREFIX struct
666{
667 kal_bool global; /* indicates a global redirection */
668 kal_uint16 redirectAccolc;
669 kal_bool returnIfFail;
670 kal_bool deleteTMSI;
671 kal_bool exclPRevMs;
672 kal_bool redirectType;
673 kal_uint8 recordType;
674 RedirType type;
675} PACKED_POSTFIX SvcRedirData1xT;
676
677typedef PACKED_PREFIX struct
678{
679 SvcRedirData1xT RediretionData;
680 kal_bool SysRedirectedToValid;
681} PACKED_POSTFIX RedirectionSelectParmsT;
682
683typedef PACKED_PREFIX struct{
684 SystemSelectIndE indication;
685#ifdef MTK_DEV_C2K_IRAT
686 kal_bool isIndHandled;
687#endif
688 PACKED_PREFIX union{
689 OtaspSelectParmsT OtaParms;
690 RedirectionSelectParmsT RedirectParms;
691 } PACKED_POSTFIX u;
692} PACKED_POSTFIX Css1xSelectReqMsgT;
693
694typedef enum
695{
696 CSS_1X_SID_NID_VALIDATION,
697 CSS_1X_MCC_MNC_VALIDATION,
698} Css1xValidationType;
699
700typedef PACKED_PREFIX struct {
701 kal_uint16 curChan;
702 SysCdmaBandT curBand;
703 kal_uint16 pilotStrength;
704 kal_int16 rxPower;
705 Css1xValidationType valType;
706 kal_uint16 sid;
707 kal_uint16 nid;
708 kal_uint16 mcc; /* mcc */
709 kal_uint16 mnc; /* mnc (i.e. imsi_11_12) */
710 kal_uint16 aiMcc; /* mcc in ESPM */
711} PACKED_POSTFIX Css1xValidateReqT;
712
713typedef PACKED_PREFIX struct {
714 kal_uint16 pilotStrength;
715 kal_int16 rxPower;
716} PACKED_POSTFIX Css1xUpdateLastSavedEcIoRxPwrT;
717
718typedef PACKED_PREFIX struct
719{
720 kal_bool pending;
721 kal_bool isVoice;
722} PACKED_POSTFIX Css1XSetCallPendingMsgT;
723
724typedef PACKED_PREFIX struct
725{
726 kal_uint16 sid;
727 kal_uint16 nid;
728 kal_uint16 curChan;
729 SysCdmaBandT curBand;
730} PACKED_POSTFIX Css1XSysParmsUpdateMsgT;
731
732typedef struct
733{
734 PRL_INFO PRLInfo;
735} CssGetPrlRspMsgT;
736
737typedef PACKED_PREFIX struct
738{
739 PswIs95NamT namData;
740} PACKED_POSTFIX Css1xNamUpdatedMsgT;
741
742typedef PACKED_PREFIX struct
743{
744 kal_uint8 nam;
745} PACKED_POSTFIX CssUpdateActiveNamMsgT;
746
747typedef PACKED_PREFIX struct
748{
749 SysBandChannelT channel;
750} PACKED_POSTFIX CssSaveChannelMsgT;
751
752typedef PACKED_PREFIX struct
753{
754 SysBandChannelT channel;
755 kal_bool withSyncCh;
756} PACKED_POSTFIX CssSetReturnChannelMsgT;
757
758typedef PACKED_PREFIX struct
759{
760 kal_uint16 eri_version_number;
761} PACKED_POSTFIX CssEriVersionNumberRspMsgT;
762
763typedef PACKED_PREFIX struct
764{
765 kal_bool newSession;
766 kal_uint8 sysRev;
767} PACKED_POSTFIX CssDOSessionOpenedMsgT;
768
769typedef PACKED_PREFIX struct
770{
771 kal_bool isAliveSession;
772} PACKED_POSTFIX CssDOSessionNegoModeMsgT;
773
774typedef PACKED_PREFIX struct
775{
776 Css1xRptCpEventT event;
777} PACKED_POSTFIX CssRptCpEventMsgT;
778
779/* DO messages structure*/
780
781typedef PACKED_PREFIX struct{
782 SystemSelectIndE indication;
783#ifdef MTK_DEV_C2K_IRAT
784 kal_bool isIndHandled;
785#endif
786} PACKED_POSTFIX CssDoSelectReqMsgT;
787
788typedef PACKED_PREFIX struct {
789 kal_uint8 subnet[SUBNET_LENGTH];
790 kal_uint16 curChan;
791 SysCdmaBandT curBand;
792 kal_uint16 mcc;
793} PACKED_POSTFIX CssDoValidateReqMsgT;
794
795typedef PACKED_PREFIX struct {
796 CHANNEL_DESC Channel;
797} PACKED_POSTFIX CssDoNtwkAcqdMsgT;
798
799typedef PACKED_PREFIX struct {
800 kal_bool SessOpened;
801} PACKED_POSTFIX CssDoSessStatusIndT;
802
803typedef PACKED_PREFIX struct {
804 OperationModeT OpMode;
805 HybridPrefModeT HybridPrefMode;
806 kal_uint16 Mpss_Duration;
807} PACKED_POSTFIX CssTestCfgT;
808
809/* CDMA Channel Record */
810typedef PACKED_PREFIX struct
811{
812 kal_uint8 SysType;
813 kal_uint8 BandClass;
814 kal_uint16 Channel;
815} PACKED_POSTFIX ChanRecT;
816
817/* ALMP Redirect Message */
818typedef PACKED_PREFIX struct
819{
820 kal_uint8 NumChannel; /* 8 bits */
821 ChanRecT Channels[CP_HRPD_MAX_NUM_REDIRECT_CHANNELS]; /* 24 bits/channel */
822} PACKED_POSTFIX SvcRedirDataDoT, PACKED_POSTFIX CssDoSvcRedirDataMsgT;
823
824typedef PACKED_PREFIX struct {
825 CHANNEL_DESC Channel;
826} PACKED_POSTFIX CssDoChanChangedIndMsgT;
827
828typedef PACKED_PREFIX struct
829{
830 CssDoRptCpEventT event;
831} PACKED_POSTFIX CssDoRptCpEventMsgT;
832
833typedef PACKED_PREFIX struct
834{
835 kal_bool PwrUp; /* KAL_TRUE-powerup; KAL_FALSE-powerdown */
836 CssCpSystemT Sys; /* 0-DO, 1-1X, 2:both 1X and DO */
837} PACKED_POSTFIX CssCpPowerCtrlMsgT;
838
839typedef PACKED struct
840{
841 kal_bool mode; /* KAL_TRUE: enter deep sleep mode; KAL_FALSE: exit deep sleep mode */
842} CssValDeepSleepModeMsgT;
843
844typedef PACKED_PREFIX struct
845{
846 kal_bool attachStatus;
847} PACKED_POSTFIX CssValAttachStateIndMsgT;
848
849typedef PACKED_PREFIX struct
850{
851 elevator_mode_enum mode;
852} PACKED_POSTFIX CssValElevatorModeIndMsgT;
853
854typedef PACKED_PREFIX struct {
855 kal_uint16 T_HRPD_Init;
856 kal_uint16 T_1x_Init;
857} PACKED_POSTFIX CssPeriodicalSearchCycleSetMsgT;
858
859typedef PACKED_PREFIX struct {
860 kal_bool isMoCall; /* to indicate the released call is MO call or MT call
861 TRUE: MO call
862 FALSE:MT call */
863} PACKED_POSTFIX CssValVsRelIndMsgT;
864
865typedef PACKED_PREFIX struct
866{
867 kal_uint16 PRL_ID;
868} PACKED_POSTFIX CssGetPrlIdRspMsgT;
869
870typedef PACKED_PREFIX struct {
871 CTDoDefaultBandDataT DOSystem[MAX_DO_DEFAULTBAND_SIZE];
872} PACKED_POSTFIX DODefaultBandSetMsgT;
873
874typedef PACKED_PREFIX struct {
875 kal_uint8 APersistence;
876} PACKED_POSTFIX CssACMAPersistenceIndMsgT;
877
878typedef PACKED_PREFIX struct {
879 kal_bool status; /*KAL_FALSE(0): max access probes failure, KAL_TRUE(1): access succeed*/
880} PACKED_POSTFIX CssDOAccessStatusIndT;
881
882typedef PACKED_PREFIX struct {
883 kal_uint16 Type; /*high 8 bits are direction if current DO connection is for DO data call (1-AT initiated),
884 low 8 bits are the connection type(for example, data call, SCP con)*/
885} PACKED_POSTFIX CssDoConnStartIndMsgT;
886
887typedef PACKED_PREFIX struct {
888 kal_uint8 type;
889 kal_uint8 cause;
890} PACKED_POSTFIX CssDoErrIndT;
891
892typedef enum
893{
894 CPSM_OOSA_SCAN_TIMER=0,
895 CPSM_OOSA_SCAN_LIST
896}CpsmOOSAScanMethod;
897
898typedef enum
899{
900 CSS_OOSA_POWER_UP = 0,
901 CSS_OOSA_SYSTEM_LOST
902}CpsmOOSAStage;
903
904typedef enum
905{
906 CSS_1X_SUB_MODULE = 0,
907 CSS_DO_SUB_MODULE
908}CssSubModule;
909
910typedef enum
911{
912 CSS_OOSA_PHASE_SUCCESS = 0,
913 CSS_OOSA_PHASE_FAIL_GENERAL_FAILURE,
914 CSS_OOSA_PHASE_FAIL_PHASE_NOT_EXIST,
915 CSS_OOSA_PHASE_FAIL_PHASE_INDEX_TOO_LARGE,
916 CSS_OOSA_PHASE_FAIL_SLEEP_OUT_OF_RANGE
917}CssOOSAPhaseRsp;
918
919typedef PACKED_PREFIX struct
920{
921 CpsmOOSAScanMethod scanMethod;
922 kal_uint32 scanTime;
923 kal_uint8 cycles;
924 kal_uint32 delay;
925} PACKED_POSTFIX CpsmOOSAPhaseT;
926
927/*------------------------------------------------------*/
928/* Begin CSS Set/Get Parm definitions */
929/*------------------------------------------------------*/
930/* Bitmap (on kal_uint8) of all the CSS DBM segments */
931typedef enum
932{
933 CSS_DBM_1X = 0x01,
934 CSS_DBM_DO = 0x02,
935 CSS_DBM_MISC = 0x04,
936 CSS_DBM_ALL = CSS_DBM_1X | CSS_DBM_DO | CSS_DBM_MISC
937} CssDbmId;
938
939typedef PACKED_PREFIX struct
940{
941 SysCdmaBandT band;
942 kal_uint16 channel;
943} PACKED_POSTFIX MruBandChannelT;
944
945typedef PACKED_PREFIX struct
946{
947 CssDbmId DbmId;
948} PACKED_POSTFIX CssDbmInitDBToDefaultMsgT;
949
950typedef enum
951{
952 CSS_PARM_SET_1X_T_BSR_DURATION,
953 CSS_PARM_GET_1X_T_BSR_DURATION,
954 CSS_PARM_SET_1X_AVOIDANCE_DURATION,
955 CSS_PARM_GET_1X_AVOIDANCE_DURATION,
956 CSS_PARM_SET_DO_T_BSR_DURATION,
957 CSS_PARM_GET_DO_T_BSR_DURATION,
958 CSS_PARM_SET_1X_MANUAL_AVOID_SID,
959 CSS_PARM_GET_1X_MANUAL_AVOID_SID,
960 CSS_PARM_SET_MRU_CHANNEL,
961 CSS_PARM_GET_MRU_CHANNEL,
962 CSS_PARM_SET_LOCK_CHANNEL,
963 CSS_PARM_GET_LOCK_CHANNEL,
964 CSS_PARM_SET_1X_PS_DELAY_TIMER_DURATION,
965 CSS_PARM_GET_1X_PS_DELAY_TIMER_DURATION,
966 CSS_PARM_SET_1X_DO_T_BSR_1_2_DURATION,
967 CSS_PARM_GET_1X_DO_T_BSR_1_2_DURATION,
968 /* IMPORTANT:
969 * when adding new parameters to the list, add BOTH SET and GET,
970 * even if one of them is not used/implemented */
971 CSS_PARM_OPERATION_ID_END_LIST
972} CssParmOperationId;
973
974typedef enum
975{
976 CSS_PARM_OPERATION_SUCCESS,
977 CSS_PARM_OPERATION_FAIL_PARM_ID_NOT_SUPPORTED,
978 CSS_PARM_OPERATION_FAIL_READ_NOT_ALLOWED,
979 CSS_PARM_OPERATION_FAIL_WRITE_NOT_ALLOWED,
980 CSS_PARM_OPERATION_FAIL_INVALID_PTR,
981 CSS_PARM_OPERATION_FAIL_INVALID_LENGTH,
982 CSS_PARM_OPERATION_GENERAL_FAILURE,
983 CSS_PARM_OPERATION_NO_CHANGE_IN_VALUE,
984 CSS_PARM_OPERATION_FAIL_VALUE_OUT_OF_RANGE,
985 CSS_PARM_OPERATION_FAIL_OP_TYPE_NOT_SUPPORTED,
986 CSS_PARM_OPERATION_FAIL_DEFAULT_NOT_DEFINED,
987 CSS_PARM_OPERATION_FAIL_DEFAULT_NOT_SUPPORTED_FOR_PARM,
988 CSS_PARM_OPERATION_FAIL_MISSING_PARAMETER,
989 CSS_PARM_OPERATION_RESULT_END_LIST
990}CssParmAccessResultCode;
991
992typedef enum
993{
994 CSS_PARM_MIN_VALUE,
995 CSS_PARM_MAX_VALUE,
996 CSS_PARM_DEFAULT_VALUE,
997 CSS_PARM_CUSTOM_VALUE,
998 CSS_PARM_OP_TYPE_LIST_END
999} CssParmOperationType;
1000
1001typedef enum
1002{
1003 CSS_TIMER_START = 0,
1004 CSS_1X_TIMER_START = CSS_TIMER_START,
1005 CSS_1X_MPSS_TIMER = CSS_1X_TIMER_START,
1006 CSS_1X_EPRL_ESPM_WAIT_TIMER,
1007 CSS_1X_SCANNING_TIMER,
1008 CSS_1X_LOST_WHILE_DO_CONN_SCAN_TIMER,
1009 CSS_1X_EMERGENCY_SCAN_PREV_SYSTEM_TIMER,
1010 CSS_1X_HOMESYS_AVOIDANCE_TIMER,
1011 CSS_1X_HOMESYS_AVOIDANCE_END_TIMER,
1012 CSS_1X_REDIRECTION_AVOIDANCE_TIMER, /*143v1[1] 4.5.1 4.5.3*/
1013 CSS_1X_PS_DELAY_TIMER, /* Verizon Reqs-LTE Multi Mode Operations */
1014 CSS_1X_BSR_SCAN_TIMER, /* sprint feature: control BSR in 10s feature
1015 if Device is not able to scan all the channels during the first 10 secs,
1016 the Device MUST wait 10 extra secs before continuing scanning the remainder of the channels.
1017 the first 10 secs*/
1018 CSS_1X_BSR_EXTRA_WAIT_TIMER, /* wait 10 extra secs*/
1019 CSS_1X_BSR_DATA_HOLD_TIMER, /* sprint feature: device must wait T_data_hold before establishing a data call to allow BSR completion */
1020 CSS_1X_REG_REJ_AVOIDANCE_TIMER, /* when registration reject continuously, need to bar it for some time */
1021 CSS_1X_REG_REJ_AVOIDANCE_END_TIMER,
1022 CSS_1X_RELEASE_REJ_AVOIDANCE_TIMER, /* when registration reject continuously, need to bar it for some time */
1023 CSS_1X_RELEASE_REJ_AVOIDANCE_END_TIMER,
1024 CSS_1X_TIMER_END = CSS_1X_RELEASE_REJ_AVOIDANCE_END_TIMER,
1025
1026 CSS_DO_TIMER_START,
1027 CSS_DO_MPSS_TIMER = CSS_DO_TIMER_START,
1028 CSS_DO_REDIR_END_TIMER,
1029 CSS_DO_SCANNING_TIMER,
1030 CSS_DO_WTF_SESSION_OPEN_TIMER,
1031 CSS_DO_AVOIDANCE_TIMER,
1032 CSS_DO_SCAN_INTERRUPT_TIME_TIMER,
1033 CSS_DO_MPSS_HOLD_TIMER, /*143v1[1] 5.4.3 T_dbsr_hold*/
1034 CSS_DO_MPSS_CALL_TIMER, /*143v1[1] 5.4.5 T_dbsr_call*/
1035 CSS_DO_CONSECUTIVE_DO_LOST_TIMER, /*143v1[1] 5.5.2*/
1036 CSS_DO_AVOIDANCE_LOST_TIMER, /*143v1[1] 5.5.2*/
1037 CSS_DO_REDIRECTION_AVOIDANCE_TIMER, /*143v1[1] 5.6.2*/
1038 CSS_DO_ACM_PERSIS_TEST_FAIL_AVOIDANCE_TIMER, /*143v1[1] 5.7.1*/
1039 CSS_DO_MAXACCESSFAIL_AVOIDANCE_TIMER, /*143v1[1] 5.7.2*/
1040 CSS_DO_SESSIONEGO_TIMEOUT_AVOIDANCE_TIMER, /*143v1[1] 5.7.7*/
1041 CSS_DO_SESSIONEGO_FAIL_AVOIDANCE_TIMER, /*143v1[1] 5.7.7*/
1042 CSS_DO_CONNDENY_AUTH_AVOIDANCE_TIMER, /*143v1[1] 5.7.7*/
1043 CSS_DO_CONNDENY_GENERAL_AVOIDANCE_TIMER, /*143v1[1] 5.7.4*/
1044 CSS_DO_CH_AVOIDANCE_TICK_TIMER,
1045 CSS_DO_SCANNING_DURATION_TIMER, /* Per KDDI's req, AT shall set the timer when start to scan,
1046 * and stop the scan when the timer expires in the scenario of "1X&DO both OOSA" */
1047 CSS_IRAT_PS_RAT_RPT_DELAY_TIMER,
1048 CSS_IRAT_TDO_TIMER,
1049 CSS_IRAT_DO_RESUME_TIMER,
1050 CSS_IRAT_DEACTIVATE_RPT_DELAY_TIMER,
1051 CSS_DO_TIMER_END = CSS_IRAT_DEACTIVATE_RPT_DELAY_TIMER,
1052
1053 CSS_IRAT_PROCEDURE_GUARD_TIMER_START,
1054 CSS_IRAT_MCC_SEARCH_GUARD_TIMER = CSS_IRAT_PROCEDURE_GUARD_TIMER_START,
1055 CSS_IRAT_PS_REG_GUARD_TIMER,
1056 CSS_IRAT_SYS_ACQUIRE_GUARD_TIMER,
1057 CSS_IRAT_RESEL_REDIR_GUARD_TIMER,
1058 CSS_IRAT_DEREG_GUARD_TIMER,
1059 CSS_IRAT_C2L_RESEL_GUARD_TIMER,
1060 CSS_IRAT_PROCEDURE_GUARD_TIMER_END = CSS_IRAT_C2L_RESEL_GUARD_TIMER,
1061 CSS_TIMER_END =CSS_IRAT_PROCEDURE_GUARD_TIMER_END,
1062
1063 CSS_MAX_NUMBER_OF_TIMER_TYPES
1064} CssTimerTypeE;
1065
1066typedef PACKED_PREFIX struct
1067{
1068 kal_uint16 pilotThresh;
1069} PACKED_POSTFIX Css1xMpssPilotStrengthThresh_APIStruct;
1070
1071typedef PACKED_PREFIX struct
1072{
1073 kal_uint32 duration;
1074} PACKED_POSTFIX CssTimerDuration_APIStruct;
1075
1076typedef PACKED_PREFIX struct
1077{
1078 Css1xBsrTimerTypeT tbsr;
1079 kal_uint32 duration;
1080} PACKED_POSTFIX Css1xBsrTimerDuration_APIStruct;
1081
1082typedef PACKED_PREFIX struct
1083{
1084 Css1xAvoidanceTimerTypeT avoidance;
1085 kal_uint32 duration;
1086} PACKED_POSTFIX Css1xAvoidanceTimerDuration_APIStruct;
1087
1088typedef PACKED_PREFIX struct
1089{
1090 CssDOBsrTimerTypeT tbsr;
1091 kal_uint32 duration;
1092} PACKED_POSTFIX CssDOBsrTimerDuration_APIStruct;
1093
1094typedef PACKED_PREFIX struct
1095{
1096 kal_uint16 Sid[MAX_MANUAL_AVOID_1XSYS];
1097} PACKED_POSTFIX Css1xManualAvoidSid_APIStruct;
1098
1099typedef PACKED_PREFIX struct
1100{
1101 kal_uint8 subModule;
1102 kal_uint8 index;
1103 MruBandChannelT mruChannel;
1104} PACKED_POSTFIX CssSetMruChannel_APIStruct;
1105
1106typedef PACKED_PREFIX struct
1107{
1108 kal_uint8 subModule;
1109 kal_uint8 index;
1110 kal_uint8 num1x;
1111 kal_uint8 numDO;
1112 MruBandChannelT mru[MAX_MRU_RECORDS + MAX_MRU_RECORDS]; /* to contain 1x and/or DO MRU */
1113} PACKED_POSTFIX CssGetMruChannel_APIStruct;
1114
1115#ifdef MTK_DEV_C2K_IRAT
1116typedef PACKED_PREFIX struct
1117{
1118 kal_uint8 sysType;
1119 kal_bool b1xChnlLocked;
1120 kal_uint16 rttChnl;
1121 kal_bool bDoChnlLocked;
1122 kal_uint16 doChnl;
1123} PACKED_POSTFIX CssSetChannleLockInfo_APIStruct;
1124#endif
1125
1126/*------------------------------------------------------*/
1127/* End CSS Parm Set/Get definitions */
1128/*------------------------------------------------------*/
1129
1130typedef PACKED_PREFIX struct
1131{
1132 CssSubModule subModule;
1133 CpsmOOSAStage stage;
1134 kal_uint8 phase;
1135 CpsmOOSAScanMethod scanMethod;
1136 kal_uint32 scanTime;
1137 kal_uint8 cycles;
1138 kal_uint32 delay;
1139} PACKED_POSTFIX CssOOSASetPhaseParmsMsgT;
1140
1141typedef PACKED_PREFIX struct
1142{
1143 CssOOSAPhaseRsp result;
1144 CssSubModule subModule;
1145 CpsmOOSAStage stage;
1146 kal_uint8 phase;
1147} PACKED_POSTFIX CssOOSASetPhaseParmsRspMsgT;
1148
1149typedef PACKED_PREFIX struct
1150{
1151 CssSubModule subModule;
1152 CpsmOOSAStage stage;
1153 kal_uint8 phase;
1154 CpsmOOSAScanMethod scanMethod;
1155 kal_uint32 scanTime;
1156 kal_uint8 cycles;
1157 kal_uint32 delay;
1158} PACKED_POSTFIX CssOOSAGetPhaseParmsMsgT;
1159
1160typedef PACKED_PREFIX struct
1161{
1162 CssOOSAPhaseRsp result;
1163 CssSubModule subModule;
1164 CpsmOOSAStage stage;
1165 kal_uint8 phase;
1166 CpsmOOSAScanMethod scanMethod;
1167 kal_uint32 scanTime;
1168 kal_uint8 cycles;
1169 kal_uint32 delay;
1170} PACKED_POSTFIX CssOOSAGetPhaseParmsRspMsgT;
1171
1172#ifdef MTK_DEV_C2K_IRAT
1173typedef PACKED_PREFIX struct
1174{
1175 css_mmss_updated_file_id_enum file_id;
1176} PACKED_POSTFIX CssMMSSFileUpdateMsgT;
1177#endif
1178
1179typedef PACKED_PREFIX struct
1180{
1181 CssSubModule subModule;
1182 kal_bool Enable;
1183} PACKED_POSTFIX CpsmOOSASetEnable_APIStruct;
1184
1185typedef PACKED_PREFIX struct
1186{
1187 CssOOSAPhaseRsp result;
1188 CssSubModule subModule;
1189 kal_bool Enable;
1190} PACKED_POSTFIX CpsmOOSASetEnableRsp_APIStruct;
1191
1192typedef PACKED_PREFIX struct
1193{
1194 CssSubModule subModule;
1195} PACKED_POSTFIX CpsmOOSAGetEnable_APIStruct;
1196
1197typedef PACKED_PREFIX struct
1198{
1199 CssOOSAPhaseRsp result;
1200 CssSubModule subModule;
1201 kal_bool Enable;
1202} PACKED_POSTFIX CpsmOOSAGetEnableRsp_APIStruct;
1203
1204typedef PACKED_PREFIX struct
1205{
1206 CssSubModule subModule;
1207 CpsmOOSAStage stage;
1208 kal_uint8 numPhases;
1209} PACKED_POSTFIX CpsmOOSASetNumPhases_APIStruct;
1210
1211typedef PACKED_PREFIX struct
1212{
1213 CssOOSAPhaseRsp result;
1214 CssSubModule subModule;
1215 CpsmOOSAStage stage;
1216 kal_uint8 numPhases;
1217} PACKED_POSTFIX CpsmOOSASetNumPhasesRsp_APIStruct;
1218
1219typedef PACKED_PREFIX struct
1220{
1221 CssSubModule subModule;
1222 CpsmOOSAStage stage;
1223} PACKED_POSTFIX CpsmOOSAGetNumPhases_APIStruct;
1224
1225typedef PACKED_PREFIX struct
1226{
1227 CssOOSAPhaseRsp result;
1228 CssSubModule subModule;
1229 CpsmOOSAStage stage;
1230 kal_uint8 numPhases;
1231} PACKED_POSTFIX CpsmOOSAGetNumPhasesRsp_APIStruct;
1232
1233typedef PACKED_PREFIX struct
1234{
1235 CssSubModule subModule;
1236 CpsmOOSAStage stage;
1237 kal_uint8 phase;
1238 kal_uint8 cycle;
1239} PACKED_POSTFIX CpsmOOSASetCurrentStage_APIStruct;
1240
1241typedef PACKED_PREFIX struct
1242{
1243 CssOOSAPhaseRsp result;
1244 CssSubModule subModule;
1245 CpsmOOSAStage stage;
1246 kal_uint8 phase;
1247 kal_uint8 cycle;
1248} PACKED_POSTFIX CpsmOOSASetCurrentStageRsp_APIStruct;
1249
1250typedef PACKED_PREFIX struct
1251{
1252 CssSubModule subModule;
1253} PACKED_POSTFIX CpsmOOSAGetCurrentStage_APIStruct;
1254
1255typedef PACKED_PREFIX struct
1256{
1257 CssOOSAPhaseRsp result;
1258 CssSubModule subModule;
1259 CpsmOOSAStage stage;
1260 kal_uint8 phase;
1261 kal_uint8 cycle;
1262} PACKED_POSTFIX CpsmOOSAGetCurrentStageRsp_APIStruct;
1263
1264typedef PACKED_PREFIX struct
1265{
1266 CpsmOOSAStage stage;
1267 kal_uint8 phase;
1268 kal_uint8 cycle;
1269} PACKED_POSTFIX CpsmOOSACurrentPhase;
1270
1271typedef PACKED_PREFIX struct
1272{
1273 CssSubModule System;
1274} PACKED_POSTFIX CpsmGetMccT;
1275
1276typedef PACKED_PREFIX struct
1277{
1278 kal_uint16 Mcc;
1279 CssSubModule System;
1280} PACKED_POSTFIX CpsmGetMcccRspT;
1281
1282typedef struct
1283{
1284 kal_uint8 CtrlMode; /* HWD_ENABLE = 0, HWD_DISABLE = 1, HWD_LOAD = 2 */
1285 kal_uint8 System; /* 1x/DO */
1286 kal_uint8 Band;
1287 kal_uint16 Channel;
1288} CssTstPllChannelMsgT;
1289
1290typedef PACKED_PREFIX struct
1291{
1292 kal_uint8 NetworkPreference;
1293} PACKED_POSTFIX CssSvcStatusReqMsgT;
1294
1295typedef enum
1296{
1297 CSS_1X_MARK_SYSTEM_AS_NEGATIVE,
1298 CSS_1X_CLEAR_MARKED_SYSTEM_LIST
1299} CssMarkSystemT;
1300
1301typedef PACKED_PREFIX struct
1302{
1303 CssMarkSystemT action;
1304} PACKED_POSTFIX CssMarkSystemMsgT;
1305
1306typedef PACKED_PREFIX struct
1307{
1308 kal_bool Redirection;
1309} PACKED_POSTFIX Css1xRedirIndMsgT;
1310
1311typedef PACKED_PREFIX struct
1312{
1313 kal_uint32 timer;
1314} PACKED_POSTFIX CssTimerExpiredMsgT;
1315
1316typedef struct
1317{
1318 kal_int16 TxPwr; /* in Q7 format */
1319} IratRcpTxPwrRspT, IratL1dTxPwrRspT;
1320
1321typedef PACKED_PREFIX struct
1322{
1323 CssTchSetupStatusT status;
1324} PACKED_POSTFIX CssDataTchSetupStatusMsgT;
1325
1326typedef PACKED_PREFIX struct
1327{
1328 ExeRspMsgT rspInfo;
1329 CssSubModule subModule;
1330 kal_uint32 duration;
1331} PACKED_POSTFIX CpsmOOSAScanTimeSetMsgT;
1332
1333typedef PACKED_PREFIX struct
1334{
1335 CssOOSAPhaseRsp result;
1336 CssSubModule subModule;
1337 kal_uint32 duration;
1338} PACKED_POSTFIX CpsmOOSAScanTimeSetRspMsgT;
1339
1340typedef PACKED_PREFIX struct
1341{
1342 ExeRspMsgT rspInfo;
1343 CssSubModule subModule;
1344 kal_uint32 duration;
1345} PACKED_POSTFIX CpsmOOSAScanTimeGetMsgT;
1346
1347typedef PACKED_PREFIX struct
1348{
1349 CssOOSAPhaseRsp result;
1350 CssSubModule subModule;
1351 kal_uint32 duration;
1352} PACKED_POSTFIX CpsmOOSAScanTimeGetRspMsgT;
1353
1354typedef PACKED_PREFIX struct
1355{
1356 kal_uint8 RegStatus; /* 0-1X reg succeed. 1-1X reg fail. others - reserved */
1357} PACKED_POSTFIX CssPsw1XRegStatusIndT;
1358
1359typedef PACKED_PREFIX struct
1360{
1361 kal_uint8 DOOverlap; /* the value of the 3rd bit of BASE_ID in SPM of LGT 1X(sid=2190) */
1362} PACKED_POSTFIX CssPsw1XDOOverlapIndT;
1363
1364/*IRAT*/
1365#ifdef MTK_DEV_C2K_IRAT
1366/*CSS_IRATM_TO_LTE_RESEL_IND*/
1367typedef struct
1368{
1369 cas_eas_activate_ecell_req_struct ReselToLteInfo;
1370} CssIratmToLteReselIndT;
1371
1372/*CSS_IRATM_PARAM_UPDATE_IND*/
1373typedef struct
1374{
1375 kal_bool is_valid; /* indicate if the CDMA2000 neighbor cell reselection parameter is valid */
1376 nbr_cell_list_c2k_struct nbr_cell_list; /* indicate the CDMA2000 neighbor cell reselection parameters */
1377} CssIratmParaUpdateIndT;
1378
1379/*IRATM_CSS_PLMN_LIST_UPDATE_RSP*/
1380typedef struct
1381{
1382 gmss_css_sim_plmn_info_rsp_struct PlmnInfoRsp;
1383}CssIratmPlmnListUpdateRspT;
1384
1385/*CSS_IRATM_POWER_CTRL_CNF*/
1386typedef struct
1387{
1388 kal_bool powerStatus; /*0: power off; 1: power on */
1389}CssIratmPowerCtrlCnfT;
1390
1391/*CSS_IRATM_MEAS_CTRL_CNF*/
1392typedef struct
1393{
1394 kal_bool isMeasStart; /*0: measure off; 1: measure on */
1395}CssIratmMeasCtrlCnfT;
1396
1397/* CSS_CLC_RELEASE_LLA_REQ */
1398typedef struct
1399{
1400 kal_uint8 LLAReleaseOwner;
1401}CssClcReleaseLlaReqT;
1402
1403typedef struct
1404{
1405 kal_bool NeedResetConn; /* This field shall be filled with value of same field in corresponding HLP_CSS_NETWORK_REL_REQ message */
1406 kal_bool Is1xResReleased; /* True if HLP has notified PSW to release RSVAS*/
1407} CssHlpNetwkRelRspMsgT;
1408
1409typedef struct
1410{
1411 kal_uint8 Pdn_Id;
1412 kal_uint8 Bearer_Id;
1413 kal_uint8 Reason;
1414} CssHlpEpsBearerDisconnIndT;
1415
1416typedef struct
1417{
1418 kal_uint8 Band; /* CDMA bandclass */
1419 kal_uint16 Channel; /* CDMA channel number */
1420 IratCdmaPilotMeasResultT Pilot; /* CDMA pilot measure result */
1421} IratRupCurSysMeasRspT, IratPswCurSysMeasRspT;
1422
1423typedef struct
1424{
1425 kal_uint8 available; /* 0-unavailale(msg not include RatInfo data); 1-available */
1426 IratEUTRANMeasureInfoT RatInfo;
1427 kal_uint8 ServingPriority; /* priority of current serving CDMA channel. 0xff means not provided */
1428 kal_int8 ThreshServing; /* CDMA serving pilot strength threshold trigger point for EUTRAN
1429 neighbor selection. 0xff means not provided */
1430} IratOmpRATInfoIndT, IratPswRATInfoIndT;
1431
1432typedef struct
1433{
1434 kal_uint16 Mcc; /* 0xffff means not available */
1435 kal_uint8 pRev; /* pRev of CDMA95 and 1X */
1436 kal_bool regenabled; /* 1 - MCC have changed and originale regenabled is TRUE, 0 - MCC not changed or originale regenabled is FALSE*/
1437 kal_bool MccChanged; /* MCC changed or not */
1438} IratOmpMCCRspT, IratPswMCCRspT;
1439
1440typedef struct
1441{
1442 kal_uint16 Mcc; /* 0xffff means not available */
1443 kal_bool regenabled; /* 1x register enabled or not*/
1444} IratOmpMccChangeIndT, IratPswMccChangeIndT;
1445
1446typedef struct
1447{
1448 kal_uint8 Band; /* CDMA bandclass */
1449 kal_uint16 Channel; /* CDMA channel number */
1450 IratCdmaPilotMeasResultT Pilot; /* CDMA pilot measure result */
1451} IratRupCurSysWeakIndT, IratPswCurSysWeakIndT; /* content same as xxxCurSysMeasRspT */
1452
1453typedef struct
1454{
1455 kal_uint16 sid;
1456 kal_uint16 nid;
1457 kal_uint16 baseId;
1458 kal_uint16 mcc;
1459 kal_uint16 mnc;
1460 kal_uint8 pzid;
1461#if defined (__TC10__) && defined (__TC10_IPC_CDMA_SUPPORT__)
1462 kal_uint16 aiMcc;
1463#endif
1464} IratPswCellIDIndT;
1465
1466typedef struct
1467{
1468 kal_uint8 sectorId[16];
1469 kal_uint8 subnetLength;
1470} IratOmpCellIDIndT;
1471
1472typedef struct
1473{
1474 IratEvent event;
1475 kal_uint32 eventParameter;
1476} CssIratEventMsgT;
1477
1478typedef enum
1479{
1480 RSVAS_CSS_EVENT_CS_OCCUPY,
1481 RSVAS_CSS_EVENT_CS_CANCEL,
1482 RSVAS_CSS_EVENT_CS_OCCUPY_IND,
1483 RSVAS_CSS_EVENT_CS_RELEASE,
1484 RSVAS_CSS_EVENT_PS_OCCUPY,
1485 RSVAS_CSS_EVENT_PS_CANCEL,
1486 RSVAS_CSS_EVENT_PS_OCCUPY_IND,
1487 RSVAS_CSS_EVENT_PS_RELEASE,
1488} CssRsvasEventT;
1489
1490/* CSS_PSW_RSVAS_EVENT_REPORT_MSG */
1491typedef PACKED_PREFIX struct
1492{
1493 CssRsvasEventT cssRsvasEvent;
1494 rsvas_sim_enum servOwnerSimId;
1495 rsvas_sim_enum currC2kSimId;
1496} PACKED_POSTFIX CssRsvasEventReportMsgT;
1497
1498/* CSS_PSW_RSVAS_SUSPEND_REQ_MSG */
1499typedef PACKED_PREFIX struct
1500{
1501 rsvas_sim_enum servOwnerSimId;
1502 rsvas_sim_enum currC2kSimId;
1503} PACKED_POSTFIX CssPswRsvasSuspendReqMsgT;
1504
1505/* CSS_PSW_RSVAS_DO_VRTL_SUSP_REQ_MSG */
1506typedef PACKED_PREFIX struct
1507{
1508 rsvas_sim_enum servOwnerSimId;
1509 rsvas_sim_enum currC2kSimId;
1510} PACKED_POSTFIX CssPswRsvasDoVrtlSuspReqMsgT;
1511
1512/* CSS_PSW_RSVAS_DO_RESUME_REQ_MSG */
1513typedef PACKED_PREFIX struct
1514{
1515 rsvas_sim_enum servOwnerSimId;
1516 rsvas_sim_enum currC2kSimId;
1517} PACKED_POSTFIX CssPswRsvasDoResumeReqMsgT;
1518
1519/* CSS_PSW_RSVAS_VRTL_RESUME_REQ_MSG */
1520typedef PACKED_PREFIX struct
1521{
1522 rsvas_sim_enum servOwnerSimId;
1523 rsvas_sim_enum currC2kSimId;
1524} PACKED_POSTFIX CssPswRsvasVrtlResumeReqMsgT;
1525
1526/* CSS_PSW_RSVAS_RESUME_REQ_MSG */
1527typedef PACKED_PREFIX struct
1528{
1529 rsvas_sim_enum servOwnerSimId;
1530 rsvas_sim_enum currC2kSimId;
1531} PACKED_POSTFIX CssPswRsvasResumeReqMsgT;
1532#endif /* MTK_DEV_C2K_IRAT */
1533
1534#ifdef MTK_PLT_ON_PC_UT
1535typedef struct
1536{
1537 LOCAL_PARA_HDR
1538 css_configure_enum configure_id;
1539 kal_uint8 value;
1540 kal_uint32 valueArray[10];
1541}css_configure_req_struct;
1542
1543/* msg struct of msg: CSS_SYS_UT_TIMER_START_REQ */
1544typedef struct
1545{
1546 LOCAL_PARA_HDR
1547 CssTimerTypeE timerId;
1548 kal_uint16 index;
1549 kal_uint32 duration;
1550}css_sys_ut_timer_start_req_struct;
1551
1552/* msg struct of msg: CSS_SYS_UT_TIMER_STOP_REQ */
1553typedef struct
1554{
1555 LOCAL_PARA_HDR
1556 CssTimerTypeE timerId;
1557 kal_uint16 index;
1558}css_sys_ut_timer_stop_req_struct;
1559
1560/* msg struct of msg: CSS_SYS_UT_TIMER_EXPIRED_MSG */
1561typedef struct
1562{
1563 LOCAL_PARA_HDR
1564 CssTimerTypeE type;
1565 kal_uint16 index;
1566}css_sys_ut_timer_expired_ind_struct;
1567#endif
1568
1569void CssReportDOUnavailToHlp(void);
1570kal_uint8 cpCssGetNamSystemSelectType(void);
1571void css1xSetOtaSystem(kal_uint8 mode);
1572kal_uint8 css1xGetPilotAcqSensIndex(SysBandChannelT *system);
1573kal_bool cssIsPrlValid(void);
1574UiccCardStatusType cssGetUiccStatus(void);
1575kal_bool cssIsUiccReady(void);
1576kal_bool css1xIsSystemSelectSettingValid(SystemSelectType *sysSelect);
1577kal_bool cssGetEmergencyMode(void);
1578kal_uint8* cssGetPtrToPRL(void);
1579kal_uint16 cssGetERIVersionNumber(void);
1580
1581CPSM_1X_STATES Cpsm1xGetState(void);
1582CPSM_DO_STATES CpsmDoGetState(void);
1583
1584#ifdef MTK_DEV_C2K_IRAT
1585kal_bool IRATIsPsDataOnC2K(void);
1586IRAT_CPStateT IRATCpState(CssRatModeT rat);
1587IratMainStateE IRATGetCurMainState(void);
1588kal_bool IRATGet1XPSEnabled(void);
1589kal_bool IRATIsCsRegPendedForSilentRedial(void);
1590kal_bool IRATGet1XRegEnabled(void);
1591void IRATSet1xRegEnabled(kal_bool val);
1592srlteRatTypeT IRATGetDoRatType(void);
1593kal_bool IsIratActingOnPsReg(void);
1594kal_bool IRATIsC2KRatNotInvolvedInGlobalMode(void);
1595kal_bool IRATIsC2KRatModeNotInvolved(void);
1596#endif
1597
1598#ifdef MTK_DEV_SLT
1599kal_uint16 cssGet1xPrlScanListNumber(void);
1600#endif
1601#if defined (MTK_DEV_C2K_IRAT) && defined (MTK_DEV_C2K_SRLTE_L1)
1602extern kal_uint32 SysFrcCntGet(void);
1603#endif
1604#endif
1605