blob: 14dda7bda7bccf9b22df1e1a67dc3e27e9910a59 [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 *
38 * Filename:
39 * ---------
40 * L4C2TCM_FUNC.H
41 *
42 * Project:
43 * --------
44 * MAUI
45 *
46 * Description:
47 * ------------
48 * This file handles AT get and query command.
49 *
50 * Author:
51 * -------
52 * -------
53 *
54 *============================================================================
55 * HISTORY
56 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
57 *------------------------------------------------------------------------------
58 * removed!
59 *
60 * removed!
61 * removed!
62 * removed!
63 * removed!
64 *
65 * removed!
66 * removed!
67 * removed!
68 * removed!
69 *
70 * removed!
71 * removed!
72 * removed!
73 * removed!
74 * removed!
75 *
76 * removed!
77 * removed!
78 * removed!
79 * removed!
80 * removed!
81 * removed!
82 *
83 * removed!
84 * removed!
85 * removed!
86 * removed!
87 *
88 * removed!
89 * removed!
90 * removed!
91 *
92 * removed!
93 * removed!
94 * removed!
95 *
96 * removed!
97 * removed!
98 * removed!
99 * removed!
100 *
101 * removed!
102 * removed!
103 * removed!
104 *
105 * removed!
106 * removed!
107 * removed!
108 * removed!
109 *
110 * removed!
111 * removed!
112 * removed!
113 *
114 * removed!
115 * removed!
116 * removed!
117 * removed!
118 *
119 * removed!
120 * removed!
121 * removed!
122 *
123 * removed!
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 * removed!
139 * removed!
140 *
141 * removed!
142 * removed!
143 *
144 * removed!
145 * removed!
146 * removed!
147 *
148 * removed!
149 * removed!
150 * removed!
151 *
152 * removed!
153 * removed!
154 * removed!
155 *
156 * removed!
157 * removed!
158 * removed!
159 *
160 * removed!
161 * removed!
162 * removed!
163 *
164 * removed!
165 * removed!
166 * removed!
167 *
168 *
169 *
170 * removed!
171 * removed!
172 * removed!
173 *
174 * removed!
175 * removed!
176 * removed!
177 *
178 * removed!
179 * removed!
180 * removed!
181 *
182 * removed!
183 * removed!
184 * removed!
185 *
186 * removed!
187 * removed!
188 * removed!
189 *
190 * removed!
191 * removed!
192 * removed!
193 *
194 * removed!
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 *
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 * removed!
224 *
225 * removed!
226 * removed!
227 * removed!
228 *
229 * removed!
230 * removed!
231 * removed!
232 *
233 * removed!
234 * removed!
235 * removed!
236 *
237 * removed!
238 * removed!
239 * removed!
240 *
241 * removed!
242 * removed!
243 * removed!
244 *
245 * removed!
246 * removed!
247 * removed!
248 *
249 * removed!
250 * removed!
251 * removed!
252 *
253 * removed!
254 * removed!
255 * removed!
256 *
257 * removed!
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 * removed!
277 * removed!
278 * removed!
279 * removed!
280 * removed!
281 * removed!
282 * removed!
283 * removed!
284 * removed!
285 * removed!
286 * removed!
287 * removed!
288 * removed!
289 * removed!
290 * removed!
291 * removed!
292 *
293 * removed!
294 * removed!
295 * removed!
296 *
297 * removed!
298 * removed!
299 * removed!
300 *
301 * removed!
302 * removed!
303 * removed!
304 *
305 * removed!
306 * removed!
307 * removed!
308 *
309 * removed!
310 * removed!
311 * removed!
312 *
313 * removed!
314 * removed!
315 * removed!
316 *
317 * removed!
318 * removed!
319 * removed!
320 *
321 * removed!
322 * removed!
323 * removed!
324 *
325 * removed!
326 * removed!
327 * removed!
328 *
329 * removed!
330 * removed!
331 * removed!
332 *
333 * removed!
334 * removed!
335 * removed!
336 *
337 * removed!
338 * removed!
339 * removed!
340 *
341 * removed!
342 * removed!
343 * removed!
344 *
345 * removed!
346 * removed!
347 * removed!
348 *
349 * removed!
350 * removed!
351 * removed!
352 *
353 * removed!
354 * removed!
355 * removed!
356 *
357 * removed!
358 * removed!
359 * removed!
360 *
361 * removed!
362 * removed!
363 * removed!
364 *
365 * removed!
366 * removed!
367 * removed!
368 *
369 * removed!
370 * removed!
371 * removed!
372 *
373 * removed!
374 * removed!
375 * removed!
376 *
377 * removed!
378 * removed!
379 * removed!
380 *
381 * removed!
382 * removed!
383 * removed!
384 *
385 * removed!
386 * removed!
387 * removed!
388 *
389 * removed!
390 * removed!
391 * removed!
392 *
393 * removed!
394 * removed!
395 * removed!
396 *
397 * removed!
398 * removed!
399 * removed!
400 *
401 * removed!
402 * removed!
403 * removed!
404 *
405 * removed!
406 * removed!
407 * removed!
408 *
409 * removed!
410 * removed!
411 * removed!
412 *
413 * removed!
414 * removed!
415 * removed!
416 *
417 *------------------------------------------------------------------------------
418 * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
419 *============================================================================
420 ****************************************************************************/
421
422/********************************************************************************
423* Copyright Statement:
424* --------------------
425*
426* This product has been developed using a protocol stack
427* developed by Sasken Communication Technologies Limited.
428*
429********************************************************************************/
430
431
432#ifndef _L4C2TCM_FUNC_H
433#define _L4C2TCM_FUNC_H
434
435//#include "ps_public_struct.h"
436//#include "tcm_common.h"
437//#include "kal_non_specific_general_types.h"
438//#include "mmi_l3_enums.h"
439//#include "l4c_common_enum.h"
440//#include "tcm_common_enums.h"
441//#include "l3_inc_enums.h"
442//#include "l4c2tcm_struct.h"
443
444#include "mmi_sm_enums.h"
445//#include "custom_mmi_default_value.h"
446
447#include "kal_general_types.h"
448#include "ps_public_enum.h"
449#include "ps_public_enum_public.h"
450#include "tcm_context_enum.h"
451
452#include "tcm_api.h"
453
454#include "tcm_context.h"
455#include "l4c_utility.h"
456
457#include "ps_public_struct.h"
458
459#include "nvram_editor_data_item.h" /* __MEDIATEK_SMART_QOS__ */
460
461// mtk04002_20120518: should NOT include tftlib_api.h here (will cause codegen error) => modify to include tftlib_common_struct.h
462#include "tftlib_common_struct.h"
463
464#include "c2k_irat_msg_struct.h"
465#include "mcd_l3_inc_struct.h"
466
467extern const kal_uint8 rmmi_sdu_err_ratio_string_table[8][3];
468extern const kal_uint8 rmmi_residual_ber_string_table[10][3];
469
470#ifdef __TCPIP__ /* ABM */
471typedef struct
472{
473 kal_uint8 cid;
474 kal_uint32 ext_rx_data;
475 kal_uint32 ext_tx_data;
476} l4c_ext_gprs_statistics_info_struct;
477#endif
478
479#ifdef __TCM_EXT_CALL_HISTORY_SUPPORT__
480typedef struct
481{
482 kal_uint64 call_history_total_ext_tx_data;
483 kal_uint64 call_history_total_ext_rx_data;
484 kal_uint64 call_history_last_ext_tx_data;
485 kal_uint64 call_history_last_ext_rx_data;
486 kal_uint64 call_history_total_ext_conn_duration_in_secs;
487 kal_uint32 call_history_last_ext_conn_duration_in_secs;
488 kal_uint8 which_cid_is_last_cid;
489}l4c_ext_gprs_call_history_info_struct;
490#endif // ~ __TCM_EXT_CALL_HISTORY_SUPPORT__
491
492//mtk04121
493typedef struct
494{
495 kal_uint8 context_id;
496 kal_uint8 bearer_id;
497 kal_uint8 apn_length;
498 kal_uint8 apn[MAX_APN_LEN];
499 kal_bool src_addr_sb_net_mask_present;
500 kal_uint8 src_addr_sb_net_mask[IPV4_ADDR_LEN * 2];
501 kal_bool ipv6_src_addr_sb_net_mask_present;
502 kal_uint8 ipv6_src_addr_sb_net_mask[IPV6_ADDR_LEN * 2];
503 kal_bool gw_addr_present;
504 kal_uint8 gw_addr[IPV4_ADDR_LEN];
505 kal_bool ipv6_gw_addr_present;
506 kal_uint8 ipv6_gw_addr[IPV6_ADDR_LEN];
507 kal_bool dns_present;
508 kal_uint8 dns[IPV4_ADDR_LEN];
509 kal_bool dns2_present;
510 kal_uint8 dns2[IPV4_ADDR_LEN];
511 kal_bool dns3_present;
512 kal_uint8 dns3[IPV4_ADDR_LEN];
513 kal_bool ipv6_dns_present;
514 kal_uint8 ipv6_dns[IPV6_ADDR_LEN];
515 kal_bool ipv6_dns2_present;
516 kal_uint8 ipv6_dns2[IPV6_ADDR_LEN];
517 kal_bool ipv6_dns3_present;
518 kal_uint8 ipv6_dns3[IPV6_ADDR_LEN];
519 kal_bool p_cscf_prim_addr_present;
520 kal_uint8 p_cscf_prim_addr[IPV4_ADDR_LEN];
521 kal_bool p_cscf_sec_addr_present;
522 kal_uint8 p_cscf_sec_addr[IPV4_ADDR_LEN];
523 kal_bool p_cscf_third_addr_present;
524 kal_uint8 p_cscf_third_addr[IPV4_ADDR_LEN];
525 kal_bool ipv6_p_cscf_prim_addr_present;
526 kal_uint8 ipv6_p_cscf_prim_addr[IPV6_ADDR_LEN];
527 kal_bool ipv6_p_cscf_sec_addr_present;
528 kal_uint8 ipv6_p_cscf_sec_addr[IPV6_ADDR_LEN];
529 kal_bool ipv6_p_cscf_third_addr_present;
530 kal_uint8 ipv6_p_cscf_third_addr[IPV6_ADDR_LEN];
531 kal_bool im_cn_signalling_flag_present;
532 kal_uint8 im_cn_signalling_flag;
533} l4c_prim_pdp_rdp_info_struct;
534
535//mtk04121
536typedef struct
537{
538 kal_uint8 context_id;
539 kal_uint8 primary_context_id;
540 kal_bool bearer_id_present;
541 kal_uint8 bearer_id;
542 kal_bool im_cn_signalling_flag_present;
543 kal_uint8 im_cn_signalling_flag;
544 kal_bool wlan_offlad_present;
545 kal_uint8 wlan_offlad;
546 kal_bool pdu_session_id_present;
547 kal_uint8 pdu_session_id;
548} l4c_sec_pdp_rdp_info_struct;
549
550typedef struct
551{
552 kal_uint8 length;
553 l4c_prim_pdp_info_struct prim_pdp_info[MAX_L4_PS_PDN_NUM];
554} l4c_prim_pdp_info_list_struct;
555
556typedef struct
557{
558 kal_uint8 length;
559 l4c_sec_pdp_info_struct sec_pdp_info[MAX_L4_PS_CID_NUM];
560} l4c_sec_pdp_info_list_struct;
561
562typedef struct
563{
564 kal_uint8 length;
565 l4c_qos_struct qos_info[MAX_L4_PS_CID_NUM];
566} l4c_qos_list_struct;
567
568typedef struct
569{
570 kal_uint8 length;
571 l4c_eqos_struct qos_info[MAX_L4_PS_CID_NUM];
572} l4c_eqos_list_struct;
573
574typedef struct
575{
576 kal_uint8 num_of_inactivity_timer;
577 l4c_apn_info_struct timer_info[TCM_APN_TABLE_SIZE];
578} l4ctcm_query_eapnsync_struct;
579
580//mtk04121
581typedef struct
582{
583 kal_uint8 context_id;
584 kal_uint8 qci;
585 kal_bool max_bitrate_present;
586 kal_uint8 max_bitrate_up_lnk;
587 kal_uint8 max_bitrate_down_lnk;
588 kal_uint8 ext_max_bitrate_up_lnk;
589 kal_uint8 ext_max_bitrate_down_lnk;
590 kal_uint8 ext2_max_bitrate_up_lnk;
591 kal_uint8 ext2_max_bitrate_down_lnk;
592 kal_bool guarntd_bit_rate_present;
593 kal_uint8 guarntd_bit_rate_up_lnk;
594 kal_uint8 guarntd_bit_rate_down_lnk;
595 kal_uint8 ext_guarntd_bit_rate_up_lnk;
596 kal_uint8 ext_guarntd_bit_rate_down_lnk;
597 kal_uint8 ext2_guarntd_bit_rate_up_lnk;
598 kal_uint8 ext2_guarntd_bit_rate_down_lnk;
599 kal_uint8 apn_ambr_present;
600 kal_uint8 apn_ambr_up_lnk;
601 kal_uint8 apn_ambr_down_lnk;
602 kal_uint8 ext_apn_ambr_up_lnk;
603 kal_uint8 ext_apn_ambr_down_lnk;
604 kal_uint8 ext2_apn_ambr_up_lnk;
605 kal_uint8 ext2_apn_ambr_down_lnk;
606
607 kal_bool is_use_ext_qos_for_dl_gbr;
608 kal_bool is_use_ext_qos_for_ul_gbr;
609 kal_bool is_use_ext_qos_for_dl_mbr;
610 kal_bool is_use_ext_qos_for_ul_mbr;
611 kal_uint64 ext_eps_qos_dl_gbr;
612 kal_uint64 ext_eps_qos_ul_gbr;
613 kal_uint64 ext_eps_qos_dl_mbr;
614 kal_uint64 ext_eps_qos_ul_mbr;
615
616 kal_bool is_use_ext_apn_ambr_for_dl;
617 kal_bool is_use_ext_apn_ambr_for_ul;
618 kal_uint64 ext_apn_ambr_for_dl;
619 kal_uint64 ext_apn_ambr_for_ul;
620} l4c_eps_qos_rdp_struct;
621
622
623typedef struct
624{
625 kal_uint8 context_id;
626 kal_uint8 num_of_vgqos;
627 tcm_vgqos_struct vgqos[VGSM_MAX_QFI_NUM];
628} l4c_vgqos_rdp_struct;
629
630//mtk04121
631typedef struct
632{
633 kal_uint8 length;
634 l4c_eps_qos_struct qos_info[MAX_L4_PS_CID_NUM];
635} l4c_eps_qos_list_struct;
636
637typedef struct
638{
639 kal_uint8 length;
640 l4c_vgqos_struct qos_info[MAX_L4_PS_CID_NUM];
641} l4c_vgqos_list_struct;
642
643typedef struct
644{
645 kal_uint8 context_id;
646
647 kal_uint8 pri_dns[IPV4_ADDR_LEN];
648 kal_uint8 sec_dns[IPV4_ADDR_LEN];
649
650 l4c_tcm_activate_pdp_request_ipv4_dns_enum act_pdp_with_pco_req_v4_dns ;
651 l4c_tcm_activate_pdp_request_ipv6_dns_enum act_pdp_with_pco_req_v6_dns; // only valid for IPv6 and IPv4v6, possible value:
652 // TCM_ACTIVATE_PDP_NEED_REQUEST_IPV6_DNS &
653 // TCM_ACTIVATE_PDP_NOT_REQUEST_IPV6_DNS
654 kal_bool ipv6_dns1_present;
655 kal_uint8 ipv6_dns1[IPV6_ADDR_LEN];
656 kal_bool ipv6_dns2_present;
657 kal_uint8 ipv6_dns2[IPV6_ADDR_LEN];
658 l4c_tcm_activate_pdp_request_ipv4_mtu_enum act_pdp_with_pco_req_v4_mtu;
659 kal_uint16 ipv4_mtu_size;
660 kal_uint8 initial_attach;
661 kal_uint32 op_pco_id;
662 plmn_id_rat_struct op_pco_plmn_id;
663 kal_uint8 op_pco_action;
664 kal_bool req_msisdn;
665 kal_bool pcscf_reselection_support;
666 kal_bool ps_data_off_support_present;
667 kal_uint8 ps_data_off_support_value;
668
669 kal_uint32 user_defined_op_pco_id;
670 plmn_id_rat_struct user_defined_op_pco_plmn_id;
671
672 kal_bool epdg_v6_addr_req;
673 plmn_id_rat_struct epdg_v6_addr_req_cointainer;
674
675 kal_bool epdg_v4_addr_req;
676 plmn_id_rat_struct epdg_v4_addr_req_cointainer;
677
678 kal_bool vzw_5guw_req;
679 plmn_id_rat_struct vzw_5guw_req_cointainer;
680} l4c_config_option_struct;
681
682typedef struct
683{
684 kal_uint8 context_id;
685 kal_uint8 user_name[MAX_GPRS_USER_NAME_LEN];
686 kal_uint8 password[MAX_GPRS_PASSWORD_LEN];
687 kal_uint8 auth_type;
688} l4c_cgauth_info_struct;
689
690typedef struct
691{
692 kal_uint8 length;
693 l4c_config_option_struct config_option_info[MAX_L4_PS_PDN_NUM];
694} l4c_config_option_list_struct;
695
696typedef struct
697{
698 kal_uint8 length;
699 l4c_cgauth_info_struct cgauth_info[MAX_L4_PS_PDN_NUM];
700} l4c_cgauth_info_list_struct;
701
702
703kal_bool l4ctcm_is_emergency_pdn_by_context_id(kal_uint8 context_id);
704
705/* +CGDCONT */
706#ifdef __TC10__
707kal_bool l4ctcm_is_cid_activated(kal_uint8 cid);
708#endif /*__TC10__*/
709
710kal_bool l4ctcm_get_pri_pdp_info(l4c_prim_pdp_info_list_struct *p_info);
711void l4ctcm_get_pri_pdp_info_by_context_id(kal_uint8 context_id, l4c_prim_pdp_info_struct *p_info);
712void l4ctcm_get_old_psi_present_by_context_id(kal_uint8 context_id, kal_bool *p_val);
713
714/* +CGDSCONT */
715kal_bool l4ctcm_get_sec_pdp_info(l4c_sec_pdp_info_list_struct *p_info);
716
717/* +CGSCONTRDP */
718kal_bool l4ctcm_get_sec_pdp_rdp_info(kal_uint8 cid, l4c_sec_pdp_rdp_info_struct *p_info);
719
720//mtk04121
721/* +CGTFT */
722kal_bool l4ctcm_set_tft_info(tft_info_struct *p_info);
723kal_bool l4ctcm_get_tft_info(tft_info_list_struct *p_info);
724kal_bool l4ctcm_undef_cgtft(kal_uint8 cid) ;
725
726/* +EGDELPF */
727kal_bool l4ctcm_set_egdelpf(kal_uint8 cid, kal_uint8 pf_id) ;
728kal_bool l4ctcm_get_egdelpf(kal_uint8 cid, kal_uint8 *p_pf_total_num, kal_uint8 *p_pf_list);
729kal_bool l4ctcm_undef_egdelpf(kal_uint8 cid) ;
730
731/* +EGLNKPF */
732kal_bool l4ctcm_set_eglnkpf(kal_uint8 cid, kal_uint8 lnkpf_id) ;
733kal_bool l4ctcm_get_eglnkpf(kal_uint8 cid, kal_uint8 *p_pf_total_num, kal_uint8 *p_pf_list);
734kal_bool l4ctcm_undef_eglnkpf(kal_uint8 cid) ;
735
736//mtk04121
737/* +CGTFTRDP */
738kal_bool l4ctcm_get_tft_rdp_info(tft_info_list_struct *p_info);
739
740/* +CGQREQ / +CGQMIN */
741kal_bool l4ctcm_get_qos_info(atci_qos_enum type, l4c_qos_list_struct *p_info);
742
743/* +CGQREQ / +CGQMIN */
744kal_bool l4ctcm_get_eqos_info(atci_qos_enum type, l4c_eqos_list_struct *p_info);
745
746kal_bool l4ctcm_encode_sdu_size(kal_uint16 size, kal_uint16 *p_val);
747
748kal_bool l4ctcm_encode_transfer_delay(kal_uint16 delay, kal_uint16 *p_val);
749
750//mtk04121
751/* +CGEQOS */
752kal_bool l4ctcm_get_eps_qos_info(l4c_eps_qos_list_struct *p_info);
753kal_bool l4ctcm_get_vgqos_info(l4c_vgqos_list_struct *p_info);
754
755//mtk04121
756/* +CGEQOSRDP */
757kal_bool l4ctcm_get_eps_qos_rdp_info(kal_uint8 cid, l4c_eps_qos_rdp_struct *p_info);
758kal_bool l4ctcm_get_vgqos_rdp_info(kal_uint8 cid, l4c_vgqos_rdp_struct *p_info);
759kal_bool l4ctcm_get_session_ambr(kal_uint8 cid, pdus_session_ambr_struct *p_session_ambr);
760
761kal_uint8 l4ctcm_get_pdp_type(kal_uint8 context_id);
762kal_bool l4ctcm_get_bearer_id_by_cid(kal_uint8 context_id, tcm_fic_type_enum fic_type, kal_uint8 *bearer_id);
763
764/* +EGPPPAUTH */
765kal_bool l4ctcm_get_config_option_info(l4c_config_option_list_struct *p_info);
766kal_bool l4ctcm_get_cgauth_info(l4c_cgauth_info_list_struct *p_info);
767
768/* EAPNSYNC */
769void l4ctcm_get_eapnsync_info(l4ctcm_query_eapnsync_struct *p_eapn_info);
770
771kal_bool l4ctcm_get_context_state(kal_uint8 *p_total_context, kal_uint8 *p_state_list);
772kal_bool l4ctcm_get_context_state_of_ap_view(kal_uint8 *p_total_context, kal_uint8 *p_state_list);
773
774#ifdef __HSDPA_SUPPORT__
775void l4ctcm_get_bearer_capability(kal_uint8 *p_valid_contexts, kal_uint8 *p_context_id, data_speed_activate_enum *p_bearer_capability); //hspa_mmi_h2
776#endif //__HSDPA_SUPPORT__
777
778// kal_bool l4ctcm_pdp_capability(kal_uint8 **rsp_str);
779
780#ifdef __TCPIP__ /* ABM */
781kal_bool l4ctcm_get_ext_gprs_statistics_info(kal_uint8 cid, l4c_ext_gprs_statistics_info_struct *p_info);
782#endif
783
784#ifdef __TCM_EXT_CALL_HISTORY_SUPPORT__
785kal_bool l4ctcm_query_ext_gprs_history(kal_uint8 last_cid, l4c_ext_gprs_call_history_info_struct * p_info);
786kal_bool l4ctcm_reset_ext_gprs_history(kal_bool reset_all, kal_bool reset_certain_cid_last_history, kal_uint8 context_id, kal_bool reset_total_history);
787kal_bool l4ctcm_reset_ext_gprs_history_command(kal_uint32 reset_command);
788#endif // MAUI_01643919, mtk02285, 20090316
789
790kal_bool l4ctcm_set_sib_pdp_addr_type(kal_uint8 pdp_addr_type, kal_uint8 cid);
791kal_uint8 l4ctcm_get_nw_applied_pdp_addr_type(kal_uint8 cid);
792kal_bool l4ctcm_get_nw_applied_apn(kal_uint8 cid, apn_struct *apn);
793
794void l4ctcm_set_voice_centric(kal_bool is_voice_centric);
795
796kal_bool check_pdp_context_exist_func(void);
797
798kal_bool check_remote_pdp_context_exist_func(void);
799
800kal_bool l4ctcm_pid_to_cid(kal_uint8 profile_id, kal_uint8 *context_id);
801
802kal_bool l4ctcm_cmux_port_to_cid (kal_uint8 profile_id, kal_uint8 *context_id);
803
804extern kal_bool tcml4c_is_pseudo_imsi(void);
805
806/* +EGGRNTRSPT */
807extern kal_bool l4ctcm_set_sib_processing_time_limit_in_secs(kal_uint8 cid, kal_uint32 processing_time_limit_in_secs);
808extern kal_bool l4ctcm_set_sib_req_processing_info_unlimited(kal_uint8 cid);
809extern kal_bool l4ctcm_set_sib_req_processing_info_default(kal_uint8 cid);
810extern kal_uint32 l4ctcm_get_sib_processing_time_limit_in_secs(kal_uint8 cid);
811extern tcm_im_cn_signalling_enum l4ctcm_get_user_defined_im_cn_signalling_flag(kal_uint8 context_id);
812
813extern kal_bool l4ctcm_get_nw_applied_ladn_info(l4ctcm_ladn_info_list_struct *ladn_info_list);
814
815kal_bool l4aps_tcm_get_5g_qos_flow_action_table(kal_uint8 cid, qos_flow_action_table_struct *qf_action_table_result, kal_uint8 *qfi_with_default_rule);
816kal_bool l4ctcm_get_vzw_5GUW_Allowed(kal_uint8 *vzw_5GUW_Allowed);
817#ifdef __TCM_UT__
818void l4ctcm_get_eps_qos_info_tester(kal_char *p_case_num);
819void l4ctcm_get_eps_qos_rdp_info_tester(kal_char *p_case_num);
820
821void l4ctcm_get_vgqos_info_tester(kal_char *p_case_num);
822void l4ctcm_get_vgqos_rdp_info_tester(kal_char *p_case_num);
823void l4ctcm_get_session_ambr_tester(kal_char *p_case_num);
824#endif // __TCM_UT__
825
826#if (defined(__FAST_DORMANCY__) || defined(__NO_PSDATA_SEND_SCRI__))
827kal_bool check_if_has_activation_pending_pdp(void);
828kal_bool check_if_has_deactivation_pending_pdp(void);
829kal_bool check_if_has_modification_pending_pdp(void);
830kal_bool check_if_has_mt_activation_pending_pdp(void);
831#endif /* (defined(__FAST_DORMANCY__) || defined(__NO_PSDATA_SEND_SCRI__)) */
832
833#ifdef __ACL_SUPPORT__
834kal_uint8 l4ctcm_get_acl_type(void);
835#endif
836
837#endif /* ~_L4C2TCM_FUNC_H */