[Feature][T8TSK-212][Modem]Update MTK modem version to MOBILETEK35_IVT_T800_MOLY.NR15.R3.MD700.MP.V75.P6

Only Configure:No
Affected branch:T800_MD
Affected module:Modem
Is it affected on both ZXIC and MTK:only MTK
Self-test:Yes
Doc Update:No

Change-Id: Id19a67bd78c05e3f07b27b5943045cc78cb5c24d
diff --git a/mcu/interface/protocol/general/atp_dmf_cmd_def.h b/mcu/interface/protocol/general/atp_dmf_cmd_def.h
index c81e4a9..9c0b62b 100755
--- a/mcu/interface/protocol/general/atp_dmf_cmd_def.h
+++ b/mcu/interface/protocol/general/atp_dmf_cmd_def.h
@@ -4013,12 +4013,26 @@
         DMF_FIELD_VAR(kal_uint32, nr_cc_num, UNUSED_FIELD)
     DMF_CMD_CNF_END(dmf_app6_rx_signal_quality_info_cnf_struct)
 
-    // for DMF_THIN_MODEM_CAUSE_LTE_NR_RX_SIGNAL_QUALITY_INFO
-    DMF_CMD_CNF(DMF_APP6_LTE_NR_RX_SIGNAL_QUALITY_INFO_CNF, dmf_app6_lte_nr_rx_signal_quality_info_cnf_struct, dmf_app6_lte_nr_rx_signal_quality_info_cnf)
+    // for DMF_THIN_MODEM_CAUSE_LTE_RX_SIGNAL_QUALITY_INFO
+    DMF_CMD_CNF(DMF_APP6_LTE_RX_SIGNAL_QUALITY_INFO_CNF, dmf_app6_lte_rx_signal_quality_info_cnf_struct, dmf_app6_lte_rx_signal_quality_info_cnf)
         DMF_FIELD_VAR(kal_uint32, cause, UNUSED_FIELD)
         DMF_FIELD_STRING(cc_rx_index_name, 16)
         DMF_FIELD_VAR(kal_int32, rx_path_rsrp, UNUSED_FIELD)
-    DMF_CMD_CNF_END(dmf_app6_lte_nr_rx_signal_quality_info_cnf_struct)
+        DMF_FIELD_VAR(kal_int32, rx_path_utas_phy_idx, UNUSED_FIELD)
+        DMF_FIELD_VAR(kal_int32, rx_path_rssi, UNUSED_FIELD)
+        DMF_FIELD_VAR(kal_int32, rx_path_snr, UNUSED_FIELD)
+    DMF_CMD_CNF_END(dmf_app6_lte_rx_signal_quality_info_cnf_struct)
+
+    // for DMF_THIN_MODEM_CAUSE_NR_RX_SIGNAL_QUALITY_INFO
+    DMF_CMD_CNF(DMF_APP6_NR_RX_SIGNAL_QUALITY_INFO_CNF, dmf_app6_nr_rx_signal_quality_info_cnf_struct, dmf_app6_nr_rx_signal_quality_info_cnf)
+        DMF_FIELD_VAR(kal_uint32, cause, UNUSED_FIELD)
+        DMF_FIELD_STRING(cc_rx_index_name, 16)
+        DMF_FIELD_VAR(kal_int32, rx_path_tas_rsrp, UNUSED_FIELD)
+        DMF_FIELD_VAR(kal_int32, rx_path_tas_phy_idx, UNUSED_FIELD)
+        DMF_FIELD_VAR(kal_int32, rx_path_rssi, UNUSED_FIELD)
+        DMF_FIELD_VAR(kal_int32, rx_path_ssb_snr, UNUSED_FIELD)
+        DMF_FIELD_VAR(kal_int32, rx_path_ssb_rsrp, UNUSED_FIELD)
+    DMF_CMD_CNF_END(dmf_app6_nr_rx_signal_quality_info_cnf_struct)
 
     // for DMF_THIN_MODEM_CAUSE_OTA_MSG_INFO
     DMF_CMD_CNF(DMF_APP6_OTA_MSG_CNF, dmf_app6_ota_msg_cnf_struct, dmf_app6_ota_msg_cnf)
@@ -4044,8 +4058,8 @@
         DMF_FIELD_STRING(cc_name, 16)
         DMF_FIELD_VAR(kal_uint32, path_loss, UNUSED_FIELD)
         DMF_FIELD_VAR(kal_uint32, rank, UNUSED_FIELD)
