blob: 137bff108902573d5b647871c65041aa7b5d1cb4 [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) 2005
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 * Filename:
38 * ---------
39 * mmi2mm_struct.h
40 *
41 * Project:
42 * --------
43 * MAUI
44 *
45 * Description:
46 * ------------
47 * This file is intends for struct definition between MM and MMI/L4.
48 *
49 * Author:
50 * -------
51 * -------
52 *
53 *==============================================================================
54 * HISTORY
55 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
56 *------------------------------------------------------------------------------
57 * removed!
58 *
59 * removed!
60 * removed!
61 * removed!
62 * removed!
63 *
64 * removed!
65 * removed!
66 * removed!
67 * removed!
68 *
69 * removed!
70 * removed!
71 * removed!
72 *
73 * removed!
74 * removed!
75 * removed!
76 * removed!
77 *
78 * removed!
79 * removed!
80 * removed!
81 * removed!
82 *
83 * removed!
84 * removed!
85 * removed!
86 *
87 * removed!
88 * removed!
89 * removed!
90 * removed!
91 *
92 * removed!
93 * removed!
94 * removed!
95 *
96 * removed!
97 * removed!
98 * removed!
99 *
100 * removed!
101 * removed!
102 * removed!
103 *
104 * removed!
105 * removed!
106 * removed!
107 *
108 * removed!
109 * removed!
110 * removed!
111 *
112 * removed!
113 * removed!
114 * removed!
115 *
116 * removed!
117 * removed!
118 * removed!
119 *
120 * removed!
121 * removed!
122 * removed!
123 *
124 * removed!
125 * removed!
126 * removed!
127 *
128 * removed!
129 * removed!
130 * removed!
131 *
132 * removed!
133 * removed!
134 * removed!
135 *
136 * removed!
137 * removed!
138 *
139 * removed!
140 * removed!
141 * removed!
142 * removed!
143 *
144 * removed!
145 * removed!
146 *
147 * removed!
148 * removed!
149 * removed!
150 *
151 * removed!
152 * removed!
153 * removed!
154 *
155 * removed!
156 * removed!
157 * removed!
158 *
159 * removed!
160 * removed!
161 *
162 * removed!
163 * removed!
164 * removed!
165 * removed!
166 * removed!
167 * removed!
168 * removed!
169 *
170 * removed!
171 * removed!
172 * removed!
173 * removed!
174 * removed!
175 * removed!
176 *
177 * removed!
178 * removed!
179 * removed!
180 *
181 * removed!
182 * removed!
183 * removed!
184 *
185 * removed!
186 * removed!
187 * removed!
188 * removed!
189 * removed!
190 * removed!
191 * removed!
192 * removed!
193 * removed!
194 *
195 * removed!
196 * removed!
197 * removed!
198 * removed!
199 * removed!
200 *
201 * removed!
202 * removed!
203 * removed!
204 *
205 * removed!
206 * removed!
207 * removed!
208 * removed!
209 * removed!
210 * removed!
211 * removed!
212 *
213 * removed!
214 * removed!
215 * removed!
216 *
217 * removed!
218 * removed!
219 * removed!
220 *
221 * removed!
222 * removed!
223 *
224 * removed!
225 * removed!
226 * removed!
227 *
228 * removed!
229 * removed!
230 * removed!
231 *
232 * removed!
233 * removed!
234 *
235 * removed!
236 * removed!
237 * removed!
238 *
239 * removed!
240 * removed!
241 * removed!
242 *
243 * removed!
244 * removed!
245 * removed!
246 *
247 * removed!
248 * removed!
249 * removed!
250 *
251 * removed!
252 * removed!
253 * removed!
254 *
255 * removed!
256 * removed!
257 *
258 * removed!
259 * removed!
260 * removed!
261 *
262 * removed!
263 * removed!
264 * removed!
265 *
266 * removed!
267 * removed!
268 * removed!
269 *
270 * removed!
271 * removed!
272 * removed!
273 *
274 * removed!
275 * removed!
276 *
277 * removed!
278 * removed!
279 *
280 * removed!
281 * removed!
282 * removed!
283 *
284 * removed!
285 * removed!
286 * removed!
287 *
288 * removed!
289 * removed!
290 * removed!
291 *
292 * removed!
293 * removed!
294 * removed!
295 *
296 * removed!
297 * removed!
298 * removed!
299 *
300 * removed!
301 * removed!
302 * removed!
303 *
304 * removed!
305 * removed!
306 * removed!
307 *
308 * removed!
309 * removed!
310 * removed!
311 *
312 * removed!
313 * removed!
314 * removed!
315 *
316 * removed!
317 * removed!
318 * removed!
319 *
320 * removed!
321 * removed!
322 * removed!
323 *
324 * removed!
325 * removed!
326 * removed!
327 *
328 * removed!
329 * removed!
330 * removed!
331 *
332 * removed!
333 * removed!
334 *
335 *
336 * removed!
337 * removed!
338 * removed!
339 *
340 * removed!
341 * removed!
342 * removed!
343 *
344 * removed!
345 * removed!
346 * removed!
347 *
348 * removed!
349 * removed!
350 * removed!
351 * removed!
352 *
353 * removed!
354 * removed!
355 *
356 *
357 * removed!
358 * removed!
359 *
360 *
361 * removed!
362 * removed!
363 *
364 *
365 * removed!
366 * removed!
367 *
368 *
369 * removed!
370 * removed!
371 *
372 *
373 * removed!
374 * removed!
375 *
376 *
377 * removed!
378 * removed!
379 *
380 *
381 * removed!
382 * removed!
383 *
384 *
385 * removed!
386 * removed!
387 *
388 *
389 *------------------------------------------------------------------------------
390 * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
391 *==============================================================================
392 *******************************************************************************/
393
394/********************************************************************************
395* Copyright Statement:
396* --------------------
397*
398* This product has been developed using a protocol stack
399* developed by Sasken Communication Technologies Limited.
400*
401********************************************************************************/
402
403
404/*******************************************************************************
405* Copyright Statement:
406* --------------------
407* This software is protected by Copyright and the information contained
408* herein is confidential. The software may not be copied and the information
409* contained herein may not be used or disclosed except with the written
410* permission of MediaTek Inc. (C) 2002
411*
412*******************************************************************************
413 * FILENAME : mmi2mm_struct.h
414 * SYNOPSIS : Functions for encoding/decoding.
415 *
416 * R E V I S I O N H I S T O R Y
417 *
418 */
419#ifndef _MMI2MM_STRUCT_H
420#define _MMI2MM_STRUCT_H
421
422#include "kal_general_types.h"
423#include "l3_inc_enums.h"
424#include "mcd_l3_inc_struct.h"
425#include "ps_public_enum.h"
426#include "kal_public_defs.h"
427#include "nas_as_inter_core_enum.h"
428#ifdef __VOLTE_SUPPORT__
429#include "ims_common_def.h"
430#endif /* __VOLTE_SUPPORT__ */
431
432/* MM NVRAM Re-structure Start */
433#include "l4_nvram_editor.h"
434#include "emm_nvram_editor.h"
435/* MM NVRAM Re-structure End */
436#include "gmss_public.h"
437#include "l4_nvram_editor.h"
438#include "emm_nvram_editor.h"
439
440typedef struct {
441 LOCAL_PARA_HDR
442 kal_uint8 imei[9];
443 kal_uint8 imei_svn;
444 #if defined(__GEMINI__)
445 kal_uint8 peer_ps_imei[9];
446 #endif
447 kal_uint8 packed_drx_para[2];
448#ifdef __MONITOR_PAGE_DURING_TRANSFER__
449 gprs_transfer_preference_enum prefer; //mtk02475: gprs_transfer_preference
450#endif
451#ifdef __TC02_SECURITY_REQUIREMENT__
452 kal_uint8 nvram_imsi_loci_gloci[MAX_LEN_OF_IMSI_LOCI_GLOCI]; //mtk02475: for man-in-middle-attack prevention
453#endif
454#ifdef __MM_INTEGRITY_PREF__
455 kal_bool is_disable_integrity_check;
456#endif
457 nvram_ef_mm_data_struct nvram_mm_data_info;
458 nvram_ef_t3346_timer_info_struct t3346_info;
459 init_cause_enum init_cause;
460} gmmreg_init_req_struct;
461
462typedef struct {
463 LOCAL_PARA_HDR
464 kal_uint8 band;
465} gmmreg_band_sel_req_struct;
466
467typedef struct {
468 LOCAL_PARA_HDR
469 plmn_selection_mode_enum plmn_sel_mode;
470} gmmreg_sel_mode_req_struct;
471
472typedef struct {
473 kal_uint8 timer_unit;
474 kal_uint8 timer_value;
475} gmmreg_timer_struct;
476
477#ifdef __MONITOR_PAGE_DURING_TRANSFER__
478typedef struct {
479 LOCAL_PARA_HDR
480 gprs_transfer_preference_enum prefer;
481} gmmreg_set_gprs_transfer_preference_req_struct;
482#endif
483
484typedef struct {
485 LOCAL_PARA_HDR
486 domain_id_enum detach_type; /* CS-only, PS-only or both CS/PS */
487 kal_bool power_off; /* mobile shut down or not */
488 kal_uint8 att_id; /* Johnny: 3G RAC, for attach_req and detach_req using */
489 l4c_rac_detach_cause_enum detach_cause;
490} gmmreg_detach_req_struct;
491
492typedef struct {
493 LOCAL_PARA_HDR
494 kal_bool is_main_ps;
495} gmmreg_data_allow_req_struct;
496
497#ifdef __GEMINI__
498typedef struct {
499 LOCAL_PARA_HDR
500 kal_bool is_rsim_enabled;
501 kal_bool is_aka_sim_enabled;
502} gmmreg_rsim_aka_status_req_struct;
503#endif
504
505typedef struct {
506 LOCAL_PARA_HDR
507 plmn_reselection_enum plmn_search_mode; /* plmn_reselection_enum */
508 //kal_bool is_gprs_required; /* John Tang 2004/03/10: For at+cops = 2 then at+cops= 0 case. */
509 plmn_id_rat_struct selected_plmn; /* Selected PLMN */
510 kal_bool is_manual_csg_sel;
511 kal_uint32 csg_id;
512 rat_enum prefer_rat; // 0:default , 1:GSM , 2:UMTS
513 kal_bool from_l4c;
514 kal_uint16 factory_mode_arfcn; //0xFFFF means invalid arfcn, /* 20081110 mtk00714, for fast camp on test machine */
515} gmmreg_plmn_search_req_struct;
516
517
518typedef struct {
519 LOCAL_PARA_HDR
520 plmn_id_rat_struct plmn_id_rat;
521} gmmreg_csg_list_req_struct;
522
523typedef struct {
524 LOCAL_PARA_HDR
525 rat_enum rat_mode; /* RATCM_RAT_ENUM*/
526 rat_enum active_rat;
527 domain_id_enum detach_domain; //for UEMODE:PS_MODE_x, CS domain should be detached first in RAT_MODE which contains RAT_LTE
528 rat_enum reported_rat;
529 rat_mode_change_cause_enum rat_mode_change_cause;
530} gmmreg_set_rat_mode_req_struct;
531
532#ifdef __DYNAMIC_BAND_SEL__
533typedef struct {
534 LOCAL_PARA_HDR
535 band_selection_enum gsm_band; /* refer to band_selection_enum value*/
536 kal_bool is_gsm_band_present;
537 kal_uint8 umts_fdd_band[SIZE_OF_UMTS_BAND]; /* 3G band change */
538 kal_bool is_umts_band_present; /* 3G band change */
539}gmmreg_set_preferred_band_req_struct;
540#endif
541
542typedef struct {
543 LOCAL_PARA_HDR
544 kal_bool force_send_SCRI;
545 end_session_cause_enum cause;
546}gmmreg_end_ps_data_session_req_struct;
547
548#if defined(__GEMINI__)
549typedef struct {
550 LOCAL_PARA_HDR
551 sim_config_status_enum sim_config_status;
552 sim_insert_status_enum sim_insert_status;
553}gmmreg_sim_status_update_req_struct;
554#endif
555
556typedef struct {
557 LOCAL_PARA_HDR
558 rat_enum prefer_rat;
559}gmmreg_set_prefer_rat_req_struct;
560
561
562#ifdef __VOLTE_SUPPORT__
563typedef struct
564{
565 LOCAL_PARA_HDR
566 kal_bool is_ims_voice_available;
567} gmmreg_set_ims_voice_availability_req_struct;
568
569typedef struct
570{
571 LOCAL_PARA_HDR
572 mm_ims_voice_termination mm_ivt;
573} gmmreg_set_ims_voice_termination_req_struct;
574#endif /* __VOLTE_SUPPORT__ */
575
576typedef struct {
577 LOCAL_PARA_HDR
578 act_sim_enum active_sim;
579}gmmreg_active_sim_info_req_struct;
580
581typedef struct {
582 LOCAL_PARA_HDR
583 plmn_id_struct plmn;
584 rat_enum rat;
585 kal_uint8 ara_start[2];
586 kal_uint8 ara_end[2];
587}gmmreg_aral_update_req_struct;
588
589typedef struct
590{
591 LOCAL_PARA_HDR
592 rat_enum rat_mode; //User's setting, could be RAT_GSM or RAT_UMTS or RAT_GSM_UMTS
593 kal_bool is_pgcheck_on;
594 kal_uint8 causes; // causes to be ignored.
595} gmmreg_set_pgcheck_req_struct;
596
597typedef struct {
598 LOCAL_PARA_HDR
599 kal_bool mode;
600}gmmreg_cs_voice_call_protection_req_struct;
601
602typedef struct {
603 LOCAL_PARA_HDR
604 rfoff_cause_enum rfoff_cause;
605}gmmreg_rfoff_req_struct;
606
607/* MSG_ID_GMMREG_SET_MS_SV_REQ */
608typedef struct
609{
610 LOCAL_PARA_HDR
611 kal_uint8 svn;
612}gmmreg_set_ms_sv_req_struct;
613
614typedef struct {
615 kal_bool is_mobile_data_enable_present;
616 kal_bool is_mobile_data_enable;
617 kal_bool is_mobile_data_roaming_enable_present;
618 kal_bool is_mobile_data_roaming_enable;
619 kal_bool is_volte_enable_present;
620 kal_bool is_volte_enable;
621 kal_bool is_vzw_ims_test_mode_enable_present;
622 kal_bool is_vzw_ims_test_mode_enable;
623} gmmreg_cellular_network_config;
624
625typedef struct {
626 LOCAL_PARA_HDR
627 gmmreg_cellular_network_config config;
628}gmmreg_cellular_network_config_req_struct;
629
630typedef struct {
631 LOCAL_PARA_HDR
632 elevator_mode_enum elevator_mode;
633}gmmreg_elevator_mode_req_struct;
634
635typedef struct {
636 LOCAL_PARA_HDR
637 lte_normal_service_loss_reason_enum reason;
638}gmmreg_lte_normal_service_loss_update_req_struct;
639
640#if defined(__ECALL_SUPPORT__) || defined(__NG_ECALL_SUPPORT__)
641typedef struct
642{
643 LOCAL_PARA_HDR
644 kal_uint8 purpose; //0 for EMM, 1 for MM
645 kal_uint8 mode; //0 reset timer, 1 for set timer
646 kal_uint32 timer1;
647 kal_bool is_timer1_valid;
648 kal_uint32 timer2;
649 kal_bool is_timer2_valid;
650} gmmreg_set_timer_req_struct;
651
652typedef struct
653{
654 LOCAL_PARA_HDR
655 ecall_registration_state_enum ecall_reg_state;
656} gmmreg_set_ecall_registration_req_struct;
657#endif /*__ECALL_SUPPORT__ || __NG_ECALL_SUPPORT__ */
658
659#endif
660
661