[Feature][Modem]Update MTK MODEM V1.6 baseline version: MOLY.NR15.R3.MD700.IVT.MP1MR3.MP.V1.6
MTK modem version: MT2735_IVT_MOLY.NR15.R3.MD700.IVT.MP1MR3.MP.V1.6.tar.gz
RF modem version: NA
Change-Id: I45a4c2752fa9d1a618beacd5d40737fb39ab64fb
diff --git a/mcu/protocol/interface/l4/l4c2smu_struct.h b/mcu/protocol/interface/l4/l4c2smu_struct.h
new file mode 100644
index 0000000..807e34f
--- /dev/null
+++ b/mcu/protocol/interface/l4/l4c2smu_struct.h
@@ -0,0 +1,1149 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* 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.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*****************************************************************************
+ *
+ * Filename:
+ * ---------
+ * l4c2smu_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ ****************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : l4c2smu_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _L4C2SMU_STRUCT_H
+#define _L4C2SMU_STRUCT_H
+
+#include "ps_public_struct.h"
+#include "ps2sim_struct.h"
+#include "ps2sat_struct.h"
+#include "kal_general_types.h"
+#include "ps_public_enum.h"
+#include "device.h"
+#include "l4c_common_enum.h"
+#include "sim_public_enum.h"
+#include "sim_ps_enum.h"
+#include "smu_def.h"
+#include "smu_common_enums.h"
+#include "smu_tmo_sml.h"
+#include "rmmi_common_enum.h"
+#include "custom_nvram_extra.h"
+#include "custom_nvram_sec.h"
+#include "kal_public_defs.h"
+#include "l3_inc_enums.h"
+#ifdef __MBIM_MS_NETWORK_BLACKLIST__
+#include "l5_l4c_enums.h"
+#include "l5_l4c_struct.h"
+#endif
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ power_on_status_enum poweron_mode;//add for system error with exception handle
+} l4csmu_start_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ l4c2smu_res_enum response;
+ kal_bool cause_present;
+ sim_cmd_result_enum cause;
+ smu_chv1_phonelock_status_enum chv1_phonelock_status;
+ sim_lp_struct lp[2];
+ rmmi_err_id_enum rmmi_error_cause;
+ sim_chv_info_struct chv_info;
+ sim_ecc_struct ecc;
+ kal_uint8 is_valid_rat_mode; //mtk01616_110315
+ kal_uint8 rat_mode; //RAT mode setting value in EF_RAT
+ sim_additional_error_cause_enum additional_error_cause;
+ kal_bool is_sim_disable;
+} l4csmu_start_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ smu_security_type_enum type;
+ sim_security_operation_enum op;
+ kal_uint8 key1[SML_MAX_SUPPORT_KEY_LEN];
+ kal_uint8 key2[SML_MAX_SUPPORT_KEY_LEN];
+ kal_uint8 channel_id;
+} l4csmu_security_req_struct, l4csmu_app_security_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ smu_security_type_enum type;
+ kal_uint32 cphs_retry_count; /* Only for CPHS Locks */
+ l4c2smu_res_enum response;
+ kal_bool cause_present;
+ sim_cmd_result_enum cause;
+ rmmi_err_id_enum rmmi_error_cause;
+ sim_chv_info_struct chv_info;
+ kal_uint8 channel_id;
+} l4csmu_security_cnf_struct, l4csmu_app_security_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ uicc_app_type_enum app_type;
+ kal_uint8 channel_id;
+ kal_uint8 mcc[4];
+ kal_uint8 mnc[4];
+#ifdef __SIM_MULTI_PIN__
+ kal_uint8 pin_status_data[SIM_MAX_PIN_DO_SIZE];
+#endif
+} l4csmu_app_ready_ind_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ sim_event_enum event;
+ kal_uint8 argc;
+ kal_uint8 arg_list[MAX_SIM_EVENT_ARG_LIST_SIZE];
+} l4csmu_event_ind_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 src_id;
+ uicc_app_type_enum app_type;
+} l4csmu_app_start_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ uicc_app_type_enum app_type;
+ kal_uint8 channel_id;
+ kal_uint16 result;
+} l4csmu_app_start_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ sml_cat_enum category; /* sml_cat_enum */
+ sml_op_enum op; /* sml_op_enum */
+ kal_uint8 key[CAT_KEY_MAX_SUPPORT_LEN];
+ kal_uint8 len; /* valid bytes in data[] */
+ kal_uint8 data[10]; /* the data for add command */
+} l4csmu_set_personalization_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ sml_cat_enum category; /* sml_cat_enum */
+ sml_op_enum op; /* sml_op_enum */
+ kal_bool result;
+ sml_state_enum state; /* sml_state_enum */
+ kal_uint32 retry_count;
+ kal_uint8 num_of_sets; /* number of sets in this category */
+ kal_uint8 space_of_sets;/* number of empty sets in this category */
+} l4csmu_set_personalization_cnf_struct;
+
+#ifdef __CARRIER_RESTRICTION__
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ smu_crrst_op_enum op;
+ kal_uint8 key[SML_MAX_SUPPORT_KEY_LEN];
+ kal_uint8 list;
+ smu_crrst_cat_enum category;
+ kal_uint8 len; /* valid bytes in data[] */
+ kal_uint8 data[23]; /* the data for add, remove command */
+ kal_uint8 multi_sim_policy;
+ kal_uint8 allowed_carriers_prioritized;
+} l4csmu_set_carrier_restriction_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ smu_crrst_cat_enum category;
+ smu_crrst_op_enum op;
+ kal_bool result;
+} l4csmu_set_carrier_restriction_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_carrier_restriction_status_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ smu_crrst_state_enum crrst_state;
+ kal_uint8 multi_sim_policy;
+ kal_uint8 allowed_carriers_prioritized;
+ smu_carrier_restriction_list_struct white_list;
+ smu_carrier_restriction_list_struct black_list;
+} l4csmu_carrier_restriction_status_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 algo_type;
+ kal_uint32 max_retry_count;
+ kal_uint8 crrst_hck[NVRAM_SML_S_MAX_SUPPORT_HCK_LEN];
+ kal_uint8 crrst_salt[NVRAM_SML_S_MAX_SUPPORT_SALT_LEN];
+ kal_uint8 crrst_inter_cnt[NVRAM_SML_S_MAX_SUPPORT_INTER_CNT_LEN];
+} l4csmu_set_crrst_secure_data_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+} l4csmu_set_crrst_secure_data_cnf_struct;
+#endif
+
+// TMO SML
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_get_shared_key_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+ kal_uint8 envelope_type;
+ kal_uint32 encrypted_key_len;
+ kal_uint8 encrypted_key[SML_TMO_MAX_ENCRYPTED_KEY_LENGTH];
+} l4csmu_get_shared_key_cnf_struct;
+
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint16 slb_len;
+} l4csmu_update_slb_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+ kal_uint16 rmmi_error_cause;
+} l4csmu_update_slb_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_reset_slb_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+ kal_uint16 rmmi_error_cause;
+} l4csmu_reset_slb_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_get_slb_version_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+ kal_uint8 version[SML_TMO_SIZE_OF_VERSION];
+} l4csmu_get_slb_version_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_get_sim_lock_status_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+ kal_uint8 lock_state;
+ kal_uint32 unlock_time_left;
+ kal_uint8 num;
+ kal_uint8 sim_plmn_gid[SML_TMO_SIZE_OF_MCC_MNC+SML_TMO_SIZE_OF_GID];
+} l4csmu_get_sim_lock_status_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_get_modem_config_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+ kal_uint16 length;
+ kal_uint8 blob[2048];
+} l4csmu_get_modem_config_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_get_api_version_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 api_version[SML_TMO_SIZE_OF_API_VERSION];
+ kal_bool result;
+} l4csmu_get_api_version_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 nw_time_zone;
+ nw_time_zone_time_struct nw_time;
+} l4csmu_update_nw_time_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ sml_event_enum event;
+} l4csmu_sml_event_ind_struct;
+
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ smu_sim_access_cmd_enum cmd;
+ kal_uint16 fileid;
+ kal_uint8 p1;
+ kal_uint8 p2;
+ kal_uint8 p3;
+ kal_uint8 data[255];
+ kal_uint8 pathid[4];
+ kal_uint8 pathid_length;
+ kal_uint8 channel_id;
+} l4csmu_sim_access_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 sw1;
+ kal_uint8 sw2;
+ kal_uint16 length;
+ kal_uint8 res_data[256+1];
+ l4c2smu_res_enum response;
+ kal_bool cause_present;
+ sim_cmd_result_enum cause;
+} l4csmu_sim_access_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ sim_file_index_enum file_idx;
+ l4c_source_id_enum src_id;
+ kal_uint8 idx;
+ smu_plmnsel_op_enum op;
+ kal_uint8 plmn_data[5];
+} l4csmu_plmn_sel_write_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ l4c2smu_res_enum response;
+ kal_bool cause_present;
+ sim_cmd_result_enum cause;
+} l4csmu_plmn_sel_write_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 currency_code[3];
+ kal_uint8 puct_data[18];
+} l4csmu_puct_write_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ l4c2smu_res_enum response;
+ kal_bool cause_present;
+ sim_cmd_result_enum cause;
+} l4csmu_puct_write_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_puct_read_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ l4c2smu_res_enum response;
+ kal_bool cause_present;
+ sim_cmd_result_enum cause;
+ kal_uint8 currency_code[3];
+ kal_uint8 puct_data[18];
+} l4csmu_puct_read_cnf_struct;
+
+
+#if 0
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+#endif
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ sim_dn_enum dn_type;
+ kal_uint8 switch_on;
+} l4csmu_dial_mode_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ l4c2smu_res_enum response;
+ kal_bool cause_present;
+ sim_cmd_result_enum cause;
+} l4csmu_dial_mode_cnf_struct;
+
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 is_spn_valid; // SPN
+ kal_uint8 is_spn_RPLMN_required;
+ kal_uint8 spn[LEN_OF_SPN];
+ kal_uint8 is_opname_valid; // OPN
+ kal_uint8 opname[LEN_OF_OPNAME + 1];
+ kal_uint8 is_sopname_valid; // sOPN
+ kal_uint8 sopname[11];
+ kal_uint8 no_msisdn; // MSISDN
+ l4csmu_addr_struct msisdn[2];
+ kal_uint8 no_info_num; // Information Numbers
+ l4csmu_info_num_struct *info_num;
+ kal_uint8 is_valid_csp;
+ kal_uint8 csp[22]; // Custom Service Profile
+ kal_uint8 is_puct_valid;
+ kal_uint8 ef_puct[5];
+ kal_uint8 is_autolock_enable; /* SML */
+ kal_uint8 autolock_result; /* SML */
+ kal_uint8 autolock_remain; /* SML */
+ /* Acting HPLMN */ /* mtk01488 */
+ kal_bool is_valid_ef_acting_hplmn;
+ kal_uint8 ef_acting_hplmn[3];
+ kal_uint8 digits_of_mnc;
+ kal_bool is_usim;
+ kal_bool is_valid_ef_ehplmn;
+ kal_uint8 num_of_ehplmn;
+ kal_uint8 ef_ehplmn[MAX_EHPLMN_EF_LEN];
+} l4csmu_mmi_info_ind_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_sml_status_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ sml_state_enum state[7];
+ kal_uint32 retry_count[7];
+ kal_uint8 autolock_count[7];
+ kal_uint8 num_of_sets[7];
+ kal_uint8 total_size_of_cat[7];
+ sml_key_state_enum key_state[7];
+ kal_uint8 ef_imsi[8];
+ kal_uint8 is_valid_gid1;
+ kal_uint8 ef_gid1;
+ kal_uint8 is_valid_gid2;
+ kal_uint8 ef_gid2;
+ kal_uint8 digits_of_mnc;
+} l4csmu_sml_status_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_bool cipher_ind; //20050202 Benson add for MMI cipher indication display
+ /* Johnny: cipher_ind is useless now, L4C will use l4csmu_get_cipher_ind_status() to get cipher_ind status from SMU */
+ kal_uint8 is_valid_rat_mode; //To indicare RAT Mode is valid.
+ kal_uint8 rat_mode; //RAT mode setting value to overwrite
+ kal_bool is_uicc_activated;
+} l4csmu_mmrr_ready_ind_struct;
+
+#ifdef __SMS_DEPERSONALIZATION__
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint16 length; //length of peer buf data; unit:byte
+ kal_uint8 access_id;
+} l4csmu_sms_depersonalization_req_struct; //Kinki: JRD require. [MAUI_01255000]
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_bool response; //Kinki: kal_bool
+ kal_bool cause_present; //present only when response is FALSE
+ smu_sms_depersonalization_enum cause;
+ kal_uint16 length; //length of peer buf data; unit:byte
+ kal_uint8 access_id; //SMU piggy-back
+} l4csmu_sms_depersonalization_cnf_struct; //Kinki: JRD require. [MAUI_01255000]
+
+#endif
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 uicc_unlock_code;
+} l4csmu_uicc_unlock_code_ind_struct;
+
+#ifdef __SAT__
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 cmd_detail[5];
+ kal_bool is_icon_available;
+ sat_icon_struct icon_info;
+ kal_uint8 bearer_type;
+} l4csat_open_channel_ind_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 cmd_detail[5];
+ kal_bool res;
+} l4csat_open_channel_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 res; /* sat_terminal_res_enum */
+ kal_uint8 cause; /* sat_additional_info_for_res_enum */
+} l4csmu_sat_open_channel_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 state;
+} l4csmu_sat_notify_mmi_ind_struct;
+
+typedef struct {
+ kal_uint8 context_id;
+ kal_uint8 name_length;
+ kal_uint8 name_dcs;
+ kal_uint8 authentication_type;
+ kal_uint8 name[32];
+ kal_uint8 user_name[16];
+ kal_uint8 password[16];
+ kal_uint8 dns[4];
+ kal_uint8 apn [100];
+ kal_uint8 apn_length;
+ sat_gprs_qos_struct req_qos;
+} gprs_data_account_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ gprs_data_account_struct gprs_data_account;
+} l4csat_set_gprs_data_account_ind_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_bool result;
+ kal_uint8 cause;
+} l4csat_set_gprs_data_account_res_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ sat_csd_bearer_para_struct bearer_para;
+ kal_uint8 size_of_address;
+ kal_uint8 addr[MAX_SIM_ADDR_BCD_LEN];
+ kal_uint8 size_of_subaddr;
+ kal_uint8 subaddr[MAX_SIM_ADDR_BCD_LEN];
+ kal_uint32 duration1;
+ kal_uint32 duration2;
+} l4csat_csm_open_csd_ind_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ sat_csd_bearer_para_struct bearer_para;
+} l4csat_csm_bearer_info_ind_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_bool result;
+ kal_uint16 cause; /* cm_enum_cause */
+} l4csat_csm_open_csd_res_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+} l4csat_cc_call_disc_ind_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_bool result;
+ kal_uint16 cause; /* cm_enum_cause */
+} l4csat_cc_call_disc_res_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_bool result;
+ kal_uint16 cause; /* cm_enum_cause */
+} l4csat_cc_call_disc_ind_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 res;
+} l4csmu_sat_send_data_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 res; /* sat_terminal_res_enum */
+ kal_uint8 cause; /* sat_additional_info_for_res_enum */
+} l4csmu_sat_send_data_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 res;
+} l4csmu_sat_recv_data_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 res; /* sat_terminal_res_enum */
+ kal_uint8 cause; /* sat_additional_info_for_res_enum */
+} l4csmu_sat_recv_data_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 res;
+} l4csmu_sat_close_data_req_struct;
+
+// Nick start
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 nw_acct_id;
+ kal_bool is_addr_valid;
+ kal_uint8 size_of_address;
+ kal_uint8 addr[MAX_SIM_ADDR_BCD_LEN];
+ kal_bool is_subaddr_valid;
+ kal_uint8 size_of_subaddr;
+ kal_uint8 subaddr[MAX_SIM_ADDR_BCD_LEN];
+ kal_bool is_username_valid;
+ kal_uint8 no_username;
+ kal_uint8 username[16];
+ kal_uint8 dcs_of_username;
+ kal_bool is_passwd_valid;
+ kal_uint8 no_passwd;
+ kal_uint8 passwd[16];
+ kal_uint8 dcs_of_passwd;
+ kal_bool is_local_addr_valid;
+ kal_uint8 no_local_addr;
+ kal_uint8 local_addr[16];
+ kal_bool is_dest_addr_valid;
+ kal_uint8 no_dest_addr;
+ kal_uint8 dest_addr[16];
+ sat_csd_bearer_para_struct csd_bearer;
+} l4csmu_sat_set_csd_prof_ind_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 res;
+// sat_csd_bearer_para_struct csd_bearer;
+} l4csmu_sat_set_csd_prof_res_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 nw_acct_id;
+ kal_bool is_apn_valid;
+ kal_uint8 apn_length;
+ kal_uint8 apn[50];
+ kal_bool is_username_valid;
+ kal_uint8 no_username;
+ kal_uint8 username[16];
+ kal_uint8 dcs_of_username;
+ kal_bool is_passwd_valid;
+ kal_uint8 no_passwd;
+ kal_uint8 passwd[16];
+ kal_uint8 dcs_of_passwd;
+ kal_bool is_local_addr_valid;
+ kal_uint8 no_local_addr;
+ kal_uint8 local_addr[16];
+ kal_bool is_dest_addr_valid;
+ kal_uint8 no_dest_addr;
+ kal_uint8 dest_addr[16];
+ sat_gprs_bearer_para_struct gprs_bearer;
+} l4csmu_sat_set_gprs_prof_ind_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 res;
+// sat_gprs_bearer_para_struct gprs_bearer;
+} l4csmu_sat_set_gprs_prof_res_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 bearer_type;
+ sat_gprs_bearer_para_struct gprs_bearer;
+ sat_csd_bearer_para_struct csd_bearer;
+} l4csmu_sat_bearer_para_req_struct ;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 cmd_detail[5];
+ kal_uint8 res;
+ kal_uint8 additional_info;
+} l4csmu_sat_open_channel_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 state;
+} l4csmu_sat_channel_disc_evdl_ind_struct;
+
+#endif // __SAT__
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint16 nonce_len;
+ kal_uint8 nonce[256]; //Random String: 80 byte
+} l4csmu_ut_set_nonce_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 mode;
+ kal_uint8 unlock_code;
+ kal_uint16 sig_len;
+ kal_uint8 sig[512]; //sig(B64): 344 byte + 1 byte('\0')
+} l4csmu_ut_sig_verify_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_sml_get_lock_codes_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 num_of_sets[SML_SUPPORT_CAT_SIZE];
+ kal_uint8 code_cat_n[SML_CFG_CAT_N_SIZE];
+ kal_uint8 code_cat_ns[SML_CFG_CAT_NS_SIZE];
+ kal_uint8 code_cat_sp[SML_CFG_CAT_SP_SIZE];
+ kal_uint8 code_cat_c[SML_CFG_CAT_C_SIZE];
+ kal_uint8 code_cat_sim[SML_CFG_CAT_SIM_SIZE];
+ kal_uint8 code_cat_ns_sp[SML_CFG_CAT_NS_SP_SIZE];
+ kal_uint8 code_cat_sim_c[SML_CFG_CAT_SIM_C_SIZE];
+} l4csmu_sml_get_lock_codes_cnf_struct;
+
+typedef struct {
+ kal_uint8 algo_type;
+ kal_uint8 key[CAT_KEY_MAX_SUPPORT_LEN];
+ kal_uint8 salt[NVRAM_SML_S_MAX_SUPPORT_SALT_LEN];
+ kal_uint8 iter_cnt[NVRAM_SML_S_MAX_SUPPORT_INTER_CNT_LEN];
+} l4csmu_set_key_data_struct;
+
+typedef union
+{
+ kal_uint32 max_retry_count;
+ l4csmu_set_key_data_struct key_data;
+ kal_uint8 key_state;
+} l4csmu_set_custom_data_union;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ sml_cat_enum category;
+ sml_custom_op_enum op;
+ l4csmu_set_custom_data_union data;
+} l4csmu_set_custom_personalization_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+} l4csmu_set_custom_personalization_cnf_struct;
+
+//MSG_ID_L4CSMU_OP129_UPDATE_SIMLOCK_SETTING_REQ
+typedef struct {
+ LOCAL_PARA_HDR
+
+ l4c_source_id_enum src_id;
+ kal_bool is_last_data;
+ kal_uint16 data_offset;
+ kal_uint16 data_len;
+ kal_uint8 lock_setting[1000];
+}l4csmu_op129_update_simlock_setting_req_struct;
+
+//MSG_ID_L4CSMU_OP129_UPDATE_SIMLOCK_SETTING_CNF
+typedef struct {
+ LOCAL_PARA_HDR
+
+ l4c_source_id_enum src_id;
+ kal_bool result;
+ kal_uint16 rmmi_error_cause;
+}l4csmu_op129_update_simlock_setting_cnf_struct;
+
+// MSG_ID_L4CSMU_OP129_GET_SIMLOCK_DATA_REQ
+typedef struct {
+ LOCAL_PARA_HDR
+
+ l4c_source_id_enum src_id;
+ kal_uint8 list_type;
+}l4csmu_op129_get_simlock_data_req_struct;
+
+// MSG_ID_L4CSMU_OP129_GET_SIMLOCK_DATA_CNF
+typedef struct {
+ LOCAL_PARA_HDR
+
+ l4c_source_id_enum src_id;
+ kal_uint8 list_type;
+ kal_uint16 triplet_number[SML_OP129_CAT_MAX];
+ kal_uint8 simlock_data[2048];
+}l4csmu_op129_get_simlock_data_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint16 slb_len;
+} l4csmu_sl_update_blob_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+ kal_uint16 rmmi_error_cause;
+} l4csmu_sl_update_blob_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_sl_get_sim_lock_status_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+ kal_uint8 lock_state;
+} l4csmu_sl_get_sim_lock_status_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 sml_lock_rule;
+ kal_uint16 sml_lock_sub_rule;
+ kal_uint8 sml_device_lock_status;
+ kal_uint8 sml_lock_rule_policy;
+ kal_uint8 sml_state_is_valid_sim;
+} l4csmu_sml_lock_status_update_ind_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 rule;
+ kal_uint16 sub_rule;
+} l4csmu_update_gblob_lock_rule_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+} l4csmu_update_gblob_lock_rule_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 op;
+ kal_uint16 gblob_data_len;
+ kal_uint8 gblob_data[2048];
+} l4csmu_update_gblob_data_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+} l4csmu_update_gblob_data_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 op;
+ kal_uint8 dev_key_len;
+ kal_uint8 dev_key[SML_GBLOB_SIZE_OF_DEV_HCK];
+ kal_uint8 new_lock_state;
+} l4csmu_gblob_dev_lock_verify_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+} l4csmu_gblob_dev_lock_verify_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 dev_algo_type;
+ kal_uint8 dev_hck[SML_GBLOB_SIZE_OF_DEV_HCK];
+ kal_uint32 dev_max_retry_cnt;
+ kal_uint8 dev_salt[SML_GBLOB_SIZE_OF_DEV_SALT];
+ kal_uint8 dev_inter_cnt[SML_GBLOB_SIZE_OF_DEV_INTCNT];
+} l4csmu_update_gblob_dev_lock_algo_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+} l4csmu_update_gblob_dev_lock_algo_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 slot_id;
+ kal_uint8 imei[16];
+} l4csmu_update_gblob_imei_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+} l4csmu_update_gblob_imei_cnf_struct;
+
+#ifdef __CUST_SML_RULE__
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 cust_code;
+ kal_uint8 cust_rule;
+} l4csmu_update_gblob_cust_rule_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+} l4csmu_update_gblob_cust_rule_cnf_struct;
+#endif
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+} l4csmu_get_gblob_dev_lock_status_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_uint8 lock_state;
+ kal_uint8 dev_algo;
+ kal_uint32 max_retry_count;
+ kal_uint32 remain_retry_count;
+} l4csmu_get_gblob_dev_lock_status_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ dsml_simlock_data_struct simlock_data;
+} smu_ut_dynamic_simmelock_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ dsml_result_enum result;
+} smu_ut_dynamic_simmelock_cnf_struct;
+
+/* TMO Movial Solution */
+typedef struct {
+ LOCAL_PARA_HDR
+
+ kal_uint8 src_id;
+ kal_uint8 unlock_req_type;
+ kal_uint8 imsi[TMO_RSU_IMSI_SIZE];
+ kal_uint8 imei[TMO_RSU_IMEI_SIZE];
+} l4csmu_tmo_rsu_create_unlock_msg_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ kal_uint8 src_id;
+ kal_uint16 raw_len;
+ kal_uint8 imei[TMO_RSU_IMEI_SIZE];
+ kal_uint8 raw_msg[TMO_MAX_MSG_LEN];
+} l4csmu_tmo_rsu_process_msg_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ kal_uint8 src_id;
+} l4csmu_tmo_rsu_get_sml_status_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ kal_uint8 src_id;
+ kal_uint8 imei[TMO_RSU_IMEI_SIZE];
+} l4csmu_tmo_rsu_get_reg_msg_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ kal_uint8 src_id;
+} l4csmu_tmo_rsu_create_unlock_msg_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ kal_uint8 src_id;
+} l4csmu_tmo_rsu_process_msg_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ kal_uint8 src_id;
+ kal_uint8 lock_response[TMO_RSU_LOCK_STATE_RESPONSE_BLOB_SIZE];
+} l4csmu_tmo_rsu_get_sml_status_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ kal_uint8 src_id;
+} l4csmu_tmo_rsu_get_reg_msg_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ kal_uint8 src_id;
+ kal_uint8 rsu_version_str[8];
+} l4csmu_tmo_rsu_get_adapter_config_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ kal_uint8 src_id;
+ kal_uint16 blob_length;
+ kal_uint8 adapter_config[256];
+} l4csmu_tmo_rsu_get_adapter_config_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ l4c_source_id_enum src_id;
+ kal_uint16 data_len;
+ kal_uint8 data[SML_TMO_MOVIAL_MAX_BLOB_SIZE];
+} l4csmu_tmo_rsu_update_blob_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+
+ l4c_source_id_enum src_id;
+ kal_bool result;
+ kal_uint16 rmmi_error_cause;
+} l4csmu_tmo_rsu_update_blob_cnf_struct;
+
+#ifdef __MBIM_MS_NETWORK_BLACKLIST__
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_uint8 num_of_black_list;
+ kal_uint8 black_list[MAX_NW_BLACK_LIST*3];
+} l4csmu_set_nw_black_list_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ nw_black_list_operator_result_enum result;
+ kal_bool black_list_lock_state;
+} l4csmu_set_nw_black_list_cnf_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ kal_bool black_list_lock_state;
+ kal_bool card_error;
+ kal_bool is_init;
+ kal_uint8 num_of_black_list;
+ kal_uint8 black_list[MAX_NW_BLACK_LIST*3];
+} l4csmu_nw_black_list_state_ind_struct;
+#endif
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ sml_cat_enum category;
+ kal_uint8 salt_length;
+ kal_uint16 hck_length;
+ kal_uint32 iter_count;
+ kal_uint8 ctrl_key_str[2*SML_MAX_SUPPORT_KEY_LEN + 1];
+} l4csmu_generate_hck_req_struct;
+
+typedef struct {
+ LOCAL_PARA_HDR
+ l4c_source_id_enum src_id;
+ kal_bool result;
+} l4csmu_generate_hck_cnf_struct;
+
+#endif
+
+
+