-        DMF_FIELD_VAR(kal_uint32, serv_rsrp, UNUSED_FIELD)
-        DMF_FIELD_VAR(kal_uint32, serv_rsrq, UNUSED_FIELD)
+        DMF_FIELD_VAR(kal_int32, serv_rsrp, UNUSED_FIELD)
+        DMF_FIELD_VAR(kal_int32, serv_rsrq, UNUSED_FIELD)
         DMF_FIELD_VAR(kal_uint32, serv_snr, UNUSED_FIELD)
         DMF_FIELD_VAR(kal_int32, serv_rssi, UNUSED_FIELD)
     DMF_CMD_CNF_END(dmf_app6_lte_ca_meas_info_cnf_struct)
@@ -4114,7 +4128,31 @@
         DMF_FIELD_VAR(kal_uint32, cause, UNUSED_FIELD)
         DMF_FIELD_VAR_LONG(kal_uint64, nr_scg_change_count, UNUSED_FIELD)
         DMF_FIELD_VAR_LONG(kal_uint64, nr_scg_change_failure_count, UNUSED_FIELD)
-    DMF_CMD_CNF_END(dmf_app6_scg_count_info_cnf_struct)            
+    DMF_CMD_CNF_END(dmf_app6_scg_count_info_cnf_struct)    
+
+	// for DMF_THIN_MODEM_CAUSE_CSI_RS_INFO
+	DMF_CMD_CNF(DMF_APP6_CSI_RS_INFO_CNF, dmf_app6_csi_rs_info_cnf_struct, dmf_app6_csi_rs_info_cnf)
+		DMF_FIELD_VAR(kal_uint32, cause, UNUSED_FIELD)
+		DMF_FIELD_VAR(kal_uint32, act, UNUSED_FIELD)
+		DMF_FIELD_VAR(kal_uint32, lte_cc_num, UNUSED_FIELD)
+		DMF_FIELD_VAR(kal_uint32, nr_cc_num, UNUSED_FIELD)
+	DMF_CMD_CNF_END(dmf_app6_csi_rs_info_cnf_struct)
+	
+	// for DMF_THIN_MODEM_CAUSE_LTE_CSI_RS_INFO
+    DMF_CMD_CNF(DMF_APP6_LTE_CSI_RS_INFO_CNF, dmf_app6_lte_csi_rs_info_cnf_struct, dmf_app6_lte_csi_rs_info_cnf)
+        DMF_FIELD_VAR(kal_uint32, cause, UNUSED_FIELD)
+		DMF_FIELD_STRING(cc_name, 16)
+        DMF_FIELD_VAR(kal_uint32, csi_rs_valid_config_num, UNUSED_FIELD)
+		DMF_FIELD_VAR_ARRAY_D(kal_uint32, csi_rs_info_list, 1*2)
+    DMF_CMD_CNF_END(dmf_app6_lte_csi_rs_info_cnf_struct)
+	
+	// for DMF_THIN_MODEM_CAUSE_NR_CSI_RS_INFO
+    DMF_CMD_CNF(DMF_APP6_NR_CSI_RS_INFO_CNF, dmf_app6_nr_csi_rs_info_cnf_struct, dmf_app6_nr_csi_rs_info_cnf)
+        DMF_FIELD_VAR(kal_uint32, cause, UNUSED_FIELD)
+		DMF_FIELD_STRING(cc_name,16)
+        DMF_FIELD_VAR(kal_uint32, csi_rs_valid_config_num, UNUSED_FIELD)
+		DMF_FIELD_VAR_ARRAY_D(kal_uint32, csi_rs_info_list, 4*2)
+    DMF_CMD_CNF_END(dmf_app6_nr_csi_rs_info_cnf_struct)
 #endif
 
 #ifdef DMF_URC_IND_SEC
diff --git a/mcu/interface/protocol/general/l4c_lbs_struct.h b/mcu/interface/protocol/general/l4c_lbs_struct.h
index fc0949c..0a245d8 100755
--- a/mcu/interface/protocol/general/l4c_lbs_struct.h
+++ b/mcu/interface/protocol/general/l4c_lbs_struct.h
@@ -99,6 +99,7 @@
 
 #include "kal_general_types.h"
 #include "l3_inc_enums_public.h"
+#include "irat_common_enums.h"
 #if defined(__AGPS_CONTROL_PLANE__) && !defined(__MMI_FMI__)
 #include "ss_asn.h"
 #endif
@@ -294,6 +295,15 @@
     call_status_enum            call_status;
 } l4c_lbs_emc_info_ind_struct;
 
+typedef struct
+{
+    LOCAL_PARA_HDR
+    irat_type_enum irat_type;
+    rat_type_enum source_rat;
+    rat_type_enum target_rat;
+    irat_result_enum irat_result;
+} l4c_lbs_rat_change_finish_req_struct;
+
 #endif /* l4c_lbs_struct.h*/
 
 
