[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/protocol/interface/ims/ims_stack_struct.h b/mcu/protocol/interface/ims/ims_stack_struct.h
index c533b2c..dc284e9 100755
--- a/mcu/protocol/interface/ims/ims_stack_struct.h
+++ b/mcu/protocol/interface/ims/ims_stack_struct.h
@@ -787,6 +787,8 @@
     char                            stop_err_resp_retx_when_not_needed;
 
     unsigned int                    ignore_missing_sip_headers;
+
+    char                            ignore_remote_ip_filter;
 } VoLTE_Stack_Ua_Info_t;
 
 typedef struct _VoLTE_Stack_Server_Info {
@@ -915,6 +917,29 @@
     VoLTE_Event_List_one_call_t         call[VOLTE_MAX_CALL_SESSION];
 } VoLTE_Event_List_Current_Call_To_Stack_t;
 
+/* If you need to modify VoLTE_Event_Reg_State_Ap_t IF please check/sync issue with AP side RCS owner. This data structure
+ * needs to be similar in AP side as well.
+ */
+
+
+#define VOLTE_MAX_ADDRESS_AP_LENGTH                        64
+#define VOLTE_MAX_REG_UID_AP_LENGTH                        256
+#define VOLTE_MAX_DOMAIN_NAME_AP_LENGTH                    256
+#define VOLTE_MAX_ADDRESS_LIST_AP_LENGTH                   256
+#define VOLTE_MAX_IMEI_AP_LENGTH                           20
+#define VOLTE_MAX_GRUU_AP_LENGTH                           128
+#define VOLTE_MAX_SERVICE_ROUTE_AP_LENGTH                  256
+#define VOLTE_MAX_TIMESTAMP_AP_LENGTH                      256
+#define VOLTE_MAX_USER_AGENT_AP_LENGTH                     256
+#define VOLTE_MAX_URI_AP_LENGTH                            128
+#define VOLTE_MAX_ASSOCIATED_URI_AP_LENGTH                 (VOLTE_MAX_URI_AP_LENGTH << 2)
+#define VOLTE_MAX_P_ACCESS_NETWORK_INFO_AP_LENGTH          256
+#define VOLTE_MAX_DIGIT_PIDENTIFIER_AP_LENGTH              256
+#define VOLTE_MAX_DIGIT_PPA_AP_LENGTH                      4096
+#define VOLTE_MAX_TIME_STAMP_AP_LENGTH                     32
+#define VOLTE_MAX_SECURIT_VERIFY_AP_LENGTH                 768 //6 algo combo
+
+
 typedef struct _VoLTE_Event_Reg_State_Ap_ {
     kal_int32                       id;                                                     // account id
     kal_int32                       state;                                                  // refer to ::VoLTE_Event_Reg_State_e
@@ -923,36 +948,36 @@
 
     kal_uint32                      conn_info;                                              // connection information for the others UA to create the connection
     /* account information */
-    kal_char                        local_address[VOLTE_MAX_ADDRESS_LENGTH];                // local ip address
+    kal_char                        local_address[VOLTE_MAX_ADDRESS_AP_LENGTH];                // local ip address
     kal_int32                       local_port;                                             // local port number
     kal_int32                       protocol_type;                                          // refer to ::VoLTE_Stack_Protocol_Type_e
     kal_int32                       protocol_version;                                       // refer to ::VoLTE_Stack_Protocol_Version_e
-    kal_char                        public_uid[VOLTE_MAX_REG_UID_LENGTH];                   // public user identity
-    kal_char                        private_uid[VOLTE_MAX_REG_UID_LENGTH];                  // private user identity
-    kal_char                        home_uri[VOLTE_MAX_DOMAIN_NAME_LENGTH];                 // domain name of the home network
-    kal_char                        pcscf_address[VOLTE_MAX_ADDRESS_LIST_LENGTH];           // current used PCSCF ip address
+    kal_char                        public_uid[VOLTE_MAX_REG_UID_AP_LENGTH];                // public user identity
+    kal_char                        private_uid[VOLTE_MAX_REG_UID_AP_LENGTH];               // private user identity
+    kal_char                        home_uri[VOLTE_MAX_DOMAIN_NAME_AP_LENGTH];                 // domain name of the home network
+    kal_char                        pcscf_address[VOLTE_MAX_ADDRESS_LIST_AP_LENGTH];           // current used PCSCF ip address
     kal_int32                       pcscf_port;                                             // current used PCSCF port number
-    kal_char                        imei[VOLTE_MAX_IMEI_LENGTH];                            // IMEI
-    kal_char                        associated_uri[VOLTE_MAX_ASSOCIATED_URI];               // list of the associated URI
-    kal_char                        pub_gruu[VOLTE_MAX_GRUU_LENGTH];                        // public gruu
-    kal_char                        temp_gruu[VOLTE_MAX_GRUU_LENGTH];                       // temp gruu
-    kal_char                        service_route[VOLTE_MAX_SERVICE_ROUTE_LENGTH];          // service route
-    kal_char                        path[VOLTE_MAX_URI_LENGTH];                             // path
+    kal_char                        imei[VOLTE_MAX_IMEI_AP_LENGTH];                            // IMEI
+    kal_char                        associated_uri[VOLTE_MAX_ASSOCIATED_URI_AP_LENGTH];     // list of the associated URI
+    kal_char                        pub_gruu[VOLTE_MAX_GRUU_AP_LENGTH];                        // public gruu
+    kal_char                        temp_gruu[VOLTE_MAX_GRUU_AP_LENGTH];                       // temp gruu
+    kal_char                        service_route[VOLTE_MAX_SERVICE_ROUTE_AP_LENGTH];       // service route for AP side
+    kal_char                        path[VOLTE_MAX_URI_AP_LENGTH];                             // path
     kal_int32                       target_port_s;                                          // target_port_s
     kal_int32                       net_type;                                               // refer to ::VoLTE_Event_Network_Type_e
     kal_int32                       net_type_3gpp;                                          // refer to ::VoLTE_Event_Network_Type_e
     kal_int32                       emergency_type;                                         // refer to ::VoLTE_Event_Emergency_Type_e
     kal_int32                       ems_mode;                                               // refer to ::VoLTE_Event_Ems_Mode_e
     kal_int32                       retry_after;                                            // notify time delay for IMC retrying initial registration
-    kal_char                        reg_timestamp[VOLTE_MAX_TIMESTAMP_LENGTH];              // TMO P-Last-Access-Network-Info "REGISTRATION TIMESTAMP"
-    kal_char                        security_verify[VOLTE_MAX_SECURIT_VERIFY_LENGTH];       // security verify header in All the subsequent SIP requests
-    kal_char                        user_agent[VOLTE_MAX_USER_AGENT_LENGTH];                // user-agent header for RCS usage
+    kal_char                        reg_timestamp[VOLTE_MAX_TIMESTAMP_AP_LENGTH];              // TMO P-Last-Access-Network-Info "REGISTRATION TIMESTAMP"
+    kal_char                        security_verify[VOLTE_MAX_SECURIT_VERIFY_AP_LENGTH];       // security verify header in All the subsequent SIP requests
+    kal_char                        user_agent[VOLTE_MAX_USER_AGENT_AP_LENGTH];                // user-agent header for RCS usage
     kal_int32                       reg_uri_type;                                           // todo: define enum for imsi and msisdn uri
-    kal_char                        msisdn_uri[VOLTE_MAX_REG_UID_LENGTH];
+    kal_char                        msisdn_uri[VOLTE_MAX_REG_UID_AP_LENGTH];
 
     /* em related variables */
-    kal_uint8                       em_reg_timestamp[VOLTE_MAX_TIME_STAMP_LENGTH];          // last registered timestamp in milliseconds
-    kal_char                        instance_id[VOLTE_MAX_URI_LENGTH];                      // instance id
+    kal_uint8                       em_reg_timestamp[VOLTE_MAX_TIME_STAMP_AP_LENGTH];          // last registered timestamp in milliseconds
+    kal_char                        instance_id[VOLTE_MAX_URI_AP_LENGTH];                      // instance id
 
     kal_char                        pcscf_usage;                                            // refer to VoLTE_PCSCF_Usage_e
     kal_char                        release_pdn;
@@ -967,16 +992,16 @@
 
     kal_int32                       reg_service;                                            // refer to ::VoLTE_Event_reg_service_e
     kal_int32                       via_rport;                                              // Via rport
-    kal_char                        via_received[VOLTE_MAX_ADDRESS_LENGTH];                 // Via received parameter
+    kal_char                        via_received[VOLTE_MAX_ADDRESS_AP_LENGTH];                 // Via received parameter
 
     kal_char                        emergency_reg_got_error;
     kal_char                        sms_cap;
     kal_char                        subscribe_dialog_to_server;                             // subscription to the conference event package
     kal_char                        digit_number_of_vline;
 
-    kal_char                        pani[VOLTE_MAX_P_ACCESS_NETWORK_INFO_LENGTH];           // P-Acess-Network-Info header for RCS usage
-    kal_char                        digit_pidentifier[VOLTE_MAX_DIGIT_PIDENTIFIER_LENGTH];  // 3.6.8.1 Also include following: (Mandatory) ID: GID-MTRREQ-302326
-    kal_char                        digit_ppa_header_string[VOLTE_MAX_DIGIT_PPA_LENGTH];    // PPA for all the lines
+    kal_char                        pani[VOLTE_MAX_P_ACCESS_NETWORK_INFO_AP_LENGTH];           // P-Acess-Network-Info header for RCS usage
+    kal_char                        digit_pidentifier[VOLTE_MAX_DIGIT_PIDENTIFIER_AP_LENGTH];  // 3.6.8.1 Also include following: (Mandatory) ID: GID-MTRREQ-302326
+    kal_char                        digit_ppa_header_string[VOLTE_MAX_DIGIT_PPA_AP_LENGTH];    // PPA for all the lines
 
     kal_int32                       reg_event;                                              // refer to ::VoLTE_Event_reg_event_e
 } VoLTE_Event_Reg_State_Ap_t;
@@ -1213,6 +1238,19 @@
     kal_uint64                   ua_id;  // reg client information
 } VoLTE_Event_ACB_Skip_Info_t;
 
+typedef struct {
+    kal_uint16                   error_code;
+    kal_uint8                    max_retry_count;
+    kal_uint8                    had_retry_count;
+    kal_uint8                    rfc5626_count;
+} VoLTE_Event_Reg_Custom_Retry_t;
+
+typedef struct {
+    VoLTE_Event_Reg_Custom_Retry_t custom_retry[VOLTE_MAX_ERROR_RESPONSE_LIST];
+    kal_uint8                      others_err_rsp_retry_count;
+    kal_uint8                      rfc5626_count;
+} VoLTE_Event_Reg_Err_Rsp_List_t;
+
 /**
  *  @brief inter-task request struct declaraction
  */
@@ -1277,6 +1315,7 @@
     char                icd_decrypt_dump;
     char                stop_err_resp_retx_when_not_needed;
     unsigned int        ignore_missing_sip_headers;
+    char                ignore_remote_ip_filter;
 } siptx_req_create_conn_struct;
 
 /**