[Feature][T8TSK-212][Modem]Update MTK modem version to MOLY.NR15.R3.MD700.MP.V75.P11.L805A.L1.240604.20240618
MTK modem version: MOLY01333286_AUTO00303263(For_MOBILETEK35_IVT_T800_MOLY.NR15.R3.MD700.MP.V75.P11).tar.gz
RF modem version: L805A/l1_240604.rar
Change-Id: I18daf14620a8f2365a8b34403a1b7b96b4d2d82f
diff --git a/mcu/protocol/interface/ims/d2pm_ddm_struct.h b/mcu/protocol/interface/ims/d2pm_ddm_struct.h
old mode 100755
new mode 100644
index 3171df4..4cb0afb
--- a/mcu/protocol/interface/ims/d2pm_ddm_struct.h
+++ b/mcu/protocol/interface/ims/d2pm_ddm_struct.h
@@ -331,8 +331,10 @@
/* under construction !*/
#endif
at_cgev_ind_struct cgev_cmd;
- kal_bool ims_info_present;
- d2pm_ddm_ims_info_struct ims_info;
+#if 0
+/* under construction !*/
+/* under construction !*/
+#endif
kal_bool is_dangling_present;
kal_bool is_dangling;
ps_cause_enum deact_cause;
@@ -345,6 +347,14 @@
at_escontind_ind_struct cmd;
}d2pm_ddm_escontind_ind_struct;
+typedef struct
+{
+ kal_bool ims_info_present;
+ d2pm_ddm_ims_info_struct ims_info;
+
+}d2pm_ddm_urc_cgev_ind_ims_info_struct;
+
+
typedef d2pm_ddm_urc_cgev_ind_prv_struct d2pm_ddm_pdn_nw_act_ind_prv_struct;
typedef d2pm_ddm_urc_cgev_ind_prv_struct d2pm_ddm_pdn_nw_deact_ind_prv_struct;
diff --git a/mcu/protocol/interface/l4/l4c_nrrc_struct.h b/mcu/protocol/interface/l4/l4c_nrrc_struct.h
old mode 100755
new mode 100644
index 6d02f8b..4bc1c8a
--- a/mcu/protocol/interface/l4/l4c_nrrc_struct.h
+++ b/mcu/protocol/interface/l4/l4c_nrrc_struct.h
@@ -64,6 +64,7 @@
#include "nrrc_nvram_def.h"
#include "l4c_common_enum.h"
#include "l4c_as_inter_core_def.h"
+#include "vdm_l4c_struct.h"
#ifdef __NR_RAT__
#define MAX_CUSTOM_NR_COMB_LIST_MAX_LENGTH NVRAM_EF_NRRC_CUSTOM_ENDC_COMB_WHITE_LIST_MAX_LENGTH
@@ -176,6 +177,14 @@
typedef struct
{
LOCAL_PARA_HDR
+ kal_uint8 call_id;
+ kal_uint8 msg_type;
+ l4c_ecpi_info_struct ecpi_info;
+} l4c_nrrc_ims_call_progress_req_struct;
+
+typedef struct
+{
+ LOCAL_PARA_HDR
l4c_source_id_enum src_id;
kal_bool is_last;
ca_band_comb_list_cmd_type_enum cmd;
diff --git a/mcu/protocol/interface/l4/nas_sv_struct.h b/mcu/protocol/interface/l4/nas_sv_struct.h
index 8320d00..65ba321 100644
--- a/mcu/protocol/interface/l4/nas_sv_struct.h
+++ b/mcu/protocol/interface/l4/nas_sv_struct.h
@@ -1704,6 +1704,12 @@
kal_bool is_emc_info_valid;
} nwsel_nas_sv_nr_emc_service_availability_rsp_struct;
+typedef struct
+{
+ LOCAL_PARA_HDR
+ pdu_session_info_struct pdu_session_info;
+} nas_sv_vgsm_pdu_session_info_ind_struct;
+
#ifdef __ECALL_SUPPORT__
typedef struct
{
diff --git a/mcu/protocol/interface/l4/vdm_l4c_struct.h b/mcu/protocol/interface/l4/vdm_l4c_struct.h
old mode 100755
new mode 100644
index 471de1e..8083adc
--- a/mcu/protocol/interface/l4/vdm_l4c_struct.h
+++ b/mcu/protocol/interface/l4/vdm_l4c_struct.h
@@ -529,12 +529,6 @@
/* MSG_ID_VDM_L4C_UAC_ALLEVIATION_IND */
typedef rac_vgmm_ims_uac_alleviation_ind_struct vdm_l4c_uac_alleviation_ind_struct;
-/*MSG_ID_VDM_L4C_EMERGENCY_SERVICE_REQ*/
-typedef rac_vgmm_emergency_service_req_struct vdm_l4c_emergency_service_req_struct;
-/* MSG_ID_VDM_L4C_EMERGENCY_SERVICE_CNF */
-typedef rac_vgmm_emergency_service_cnf_struct vdm_l4c_emergency_service_cnf_struct;
-/* MSG_ID_VDM_L4C_EMERGENCY_SERVICE_IND */
-typedef rac_vgmm_emergency_service_ind_struct vdm_l4c_emergency_service_ind_struct;
/*MSG_ID_VDM_L4C_EMERGENCY_SERVICE_FALLBACK_REQ*/
typedef rac_vgmm_emergency_service_fallback_req_struct vdm_l4c_emergency_service_fallback_req_struct;
/* MSG_ID_VDM_L4C_EMERGENCY_SERVICE_FALLBACK_CNF */
diff --git a/mcu/protocol/interface/l4misc/atp_l4c_struct.h b/mcu/protocol/interface/l4misc/atp_l4c_struct.h
old mode 100755
new mode 100644
index e8f11fa..cec49a9
--- a/mcu/protocol/interface/l4misc/atp_l4c_struct.h
+++ b/mcu/protocol/interface/l4misc/atp_l4c_struct.h
@@ -123,6 +123,8 @@
#include "kal_general_types.h"
#include "atp_public_defs.h"
+#include "rac_vgmm_struct.h"
+
#if defined(__IMS_SUPPORT__) && (__WFC_SUPPORT__) && defined(__ALLOW_CALL_DURING_SMS_IN_OTHER_STACK__) && defined(__GEMINI__)
#include "ims_common_def.h"
#endif
@@ -187,6 +189,14 @@
} atp_l4c_call_handover_ind_struct;
#endif
+/*MSG_ID_ATP_L4C_EMERGENCY_SERVICE_REQ*/
+typedef rac_vgmm_emergency_service_req_struct atp_l4c_emergency_service_req_struct;
+/* MSG_ID_ATP_L4C_EMERGENCY_SERVICE_CNF */
+typedef rac_vgmm_emergency_service_cnf_struct atp_l4c_emergency_service_cnf_struct;
+/* MSG_ID_ATP_L4C_EMERGENCY_SERVICE_IND */
+typedef rac_vgmm_emergency_service_ind_struct atp_l4c_emergency_service_ind_struct;
+
+
#endif /* _ATP_L4C_STRUCT_H */
diff --git a/mcu/protocol/interface/l4misc/l3_inc_enums.h b/mcu/protocol/interface/l4misc/l3_inc_enums.h
index db1d355..6e4daf5 100644
--- a/mcu/protocol/interface/l4misc/l3_inc_enums.h
+++ b/mcu/protocol/interface/l4misc/l3_inc_enums.h
@@ -5145,6 +5145,8 @@
NAS_SV_EVENT_LTE_REJECT_IR_REDIRECT_TO_UMTS_GSM,
NAS_SV_EVENT_ENTER_SLEEP_STATE_FOR_LVI, //deactivate C2K CS/PS when SLEEP state under limited virtual idle mode
NAS_SV_EVENT_EMM_DEACT_ERRC_FOR_RAT_MODE_CHANGE,
+ NAS_SV_EVENT_REJECT_IRAT_FROM_XAS_START,
+ NAS_SV_EVENT_REJECT_IRAT_FROM_XAS_STOP,
} nas_sv_any_event_update_ind_enum;
typedef enum
diff --git a/mcu/protocol/interface/l4misc/l3_inc_local.h b/mcu/protocol/interface/l4misc/l3_inc_local.h
old mode 100755
new mode 100644
index 975bf0f..e316844
--- a/mcu/protocol/interface/l4misc/l3_inc_local.h
+++ b/mcu/protocol/interface/l4misc/l3_inc_local.h
@@ -915,6 +915,13 @@
} apn_struct;
+typedef struct
+{
+ kal_uint8 psi;
+
+ pdus_qos_flow_struct qos_flow;
+} pdu_session_info_struct;
+
/* ETCM <-> ENAS/EAS end */
/* NWSEL <-> ENAS/EAS begin */
diff --git a/mcu/protocol/interface/l4misc/l4c_common_enum.h b/mcu/protocol/interface/l4misc/l4c_common_enum.h
old mode 100755
new mode 100644
index a351481..ae3c523
--- a/mcu/protocol/interface/l4misc/l4c_common_enum.h
+++ b/mcu/protocol/interface/l4misc/l4c_common_enum.h
@@ -150,7 +150,7 @@
#define L4C_NW_INVALID_SRXLEV L4C_INVALID_SIGNAL_INT16
#define L4C_NW_INVALID_SQUAL L4C_INVALID_SIGNAL_INT16
-
+#define L4C_NW_NAME_MAX_LEN_WITH_GSM7BIT_ENCODE (MAX_NW_NAME_LENGTH * 8/7)
typedef enum
{
diff --git a/mcu/protocol/interface/l4misc/vdm_atp_struct.h b/mcu/protocol/interface/l4misc/vdm_atp_struct.h
old mode 100755
new mode 100644
index baa942c..b7b00b2
--- a/mcu/protocol/interface/l4misc/vdm_atp_struct.h
+++ b/mcu/protocol/interface/l4misc/vdm_atp_struct.h
@@ -479,6 +479,7 @@
#include "c2k_irat_msg_struct.h"
#include "l4b_vdm_struct.h"
#include "l4_vdm_enum.h"
+#include "rac_vgmm_struct.h"
#define VDM_AT_CMD_TO_MD_NAME_LEN 32
#define VDM_AT_CMD_TO_MD_VALUE_LEN 512
@@ -1611,5 +1612,13 @@
typedef vdm_atp_common_at_rsp_struct vdm_atp_cmd_dial_ecall_rsp_struct;
#endif
+
+/*MSG_ID_VDM_ATP_EMERGENCY_SERVICE_REQ*/
+typedef rac_vgmm_emergency_service_req_struct vdm_atp_emergency_service_req_struct;
+/* MSG_ID_VDM_ATP_EMERGENCY_SERVICE_CNF */
+typedef rac_vgmm_emergency_service_cnf_struct vdm_atp_emergency_service_cnf_struct;
+/* MSG_ID_VDM_ATP_EMERGENCY_SERVICE_IND */
+typedef rac_vgmm_emergency_service_ind_struct vdm_atp_emergency_service_ind_struct;
+
#endif // _VDM_ATP_STRUCT_H_
diff --git a/mcu/protocol/layer4/l4/atci/include/rmmi_ind.h b/mcu/protocol/layer4/l4/atci/include/rmmi_ind.h
old mode 100755
new mode 100644
index 5a469e2..aad6392
--- a/mcu/protocol/layer4/l4/atci/include/rmmi_ind.h
+++ b/mcu/protocol/layer4/l4/atci/include/rmmi_ind.h
@@ -224,12 +224,12 @@
kal_uint8 full_nw_name_dcs,
kal_bool full_nw_name_add_ci,
kal_uint8 *full_nw_name,
- kal_uint8 full_nw_name_len,
+ kal_uint16 full_nw_name_len,
kal_uint8 short_nw_nameP,
kal_uint8 short_nw_name_dcs,
kal_bool short_nw_name_add_ci,
kal_uint8 *short_nw_name,
- kal_uint8 short_nw_name_len);
+ kal_uint16 short_nw_name_len);
extern void l4c_nw_time_zone_rind(kal_uint8 timezone,
kal_uint8 day_light_saving_timeP,
diff --git a/mcu/protocol/layer4/l4/csm/cc/include/csmcc_aux_msg_hdlr.h b/mcu/protocol/layer4/l4/csm/cc/include/csmcc_aux_msg_hdlr.h
old mode 100755
new mode 100644
index 509d9ee..0c89192
--- a/mcu/protocol/layer4/l4/csm/cc/include/csmcc_aux_msg_hdlr.h
+++ b/mcu/protocol/layer4/l4/csm/cc/include/csmcc_aux_msg_hdlr.h
@@ -579,8 +579,10 @@
csmcc_send_l4c_display_als_ind (kal_uint8 line_id);
extern
-csmcc_ret_t csmcc_send_l4c_update_als_cnf( kal_uint8 result,
- kal_uint16 error_cause);
+csmcc_ret_t csmcc_send_l4c_update_als_cnf( kal_uint8 src_id,
+ kal_uint8 result,
+ kal_uint16 error_cause);
+
#ifdef __AOC_SUPPORT__
#if defined (__CCM_NO_RESET__) && defined (__LAST_CCM_RESET__)
/* MAUI_01938414 [CSMCC][Revise] support reset last ccm */
diff --git a/mcu/protocol/layer4/l4/csm/ss/include/csmss_aux_msg_hdlr.h b/mcu/protocol/layer4/l4/csm/ss/include/csmss_aux_msg_hdlr.h
old mode 100755
new mode 100644
index c4c17f4..209e90e
--- a/mcu/protocol/layer4/l4/csm/ss/include/csmss_aux_msg_hdlr.h
+++ b/mcu/protocol/layer4/l4/csm/ss/include/csmss_aux_msg_hdlr.h
@@ -23,7 +23,7 @@
* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
-* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
*
* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
@@ -116,10 +116,10 @@
void csmss_send_nvram_write_essp_req(void);
void csmss_update_cfu_to_file(l4_addr_bcd_struct *p_line1_ftn);
void csmss_update_cfu_req(
- cfu_flag_nvram_action_enum action,
+ cfu_flag_nvram_action_enum action,
kal_uint8 line_id
#if (defined(__REL4__) && defined(__CFU_FTN_IN_EFCFIS__))
- ,
+ ,
l4_addr_bcd_struct *p_line1_ftn
#endif
);
@@ -246,8 +246,8 @@
csmss_string_op_enum csmss_ss_exe_ussd_req(kal_uint8 src_id, kal_uint8
*ussd_string, kal_uint8 ussd_len, kal_uint8 op_code);
-void csmss_gsm7_unpack(kal_uint8 *unpacked_data, kal_uint8 *packed_data,
- kal_uint16 data_len, kal_uint16 offset);
+kal_uint16 csmss_gsm7_unpack(kal_uint8 *unpacked_data, kal_uint16 unpacked_data_len, kal_uint8 *packed_data,
+ kal_uint16 data_len, kal_uint16 offset);
void csmss_gsm7_pack(kal_uint8 *packed_data, kal_uint8 *unpacked_data,
kal_uint16 data_len, kal_uint16 offset);
diff --git a/mcu/protocol/layer4/l4/include/rmmi_common_enum.h b/mcu/protocol/layer4/l4/include/rmmi_common_enum.h
old mode 100755
new mode 100644
index b37c326..22a90ea
--- a/mcu/protocol/layer4/l4/include/rmmi_common_enum.h
+++ b/mcu/protocol/layer4/l4/include/rmmi_common_enum.h
@@ -90,6 +90,8 @@
#define MAX_DATA_QUEUE_LENGTH 2048
#endif
+#define MAX_DATA_LENGTH_CIEV_URC 2400
+
#if defined(__DISABLE_SIM2_AT_SUPPORT__)
#define RMMI_MAX_SIM_NUM (1)
#else
@@ -477,7 +479,7 @@
//#ifdef __TC10__
RMMI_ERR_CM_FACILITY_REJECT = 401,
RMMI_ERR_SIM_NO_RESPONSE = 402,
-//#endif
+//#endif
RMMI_NO_ERR = 600,
/* following: error is related to syntax, invalid parameters.. */
diff --git a/mcu/protocol/layer4/l4/l4c/include/proc/l4c_nw_cmd.h b/mcu/protocol/layer4/l4/l4c/include/proc/l4c_nw_cmd.h
old mode 100755
new mode 100644
index d1e4c61..42fa83b
--- a/mcu/protocol/layer4/l4/l4c/include/proc/l4c_nw_cmd.h
+++ b/mcu/protocol/layer4/l4/l4c/include/proc/l4c_nw_cmd.h
@@ -529,6 +529,11 @@
extern kal_uint8 l4c_nw_get_roaming_mode_req( void );
extern l4c_rtn_code_enum l4c_nw_handle_cops_auto_selection(protocol_id_enum ps_id, kal_uint8 src_id, kal_uint8 rat_mode, endc_search_enum endc_search_mode );
extern void l4c_nw_get_rf_status_req(void);
+
+#ifdef __NR_RAT__
+extern void l4c_send_ims_call_progress_to_nrrc(local_para_struct *local_para_ptr);
+#endif
+
extern kal_bool l4c_nw_force_send_afr_to_nr(kal_uint8 src_id);
#endif /* _L4C_NW_CMD_H */
diff --git a/mcu/protocol/layer4/l4/l4c/include/proc/l4c_vdm_rcv.h b/mcu/protocol/layer4/l4/l4c/include/proc/l4c_vdm_rcv.h
old mode 100755
new mode 100644
index f10bc0e..66f5861
--- a/mcu/protocol/layer4/l4/l4c/include/proc/l4c_vdm_rcv.h
+++ b/mcu/protocol/layer4/l4/l4c/include/proc/l4c_vdm_rcv.h
@@ -124,7 +124,7 @@
extern kal_uint8 l4c_vdm_get_l4b_tid_by_rmmi_srcid(kal_uint8 src_id);
extern l4b_transaction_struct* l4c_vdm_find_l4b_transaction(kal_uint8 src_id);
-extern void l4c_vdm_emergency_service_req_hdlr(local_para_struct *local_para_ptr);
+extern void l4c_atp_emergency_service_req_hdlr(local_para_struct *local_para_ptr);
extern void l4c_vdm_emergency_service_fallback_req_hdlr(local_para_struct *local_para_ptr);
extern void l4c_vdm_errc_rej_cell_ind_hdlr(local_para_struct *local_para_ptr);