diff --git a/mcu/interface/protocol/general/l5_structs.h b/mcu/interface/protocol/general/l5_structs.h
index cd6847e..317472f 100755
--- a/mcu/interface/protocol/general/l5_structs.h
+++ b/mcu/interface/protocol/general/l5_structs.h
@@ -273,4 +273,27 @@
     kal_uint32 mbim_msg_len;
 } mbim_l5io_mbci_status_ind_struct;
 
+typedef struct {
+    LOCAL_PARA_HDR
+    kal_uint32 seq_id;
+    sim_ecall_mode_enum ecall_mode;
+} l5_l4c_set_ecall_mode_req_struct;
+
+typedef struct {
+    LOCAL_PARA_HDR
+    kal_uint32 seq_id;
+    kal_bool is_success;
+} l5_l4c_set_ecall_mode_cnf_struct;
+
+typedef struct {
+    LOCAL_PARA_HDR
+    kal_uint32 seq_id;
+} l5_l4c_get_ecall_mode_req_struct;
+
+typedef struct {
+    LOCAL_PARA_HDR
+    kal_uint32 seq_id;
+    sim_ecall_mode_enum ecall_mode;
+} l5_l4c_get_ecall_mode_cnf_struct;
+
 #endif
diff --git a/mcu/interface/protocol/general/mspm_public_api.h b/mcu/interface/protocol/general/mspm_public_api.h
index 5ad32ae..6823483 100755
--- a/mcu/interface/protocol/general/mspm_public_api.h
+++ b/mcu/interface/protocol/general/mspm_public_api.h
@@ -156,6 +156,7 @@
     MSPM_EMM_SERVICE_RSIM, 
     MSPM_EMM_EXT_SERVICE, 
     MSPM_EMM_PS_PAGING,
+    MSPM_EMM_PS_PAGING_HIGH,
     MSPM_EMM_SMC,
     MSPM_5G_AS_CONNECTION,
     MSPM_5G_AS_INACTIVE,
diff --git a/mcu/interface/protocol/general/ps_public_enum.h b/mcu/interface/protocol/general/ps_public_enum.h
index e4e4706..f7cdb58 100755
--- a/mcu/interface/protocol/general/ps_public_enum.h
+++ b/mcu/interface/protocol/general/ps_public_enum.h
@@ -3515,6 +3515,7 @@
     D2_NETIF_POOL_FULL                  = 0x03 + D2_NETIF_CAUSE_START,
     D2_NETIF_INVALID_STATE              = 0x04 + D2_NETIF_CAUSE_START,
     D2_NETIF_INVALID_PARAMETER          = 0x05 + D2_NETIF_CAUSE_START,
+    D2_NETIF_INTERFACE_ID_CONFLICT      = 0x06 + D2_NETIF_CAUSE_START,
 
     D2AM_NW_CAUSE_START                    = 0x50 + D2_CAUSE_START,      /* 0x01650 */
 
@@ -4697,7 +4698,7 @@
     VDM_CALL_STATUS_ALL = VDM_CALL_STATUS_IMS_GROUP | VDM_CALL_STATUS_FIRST_CALL_ATTEMPT | VDM_CALL_STATUS_ALL_CALL_END,
 } vdm_call_status_enum;
 
-typedef kal_uint8 op_feature_bitmap;
+typedef kal_uint16 op_feature_bitmap;
 
 typedef enum
 {
@@ -4711,7 +4712,9 @@
     OP_FEATURE_UMTS_SUNSET              = 1<<5, // 32
     OP_FEATURE_SA_STORED_ONLY_SEARCH    = 1<<6, // 64
     OP_FEATURE_ENDC_BEFORE_SA_SEARCH    = 1<<7, // 128
-    OP_FEATURE_END = OP_FEATURE_ENDC_BEFORE_SA_SEARCH // should be the last entry
+    OP_FEATURE_RE_ENABLE_S1_CAP         = 1<<8, // 256
+    OP_FEATURE_RE_ENABLE_N1_CAP         = 1<<9, // 512
+    OP_FEATURE_END = OP_FEATURE_RE_ENABLE_N1_CAP // should be the last entry
 } op_feature_enum;
 
 
@@ -5299,4 +5302,11 @@
     L4C_NW_PROC_FAIL_CAUSE_UNKNOWN = 0x06,
 } better_rat_detect_response_enum;
 
+typedef enum 
+{
+    THROTTLING_GENERIC = 0,
+    THROTTLING_EMM_SR_LLF,
+} throttling_cause_enum;
+
+
 #endif /* _PS_PUBLIC_ENUM_H_ */
