Files
banban/ql-kernel/threadx/common/include/quec_atcmd_network.h
T

273 lines
9.8 KiB
C

/*================================================================
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