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