diff --git a/mcu/interface/protocol/general/ps_public_utility.h b/mcu/interface/protocol/general/ps_public_utility.h
index 01ed322..18c69e5 100755
--- a/mcu/interface/protocol/general/ps_public_utility.h
+++ b/mcu/interface/protocol/general/ps_public_utility.h
@@ -80,6 +80,7 @@
 
 #if defined(__IMS_SUPPORT__) || defined(__SMS_IMS_SUPPORT__)
 extern kal_bool sdm_is_sms_tp_rd_set(void);
+extern kal_bool sdm_is_sms_tp_rd_set_for_stk(void);
 #endif
 
 extern kal_uint8 smsal_cmgf_query_with_ps_id(kal_uint8 ps_id);
diff --git a/mcu/interface/protocol/general/sim_ps_struct.h b/mcu/interface/protocol/general/sim_ps_struct.h
index 09f9708..13c7ae6 100755
--- a/mcu/interface/protocol/general/sim_ps_struct.h
+++ b/mcu/interface/protocol/general/sim_ps_struct.h
@@ -2357,6 +2357,13 @@
     kal_bool is_cdma;
 } nas_sv_sim_cs_stk_domain_ind_struct;
 
+#if defined(__ECALL_SUPPORT__) || defined(__NG_ECALL_SUPPORT__)
+typedef struct {
+    LOCAL_PARA_HDR
+    sim_ecall_mode_enum ecall_mode;
+} sim_nas_sv_set_ecall_mode_ind_struct;
+#endif
+
 typedef struct {
     LOCAL_PARA_HDR
     kal_uint8 cdma_capability;          //AT+ERAT setting
@@ -2485,6 +2492,7 @@
     kal_uint8 mcc[MAX_SIM_MCC_MNC_LEN+1];
     kal_uint8 mnc[MAX_SIM_MCC_MNC_LEN+1];
     kal_uint8 msin[MAX_SIM_MSIN_LEN+1];
+	kal_uint8 gid1[NUM_GID1+1];
 } sim_fake_id_req_struct;
 
 typedef struct
diff --git a/mcu/interface/protocol/general/sim_public_api.h b/mcu/interface/protocol/general/sim_public_api.h
index 59db428..c04e296 100755
--- a/mcu/interface/protocol/general/sim_public_api.h
+++ b/mcu/interface/protocol/general/sim_public_api.h
@@ -445,6 +445,22 @@
  *****************************************************************************/
 extern void sim_get_fake_imsi(protocol_id_enum sim_ps_id, kal_uint8 *imsi_p, kal_uint8 *mnc_length_p);
 
+/*****************************************************************************
+ * FUNCTION
+ *  sim_get_fake_gid1
+ * DESCRIPTION
+ *  This function is to get the fake GID1 set by the tester
+ *  Caller should use this API after SIM ready
+ *  Caller should allocate the NUM_GID1 memory for gid1_p
+ * PARAMETERS
+ *  kal_uint8 sim_ps_id        [IN]
+ * RETURNS
+ *  gid1_p       fake GID1
+ *  gid1_length_p       GID1 length of fake GID1
+ * GLOBALS AFFECTED
+ *  void
+ *****************************************************************************/
+extern kal_bool sim_get_fake_gid1(protocol_id_enum ps_id, kal_uint8 *gid1_p, kal_uint8 *gid1_length_p);
 #endif
 
 /*****************************************************************************
diff --git a/mcu/interface/protocol/general/sim_public_struct.h b/mcu/interface/protocol/general/sim_public_struct.h
index 30aa030..659821b 100755
--- a/mcu/interface/protocol/general/sim_public_struct.h
+++ b/mcu/interface/protocol/general/sim_public_struct.h
@@ -68,6 +68,7 @@
 #include "kal_public_defs.h"
 #include "sim_public_enum.h"
 #include "ps_public_struct.h"
+#include "l5_structs.h"
 
 typedef struct {
     LOCAL_PARA_HDR
@@ -456,5 +457,10 @@
 	kal_bool	result;
 } sim_restrict_card_type_cnf_struct;
 
+typedef l5_l4c_set_ecall_mode_req_struct l4c_sim_set_ecall_mode_req_struct;
+typedef l5_l4c_set_ecall_mode_cnf_struct l4c_sim_set_ecall_mode_cnf_struct;
+typedef l5_l4c_get_ecall_mode_req_struct l4c_sim_get_ecall_mode_req_struct;
+typedef l5_l4c_get_ecall_mode_cnf_struct l4c_sim_get_ecall_mode_cnf_struct;
+
 #endif