blob: 5fc5bfd0effec9717b4aa5b22659cdcc14bc4f6d [file] [log] [blame]
/*****************************************************************************
* 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) 2012
*
* 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).
*
*****************************************************************************/
#ifndef _D2RM_DDM_STRUCT_H
#define _D2RM_DDM_STRUCT_H
#include "kal_general_types.h"
#include "kal_public_defs.h"
#include "atcmd_struct.h"
#include "atcmd_enum.h"
#include "ps_public_enum.h"
#include "ddm_common_struct.h"
#include "d2pm_ddm_struct.h"
#include "d2pm_d2rm_struct.h"
// Implementation
/*******************************************************************************
* D2RM to DDM REQ *
*******************************************************************************/
typedef ddm_ip_info_struct d2rm_ddm_ip_info_struct;
typedef ddm_net_info_struct d2rm_ddm_net_info_struct;
typedef ddm_retry_info_struct d2rm_ddm_retry_info_struct;
typedef ddm_ims_info_struct d2rm_ddm_ims_info_struct;
typedef enum
{
D2RM_DDM_DEACT_MODE_NORMAL = 0x0,
D2RM_DDM_DEACT_MODE_GRT = 0x1,
}d2rm_ddm_deact_mode_enum;
typedef enum
{
D2RM_DDM_PCO_FF03H_VALUE_0 = 0x0,
D2RM_DDM_PCO_FF03H_VALUE_1 = 0x1,
D2RM_DDM_PCO_FF03H_VALUE_MAX = 0x7FFFFFFF,
}d2rm_ddm_pco_ff03h_enum;
typedef struct
{
d2rm_ddm_deact_mode_enum mode;
}d2rm_ddm_deact_data_call_req_prv_struct;
// MSG_ID_D2RM_DDM_ACT_DATA_CALL_REQ
typedef struct
{
ddm_pdp_type_enum pdp_type;
}d2rm_ddm_param_roam_struct;
typedef struct
{
ddm_pdp_type_enum pdp_type;
}d2rm_ddm_param_5g_roam_struct;
typedef struct
{
kal_bool qos_param_present;
kal_uint32 qos_reliability;
kal_uint32 qos_precedence_class;
kal_uint32 qos_delay_class;
kal_uint32 qos_peak_throughput_class;
kal_uint32 qos_mean_throughput_class;
}d2rm_ddm_param_qos_struct;
typedef struct
{
LOCAL_PARA_HDR
/* common part */
kal_int32 cid;
kal_char apn[APN_STRING_LEN];
kal_int32 apn_idx;
kal_uint32 src_id;
atcmd_request_type_enum req_type;
atcmd_rat_enum cell_rat;
apn_type_info_struct apn_type_info; // ddm_common_struct.h
cid_info_struct cid_info;
/* conditional part */
struct
{
struct
{
pdp_addr_type_enum pdx_type; // by default NULL_PDP_ADDR_TYPE
}roam;
struct
{
kal_char dnn[APN_STRING_LEN]; // by default a NULL string
pdp_addr_type_enum pdx_type; // by default NULL_PDP_ADDR_TYPE in ps_public_enum_public.h
atcmd_SSC_mode_enum ssc_mode; // by default ATCMD_SSC_MODE_MAX
at_s_nssai_struct s_nssai; // by default is_sst_present, is_sd_present, is_mapped_configured_sst_present, is_mapped_configured_sd_present) = (KAL_FALSE, KAL_FALSE, KAL_FALSE, KAL_FALSE)
atcmd_Access_type_enum access_type; // by default ATCMD_ACCESS_TYPE_MAX
}vg;
struct
{
pdp_addr_type_enum pdx_type; // by default NULL_PDP_ADDR_TYPE
}vg_roam;
/* operator part */
struct
{
kal_uint32 wapn; // by default 0 to disable VzW
kal_uint32 apncl;
kal_uint32 apned;
kal_uint32 max_conn;
kal_uint32 max_conn_t;
kal_uint32 wait_time;
}vzw;
struct
{
kal_uint32 inact_time; // by default 0
}sprint;
}cond;
/* ---- 234G HPLMN ---- */
kal_bool fb_ipv4_first;
kal_uint32 auth_type;
pdp_addr_type_enum pdp_type;
kal_uint8 username[USERID_STRING_LEN];
kal_uint8 passwd[PASSWORD_STRING_LEN];
// kal_bool carrier_enabled; // renamed to cond.vzw.apned
// kal_uint32 max_conn;
// kal_uint32 max_conn_time;
// kal_uint32 wait_time;
// kal_uint32 inact_time;
kal_bool pcscf_restore;
/* ++++ 234G HPLMN ++++ */
kal_bool is_dangling;
kal_bool is_acttest;
d2rm_ddm_param_qos_struct param_qos;
d2rm_ddm_pco_ff03h_enum pco_ff03h;
//d2rm_ddm_param_roam_struct param_roam;
//d2rm_ddm_param_5g_roam_struct param_5g_roam;
d2_legacy_at_struct param_legacy_at;
}d2rm_ddm_act_data_call_req_struct;
// MSG_ID_D2RM_DDM_DEACT_DATA_CALL_REQ
typedef struct
{
LOCAL_PARA_HDR
/* common part */
kal_uint32 cid;
/* private part */
d2pm_ddm_deact_data_call_req_prv_struct d2pm_ddm_prv;
d2am_ddm_deact_data_call_req_prv_struct d2am_ddm_prv;
d2rm_ddm_deact_data_call_req_prv_struct d2rm_ddm_prv;
}d2rm_ddm_deact_data_call_req_struct;
// MSG_ID_D2RM_DDM_ABORT_DATA_CALL_REQ
typedef d2rm_ddm_deact_data_call_req_struct d2rm_ddm_abort_data_call_req_struct;
// MSG_ID_D2RM_DDM_GET_DATA_CALL_LIST_REQ
typedef struct
{
LOCAL_PARA_HDR
at_cgact_req_struct cmd;
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_data_call_list_req_struct;
// MSG_ID_D2RM_DDM_GET_DYNAMIC_PARAM_REQ
typedef struct
{
LOCAL_PARA_HDR
at_cgcontrdp_req_struct cmd;
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_dynamic_param_req_struct;
// MSG_ID_D2RM_DDM_GET_PDP_ADDRESS_REQ
typedef struct
{
LOCAL_PARA_HDR
at_cgpaddr_req_struct cmd;
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_pdp_address_req_struct;
//MSG_ID_D2RM_DDM_GET_SECONDARY_DYNAMIC_PARAM_REQ
typedef struct
{
LOCAL_PARA_HDR
at_cgscontrdp_req_struct cmd;
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_secondary_dynamic_param_req_struct;
// MSG_ID_D2RM_DDM_GET_QOS_REQ
typedef struct
{
LOCAL_PARA_HDR
at_cgeqosrdp_req_struct cmd;
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_qos_req_struct;
// MSG_ID_D2RM_DDM_GET_5GQOS_REQ
typedef struct
{
LOCAL_PARA_HDR
at_c5gqosrdp_req_struct cmd;
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_5gqos_req_struct;
// MSG_ID_D2RM_DDM_GET_TFT_REQ
typedef struct
{
LOCAL_PARA_HDR
at_cgtftrdp_req_struct cmd;
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_tft_req_struct;
// MSG_ID_D2RM_DDM_SET_PACKET_FILTER_REQ
typedef struct
{
LOCAL_PARA_HDR
at_eglnkpf_req_struct cmd;
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_set_packet_filter_req_struct;
//MSG_ID_D2RM_DDM_GET_PACKET_FILTER_REQ
/*atp_cmd_mode_enum: ATP_READ_MODE, cid_parse_result: AT_TOKEN_PARSE_RESULT_NOT_FOUND*/
typedef d2rm_ddm_set_packet_filter_req_struct d2rm_ddm_get_packet_filter_req_struct;
// MSG_ID_D2RM_DDM_MODIFY_DATA_CALL_REQ
typedef struct
{
LOCAL_PARA_HDR
at_cgcmod_req_struct cmd;
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_modify_data_call_req_struct;
// MSG_ID_D2RM_DDM_GET_RETRYTMR_REQ
typedef struct
{
LOCAL_PARA_HDR
/* common part */
kal_char apn[APN_STRING_LEN];
/* private part */
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_retrytmr_req_struct;
// MSG_ID_D2RM_DDM_SET_RETRYTMR_REQ
typedef struct
{
LOCAL_PARA_HDR
/* common part */
kal_char apn[APN_STRING_LEN];
kal_uint8 cmd;
/* private part */
d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
}d2rm_ddm_set_retrytmr_req_struct;
// MSG_ID_D2RM_DDM_GET_EPDG_INFO_REQ
typedef struct
{
LOCAL_PARA_HDR
kal_uint32 cid;
} d2rm_ddm_get_epdg_info_req_struct;
// MSG_ID_D2RM_DDM_VZWAPNE_REQ
typedef struct
{
LOCAL_PARA_HDR
/* common part */
kal_uint32 txid, num_of_apn;
struct
{
kal_char apn[APN_STRING_LEN];
kal_int32 apn_idx;
}apn_list[DDM_MAX_NUM_OF_APN];
/* private part */
// N/A
}d2rm_ddm_vzwapne_req_struct;
// MSG_ID_D2RM_DDM_VZWAPNETMR_REQ
typedef struct
{
LOCAL_PARA_HDR
/* common part */
kal_uint32 txid, num_of_apn;
struct
{
kal_char apn[APN_STRING_LEN];
kal_int32 apn_idx;
}apn_list[DDM_MAX_NUM_OF_APN];
/* private part */
// N/A
}d2rm_ddm_vzwapnetmr_req_struct;
/*******************************************************************************
* DDM TO D2RM CNF *
*******************************************************************************/
// MSG_ID_D2RM_DDM_ACT_DATA_CALL_CNF
typedef struct
{
kal_bool errcause_present;
kal_int32 errcause;
kal_bool retrytime_present;
kal_int32 retrytime;
}d2rm_ddm_act_data_call_cnf_prv_struct;
typedef struct
{
LOCAL_PARA_HDR
/*common part*/
kal_uint32 cid;
kal_uint8 apn[APN_STRING_LEN];
kal_uint8 req_apn[APN_STRING_LEN];
#if 0
/* under construction !*/
/* under construction !*/
#endif
d2rm_ddm_ip_info_struct ip_info; // for IP address
d2rm_ddm_net_info_struct net_info; // for Internet information
// ddm_res_enum res_code;
kal_uint32 res_code;
// result info
res_info_ps_cause_t ps_cause;
res_info_nw_cause_t nw_cause;
/* private part */
d2rm_ddm_act_data_call_cnf_prv_struct d2rm_ddm_prv;
d2pm_ddm_act_data_call_cnf_prv_struct d2pm_ddm_prv;
d2rm_ddm_retry_info_struct retry_info;
d2rm_ddm_pco_ff03h_enum pco_ff03h;
}d2rm_ddm_act_data_call_cnf_struct;
// MSG_ID_D2RM_DDM_DEACT_DATA_CALL_CNF
typedef struct
{
LOCAL_PARA_HDR
/* common part */
kal_uint32 cid;
ddm_res_enum res_code;
/* private part */
d2pm_ddm_deact_data_call_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_deact_data_call_cnf_struct;
// MSG_ID_D2RM_DDM_ABORT_DATA_CALL_CNF
typedef d2rm_ddm_deact_data_call_cnf_struct d2rm_ddm_abort_data_call_cnf_struct;
// MSG_ID_D2RM_DDM_GET_DATA_CALL_LIST_CNF
typedef struct
{
LOCAL_PARA_HDR
ddm_res_enum res_code;
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_data_call_list_cnf_struct;
// MSG_ID_D2RM_DDM_GET_DYNAMIC_PARAM_CNF
typedef struct
{
LOCAL_PARA_HDR
ddm_res_enum res_code;
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_dynamic_param_cnf_struct;
// MSG_ID_D2RM_DDM_GET_PDP_ADDRESS_CNF
typedef struct
{
LOCAL_PARA_HDR
ddm_res_enum res_code;
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_pdp_address_cnf_struct;
//MSG_ID_D2RM_DDM_GET_SECONDARY_DYNAMIC_PARAM_CNF
typedef struct
{
LOCAL_PARA_HDR
ddm_res_enum res_code;
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_secondary_dynamic_param_cnf_struct;
// MSG_ID_D2RM_DDM_GET_QOS_CNF
typedef struct
{
LOCAL_PARA_HDR
ddm_res_enum res_code;
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_qos_cnf_struct;
// MSG_ID_D2RM_DDM_GET_TFT_CNF
typedef struct
{
LOCAL_PARA_HDR
ddm_res_enum res_code;
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_tft_cnf_struct;
//MSG_ID_D2RM_DDM_SET_PACKET_FILTER_CNF
typedef struct
{
LOCAL_PARA_HDR
ddm_res_enum res_code;
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_set_packet_filter_cnf_struct;
//MSG_ID_D2RM_DDM_GET_PACKET_FILTER_CNF
typedef struct
{
LOCAL_PARA_HDR
ddm_res_enum res_code;
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_packet_filter_cnf_struct;
//MSG_ID_D2RM_DDM_MODIFY_DATA_CALL_CNF
typedef struct
{
LOCAL_PARA_HDR
ddm_res_enum res_code;
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_modify_data_call_cnf_struct;
// MSG_ID_D2RM_DDM_GET_RETRYTMR_CNF
typedef struct
{
LOCAL_PARA_HDR
/* common part */
kal_char apn[APN_STRING_LEN];
d2rm_ddm_retry_info_struct retry_info;
/* private part */
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_retrytmr_cnf_struct;
// MSG_ID_D2RM_DDM_SET_RETRYTMR_CNF
typedef struct
{
LOCAL_PARA_HDR
/* common part */
kal_char apn[APN_STRING_LEN];
kal_bool is_succ;
/* private part */
d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
}d2rm_ddm_set_retrytmr_cnf_struct;
// MSG_ID_D2RM_DDM_GET_EPDG_INFO_CNF
typedef struct
{
LOCAL_PARA_HDR
kal_int32 cid;
kal_bool is_success;
}d2rm_ddm_get_epdg_info_cnf_struct;
/*******************************************************************************
* DDM TO D2RM IND *
*******************************************************************************/
// MSG_ID_D2RM_DDM_ACT_DATA_CALL_IND
typedef d2rm_ddm_act_data_call_cnf_prv_struct d2rm_ddm_act_data_call_ind_prv_struct;
typedef struct
{
LOCAL_PARA_HDR
/*common part*/
kal_uint32 cid;
kal_uint8 apn[APN_STRING_LEN];
kal_uint8 req_apn[APN_STRING_LEN];
#if 0
/* under construction !*/
/* under construction !*/
#endif
d2rm_ddm_ip_info_struct ip_info;
d2rm_ddm_net_info_struct net_info;
ddm_res_enum res_code;
res_info_ps_cause_t ps_cause;
res_info_nw_cause_t nw_cause;
/* private part */
d2rm_ddm_act_data_call_ind_prv_struct d2rm_ddm_prv;
d2pm_ddm_act_data_call_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_act_data_call_ind_struct;
typedef struct
{
LOCAL_PARA_HDR
/* common part */
kal_bool apn_present;
kal_uint8 apn[APN_STRING_LEN];
kal_bool req_apn_present;
kal_uint8 req_apn[APN_STRING_LEN];
#if 0
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
#endif
kal_bool ip_info_present;
d2rm_ddm_ip_info_struct ip_info;
kal_bool net_info_present;
d2rm_ddm_net_info_struct net_info;
at_cgev_ind_struct cgev_cmd;
kal_uint32 cid;
ps_cause_enum deact_cause;
d2pm_ddm_res_enum res;
kal_uint32 pdx_attr;
/*private part */
d2pm_ddm_urc_cgev_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_urc_cgev_ind_struct;
// MSG_ID_D2RM_DDM_GET_DATA_CALL_LIST_IND
typedef struct
{
LOCAL_PARA_HDR
at_cgact_ind_struct cmd;
d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_data_call_list_ind_struct;
// MSG_ID_D2RM_DDM_GET_DYNAMIC_PARAM_IND
typedef struct
{
LOCAL_PARA_HDR
kal_uint32 cid;
d2pm_ddm_get_dynamic_param_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_dynamic_param_ind_struct;
// MSG_ID_D2RM_DDM_GET_PDP_ADDRESS_IND
typedef struct
{
LOCAL_PARA_HDR
at_cgpaddr_ind_struct cmd;
d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_pdp_address_ind_struct;
//MSG_ID_D2RM_DDM_GET_SECONDARY_DYNAMIC_PARAM_IND
typedef struct
{
LOCAL_PARA_HDR
at_cgscontrdp_ind_struct cmd;
d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_secondary_dynamic_param_ind_struct;
// MSG_ID_D2RM_DDM_GET_QOS_IND
typedef struct
{
LOCAL_PARA_HDR
at_cgeqosrdp_ind_struct cmd;
d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_qos_ind_struct;
// MSG_ID_D2RM_DDM_GET_5GQOS_IND
typedef struct
{
LOCAL_PARA_HDR
at_c5gqosrdp_ind_struct cmd;
d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_5gqos_ind_struct;
// MSG_ID_D2RM_DDM_GET_TFT_IND
typedef struct
{
LOCAL_PARA_HDR
at_cgtftrdp_ind_struct cmd;
d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_tft_ind_struct;
//MSG_ID_D2RM_DDM_GET_PACKET_FILTER_IND
typedef struct
{
LOCAL_PARA_HDR
at_eglnkpf_ind_struct cmd;
d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_get_packet_filter_ind_struct;
// MSG_ID_D2RM_DDM_URC_EGEV_IND
typedef struct
{
LOCAL_PARA_HDR
kal_uint32 cid;
kal_uint8 apn[APN_STRING_LEN];
d2rm_ddm_ip_info_struct ip_info;
d2rm_ddm_net_info_struct net_info;
d2rm_ddm_ims_info_struct ims_info;
/* private part */
d2pm_ddm_mod_data_call_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_mod_data_call_ind_struct;
// MSG_ID_D2RM_DDM_RST_RETRYTMR_IND
typedef struct{
LOCAL_PARA_HDR
/* common part */
kal_bool apn_present;
kal_char apn[APN_STRING_LEN];
kal_uint32 cause; //TBD: if needed
/* private part */
d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
}d2rm_ddm_rst_retrytmr_ind_struct;
// MSG_ID_D2RM_DDM_GET_EPDG_INFO_IND
typedef struct
{
LOCAL_PARA_HDR
kal_int32 cid;
d2rm_ddm_ip_info_struct ip_info;
}d2rm_ddm_get_epdg_info_ind_struct;
/*******************************************************************************
* D2RM TO DDM RSP *
*******************************************************************************/
typedef struct {
LOCAL_PARA_HDR
kal_uint8 rat_src;
kal_uint8 rat_dst;
kal_uint32 context_id;
kal_uint32 network_interface_id;
char cmd[128];
} d2rm_db_test_req_struct;
typedef struct d2rm_db_test_cnf_struct{
LOCAL_PARA_HDR
kal_bool is_successful;
ps_cause_enum error_result;
kal_uint8 ps_id;
kal_uint32 action;
kal_uint32 rat;
kal_uint32 cid;
kal_uint32 network_interface_id;
void *user_data;
} d2rm_db_test_cnf_struct;
//MSG_ID_D2RM_DB_DUMP_IND
typedef enum {
RMDB_STATE_UNBIND = 0,
RMDB_STATE_UNBINDING = 1,
RMDB_STATE_BIND = 2,
RMDB_STATE_BINDING = 3,
} rmdb_state_e;
typedef enum {
RMDB_RAT_INVALID = ERR,
RMDB_RAT_CELLULAR = CELL,
RMDB_RAT_WIFI = WLAN,
RMDB_RAT_DATA_1 = DATA_1,
RMDB_RAT_DATA_2 = DATA_2,
RMDB_RAT_DATA_3 = DATA_3,
RMDB_RAT_DATA_4 = DATA_4
} rmdb_rat_e;
/* action */
typedef enum {
RMDB_ACTION_NONE = 0,
RMDB_ACTION_NOTIFY_ONLY,
RMDB_ACTION_BIND,
RMDB_ACTION_UNBIND,
RMDB_ACTION_REBIND,
RMDB_ACTION_REBIND_BIND,
RMDB_ACTION_REBIND_UNBIND,
} rmdb_action_e;
typedef struct {
rmdb_action_e action;
rmdb_rat_e rat_src;
rmdb_rat_e rat_dst;
kal_uint32 cid;
kal_uint32 network_interface_id;
} rmdb_action_info_t;
typedef struct {
kal_uint32 cid;
rmdb_state_e state;
rmdb_rat_e rat;
kal_uint32 network_interface_id;
} rmdb_cid_info_t;
#define D2RM_DB_MAX_ACTION_INFO_NUM (16)
#define D2RM_DB_MAX_CID_INFO_NUM (32)
typedef struct {
LOCAL_PARA_HDR
char event[32];
kal_uint32 act_todo_num;
rmdb_action_info_t act_todo[D2RM_DB_MAX_ACTION_INFO_NUM];
kal_uint32 act_going_num;
rmdb_action_info_t act_going[D2RM_DB_MAX_ACTION_INFO_NUM];
kal_uint32 cid_num;
rmdb_cid_info_t cid[D2RM_DB_MAX_CID_INFO_NUM];
} d2rm_db_dump_all_ind_struct;
typedef struct {
LOCAL_PARA_HDR
char event[32];
rmdb_action_info_t act_info;
rmdb_cid_info_t cid_info;
} d2rm_db_dump_info_ind_struct;
typedef struct {
LOCAL_PARA_HDR
#if 0
/* under construction !*/
/* under construction !*/
/* under construction !*/
#else
at_cgdata_req_struct cmd;
network_interface_id_info_struct selected_network_interface_id_info;
apn_type_info_struct apn_type_info;
#endif
} d2rm_ddm_pdn_bind_req_struct;
typedef struct {
LOCAL_PARA_HDR
kal_uint32 context_id;
kal_bool is_successful;
ps_cause_enum error_result;
} d2rm_ddm_pdn_bind_cnf_struct;
typedef struct {
LOCAL_PARA_HDR
#if 0
/* under construction !*/
#else
at_egld_req_struct cmd;
#endif
} d2rm_ddm_pdn_unbind_req_struct;
typedef struct {
LOCAL_PARA_HDR
kal_uint32 context_id;
kal_bool is_successful;
ps_cause_enum error_result;
} d2rm_ddm_pdn_unbind_cnf_struct;
#endif