/*================================================================ Copyright (c) 2018 Quectel Wireless Solution, Co., Ltd. All Rights Reserved. Quectel Wireless Solution Proprietary and Confidential. =================================================================*/ #include "telatci.h" #ifndef _QUEC_ATCMD_NETWORK_H #define _QUEC_ATCMD_NETWORK_H typedef struct { UINT8 pdp_act_status; // 1:act 0:deact }Quec_pdp_act_status_type; RETURNCODE_T quectel_exec_qgdcnt_cmd ( const utlAtParameterOp_T op, /* AT cmd type */ const char *command_name_p, /* AT cmd name */ const utlAtParameterValue_P2c parameter_values_p, /* AT cmd value */ const size_t num_parameters, /* AT cmd number */ const char *info_text_p, /* AT cmd usage string */ unsigned int *xid_p, /* AT cmd handle */ void *arg_p /* AT cmd parser number */ ); RETURNCODE_T quec_cell_cmd ( const utlAtParameterOp_T op, const char *command_name_p, const utlAtParameterValue_P2c parameter_values_p, const size_t num_parameters, const char *info_text_p, unsigned int *xid_p, void *arg_p ); RETURNCODE_T quectel_exec_qeng_cmd ( const utlAtParameterOp_T op, /* AT cmd type */ const char *command_name_p, /* AT cmd name */ const utlAtParameterValue_P2c parameter_values_p, /* AT cmd value */ const size_t num_parameters, /* AT cmd number */ const char *info_text_p, /* AT cmd usage string */ unsigned int *xid_p, /* AT cmd handle */ void *arg_p /* AT cmd parser number */ ); #ifdef QUECTEL_AT_RFTEST_SUPPORT RETURNCODE_T quectel_exec_qrftestmode_cmd ( const utlAtParameterOp_T op, /* AT cmd type */ const char *command_name_p, /* AT cmd name */ const utlAtParameterValue_P2c parameter_values_p, /* AT cmd value */ const size_t num_parameters, /* AT cmd number */ const char *info_text_p, /* AT cmd usage string */ unsigned int *xid_p, /* AT cmd handle */ void *arg_p /* AT cmd parser number */ ); RETURNCODE_T quectel_exec_qrftest_cmd ( const utlAtParameterOp_T op, /* AT cmd type */ const char *command_name_p, /* AT cmd name */ const utlAtParameterValue_P2c parameter_values_p, /* AT cmd value */ const size_t num_parameters, /* AT cmd number */ const char *info_text_p, /* AT cmd usage string */ unsigned int *xid_p, /* AT cmd handle */ void *arg_p /* AT cmd parser number */ ); RETURNCODE_T quectel_exec_qrxftm_cmd ( const utlAtParameterOp_T op, /* AT cmd type */ const char *command_name_p, /* AT cmd name */ const utlAtParameterValue_P2c parameter_values_p, /* AT cmd value */ const size_t num_parameters, /* AT cmd number */ const char *info_text_p, /* AT cmd usage string */ unsigned int *xid_p, /* AT cmd handle */ void *arg_p /* AT cmd parser number */ ); typedef enum { QUEC_NETMODE_NONE = 0, QUEC_NETMODE_GSM = 1, QUEC_NETMODE_WCDMA = 2, QUEC_NETMODE_LTE = 3, //OTHERS QUEC_NETMODE_MAX, }quec_network_mode_type; typedef struct { char act[10] ; char plmn[10] ; char band_description[20] ; UINT32 active_channel; UINT8 service_domain;// 0:cs only 1:ps only 2:cs+ps UINT8 roam_status;//0:home 1:roaming UINT8 sim_state;//0:valid 1:invalid 2:not_insert }Quec_qnwinfo_type; typedef struct tx_band_label_s { quec_network_mode_type mode; char *name; UINT32 band; UINT32 tx_chanel_min; UINT32 tx_chanel_max; UINT32 rx_chanel_min; UINT32 rx_chanel_max; } tx_band_label_type; typedef struct quec_rftestmode_param{ quec_network_mode_type mode; UINT8 tx_enable; UINT8 rx_enable; } quec_rftestmode_param_type; #define QUEC_MAX_TX_POWER 2047 #define QUEC_MIN_TX_POWER 0 #define QUEC_MAX_RX_POWER 2047 #define QUEC_MIN_RX_POWER 0 #endif extern Quec_pdp_act_status_type quec_pdp_act_state[CI_PS_MAX_CID]; #ifdef QUEC_USB_QWIFISCAN_SUPPORT typedef int QuecOSStatus; typedef unsigned int uint32; #define WIFISCAN_IND_BUFFER_LEN (600 * 3) typedef struct { CHAR respTempBuffer[WIFISCAN_IND_BUFFER_LEN]; BOOL bwifiscan_repeat_flag; UINT8 hot_Spot_Num; unsigned long long wifiscan_globle_rx_byte; unsigned long long wifiscan_globle_tx_byte; }wifiScanCache_t; #define QUEC_WIFI_QCWLAP_TIME_MIN (4*1000) #define QUEC_WIFI_QCWLAP_TIME_MAX (255*1000) #define QUEC_WIFI_QCWLAP_TIME_DEFALUT (12*1000) #define QUEC_WIFI_QCWLAP_SCANTIME_OFFSET 2 #define QUEC_WIFI_QCWLAP_MAXBSSIDNUM_MIN 4 #define QUEC_WIFI_QCWLAP_MAXBSSIDNUM_MAX 30 #define QUEC_WIFI_QCWLAP_MAXBSSIDNUM_DEFALUT 5 #define QUEC_WIFI_QCWLAP_ROUNDNUM_MIN 1 #define QUEC_WIFI_QCWLAP_ROUNDNUM_MAX 3 #define QUEC_WIFI_QCWLAP_ROUNDNUM_DEFALUT 1 #define QUEC_WIFI_QCWLAP_TIMEOUT_MIN 0 #define QUEC_WIFI_QCWLAP_TIMEOUT_MAX 255 #define QUEC_WIFI_QCWLAP_TIMEOUT_DEFALUT 5 #define QUEC_QCWLAP_PRIORITY_4G Ps_High #define QUEC_QCWLAP_PRIORITY_WIFISCAN Wifi_High //ICAT EXPORTED ENUM typedef enum { Ps_High =0, Wifi_High }ScanPriority_te; //ICAT EXPORTED STRUCT typedef struct{ UINT8 ScanRoundNum; //from 1 to 3. and the default value is 3 UINT8 ScanMaxBssidNum; //from 4 to 10, and the default value is 5 UINT8 ScanTimeout; // uint:second and the default value is 25s ScanPriority_te ScanPriority; //the prioprity of PS and wifi }MMWFScanStartReq_ts; int quec_loac_get_wifi_band_state(void); void quec_loac_set_wifi_band_state(int state); void quec_wifiscan_timer_callback(UINT32 argv); QuecOSStatus quec_wifiscan_timer_start(uint32 init_time, bool cyclical_enable, void(* callback_routine)(UINT32), uint32 timer_argc); QuecOSStatus quec_wifiscan_timer_creat(void); QuecOSStatus quec_wifiscan_timer_stop(void); QuecOSStatus quec_wifiscan_timer_delete(void); void quec_wifiscan_release(void); void quec_wifiscan_timeout_release(void); typedef void (*quec_wifiscan_callback) (const unsigned short scan_count, const char *scan_info); void quec_wifiscan_release(void); void quec_wifiscan_timeout_release(void); void quec_wifiscan_traffic_statistics_event_handle(void); RETURNCODE_T quec_exec_qcwlap_cmd(const utlAtParameterOp_T op, const char *command_name_p, const utlAtParameterValue_P2c parameter_values_p, const size_t num_parameters, const char *info_text_p, unsigned int *xid_p, void *arg_p); #endif #ifdef QUEC_NETWORK_CARD_ENABLE /*=========================================================================== FUNCTION QUEC_EXEC_QNETDEVCTL_CMD DESCRIPTION This function takes the result from the command line parser and executes it. It executes +QNETDEVCTL command. This command controls the format of error result codes: ERROR, error numbers, or verbose message. DEPENDENCIES None RETURN VALUE returns an enum that describes the result of the command execution. possible values: utlSUCCESS : if it is a success. SIDE EFFECTS None ===========================================================================*/ RETURNCODE_T quec_exec_qnetdevctl_cmd ( const utlAtParameterOp_T op, /* AT cmd type */ const char *command_name_p, /* AT cmd name */ const utlAtParameterValue_P2c parameter_values_p, /* AT cmd value */ const size_t num_parameters, /* AT cmd number */ const char *info_text_p, /* AT cmd usage string */ unsigned int *xid_p, /* AT cmd handle */ void *arg_p /* AT cmd parser number */ ); #endif #ifdef QUECTEL_NETWORK_SUPPORT RETURNCODE_T quectel_exec_qnwinfo_cmd ( const utlAtParameterOp_T op, /* AT cmd type */ const char *command_name_p, /* AT cmd name */ const utlAtParameterValue_P2c parameter_values_p, /* AT cmd value */ const size_t num_parameters, /* AT cmd number */ const char *info_text_p, /* AT cmd usage string */ unsigned int *xid_p, /* AT cmd handle */ void *arg_p /* AT cmd parser number */ ); #if QUEC_DUAL_SIM_SUPPORT extern Quec_qnwinfo_type quec_qnwinfo[2]; #else extern Quec_qnwinfo_type quec_qnwinfo; #endif #endif #endif