ASR_BASE
Change-Id: Icf3719cc0afe3eeb3edc7fa80a2eb5199ca9dda1
diff --git a/marvell/lte-telephony/apps/atcmd_server_ss/src/telcontroller.c b/marvell/lte-telephony/apps/atcmd_server_ss/src/telcontroller.c
new file mode 100644
index 0000000..435642f
--- /dev/null
+++ b/marvell/lte-telephony/apps/atcmd_server_ss/src/telcontroller.c
@@ -0,0 +1,5400 @@
+/******************************************************************************
+
+*(C) Copyright 2007 Marvell International Ltd.
+
+* All Rights Reserved
+
+******************************************************************************/
+/*--------------------------------------------------------------------------------------------------------------------
+ * INTEL CONFIDENTIAL
+ * Copyright 2006 Intel Corporation All Rights Reserved.
+ * The source code contained or described herein and all documents related to the source code (?Material? are owned
+ * by Intel Corporation or its suppliers or licensors. Title to the Material remains with Intel Corporation or
+ * its suppliers and licensors. The Material contains trade secrets and proprietary and confidential information of
+ * Intel or its suppliers and licensors. The Material is protected by worldwide copyright and trade secret laws and
+ * treaty provisions. No part of the Material may be used, copied, reproduced, modified, published, uploaded, posted,
+ * transmitted, distributed, or disclosed in any way without Intel?s prior express written permission.
+ *
+ * No license under any patent, copyright, trade secret or other intellectual property right is granted to or
+ * conferred upon you by disclosure or delivery of the Materials, either expressly, by implication, inducement,
+ * estoppel or otherwise. Any license under such intellectual property rights must be express and approved by
+ * Intel in writing.
+ * -------------------------------------------------------------------------------------------------------------------
+ *
+ * Filename: telcontroller.c
+ *
+ * Authors: Vincent Yeung
+ *
+ * Description: Telephony Controller implementation
+ *
+ * History:
+ * May 19, 2006 - Creation of file
+ *
+ * Notes:
+ *
+ ******************************************************************************/
+
+/******************************************************************************
+* include files
+******************************************************************************/
+#include "ci_api.h"
+#include "ps_api.h"
+#include "telcontroller.h"
+#include "telatci.h"
+#include "telconfig.h"
+#include "telatparamdef.h" //TEL_AT_CMDSTR_MAX_LEN
+#include "teldbg.h"
+#include "telcc.h"
+#include "telmm.h"
+#include "telps.h"
+#include "telpb.h"
+#include "telss.h"
+#include "teldev.h"
+#include "teldat.h"
+#include "telmsg.h"
+#include "msg_api.h"
+#include "telsim.h"
+#include "telaudio.h"
+#include "teldef.h"
+#ifdef WIFI_ATCMD
+#include "wifi_api.h"
+#endif
+#ifdef AT_PRODUCTION_CMNDS
+#include "telprod.h"
+#include "diag_al.h"
+#endif
+#ifdef AT_LABTOOL_CMNDS
+#include "telmisc.h"
+#endif
+#include "utlMalloc.h"
+#include <stdio.h>
+#include <unistd.h>
+#include <pthread.h>
+#include <termios.h>
+#include <fcntl.h>
+#include <sys/time.h>
+#include <errno.h>
+#include <sys/types.h>
+#include <sys/syscall.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/un.h>
+#include <string.h>
+#include "telutl.h"
+#include "utilities.h"
+#include <sys/prctl.h>
+#include "utlEventHandler.h"
+#include <cutils/properties.h>
+#include "telm2m.h"
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+#include "ursp.h"
+#endif
+
+/******************************************************************************
+* Define
+******************************************************************************/
+#define TEL_ESP_AT_CMD_ATP TEL_AT_CMD_ATP_0
+
+/******************************************************************************
+* Global Variable for Telephony Controller
+******************************************************************************/
+UINT32 PSRegOptionSaveFlag = TRUE;
+
+unsigned short gusXid = 10; //0 - 10 is reserved value
+struct termios savetio;
+extern BOOL ap_only;
+
+TelAtpCtrl gAtpCtrl[NUM_OF_TEL_ATP];
+
+
+utlAtParser_P aParser_p[ NUM_OF_TEL_ATP ]; /* AT parser */
+
+const char* const gAtpName[] =
+{
+ "ATP_0",
+ "ATP_SERIALATCMD"
+#ifdef AT_PRODUCTION_CMNDS
+ "ATP_PROD",
+#endif
+#ifndef PXA1826SPI_TELE
+ "ATP1_0",
+ "ATP_IMS_1",
+ "ATP_IMS_2",
+#endif
+};
+
+#define DEFINE_SIM1_NO_INDICATION_CHANEL_DESC(atpId, path, ap_only) \
+ {atpId, path, SIM1_ONLY, FALSE, ap_only}
+
+#define DEFINE_SIM2_NO_INDICATION_CHANEL_DESC(atpId, path, ap_only) \
+ {atpId, path, SIM2_ONLY, FALSE, ap_only}
+
+#define DEFINE_SHARED_NO_INDICATION_CHANEL_DESC(atpId, path, ap_only) \
+ {atpId, path, DUAL_SIM, FALSE, ap_only}
+
+#define DEFINE_MASTER_SIM_NO_INDICATION_CHANEL_DESC(atpId, path, ap_only) \
+ {atpId, path, MASTER_SIM,FALSE, ap_only}
+
+#define DEFINE_SIM1_CHANEL_DESC(atpId, path, ap_only) \
+ {atpId, path, SIM1_ONLY, TRUE, ap_only}
+
+#define DEFINE_SIM2_CHANEL_DESC(atpId, path, ap_only) \
+ {atpId, path, SIM2_ONLY, TRUE, ap_only}
+
+#define DEFINE_SHARED_CHANEL_DESC(atpId, path, ap_only) \
+ {atpId, path, DUAL_SIM, TRUE, ap_only}
+
+#define DEFINE_MASTER_SIM_CHANEL_DESC(atpId, path, ap_only) \
+ {atpId, path, MASTER_SIM, TRUE, ap_only}
+
+TelAtpDesc gTelAtpDescConfig[] = {
+ DEFINE_SIM1_NO_INDICATION_CHANEL_DESC(TEL_AT_CMD_ATP_0, BACKEND_NULL_DEVICE, FALSE),
+// DEFINE_SIM1_CHANEL_DESC(TEL_SERIALATCMD_AT_CMD_ATP, BACKEND_SERIALATCMD_ATCMD_CHAN_DEVICE, TRUE),
+#ifdef AT_PRODUCTION_CMNDS
+ DEFINE_SHARED_NO_INDICATION_CHANEL_DESC(TEL_PROD_AT_CMD_ATP, PROD_SERIAL_PORT, TRUE),
+#endif
+/*pxa1826 no DSDS solution*/
+#ifdef BIONIC
+ DEFINE_SIM2_NO_INDICATION_CHANEL_DESC(TEL_AT_CMD_ATP_0_1, BACKEND_NULL_DEVICE, FALSE),
+#endif
+};
+
+static TelAtpDataEntry sTelAtpDataEntry = {
+ TEL_MSG_DATA_NONE,
+ 0,
+ 0,
+ 0
+};
+
+char ATM_ID[ATM_MAX_ID_LENGTH] = "ASR";
+char ATM_MANUFACTURER_ID[ATM_MAX_ID_LENGTH] = "ASR";
+char ATM_MODEL_ID[ATM_MAX_ID_LENGTH] = "LINUX";
+
+extern UINT32 gServiceGroupRegistered;
+
+utlAtProxyCommand_P atProxyReq = NULL;
+utlAtProxyCommand_P atProxyInd = NULL;
+
+TelAtParserID gProxyChannelId = NUM_OF_TEL_ATP;
+TelAtParserID gOrigParserId = NUM_OF_TEL_ATP;
+
+UINT32 gCurrentProxyTrsXid; //the current XID of the command sent to proxy
+BOOL gCurrentPrxyFirstPhase = FALSE;
+
+TelMsgDataMode gCurrentSmsDataMode = TEL_MSG_DATA_NONE;
+BOOL ims_sms_data_invalid_report_error = FALSE;
+unsigned int gProxyTimeoutCounter=0;
+#define ATCMD_PROXY_TIMEOUT_COUNTER_MAX_VALUE 5 //the maximum value of the gProxyTimeoutCounter
+
+extern int gCurrentCgerepMode[NUM_OF_TEL_ATP];
+extern int gRequestCgerepMode[NUM_OF_TEL_ATP];
+
+char *gProxySmsSegment[8];
+char *gProxySmsSegment_1[8];
+
+UINT16 gProxySmsSegmentLen[8];
+UINT16 gProxySmsSegmentLen_1[8];
+
+extern BOOL gImsRegState;
+extern BOOL gImsRegState_1;
+
+extern AtciSmsFormatMode gSmsFormatMode[];
+extern AT_MSG_OPERATION gCurrOperation[];
+extern AT_MSG_OPERATION gCurrOperation_1[];
+
+extern CiMmSigExtendedQualityInfo gExtendedSignal;
+extern CiMmSigExtendedQualityInfo gExtendedSignal_1;
+
+#ifdef AT_PRODUCTION_CMNDS
+static void start_at_cmd_srv(void);
+extern int get_bspflag_from_kernel_cmdline(void);
+extern int start_prod_at_cmd_srv(void);
+extern void loadPSRegOptionSetting(void);
+
+#endif
+
+#ifdef ATCMD_CONTINUOUS_TIMEOUT_RECOVERY
+int gTimeoutNum = 0;
+pthread_mutex_t gTimeoutLock = PTHREAD_MUTEX_INITIALIZER;
+#endif
+#ifdef AT_CONFIG_P701
+int gModemAtp = -1;
+#endif
+int gNumofAT = 0;
+
+pthread_mutex_t gProxyAccessLock = PTHREAD_MUTEX_INITIALIZER;
+AtciCharacterSet chset_type[NUM_OF_TEL_ATP];
+BOOL isGsmChset[NUM_OF_TEL_ATP];
+extern UINT32 gSendMsgReqHandle[];
+
+AtciCharacterSet chset_type_1[NUM_OF_TEL_ATP];
+BOOL isGsmChset_1[NUM_OF_TEL_ATP];
+extern UINT32 gSendMsgReqHandle_1[];
+
+#ifndef NO_AUDIO
+#ifdef ECALL_SUPPORT
+//extern EallMsdMSDMessage_t gMsdCfg;
+#endif
+#endif
+
+/******************************************************************************
+* Local Function Prototypes
+******************************************************************************/
+int getFd(TelAtParserID sAtpIndex);
+void ProcessAtChanThread(TelAtParserID sAtpIndex);
+void cinetThread();
+BOOL tcInitAtParser( TelAtParserID * sAtpIndex);
+BOOL tcOpenExtSerialPort(int *fd, char * serial_path, int flag );
+BOOL tcOpenDevice(int* fd, char * char_dev_path, int flag);
+BOOL tcOpenPsuedoMasterDevice(int *fd, char* char_dev_path);
+extern AtciSmsFormatMode getSmsFormatModeWithAtpIndex(UINT32 sAtpIndex);
+extern void initAtPara(void);
+
+utlReturnCode_T atParserShellReplyFunction(const char *string_p, void *arg_p);
+utlReturnCode_T atParserShellGetFunction(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);
+utlReturnCode_T atParserShellSetFunction(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);
+
+extern BOOL checkDataValidity(CHAR *pSmsData, INT32 smsDataLength, AtciCharacterSet *pchset_type);
+
+RETURNCODE_T ciChannelDestSwitch( 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);
+
+unsigned int atParserGetAtcmdTimeoutValue(const char* cmd_name_p, const utlAtAsyncOp_T op);
+int atParserAtcmdTimeoutError(unsigned int atHandle);
+#ifdef ATCMD_CONTINUOUS_TIMEOUT_RECOVERY
+void atParserAtcmdContinuousTimeout(void);
+#endif
+
+extern void PARSER_SET_AUTO_ANSWER_DELAY(void *arg_p, unsigned int delay_seconds);
+extern void PARSER_GET_AUTO_ANSWER_DELAY(void *arg_p, unsigned short *delay_seconds);
+
+extern utlReturnCode_T createStringToProxy(const char *command_name_p,const utlAtParameterOp_T op, const char *parameters_string_p,unsigned int *xid_p,void *arg_p);
+extern void proxyEsc(void *arg_p);
+extern void clearSmsDataMode(void *arg_p);
+extern void clearSmsoverNas(TelAtParserID sAtpIndex);
+char *gProxySmsSegment[8];
+char *gProxySmsSegment_1[8];
+
+UINT16 gProxySmsSegmentLen[8];
+UINT16 gProxySmsSegmentLen_1[8];
+/*------------------------------------------------------------------------------*/
+static utlAtParameter_T A_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T D_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DIAL_STRING) };
+static utlAtParameter_T E_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T H_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T I_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T L_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T M_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T O_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T P_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T Q_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T T_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T V_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T X_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T Z_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T S0_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T ampC_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T ampD_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T ampF_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T ampS_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DECIMAL) };
+static utlAtParameter_T ampZ_params[] = { utlDEFINE_BASIC_AT_PARAMETER(utlAT_DATA_TYPE_DIAL_STRING) };
+static utlAtParameter_T eCHUPVT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_WRITE_ONLY, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+static utlAtParameter_T plusCTTY_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusASTO_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DIAL_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+static utlAtParameter_T plusIPR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+static utlAtParameter_T plusICF_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+static utlAtParameter_T plusIFC_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+static utlAtParameter_T plusIDSR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusEXAMPLE_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusCACM_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCAMM_params[] = { utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCCWE_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusCHLD_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) // for IMS only
+};
+
+static utlAtParameter_T plusCDU_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCMOD_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusCGREG_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusCGATT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusCGACT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCGDATA_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusZGDCONT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ #ifdef DEDICATED_FLAG_SUPPORT
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ #else
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ #endif
+ };
+
+static utlAtParameter_T starZGDCONT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+
+static utlAtParameter_T plusZGDCONTEX_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusNETMASK_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starMTU_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusCGDCONT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+#endif
+};
+
+static utlAtParameter_T plusCGQMIN_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCGQREQ_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCGDSCONT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCGEQREQ_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCGEQMIN_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+/* Michal Bukai - AT+CGTFT support */
+static utlAtParameter_T plusCGTFT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCFUN_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+/*Michal Bukai - Add a generic comm. feature configuration option in
+ CI_DEV_PRIM_SET_FUNC_REQ*/
+static utlAtParameter_T starCFUN_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusSysConfig_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCOPS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+/*Modified by Michal Bukai - at support for AccTchMode parameter*/
+static utlAtParameter_T plusCPOL_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCSDH_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusCCFC_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCCWA_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCOLP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+static utlAtParameter_T plusCOLR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+static utlAtParameter_T plusCNAP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+static utlAtParameter_T starREJCAUSE_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCEDRXS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusCTZR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCCLK_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCUAD_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T plusCTZU_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCSSN_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCUSD_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCREG_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+//static utlAtParameter_T plusCIND_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+
+static utlAtParameter_T plusCLIP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCDIP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+static utlAtParameter_T plusCLIR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCAOC_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusVTS_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+static utlAtParameter_T plusVTD_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusCLCK_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCPWD_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCGMD_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starCMGF_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCMGF_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCMSS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCMGS_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCMGC_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+
+static utlAtParameter_T plusCMGR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCMGW_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCMGL_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T starCSCS_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCPIN_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusZSEC_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCPIN2_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T starSIMDETEC_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCGSEND_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusCBST_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusFCLASS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCSCS_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCPBS_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCPBR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCPBW_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+
+//Added by Michal Bukai
+static utlAtParameter_T plusCPBF_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCSVM_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+
+static utlAtParameter_T plusCSIM_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+//change by linda add path parameter
+static utlAtParameter_T plusCRSM_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+//Michal Bukai - ISIM/NFC support - START
+static utlAtParameter_T plusCRLA_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), // session id
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), // command
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), // fieldid (optional only for STATUS command)
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), // p1
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), // p2
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), // p3
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), // data
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), // path
+};
+
+static utlAtParameter_T plusCardMode_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+static utlAtParameter_T plusCGLA_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusCCHO_params[] =
+ { utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusCCHC_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+//Michal Bukai - ISIM/NFC support - END
+
+static utlAtParameter_T plusMSTK_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusSPN_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusCGSMS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusLKSMSSTA_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+static utlAtParameter_T plusCVHU_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCRLP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCNMI_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCSCB_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), //utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};//utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCSMS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCPMS_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), //for txt mode, no para required
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCNMA_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+static utlAtParameter_T plusCSMP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusCSCA_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusVECHO_params[] = { utlDEFINE_QSTRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusREPORTIP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)};
+
+static utlAtParameter_T starRZGDCONT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+
+static utlAtParameter_T plusGETIP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+static utlAtParameter_T plusTGSINK_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusICSSink_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusATDB_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T starCIIND_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+#if 0
+/* Support to output engineering mode information */
+static utlAtParameter_T plusCGED_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+#endif
+static utlAtParameter_T plusCCIREG_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+// support AT+CMMS
+static utlAtParameter_T plusCMMS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+// support AT+VDUMP for controlling log level
+static utlAtParameter_T plusVDUMP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+// support AT+LOG for debuging use
+static utlAtParameter_T plusLOG_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusAPLOG_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+static utlAtParameter_T plusRDUP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+// support AT+VPDUS
+static utlAtParameter_T plusVPDUS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+// support AT+CMUT
+static utlAtParameter_T plusCMUT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+/* Michal Bukai - AT+CPUC support */
+static utlAtParameter_T plusCPUC_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+/* Michal Bukai - AT+CSTA support */
+static utlAtParameter_T plusCSTA_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+/* Michal Bukai - AT+CRC support */
+static utlAtParameter_T plusCRC_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+/* Michal Bukai - AT+CR support */
+//static utlAtParameter_T plusCR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+/* Michal Bukai - AT+CMEE support */
+static utlAtParameter_T plusCMEE_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+/* Michal Bukai - AT+CIND support: CIND will support the following (in that order) - "signal","service","message","call","roam"*/
+#if 0
+static utlAtParameter_T plusCIND_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+#endif
+
+/* Michal Bukai - AT+CMER support*/
+static utlAtParameter_T plusCMER_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+/* AT+CMEC support*/
+static utlAtParameter_T plusCMEC_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+/* Michal Bukai - AT+CPLS support*/
+static utlAtParameter_T plusCPLS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+/* Michal Bukai - AT+CGCMOD support*/
+static utlAtParameter_T plusCGCMOD_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+/* Michal Bukai - AT+DS support*/
+static utlAtParameter_T plusDS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusCNUM_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+/*Michal Bukai - AT*CLCK support*/
+static utlAtParameter_T plusMEPCLCK_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+#ifdef CUSTZ
+
+static utlAtParameter_T plusZNCK_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusLOCKLEVEL_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusZSNT_params [] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+static utlAtParameter_T plusZNLOCKBAND_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+static utlAtParameter_T plusZNLOCKNRBAND_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) ,
+};
+#endif
+
+static utlAtParameter_T plusZSELM_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+static utlAtParameter_T plusZSELI_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+static utlAtParameter_T plusZBK_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+static utlAtParameter_T plusZINKR_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+static utlAtParameter_T plusZSYNCNITZ_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+static utlAtParameter_T plusZDOGREF_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+static utlAtParameter_T plusZDHCPLEASE_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusGEFLAG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusZCFG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusZROAM_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+
+static utlAtParameter_T plusZGDFLT_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+#endif
+
+/*Michal Bukai - AT*MEPCG support*/
+static utlAtParameter_T plusMEPCG_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+#if 0
+/*Michal Bukai - AT*ULCK support*/
+static utlAtParameter_T plusULCK_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+/*Michal Bukai - AT*UCPWD support*/
+static utlAtParameter_T plusUCPWD_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+/*Michal Bukai - AT*UASLM support*/
+static utlAtParameter_T plusUASLM_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+#endif
+
+/* Michal Bukai - AT*BAND support*/
+#if !defined(ATCMD_1901_CI) && !defined(ATCMD_1903_CI)
+static utlAtParameter_T plusBAND_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+#else
+static utlAtParameter_T plusBAND_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+#endif
+/* Michal Bukai - AT*BANDIND support*/
+static utlAtParameter_T plusBANDIND_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+/* AT+WS46 support */
+static utlAtParameter_T plusWS46_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+/* Michal Bukai - AT*READ_CAL_STATUS support*/
+//static utlAtParameter_T plusCalStatus_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+/* Michal Bukai - AT*CNMA support*/
+static utlAtParameter_T plusNewMsgAck_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+static utlAtParameter_T plusPOWERIND_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+static utlAtParameter_T plusAPPOWERIND_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+/*Michal Bukai - AT*AUTHReq - PAP_CHUP support (PDP Authentication)*/
+static utlAtParameter_T plusZAUTHReq_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusAUTHReq_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+static utlAtParameter_T starCELL_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+#endif
+};
+
+/* Support to output engineering mode information */
+static utlAtParameter_T plusEEMOPT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusEEMGINFO_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T plusERGA_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+static utlAtParameter_T plusERTCA_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+static utlAtParameter_T plusLPNWUL_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+static utlAtParameter_T plusLPLOCVR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusLPOTDOAREQ_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+#ifdef AT_PRODUCTION_CMNDS
+
+static utlAtParameter_T starMRD_MIPS_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starMRD_ADF_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+
+static utlAtParameter_T starMRD_CDF_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starMRD_SN_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starMRD_IMEI_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starCALINFO_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starMRD_MEP_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starLOCKNETLIST_params[] = { utlDEFINE_QSTRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+static utlAtParameter_T starINVERSESML_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T starLOCKLIST_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T starUnLockKEY_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+static utlAtParameter_T OOSPP_params[] = {utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+#endif
+static utlAtParameter_T starMRD_WIFIID_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starMRD_LANMAC_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starMRD_BTID_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starMRD_VEND_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T starMRD_BAND_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T starPROD_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+static utlAtParameter_T starSVC_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starGPSTEST_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starTDTR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starGSMTR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starTGCTRL_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_HEXADECIMALL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starWBTR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starMaxPower_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T plusLTEPOWER_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)};
+
+static utlAtParameter_T starLteTR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+static utlAtParameter_T starCommTR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starFdnCheck_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starMoreSms_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+#endif
+
+#if defined(ATCMD_UNIFY_CI)
+
+static utlAtParameter_T SIMLOCK_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_QSTRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+static utlAtParameter_T SETLOCK_params[] = { utlDEFINE_QSTRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)};
+static utlAtParameter_T MAXLCKTMS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)};
+static utlAtParameter_T TESTLOCK_params[] = { utlDEFINE_QSTRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)};
+#endif
+
+
+
+static utlAtParameter_T starMRD_DUMP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+#ifdef MNV_SUPPORT
+static utlAtParameter_T starCPMRD_DUMP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+#endif
+
+#ifdef SECURE_MRD
+static utlAtParameter_T starMRD_AUTH_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+#endif
+
+static utlAtParameter_T FUELGAIC_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_WRITE_ONLY, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+
+#endif
+
+static utlAtParameter_T starMODEMRESET_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+static utlAtParameter_T starSWITCHMODEM_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+#ifdef AT_LABTOOL_CMNDS
+static utlAtParameter_T plusMVWFTST_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T plusMVWFIDRW_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T plusMVBTTST_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T plusMVBTIDRW_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T plusMVFMTST_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+#endif // AT_LABTOOL_CMNDS
+
+static utlAtParameter_T plusCKPD_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+
+static utlAtParameter_T starCGSN_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+static utlAtParameter_T dollarVTS_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T starHTCCTO_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+static utlAtParameter_T plusCMEMFULL_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+static utlAtParameter_T starEHSDPA_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+ };
+/*loopback test mode*/
+static utlAtParameter_T LOOPTEST_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T starFDY_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+#ifdef OPHONE
+/*Ophone monitor*/
+static utlAtParameter_T caretDCTS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T caretDEELS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T caretDEVEI_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T caretDNPR_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T caretDUSR_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+#endif
+
+static utlAtParameter_T plusCIREG_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCEREG_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusCGEQOS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCGCONTRDP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCGSCONTRDP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCGTFTRDP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCGEQOSRDP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCGEREP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCVMOD_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCEMODE_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCGPADDR_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCGPIAF_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCGCLASS_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T plusCESQ_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+static utlAtParameter_T plusCSCON_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+#endif
+static utlAtParameter_T plusBGLTEPLMN_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), };
+
+static utlAtParameter_T starDIALE_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+
+static utlAtParameter_T starCSCB_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starCBMCS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starNASCHK_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T starUSBT_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_WRITE_ONLY, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T starMOBILEDATA_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_WRITE_ONLY, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_WRITE_ONLY, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+static utlAtParameter_T starCGATT_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T starGRIP_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+#if defined(ATCMD_UNIFY_CI)
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+#else
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+#endif
+
+
+static utlAtParameter_T starCOMCFG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starCGDFLT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T starCGDFAUTH_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+#ifdef OPERATOR_VERIZON
+
+static utlAtParameter_T starCGATTC_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+
+static utlAtParameter_T starVZWTESTAPP_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusVZWAPNE_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+#endif
+
+static utlAtParameter_T starLTEBAND_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+
+static utlAtParameter_T starRFTEMP_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T starCSQ_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+
+
+#define TEN_OPTIONAL_DECIMAL_AT_PARAMETERS \
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), \
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), \
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), \
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), \
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), \
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), \
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), \
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), \
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), \
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+
+#define NINETY_OPTIONAL_DECIMAL_AT_PARAMETERS \
+ TEN_OPTIONAL_DECIMAL_AT_PARAMETERS \
+ TEN_OPTIONAL_DECIMAL_AT_PARAMETERS \
+ TEN_OPTIONAL_DECIMAL_AT_PARAMETERS \
+ TEN_OPTIONAL_DECIMAL_AT_PARAMETERS \
+ TEN_OPTIONAL_DECIMAL_AT_PARAMETERS \
+ TEN_OPTIONAL_DECIMAL_AT_PARAMETERS \
+ TEN_OPTIONAL_DECIMAL_AT_PARAMETERS \
+ TEN_OPTIONAL_DECIMAL_AT_PARAMETERS \
+ TEN_OPTIONAL_DECIMAL_AT_PARAMETERS
+
+/*eMBMS function*/
+static utlAtParameter_T starMBMS_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ NINETY_OPTIONAL_DECIMAL_AT_PARAMETERS};
+
+static utlAtParameter_T starMBMSEv_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)};
+/*eMBMS add end*/
+
+static utlAtParameter_T starLTECOEX_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T starPSPG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_WRITE_ONLY, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusCEN_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCNEM_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCISRVCC_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCEVDP_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCVDP_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCEUS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCAVIMS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCASIMS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCMMIVT_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T plusCIREP_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+#ifdef OPERATOR_ATT
+//
+// Other - AT&T specific
+//
+static utlAtParameter_T dollarCREG_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+static utlAtParameter_T dollarCCLK_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T starCSG_params[] ={
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starIGN_params[] ={
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+
+static utlAtParameter_T starFRATLIST_params[] ={
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+
+#endif
+
+static utlAtParameter_T starPWRPLMN_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T starAPCFG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T starCISCC_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+static utlAtParameter_T starRANDFILL_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_WRITE_ONLY, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T starPrxySet_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+ };
+
+
+
+static utlAtParameter_T starPrxyRsp_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+
+ };
+
+
+static utlAtParameter_T starCHDSTST_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)};
+
+static utlAtParameter_T plusCsas_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+
+static utlAtParameter_T plusCres_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+static utlAtParameter_T starPSDC_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+
+
+static utlAtParameter_T starTelMode_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+
+static utlAtParameter_T starCBRAT_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T starIMLCONFIG_params[]={
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+
+
+
+ /* ADD NEW COMMON PRIMITIVES DEFINITIONS HERE */
+static utlAtParameter_T starPCO_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusCSDF_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) };
+
+
+static utlAtParameter_T starCGDCONTL_params[] = { /* APPS Loopback*/
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), /*CID*/
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), /*IP*/
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), /*mult*/
+};
+
+static utlAtParameter_T starSPIND_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusCLAN_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)};
+static utlAtParameter_T starCELLINFO_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)};
+
+static utlAtParameter_T plusCPNER_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+static utlAtParameter_T plusCCUG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starIMSSRV_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) , /*imsSrvType*/
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) , /*imsSrvStatus*/
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) , /*srvFailCause*/
+};
+
+
+/* STK / USAT related extdened begin */
+static utlAtParameter_T starSTKPROF_params[] = /* AT*CATPROF */
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starCATEN_params[] = /* AT*CATEN */
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starRCATR_params[] = { /* AT*RCATR */
+ utlDEFINE_QSTRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starCATTR_params[] = /* AT*CATTR*/
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starCATENV_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starRCATE_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+/* STK / USAT related extdened end */
+#ifndef NO_AUDIO
+
+static utlAtParameter_T starAUDIOMODE_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starAUDIODEVICE_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) , /*srvFailCause*/
+};
+
+static utlAtParameter_T starAUDIOVOL_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) , /*srvFailCause*/
+};
+
+static utlAtParameter_T starAUDIOMUTE_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) , /*srvFailCause*/
+};
+
+static utlAtParameter_T starAUDREC_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T starAUDPLAY_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T starAUDGAIN_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)
+};
+
+#ifdef ECALL_SUPPORT
+static utlAtParameter_T plusCECALLINSIDE_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T plusCECALL_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T starECALLDATA_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T starECALLVOICE_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T starECALLCFG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T starECALLONLY_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T starECALLREG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T starIMSECALLREG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ ,
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+#endif
+};
+
+static utlAtParameter_T starECALLMSD_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starECALLMSDCFG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starECALLMEDIAMSD_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starECALLOVERIMS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starECALLSMSNUMCFG_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)
+};
+
+static utlAtParameter_T starECALLSMS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)
+};
+
+static utlAtParameter_T starECALLSWITCHMODE_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)
+};
+
+static utlAtParameter_T starECALLTMR_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) ,
+};
+
+static utlAtParameter_T starECALLMUTESPK_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+#endif
+#endif
+
+static utlAtParameter_T plusCACL_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) , /*simACLEnable*/
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) , /*psACLEnable*/
+};
+
+static utlAtParameter_T opercfg_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+
+
+static utlAtParameter_T starUdconf_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T starUCGCLASS_params[] =
+ { utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starCIWLANCID_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+#ifdef BT_SAP
+// params for BT SAP
+static utlAtParameter_T starBTSCNCT_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T starBTSTAPDU_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T starBTSCTRL_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+static utlAtParameter_T starBTSTP_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+#endif
+
+static utlAtParameter_T starPARK_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T startCheckEmer_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starTEMPTEST_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) };
+
+
+static utlAtParameter_T plusACONFIG_params[] = {
+ utlDEFINE_QSTRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+static utlAtParameter_T plusIMSFUNC_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+static utlAtParameter_T plusSTRESSTEST_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL) ,
+};
+
+static utlAtParameter_T plusSULOG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+};
+
+static utlAtParameter_T plusMEDCR_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED) ,
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+
+#ifdef GPS_SUPPORT
+static utlAtParameter_T gpsInit_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T gpsSleep_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T agnssGet_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T agnssCfg_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), //server
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), //port
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), //username
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL), //password
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), //day
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), //force
+};
+
+static utlAtParameter_T gpsSet_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+#endif
+
+static utlAtParameter_T plusCMTLRA_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starIND_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+#ifdef CMCC_IOT
+
+static utlAtParameter_T miplcreate_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+
+static utlAtParameter_T mipldelete_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+
+static utlAtParameter_T mipladdobj_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+
+static utlAtParameter_T mipldelobj_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+
+ };
+
+
+static utlAtParameter_T miplopen_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+
+static utlAtParameter_T miplupdate_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+
+static utlAtParameter_T miplclose_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+
+static utlAtParameter_T mipldiscoverresp_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+
+static utlAtParameter_T miplreadrsp_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+
+static utlAtParameter_T miplwritersp_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+
+static utlAtParameter_T miplexecutersp_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+static utlAtParameter_T miplparameterrsp_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+static utlAtParameter_T miplobserversp_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ };
+
+static utlAtParameter_T miplnotify_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ };
+#endif
+
+static utlAtParameter_T plusRSAPStat_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusRSAPSimSelect_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+
+static utlAtParameter_T plusAUTOAPN_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusVLAN_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusZVLAN_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusZVLANID_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusRSAPRsp_params[] =
+ { utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+#if !defined(CI_RELEASE_FLAG) && (defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI))
+static utlAtParameter_T plusCWRITESIMEXT_params[] =
+ { utlDEFINE_HEXADECIMALL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+#endif
+
+static utlAtParameter_T plusSIMLOCKFUSE_params[] = { utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starSIMPOLL_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T plusCMRSS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+static utlAtParameter_T plusCMGSS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusciCSMS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusCMGMS_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusANTTUNER_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starWSTAT_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1903_CI) || (defined(ATCMD_1901_CI) && !defined(CI_RELEASE_FLAG))
+static utlAtParameter_T plusSELECTVSIM_params[]={
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+#endif
+
+static utlAtParameter_T starAVSIM_params[]={
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)
+};
+
+static utlAtParameter_T plusDDRFREQ_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+
+#ifdef LPA_SUPPORT
+static utlAtParameter_T ctRspStrt_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T ctRspGetInfo_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T ctRspProfAct_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)
+};
+
+static utlAtParameter_T ctRspNfyLeab_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)
+};
+#endif
+
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+static utlAtParameter_T plusDELFBPLMN_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T plusRESEDPARA_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusCOMFEATURE_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_QSTRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+#endif
+
+static utlAtParameter_T starSECCAP_params[]={
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_HEXADECIMALL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_HEXADECIMALL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+
+
+static utlAtParameter_T plusL1DEBUG_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),};
+
+static utlAtParameter_T starZIPPASS_params[]={
+ utlDEFINE_HEXADECIMALL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)};
+
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI) || defined(ATCMD_UNIFY_CI)
+static utlAtParameter_T starDspInfo_params[]={
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)};
+#endif
+
+
+#if defined(ATCMD_1802S_CI) || defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+static utlAtParameter_T starBandScan_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+#endif
+
+static utlAtParameter_T starREJECTCAUSE_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+#ifdef ENABLE_WIFI_SCAN
+static utlAtParameter_T starWifiCtrl_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+ };
+#endif
+
+static utlAtParameter_T plusCRUEPOLICY_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)
+};
+
+static utlAtParameter_T plusCSUEPOLICY_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T plusC5GREG_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED), };
+
+static utlAtParameter_T plusC5GQOS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL)
+};
+
+static utlAtParameter_T starUTTest_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusC5GNSSAI_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusC5GPNSSAI_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusC5GNSSAIRDP_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starAPPSTART_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starSETUEOSID_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusC5GCAPA_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusCWUS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusCLADN_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plusCMICO_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starOverheat_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starVoltageFreq_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T plus5GURSPQRY_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+#endif
+
+#if defined(ATCMD_UNIFY_CI)
+static utlAtParameter_T plusCFGRPMSWITCH_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED)
+};
+
+static utlAtParameter_T plusCFGRPMPARA_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusCFGRPMCLR_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+#endif
+
+static utlAtParameter_T plusBTMAC_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+#ifdef WIFI_ATCMD
+static utlAtParameter_T plusWIFI_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+#endif
+
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+static utlAtParameter_T plusCDNID_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starCAG_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T plusC5GUSMS_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starLOCALURSP_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+static utlAtParameter_T starTSNCTRL_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+#ifdef NR_POSITION_SUPPORT
+static utlAtParameter_T starPOSFUN_params[] = { utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+#endif
+
+#endif
+
+static utlAtParameter_T starSELECTSIMSLOT_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER(utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1802S_CI)|| defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+static utlAtParameter_T starBLACKCELL_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+
+static utlAtParameter_T starCSCO_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+ utlDEFINE_STRING_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+
+#endif
+
+static utlAtParameter_T starEEH_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+static utlAtParameter_T starDEVTEST_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1903_CI) || (defined(ATCMD_1901_CI) && !defined(CI_RELEASE_FLAG))
+static utlAtParameter_T plusRDNURI_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+#endif
+
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+static utlAtParameter_T starReg_params[] = { utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_STRING_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),};
+#endif
+
+static utlAtParameter_T starcgdataon_params[] = {
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+};
+
+
+#ifdef CUSTQ
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+static utlAtParameter_T plusqnwprefcfg_params[] = {
+ utlDEFINE_STRING_AT_PARAMETER ( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_REQUIRED),
+ utlDEFINE_DECIMAL_AT_PARAMETER( utlAT_PARAMETER_ACCESS_READ_WRITE, utlAT_PARAMETER_PRESENCE_OPTIONAL),
+};
+#endif
+#endif
+
+
+static utlAtCommand_T shell_commands[] = {
+ utlDEFINE_BASIC_AT_COMMAND("E", E_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("I", I_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("L", L_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("M", M_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("O", O_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("P", P_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("Q", Q_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("T", T_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("V", V_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("X", X_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("Z", Z_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("&C", ampC_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("&D", ampD_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("&F", ampF_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("&S", ampS_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("&Z", ampZ_params, atParserShellSetFunction),
+ utlDEFINE_BASIC_AT_COMMAND("S0", S0_params, atParserShellSetFunction),
+
+
+ //
+ // General
+ //
+ // Built-in ACTION COMMAND
+ utlDEFINE_EXACTION_AT_COMMAND("+CGMI", NULL, NULL, atParserShellGetFunction),
+ utlDEFINE_EXACTION_AT_COMMAND("+CGMM", NULL, NULL, atParserShellGetFunction),
+ utlDEFINE_EXACTION_AT_COMMAND("+CGMR", NULL, NULL, ciZVN),
+ utlDEFINE_EXACTION_AT_COMMAND("+CGSN", NULL, NULL, ciCGSN),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CSCS", plusCSCS_params, ciCSCS, ciCSCS, ciCSCS), //27.007 rls14 5.5
+ utlDEFINE_EXACTION_AT_COMMAND("+CIMI", NULL, NULL, ciGetImsi),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+ASTO", plusASTO_params, "+ASTO: (0-" utlStringize(utlAT_MAX_STORED_DIAL_STRINGS) "),(" utlStringize(utlAT_MAX_STORED_DIAL_STRING_LENGTH) ")", atParserShellGetFunction, atParserShellSetFunction),
+ utlDEFINE_EXTENDED_AT_COMMAND("+GMI", NULL, NULL, atParserShellGetFunction, atParserShellSetFunction),
+ utlDEFINE_EXTENDED_AT_COMMAND("+GMM", NULL, NULL, atParserShellGetFunction, atParserShellSetFunction),
+ utlDEFINE_EXACTION_AT_COMMAND("+GMR", NULL, NULL, ciZVN),
+ utlDEFINE_EXACTION_AT_COMMAND("+GSN", NULL, NULL, ciCGSN),
+ utlDEFINE_EXTENDED_AT_COMMAND("+GOI", NULL, "+GOI", atParserShellGetFunction, atParserShellSetFunction),
+ utlDEFINE_EXTENDED_AT_COMMAND("+GCAP", NULL, "+GCAP", atParserShellGetFunction, atParserShellSetFunction),
+ utlDEFINE_EXTENDED_AT_COMMAND("+GCI", NULL, "+GCI", atParserShellGetFunction, atParserShellSetFunction),
+ utlDEFINE_EXTENDED_AT_COMMAND("+IPR", plusIPR_params, "+IPR: (0,1200,9600),(0,50,75,110,134,150,200,300,600,1200,1800,2400,4800,7200,9600,14400,19200,28800,38400,57600,76800,115200,230400)", atParserShellGetFunction, atParserShellSetFunction),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ICF", plusICF_params, "+ICF: (0-6),(0-3)", atParserShellGetFunction, atParserShellSetFunction),
+ utlDEFINE_EXTENDED_AT_COMMAND("+IFC", plusIFC_params, "+IFC: (0-3),(0-2)", atParserShellGetFunction, atParserShellSetFunction),
+ utlDEFINE_EXTENDED_AT_COMMAND("+IDSR", plusIDSR_params, "+IDSR: (0-2)", atParserShellGetFunction, atParserShellSetFunction),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+EXAMPLE", plusEXAMPLE_params, "+EXAMPLE: (0-9)", atParserShellGetFunction, atParserShellSetFunction),
+ utlDEFINE_EXACTION_AT_COMMAND("^HVER", NULL, "^HVER", ciGetHVER),
+
+ /*For "AT" command */
+ utlDEFINE_BASIC_AT_COMMAND(" ", NULL, ciAT),
+
+ //
+ // Call Control
+ //
+ utlDEFINE_BASIC_AT_COMMAND("A", A_params, ciAnswerCall),
+ utlDEFINE_BASIC_AT_COMMAND("D", D_params, ciMakeCall),
+ utlDEFINE_BASIC_AT_COMMAND("H", H_params, ciReleaseCall),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MVSYNAUD", NULL, NULL, NULL, ciSyncAudio),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CDU", plusCDU_params, "+CDU: \"sip\", \"tel\", \"urn\"", ciMakeCallU, ciMakeCallU),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CMOD", plusCMOD_params, ciCallModeReq, ciCallModeReq, ciCallModeReq),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CBST", plusCBST_params, ciSelectBST, ciSelectBST, ciSelectBST),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CVHU", plusCVHU_params, "+CVHU: (0-2)", ciCVHU, ciCVHU),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CRLP", plusCRLP_params, ciSelRLP, ciSelRLP, ciSelRLP),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CMUT", plusCMUT_params, ciMute, ciMute, ciMute),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ECHUPVT", eCHUPVT_params, "+ECHUPVT: (0-127)", ciHangupVT,ciHangupVT),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CTTY", plusCTTY_params, ciConfTTY, ciConfTTY, ciConfTTY),
+
+
+ //
+ // Network Service Related
+ //
+ utlDEFINE_EXTENDED_AT_COMMAND("+CREG", plusCREG_params, "+CREG: (0-3)", ciRegStatus, ciRegStatus),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CIND", NULL, "+CIND: (\"signal\",(0-5))", ciIndStatus, ciIndStatus),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+COPS", plusCOPS_params, ciOperSel, ciOperSel, ciOperSel),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CPOL", plusCPOL_params, "+CPOL: (1-254),(0-2),<oper string>,<GSM_AcT>,<GSM_Compact_AcT>,<UTRAN_AcT>", ciPrefOper, ciPrefOper),
+ utlDEFINE_EXACTION_AT_COMMAND("+COPN", NULL, NULL, ciCOPN),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+CLCK", plusCLCK_params, "+CLCK: (\"CS\", \"PS\", \"PF\", \"SC\", \"AO\", \"OI\", \"OX\", \"AI\", \"IR\", \"NT\", \"NM\", \"NS\", \"NA\", \"AB\", \"AG\", \"AC\", \"FD\", \"PN\", \"PU\", \"PP\", \"PC\" )", ciCLCK, ciCLCK),
+
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CPWD", plusCPWD_params, ciPassword, ciPassword, ciPassword),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+CLIP", plusCLIP_params, "+CLIP: (0-1)", ciCLIP, ciCLIP),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CLIR", plusCLIR_params, "+CLIR: (0-2)", ciCallIDRes, ciCallIDRes),
+ utlDEFINE_EXTENDED_AT_COMMAND("+COLP", plusCOLP_params, "+COLP: (0-1)", ciCOLP, ciCOLP),
+ utlDEFINE_EXTENDED_AT_COMMAND("+COLR", plusCOLR_params, "+COLR? ", ciCOLR, ciCOLR),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CNAP", plusCNAP_params, "+CNAP: (0-1)", ciCNAP, ciCNAP),
+
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CCFC", plusCCFC_params, ciCallForward, ciCallForward, ciCallForward),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+CCWA", plusCCWA_params, "+CCWA: (0-1)", ciCallWaiting, ciCallWaiting),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CHLD", plusCHLD_params, "+CHLD:(0, 1, 1x, 2, 2x, 3, 4)[,<ect_number>]", ciHoldCall, ciHoldCall),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CUSD", plusCUSD_params, "+CUSD: (0-2)", ciCUSD, ciCUSD),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CAOC", plusCAOC_params, "+CAOC: (0-2)", ciAdviceOfCharge, ciAdviceOfCharge),
+ utlDEFINE_EXTENDED_AT_COMMAND("+VTS", plusVTS_params, "+VTS: <DTMF>, (300-600)", ciSendDTMF, ciSendDTMF),
+ utlDEFINE_EXTENDED_AT_COMMAND("+VTD", plusVTD_params, "+VTD: (0-65535), (0-65535)", ciVTD, ciVTD),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSSN", plusCSSN_params, "+CSSN: (0-1), (0-1)", ciCSSN, ciCSSN),
+ utlDEFINE_EXACTION_AT_COMMAND("+CLCC", NULL, NULL, ciCallList),
+ utlDEFINE_EXTENDED_EXACTION_VSYNTAX_AT_COMMAND("+CEER", NULL, ciErrorReport, ciErrorReport, ciErrorReport),
+ utlDEFINE_EXACTION_AT_COMMAND("+PEER", NULL, "+PEER:", ciPdpErrorReport),
+ utlDEFINE_EXACTION_AT_COMMAND("+CSQ", NULL, "+CSQ: (0-31,99),(0-7,99)", ciSignalQuality),
+ utlDEFINE_EXTENDED_AT_COMMAND("*REJCAUSE", starREJCAUSE_params, "*REJCAUSE: (0-2)", cistarREJCAUSE, cistarREJCAUSE),
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("+CEDRXS", plusCEDRXS_params, "+CEDRXS: (0-3),(1-9),<eDrx>", ciCEDRXS, ciCEDRXS), //27.007 rls14 7.40
+#else
+ utlDEFINE_EXTENDED_AT_COMMAND("+CEDRXS", plusCEDRXS_params, "+CEDRXS: (0-3),(1-5),<eDrx>", ciCEDRXS, ciCEDRXS), //27.007 rls14 7.40
+#endif
+ utlDEFINE_EXACTION_AT_COMMAND("+CEDRXRDP", NULL, "+CEDRXRDP", ciCEDRXRDP), //27.007 rls14 7.41
+
+ //
+ // Mobile Control and Status
+ //
+ utlDEFINE_EXACTION_AT_COMMAND("+CPAS", NULL, "+CPAS: (0,1,2,3,4,5,6)", ciDevStatus),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CFUN", plusCFUN_params, "+CFUN: (0,1,3,4,5,6),(0-1)", ciFuncSet, ciFuncSet),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CFUN", starCFUN_params, "*CFUN: (0,1,4,5,6,9),(0-1),(0,1),(0-63)", ciFuncCpConfig, ciFuncCpConfig),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CPIN", plusCPIN_params, "+CPIN: ", ciEnterPin, ciEnterPin),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZSEC", plusZSEC_params, "+ZSEC: ", ciZSEC, ciZSEC),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CPIN2", plusCPIN2_params, "+CPIN2: ", ciEnterPin2, ciEnterPin2),
+ utlDEFINE_EXTENDED_AT_COMMAND("+EPIN", NULL, "+EPIN: (0-3),(0-3),(0-10),(0-10)", ciGetPinRetryTimes, ciGetPinRetryTimes),
+ utlDEFINE_EXTENDED_AT_COMMAND("*SIMDETEC", starSIMDETEC_params, "*SIMDETEC: (1,2)", ciDetectSIM, ciDetectSIM),
+ utlDEFINE_EXTENDED_AT_COMMAND("^SPN", plusSPN_params, "^SPN: (list of supported < spn_type >)",ciGetSpn, ciGetSpn),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+CTZR", plusCTZR_params, "+CTZR: (0-2)", ciCTZR, ciCTZR),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CTZU", plusCTZU_params, "+CTZU:", ciCTZU, ciCTZU),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CTZR", plusCTZR_params, "*CTZR:", cistarCTZR, cistarCTZR),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CCLK", plusCCLK_params, "", ciCCLK, ciCCLK),
+ utlDEFINE_EXACTION_AT_COMMAND("*PINCNT", NULL, "", ciReadPINCNT),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CUAD", plusCUAD_params, "+CUAD: (0,1)", ciCUAD, ciCUAD), //27.007 rls14 8.49
+
+ // PB
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CPBS", plusCPBS_params, ciSelectPBStorage, ciSelectPBStorage, ciSelectPBStorage),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CPBR", plusCPBR_params, ciReadPB, ciReadPB, ciReadPB),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CPBW", plusCPBW_params, ciWritePB, ciWritePB, ciWritePB),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CPBR", plusCPBR_params, ciReadPBExt, ciReadPBExt, ciReadPBExt),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CPBS", plusCPBS_params, ciStarSelectPBStorage, ciStarSelectPBStorage, ciStarSelectPBStorage),
+
+ /*utlDEFINE_EXACTION_AT_COMMAND("+CNUM", NULL, "+CNUM: ", ciGetSubscriber),*/
+ //Added by Michal Bukai
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CPBF", plusCPBF_params, ciFindPBEntries, ciFindPBEntries, ciFindPBEntries),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSVM", plusCSVM_params, "+CSVM: <0-1>[,<number>[,<129,145,161,177,193,241>]]", ciCSVM, ciCSVM),
+
+ // SIM
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CSIM", plusCSIM_params, ciGenericAccessSim, ciGenericAccessSim, ciGenericAccessSim),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CRSM", plusCRSM_params, ciRestrictedAccessSIM, ciRestrictedAccessSIM, ciRestrictedAccessSIM),
+//Michal Bukai - ISIM/NFC support - START
+ utlDEFINE_EXTENDED_AT_COMMAND("+CGLA", plusCGLA_params, "+CGLA: <sessionid>,<lengh>,<cmd>", ciCGLA, ciCGLA),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CRLA", plusCRLA_params,
+ "+CRLA: <sessionid>,<cmd>[,<fieldid>[,<p1>,<p2>,<p3>[,<data>]]]", ciCRLA, ciCRLA),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CCHO", plusCCHO_params, "+CCHO: <dfname>", ciCCHO, ciCCHO),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CCHC", plusCCHC_params, "+CCHC: <sessionid>", ciCCHC, ciCCHC),
+//Michal Bukai - ISIM/NFC support - END
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+MSTK", plusMSTK_params, ciSTK, ciSTK, ciSTK),
+ utlDEFINE_EXTENDED_AT_COMMAND("*EUICC", NULL, "*EUICC:", ciEUICC, ciEUICC),
+
+ // Call Meter
+ utlDEFINE_EXTENDED_AT_COMMAND("+CACM", plusCACM_params, "+CACM:(0 - FFFFFF)", ciAccumReq, ciAccumReq),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CAMM", plusCAMM_params, "+CAMM:(000000 - FFFFFF)", ciAccumMaxReq, ciAccumMaxReq),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CCWE", plusCCWE_params, "+CCWE:(0,1)", ciCCWE, ciCCWE),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ADMINDATA", NULL, "*ADMINDATA?", ciADMINDATA, ciADMINDATA),
+
+ //
+ // Packet Domain
+ //
+ utlDEFINE_EXTENDED_AT_COMMAND("+CGREG", plusCGREG_params, "+CGREG: (0-3)", ciPSRegStatus, ciPSRegStatus),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGATT", plusCGATT_params, ciPSAttach, ciPSAttach, ciPSAttach),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZGACT", plusCGACT_params, "+ZGACT: (0,1)", ciZPDPActivate, ciZPDPActivate),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CGACT", plusCGACT_params, "+CGACT: (0,1)", ciPDPActivate, ciPDPActivate),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CGDATA", plusCGDATA_params, "+CGDATA: (\"\"), ( 1-" utlStringize(CI_PS_MAX_PDP_CTX_NUM) ")", NULL, ciEnterData),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+ZGDCONT", plusZGDCONT_params,ciSetZContext, ciSetZContext, ciSetZContext),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*ZGDCONT", starZGDCONT_params, ciSetStarZContext, ciSetStarZContext, ciSetStarZContext),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+ZGDCONTEX", plusZGDCONTEX_params,ciSetZConfEx, ciSetZConfEx, ciSetZConfEx),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*NETMASK", plusNETMASK_params,ciSetNetmask, ciSetNetmask, ciSetNetmask),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*MTU", starMTU_params,ciMTUConfig, ciMTUConfig, ciMTUConfig),
+
+
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGDCONT", plusCGDCONT_params,ciSetContext, ciSetContext, ciSetContext),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGDSCONT", plusCGDSCONT_params, ciSetSContext, ciSetSContext, ciSetSContext),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGQMIN", plusCGQMIN_params, ciSetMinQOS, ciSetMinQOS, ciSetMinQOS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGQREQ", plusCGQREQ_params, ciSetReqQOS, ciSetReqQOS, ciSetReqQOS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGEQREQ", plusCGEQREQ_params, ciSet3GQOS, ciSet3GQOS, ciSet3GQOS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGEQMIN", plusCGEQMIN_params, ciSet3GminQOS, ciSet3GminQOS, ciSet3GminQOS),
+ utlDEFINE_EXTENDED_AT_COMMAND("*REPORTIP", plusREPORTIP_params, NULL, ciReportIP, ciReportIP),
+ utlDEFINE_EXTENDED_AT_COMMAND("*RZGDCONT", starRZGDCONT_params, NULL, ciReportZgdcont, ciReportZgdcont),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+GETIP", plusGETIP_params, NULL, ciReturnIp, ciReturnIp),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*TGSINK", plusTGSINK_params, ciGpTGSINK, ciGpTGSINK, ciGpTGSINK),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*TGSINK", plusTGSINK_params, ciGpTGSINK, ciGpTGSINK, ciGpTGSINK),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+CGSEND", plusCGSEND_params, "+CGSEND: (0-20000)", ciCGSend, ciCGSend),
+
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*ICSSINK", plusICSSink_params, ciCsDataSink, ciCsDataSink, ciCsDataSink),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+ZGPCOAUTH", plusZAUTHReq_params,ciZAUTHReq, ciZAUTHReq, ciZAUTHReq),
+ utlDEFINE_EXTENDED_AT_COMMAND("*AUTHReq", plusAUTHReq_params,"*AUTHReq: <cid>,<type>(0-None;1-PAP;2-CHAP),<UserName>,<Password>", ciAUTHReq, ciAUTHReq),//Michal Bukai - PAP_CHAP support (PDP Authentication)
+ // Commands from TIA IS 101
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+FCLASS", plusFCLASS_params, ciFaxClass, ciFaxClass, ciFaxClass),
+
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("+C5GREG",plusC5GREG_params, "+C5GREG:(0-3)", ciC5GREG, ciC5GREG), //rls16 10.1.47
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+C5GQOS",plusC5GQOS_params, ciC5GQOS, ciC5GQOS, ciC5GQOS), //rls16 10.1.49
+ utlDEFINE_EXTENDED_AT_COMMAND("+CRUEPOLICY",plusCRUEPOLICY_params, "+CRUEPOLICY", ciCRUEPOLICY, ciCRUEPOLICY), //rls16 10.1.51
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSUEPOLICY",plusCSUEPOLICY_params, "+CSUEPOLICY", ciCSUEPOLICY, ciCSUEPOLICY), //rls16 10.1.52
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMICO",plusCMICO_params, "+CMICO:(0-2),(0,1)", ciCMICO, ciCMICO), //rls16 10.1.54
+ utlDEFINE_EXTENDED_AT_COMMAND("+CLADN",plusCLADN_params, "+CLADN:(0,1)", ciCLADN, ciCLADN), //rls16 10.1.61
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+C5GNSSAI", plusC5GNSSAI_params, ciDefaultNssai, ciDefaultNssai, ciDefaultNssai), //rls16 10.1.62
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+C5GNSSAIRDP", plusC5GNSSAIRDP_params, ciGetNssai, ciGetNssai, ciGetNssai), //rls16 10.1.63
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+C5GPNSSAI", plusC5GPNSSAI_params, ciPreferredNssai, ciPreferredNssai, ciPreferredNssai), //rls16 10.1.64
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*APPSTART", starAPPSTART_params, "*APPSTART", ciAPPSTART, ciAPPSTART),
+ utlDEFINE_EXTENDED_AT_COMMAND("*SETUEOSID", starSETUEOSID_params, "*SETUEOSID", ciSETUEOSID, ciSETUEOSID),
+ utlDEFINE_EXTENDED_AT_COMMAND("*UTTEST", starUTTest_params, "*UTTEST: <1,0>, <1,2>, <1-3>, <1-0x7FFFFFFF>", ciUTTest, ciUTTest),
+ utlDEFINE_EXTENDED_AT_COMMAND("+C5GCAPA",plusC5GCAPA_params, "+C5GCAPA:(0-14),(15-29),(0,1)", ciC5GCAPA, ciC5GCAPA),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CWUS",plusCWUS_params, "+CWUS:(0-2),(0-255)", ciCWUS, ciCWUS),
+ utlDEFINE_EXTENDED_AT_COMMAND("*overheat", starOverheat_params, "*overheat: (0-3)", ciOverheat, ciOverheat),
+ utlDEFINE_EXTENDED_AT_COMMAND("*voltagefreq", starVoltageFreq_params, "*voltagefreq: (0-1)", ciVoltageFreq, ciVoltageFreq),
+ utlDEFINE_EXTENDED_AT_COMMAND("+C5GURSPQRY", plus5GURSPQRY_params, "+C5GURSPQRY", ciC5GURSPQRY, ciC5GURSPQRY),
+#ifdef CTCC_SLICING_FEATURE
+ utlDEFINE_EXTENDED_AT_COMMAND("+Z5GTD", plus5GURSPQRY_params, "+Z5GTD", ciZ5GTD, ciZ5GTD),
+#endif
+
+#endif
+
+ //
+ // SMS
+ //
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMGF", plusCMGF_params, "+CMGF: (0,1)", ciMsgFormat, ciMsgFormat),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CMGF", starCMGF_params, "*CMGF: proxyID[,0/1]", ciStarMsgFormat, ciStarMsgFormat),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CSCS", starCSCS_params, ciStarCSCS, ciStarCSCS, ciStarCSCS),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMSS", plusCMSS_params, NULL, ciSendStoredMsg, ciSendStoredMsg),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMGS", plusCMGS_params, NULL, ciSendMsg, ciSendMsg),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMGC", plusCMGC_params, NULL, ciSendCommand, ciSendCommand),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMGR", plusCMGR_params, NULL, ciReadMsg, ciReadMsg),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMGW", plusCMGW_params, NULL, ciStoreMsg, ciStoreMsg),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSCA", plusCSCA_params, NULL, ciSrvCenterAddr, ciSrvCenterAddr),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSCB", plusCSCB_params, "+CSCB:(0,1)", ciSelectCbMsgType, ciSelectCbMsgType),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CNMI", plusCNMI_params, "+CNMI: (0-2),(0-3),(0,2,3),(0-1),(0-1)", ciNewMsgInd, ciNewMsgInd),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CGSMS", plusCGSMS_params, "+CGSMS: (0-3)", ciSetMoService, ciSetMoService),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CMMS", plusCMMS_params, ciSetMoreMsgToSend, ciSetMoreMsgToSend, ciSetMoreMsgToSend),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CMGD", plusCGMD_params, ciDeleteMsg, ciDeleteMsg, ciDeleteMsg),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CMGL", plusCMGL_params, ciListMsg, ciListMsg, ciListMsg),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CSMS", plusCSMS_params, ciSelectSmsSrv, ciSelectSmsSrv, ciSelectSmsSrv),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CPMS", plusCPMS_params, ciPrefStorage, ciPrefStorage, ciPrefStorage),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSDH", plusCSDH_params, "+CSDH: (0,1)", ciShowTextParam, ciShowTextParam),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CNMA", plusCNMA_params, ciNewMsgAck, ciNewMsgAck, ciNewMsgAck),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CSMP", plusCSMP_params, ciSetTextModeParam, ciSetTextModeParam, ciSetTextModeParam),
+ utlDEFINE_EXACTION_AT_COMMAND("*RCACHEDSMS", NULL, "*RCACHEDSMS", ciReportCachedSMS),
+ utlDEFINE_EXTENDED_AT_COMMAND("^LKSMSSTA", plusLKSMSSTA_params, "^LKSMSSTA: (0-1)", ciLockSMSStatus, ciLockSMSStatus),
+
+ // Non 3GPP ACTION COMMAND
+ utlDEFINE_EXACTION_AT_COMMAND("+CGCI", NULL, "+CGCI", atParserShellGetFunction),
+ utlDEFINE_EXACTION_AT_COMMAND("+CGOI", NULL, "+CGOI", atParserShellGetFunction),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+VDUMP", plusVDUMP_params, "+VDUMP: (0-8)", vDump, vDump),
+ utlDEFINE_EXTENDED_AT_COMMAND("+LOG", plusLOG_params, "+log: (0-255)", vLog, vLog),
+ utlDEFINE_EXTENDED_AT_COMMAND("+VPDUS", plusVPDUS_params, "+VPDUS:(0,1)", vPDUS, vPDUS),
+ utlDEFINE_EXTENDED_AT_COMMAND("+VHDL", NULL, "+VHDL: (Show Handle)", vHDL, vHDL),
+ utlDEFINE_EXTENDED_AT_COMMAND("+VECHO", plusVECHO_params, "+VECHO: ", vECHO, vECHO),
+ utlDEFINE_EXTENDED_AT_COMMAND("+APLOG", plusAPLOG_params, "+APLOG: (0-255)", apLog, apLog),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+RDUP", plusRDUP_params, "+RDUP: (0-1)", ciRdup, ciRdup),
+
+ // debug atcommand for +cgsend *tgsink.
+ utlDEFINE_EXTENDED_AT_COMMAND("+ATDB", plusATDB_params, "+ATDB: <fun:1-+CGSEND, 2-*TGSINK>, <value>", atdb, atdb),
+
+ // Enter the engineering mode
+ //utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGED", plusCGED_params, ciCGED, ciCGED, ciCGED),
+
+ // ADDED BY Danfeng to deregister from CCI
+ utlDEFINE_EXTENDED_AT_COMMAND("*CCIREG", plusCCIREG_params, "*CIREG: 0", cciReg, cciReg),
+
+ /*Start - Michal Bukai */
+ //utlDEFINE_EXTENDED_AT_COMMAND("+CMUT", plusCMUT_params, "+CMUT: (0,1)", ciCMUT, ciCMUT),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CPUC", plusCPUC_params, "+CPUC: <currency>, <ppu>, <PIN2>", ciCPUC, ciCPUC),
+ utlDEFINE_EXACTION_AT_COMMAND("+CHUP", NULL, "+CHUP: ", ciCHUP),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSTA", plusCSTA_params, "+CSTA: (129,145,161,177)", ciCSTA, ciCSTA),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CRC", plusCRC_params, "+CRC: (0,1)", ciCRC, ciCRC),
+ //utlDEFINE_EXTENDED_AT_COMMAND("+CR", plusCR_params, "+CR: (0,1)", ciCR, ciCR),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMEE", plusCMEE_params, "+CMEE: (0-2)", ciCMEE, ciCMEE),
+ //utlDEFINE_EXTENDED_AT_COMMAND("+CIND", plusCIND_params, "+CIND: (\"signal\",(0-5)),(\"service\",(0-1)),(\"message\",(0-1)),(\"call\",(0-1)),(\"roam\",(0-1))", ciCIND, ciCIND),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMER", plusCMER_params, "+CMER: (3), (0), (0), (0), (0)", ciCMER, ciCMER),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMEC", plusCMEC_params, "+CMEC: (0), (0), (0), (0)", ciCMEC, ciCMEC),
+ utlDEFINE_EXACTION_AT_COMMAND("+CLAC", NULL, "+CLAC: ", ciCLAC),/* APSE code for AT+CLAC command*/
+ //utlDEFINE_EXACTION_AT_COMMAND("+CEER", NULL, "+CEER: ", ciCEER),
+ utlDEFINE_EXACTION_AT_COMMAND("+CBC", NULL, "+CBC:(0-3),(0-100)", ciCBC),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+CDIP", plusCDIP_params, "+CDIP: (0-1)", ciCDIP, ciCDIP),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CPLS", plusCPLS_params, "+CPLS: (0-2)", ciCPLS, ciCPLS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGCMOD", plusCGCMOD_params, ciModifyContext, ciModifyContext, ciModifyContext),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CNUM", plusCNUM_params, ciCNUM, ciCNUM, ciCNUM),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+DS", plusDS_params, ciDS, ciDS, ciDS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGTFT", plusCGTFT_params, ciCGTFT, ciCGTFT, ciCGTFT),
+ //utlDEFINE_EXACTION_AT_COMMAND("*CPRST", NULL, "*CPRST: ", ciSilentReset),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*BAND", plusBAND_params, ciBAND, ciBAND, ciBAND),
+ utlDEFINE_EXTENDED_AT_COMMAND("*BANDIND", plusBANDIND_params, "*BANDIND: (0,1)", ciBANDIND, ciBANDIND),
+ utlDEFINE_EXTENDED_AT_COMMAND("+WS46", plusWS46_params, "+WS46: (12,22,25,28,29,30,31)", ciWS46, ciWS46),
+ /*MEP and UDP property AT commands*/
+ //utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CLCK", plusCLCK_params, ciCLCK, ciCLCK, ciCLCK),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CLCK", plusMEPCLCK_params, ciMEPCLCK, ciMEPCLCK, ciMEPCLCK),
+ utlDEFINE_EXACTION_AT_COMMAND("+ZVN", NULL, NULL, ciZVN),
+ // Display operator
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZDON", NULL, "+ZDON?", ciZDON, ciZDON),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZPAS", NULL, "+ZPAS?", ciZPAS, ciZPAS),
+
+#ifdef CUSTZ
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+LOCKLEVEL", plusLOCKLEVEL_params, ciLOCKLEVEL, ciLOCKLEVEL, ciLOCKLEVEL),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+ZNCK", plusZNCK_params, ciZNCK, ciZNCK, ciZNCK),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ZAIRINFO", NULL, "*ZAIRINFO:", ciZAIRINFO, ciZAIRINFO),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ZCQI", NULL, "*ZCQI:", ciZCQI, ciZCQI),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ZFACTORY", NULL, "*ZFACTORY", ciZFactoryReset, ciZFactoryReset),
+ // Configuration of Network Selection Mode
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+ZSNT", plusZSNT_params, ciZSNT, ciZSNT, ciZSNT),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+ZCAINFO", NULL, ciZCAINFO, ciZCAINFO, ciZCAINFO),
+ utlDEFINE_EXACTION_VSYNTAX_AT_COMMAND("+ZRSSI", plusCESQ_params, ciZRSSI, ciZRSSI),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZNLOCKBAND", plusZNLOCKBAND_params, "+ZNLOCKBAND=<lte_band_enable>,<gw_band_enable>,<lte_band_mask>,<gw_band_mask>", ciZNLOCKBAND, ciZNLOCKBAND),
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZNLOCKNRBAND", plusZNLOCKNRBAND_params, "+ZNLOCKNRBAND=<type>,<band>", ciZNLOCKNRBAND, ciZNLOCKNRBAND),
+#endif
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+ZCELLINFO", NULL, ciZCELLINFO, ciZCELLINFO, ciZCELLINFO),
+ utlDEFINE_EXACTION_AT_COMMAND("+ZSTM", NULL, NULL, ciZSTM),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZSELM", plusZSELM_params, "+ZSELM:<menu_item_id>", ciZSELM, ciZSELM),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZSELI", plusZSELI_params, "+ZSELI:<item_id>", ciZSELI, ciZSELI),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZBK", plusZBK_params, "+ZBK:<id>", ciZBK, ciZBK),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZINKR", plusZINKR_params, "+ZINKR:<input_dcs>,<input_text>", ciZINKR, ciZINKR),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZINPR", plusZINKR_params, "+ZINPR:<input_dcs>,<input_text>", ciZINPR, ciZINPR),
+ utlDEFINE_EXACTION_AT_COMMAND("+ZDISTR", NULL, NULL, ciZDISTR),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZNITZ", NULL, "+ZNITZ:", ciZNITZ, ciZNITZ),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZSYNCNITZ", plusZSYNCNITZ_params, "+ZSYNCNITZ:(0,1)", ciZSYNCNITZ, ciZSYNCNITZ),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZDOGREF", plusZDOGREF_params, "+ZDOGREF:(0-65535)", ciZDOGREF, ciZDOGREF),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZATNUM", NULL, "+ZATNUM:", ciZATNUM, ciZATNUM),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZDHCPLEASE", plusZDHCPLEASE_params, "+ZDHCPLEASE", ciZDHCPLEASE, ciZDHCPLEASE),
+ utlDEFINE_EXTENDED_AT_COMMAND("+GEFLAG", plusGEFLAG_params, "+GEFLAG", ciGEFLAG, ciGEFLAG),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZCFG", plusZCFG_params, "+ZCFG", ciZCFG, ciZCFG),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZROAM", plusZROAM_params, "+ZROAM", ciZROAM, ciZROAM),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZVMAIL", NULL, "+ZVMAIL?", ciZVMAIL, ciZVMAIL),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZGDFLT", plusZGDFLT_params, "+ZGDFLT: <mode:0/1>,[<PDP_type:ip/ipv6/ipv4v6>,[<Roming_PDP_type:ip/ipv6/ipv4v6>,[<APN>,[<emg_ind:0/1>,[<ipcp_req:0/1>,[<pcscf_v6:0/1>,[<imcn_sig:0/1>,[<dns_v6:0/1>,[<nw_bear:0/1>,[<dsm_v6_ha:0/1>,[<dsm_v6_pref:0/1>,[<dsm_v6_ha_v4:0/1>,[<ip_via_nas:0/1>,[<ip_via_dhcp::0/1>,[<pcscf_v4:0/1>,[<dns_v4:0/1>,[<msisdn:0/1>,[<ifom:0/1>,[<v4mtu:0/1>,[<local_tft:0/1>, [<etifFlag>]]]]]]]]]]]]]]]]]", ciZGDFLT, ciZGDFLT),
+ utlDEFINE_EXACTION_AT_COMMAND("*ZCGMR", NULL, "*ZCGMR", ciZCGMR),
+#endif
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*MEPCG", plusMEPCG_params, ciMEPCG, ciMEPCG, ciMEPCG),
+ //utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*ULCK", plusULCK_params, ciULCK, ciULCK, ciULCK),
+ //utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*UCPWD", plusUCPWD_params, ciUCPWD, ciUCPWD, ciUCPWD),
+ //utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*UASLM", plusUASLM_params, ciUASLM, ciUASLM, ciUASLM),
+ utlDEFINE_EXTENDED_EXACTION_AT_COMMAND("*ENVSIM", NULL, "*ENVSIM:", ciEnVsim, ciEnVsim),
+ //utlDEFINE_EXACTION_AT_COMMAND("*RST", NULL, "*RST: ", ciRST),
+ //utlDEFINE_EXTENDED_AT_COMMAND("*CalStatus", plusCalStatus_params,"*READ_CAL_STATUS:(0,1)", ciCalStatus, ciCalStatus),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CNMA", plusNewMsgAck_params,"*CNMA:(0-2)", ciNewMsgAckStar, ciNewMsgAckStar),
+ /*End - Michal Bukai */
+ utlDEFINE_EXTENDED_AT_COMMAND("*POWERIND", plusPOWERIND_params, "*POWERIND: (0-31)", ciPOWERIND, ciPOWERIND),
+ utlDEFINE_EXTENDED_AT_COMMAND("*APPOWERIND", plusAPPOWERIND_params, "*APPOWERIND: (0-1)", ciAPPOWERIND, ciAPPOWERIND),
+
+ utlDEFINE_EXACTION_AT_COMMAND("*FASTDORM", NULL, "*FASTDORM: ", ciFastDormancy),
+ // Enter the engineering mode
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+EEMOPT", plusEEMOPT_params, ciEEMOPT, ciEEMOPT, ciEEMOPT),
+ utlDEFINE_EXTENDED_AT_COMMAND("+EEMGINFO", plusEEMGINFO_params, "+EEMGINFO:", ciEEMGINFO, ciEEMGINFO),
+
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+ERGA", plusERGA_params, ciRunGSMAlgorithm, ciRunGSMAlgorithm, ciRunGSMAlgorithm),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+ERTCA", plusERTCA_params, ciRunTContextAuth, ciRunTContextAuth, ciRunTContextAuth),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+LPNWUL", plusLPNWUL_params, ciLPNWUL, ciLPNWUL, ciLPNWUL),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+LPLOCVR", plusLPLOCVR_params, ciLPLOCVR, ciLPLOCVR, ciLPLOCVR),
+ utlDEFINE_EXACTION_AT_COMMAND("+LPECID", NULL, "+LPECID: ", ciLPECID),
+ utlDEFINE_EXACTION_AT_COMMAND("+LPOTDOAABORT", NULL, "+LPOTDOAABORT: ", ciLPOTDOAABORT),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+LPOTDOAREQ", plusLPOTDOAREQ_params, ciLPOTDOAREQ, ciLPOTDOAREQ, ciLPOTDOAREQ),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CELL", starCELL_params, "*CELL:<mode>,<act>,<band>,<freq>,<cellId>,<scs>", ciCellLock, ciCellLock),
+#ifdef AT_PRODUCTION_CMNDS
+ // Add in here Production Mode commands only
+ utlDEFINE_EXACTION_AT_COMMAND("*SYSSLEEP", NULL, "*SYSSLEEP: ", SysSleep),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CP_MIPS", starMRD_MIPS_params, "*CP_MIPS=<a>,<f>[,<v>,<d>]", AtMrdMips, AtMrdMips), // store or delete a communication data file (CDF) to the MRD
+ utlDEFINE_EXTENDED_AT_COMMAND("*MRD_ADF", starMRD_ADF_params, "*MRD_ADF=<a>,<f>[,<v>,<d>]", AtMrdAdf, AtMrdAdf), // store or delete a communication data file (CDF) to the MRD
+ utlDEFINE_EXTENDED_AT_COMMAND("*MRD_CDF", starMRD_CDF_params, "*MRD_CDF=<a>,<f>[,<v>,<d>]", AtMrdCdf, AtMrdCdf), // store or delete a communication data file (CDF) to the MRD
+ utlDEFINE_EXTENDED_AT_COMMAND("*MRD_SN", starMRD_SN_params, "*MRD_SN=<a>,[<v>,<d>,<s>]", AtMrdSn, AtMrdSn), // write, read or delete the serial number to/from the MRD
+ utlDEFINE_EXTENDED_AT_COMMAND("*MRD_IMEI", starMRD_IMEI_params, "*MRD_IMEI=<a>[,<v>,<d>,<s>,<n>]", AtMrdImei, AtMrdImei), // write, read or delete the IMEI number.
+ utlDEFINE_EXTENDED_AT_COMMAND("*CALINFO", starCALINFO_params, "*CALINFO=<a>,[<type>,<value>]", AtCalInfo, AtCalInfo),
+ utlDEFINE_EXTENDED_AT_COMMAND("*MRD_MEP", starMRD_MEP_params, "*MRD_MEP=<a>[,<v>,<d>,<cat>,<s1>[,<s2>[,<s3>,<s4>[,<s5>,<s6>,<s7>[,<s8>,<s9>[,<n>]]]]]]", AtMrdMep, AtMrdMep), // write, read or delete the MEP data.
+ utlDEFINE_EXTENDED_AT_COMMAND("*MRD_WIFIID", starMRD_WIFIID_params, "*MRD_WIFIID=<a>[,<v>,<d>,<s>]", AtMrdWifiId, AtMrdWifiId), // write, read or delete the Wifi MAC address.
+ utlDEFINE_EXTENDED_AT_COMMAND("*MRD_BTID", starMRD_BTID_params, "*MRD_BTID=<a>[,<v>,<d>,<s>]", AtMrdBtId, AtMrdBtId), // write, read or delete the bluetooth ID.
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*MRD_VEND", starMRD_VEND_params, AtMrdVend, AtMrdVend, AtMrdVend), // write, read or delete the PS_VENDOR_SPECIFIC_FEATURE in COMCfg.csv
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*MRD_BAND", starMRD_BAND_params, AtMrdBand, AtMrdBand, AtMrdBand), // write, read or delete band configuration in COMCfg.csv
+ utlDEFINE_EXTENDED_AT_COMMAND("*MRD_LANMAC", starMRD_LANMAC_params, "*MRD_LANMAC=<a>[,<v>,<d>,<s>]", AtMrdLanMAC, AtMrdLanMAC), // write, read or delete the LAN MAC address.
+ utlDEFINE_EXACTION_AT_COMMAND("*MRDBACKUP", NULL, "*MRDBACKUP", ATMRDBACKUP),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*PROD", starPROD_params, "*PROD=(0-2)", AtProd, AtProd), // enable/disable production mode
+ utlDEFINE_EXTENDED_AT_COMMAND("*SVC", starSVC_params, "*SVC=<a>,<s>", AtSvc, AtSvc), // burn svc state in Bit132~131 of bank0
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+LOCKNETLIST", starLOCKNETLIST_params, AtLockNetList, AtLockNetList, AtLockNetList), // Download lock net list.
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+INVERSESML", starINVERSESML_params, AtINVERSESML, AtINVERSESML, AtINVERSESML), // Download lock net list.
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+LOCKLIST", starLOCKLIST_params, AtLockList, AtLockList, AtLockList), // Read lock net list.
+ utlDEFINE_EXTENDED_AT_COMMAND("+UNLOCKKEY", starUnLockKEY_params, "+UNLOCKKEY=<a>[,<s>]", AtUnLockKey, AtUnLockKey), // write, read or delete the serial number to/from the MRD
+ utlDEFINE_EXTENDED_AT_COMMAND("*SYNC", NULL, "*SYNC", AtSync, AtSync),
+ utlDEFINE_EXTENDED_AT_COMMAND("*REBOOT", NULL, "*REBOOT", AtReboot, AtReboot),
+ utlDEFINE_EXTENDED_AT_COMMAND("*POWEROFF", NULL, "*POWEROFF", AtPoweroff, AtPoweroff),
+ utlDEFINE_EXTENDED_AT_COMMAND("*FASTBOOT", NULL, "*FASTBOOT", AtFastboot, AtFastboot),
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("+OOSPP", OOSPP_params, NULL, AtOospp, AtOospp),
+#endif
+
+#if 0//ndef PXA1826SPI_TELE
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+GPSSTEST", starGPSTEST_params, AtGnssTest, AtGnssTest, AtGnssTest),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*GPSTEST", starGPSTEST_params, AtGpsTest, AtGpsTest, AtGpsTest),
+ utlDEFINE_EXACTION_AT_COMMAND("*GPSRST", NULL, "*GPSRST: ", GpsReset),
+#endif
+ utlDEFINE_EXTENDED_AT_COMMAND("*TGCTRL", starTGCTRL_params, "*TGCTRL=<nw>,<op>,<value>[,<addr>]", ciTGCTRL, ciTGCTRL),
+ utlDEFINE_EXACTION_AT_COMMAND("*RFC", NULL, "*RFC", DiagCommand),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*MRD_DUMP", starMRD_DUMP_params, "*MRD_DUMP=<partition>,<path>", AtMrdDump, AtMrdDump), // dump MRD image
+#ifdef MNV_SUPPORT
+ utlDEFINE_EXTENDED_AT_COMMAND("*CPMRD_DUMP", starCPMRD_DUMP_params, "*CPMRD_DUMP=<partition>,<path>", AtCpMrdDump, AtCpMrdDump), // dump CPMRD image
+#endif
+#ifdef SECURE_MRD
+ utlDEFINE_EXTENDED_AT_COMMAND("*MRD_AUTH", starMRD_AUTH_params, "*MRD_AUTH[=<r>,<pke>,<sm>]", AtMrdAuth, AtMrdAuth),
+#endif
+ utlDEFINE_EXTENDED_AT_COMMAND("+FUELGAIC", FUELGAIC_params, "+FUELGAIC:(0-1)", AtFuelGaic, AtFuelGaic),
+ utlDEFINE_EXACTION_AT_COMMAND("*MRD_LIST", NULL, "*MRD_LIST: ", AtMrdList),
+
+ //TX/RX power
+ utlDEFINE_EXTENDED_AT_COMMAND("*TDTR", starTDTR_params, "*TDTR=<op>[,<gain>,<freq>]", ciTDTR, ciTDTR), /* request to set Tx/Rx on TD */
+ utlDEFINE_EXTENDED_AT_COMMAND("*GSMTR", starGSMTR_params, "*GSMTR=<op>[,<band>,<arfcn>,<afcDac>[,<txRampScale>,<rxGainCode>]]", ciGSMTR, ciGSMTR), /* request to set Tx/Rx on GSM */
+ utlDEFINE_EXTENDED_AT_COMMAND("*WBTR", starWBTR_params, "*WBTR=<op>[,<dlUarfcn>,<ulUarfcn>[,<paMode>[,<apcDac>[,<afcDac>]]]]", ciWBTR, ciWBTR), /* request to set Tx/Rx on WCDMA */
+ utlDEFINE_EXTENDED_AT_COMMAND("*MAXPOWER", starMaxPower_params, "*MAXPOWER=<op>,<para1>,<para2>", ciGsmWcdmaMaxPower, ciGsmWcdmaMaxPower), /* request to set Tx max power on GSM or WCDMA */
+ utlDEFINE_EXTENDED_AT_COMMAND("+LTEPOWER", plusLTEPOWER_params, "+LTEPOWER:<op>,<band>,<power>", ciLTEMaxPower, ciLTEMaxPower),
+ utlDEFINE_EXTENDED_AT_COMMAND("*LTETR", starLteTR_params, "*LTETR=<op>,<channel>,<power>,<bandwidth>", ciLTETR, ciLTETR), /* request to set Tx/RX on LTE */
+#if defined(ATCMD_UNIFY_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("^SIMLOCK",SIMLOCK_params, NULL, AtSimLock, AtSimLock),
+ utlDEFINE_EXTENDED_AT_COMMAND("^SETLOCK",SETLOCK_params, NULL, AtSetLock, AtSetLock),
+ utlDEFINE_EXTENDED_AT_COMMAND("^MAXLCKTMS", MAXLCKTMS_params, "^MAXLCKTMS:(0-10)", AtMAXLCKTMS, AtMAXLCKTMS),
+ utlDEFINE_EXTENDED_AT_COMMAND("^TESTLOCK",TESTLOCK_params, NULL, AtTestLock, AtTestLock),
+#endif
+
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("*COMMTR", starCommTR_params, "*COMMTR=<nwMode>,<option>,<band>,<power>,<arfcn>,<bandWidth>,<slot>", ciCOMMTR, ciCOMMTR), /* request to set Tx/RX on LTE */
+ utlDEFINE_EXTENDED_AT_COMMAND("*FDNCHECK", starFdnCheck_params, "*FDNCHECK: <dial_str>", ciFdnCheck, ciFdnCheck),
+ utlDEFINE_EXTENDED_AT_COMMAND("*MORESMS", starMoreSms_params, "*MORESMS: (0,1)", ciMoreSms, ciMoreSms),
+#endif
+
+#endif
+
+#ifdef AT_LABTOOL_CMNDS
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+MVWFTST", plusMVWFTST_params, ciMVWFTST, ciMVWFTST, ciMVWFTST),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+MVWFIDRW", plusMVWFIDRW_params, ciMVWFIDRW, ciMVWFIDRW, ciMVWFIDRW),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+MVBTTST", plusMVBTTST_params, ciMVBTTST, ciMVBTTST, ciMVBTTST),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+MVBTIDRW", plusMVBTIDRW_params, ciMVBTIDRW, ciMVBTIDRW, ciMVBTIDRW),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+MVFMTST", plusMVFMTST_params, ciMVFMTST, ciMVFMTST, ciMVFMTST),
+#endif // AT_LABTOOL_CMNDS
+
+ utlDEFINE_EXACTION_AT_COMMAND("+CKPD", plusCKPD_params, "", ciCKPD),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CGSN", starCGSN_params, ciStarCGSN, ciStarCGSN, ciStarCGSN),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*MODEMTYPE", NULL, ciStarMODEMTYPE, ciStarMODEMTYPE, ciStarMODEMTYPE),
+ utlDEFINE_EXTENDED_AT_COMMAND("$VTS", dollarVTS_params, "$VTS: <DTMF>, (0,1)", ciSendLongDTMF, ciSendLongDTMF),
+ utlDEFINE_EXTENDED_AT_COMMAND("*MODEMRESET", starMODEMRESET_params, "*MODEMRESET:<resetInfo>,(0,1)", ciStarMODEMRESET, ciStarMODEMRESET),
+ utlDEFINE_EXTENDED_AT_COMMAND("*SWITCHMODEM", starSWITCHMODEM_params, "*SWITCHMODEM:(3,4)", ciStarSWITCHMODEM, ciStarSWITCHMODEM),
+ utlDEFINE_EXTENDED_AT_COMMAND("*HTCCTO", starHTCCTO_params, "*HTCCTO: <AT command>, (1-7), <timeout>", ciStarHTCCTO, ciStarHTCCTO),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMEMFULL", plusCMEMFULL_params, "+CMEMFULL: (0,1)", ciCMEMFULL, ciCMEMFULL),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*EHSDPA", starEHSDPA_params, ciStarEHSDPA, ciStarEHSDPA, ciStarEHSDPA),
+
+#ifdef OPHONE
+ //
+ // Ohone monitor
+ //
+ utlDEFINE_EXTENDED_AT_COMMAND("^DCTS", caretDCTS_params, "^DCTS: (0),(16,96)", ciDCTS, ciDCTS), /* mode switch of the MT between normal mode and test mode */
+ utlDEFINE_EXTENDED_AT_COMMAND("^DEELS", caretDEELS_params, "^DEELS: (0,1)", ciDEELS, ciDEELS), /* controls the presentation of the protocol status unsolicited result code ^DEELSI: <status>*/
+ utlDEFINE_EXTENDED_AT_COMMAND("^DEVEI", caretDEVEI_params, "^DEVEI: (0,1)", ciDEVEI, ciDEVEI), /* enable/disable the unsolicited result code "^DEVEI: <timestamp>,<operation type>,<id>" during the MMI cell test mode*/
+ utlDEFINE_EXTENDED_AT_COMMAND("^DNPR", caretDNPR_params, "^DNPR: (0,1),(0,65535)", ciDNPR, ciDNPR), /* enable/disable the unsolicited result code about wireless parameter to the TE*/
+ utlDEFINE_EXTENDED_AT_COMMAND("^DUSR", caretDUSR_params, "^DNPR: (0,1),(0,1)", ciDUSR, ciDUSR), /* enables or disables the presentation of unsolicited result response ^DUSRI: <signaling> when receiving the air interface signal from lower layer. */
+#endif
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+CIREG", plusCIREG_params, "+CIREG: (0-2)", ciIRegStatus, ciIRegStatus),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGEQOS",plusCGEQOS_params, ciSet4GQOS, ciSet4GQOS, ciSet4GQOS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CEREG",plusCEREG_params, ciERegStatus, ciERegStatus, ciERegStatus),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGCONTRDP",plusCGCONTRDP_params, ciCGCONTRDP,ciCGCONTRDP,ciCGCONTRDP),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGSCONTRDP",plusCGSCONTRDP_params, ciCGSCONTRDP, ciCGSCONTRDP, ciCGSCONTRDP),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGTFTRDP",plusCGTFTRDP_params, ciCGTFTRDP, ciCGTFTRDP, ciCGTFTRDP),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGEQOSRDP",plusCGEQOSRDP_params, ciCGEQOSRDP, ciCGEQOSRDP, ciCGEQOSRDP),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGEREP",plusCGEREP_params, ciCGEREP, ciCGEREP, ciCGEREP),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CVMOD",plusCVMOD_params, ciCVMOD, ciCVMOD, ciCVMOD),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CEMODE",plusCEMODE_params, ciCEMODE, ciCEMODE, ciCEMODE),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGPADDR",plusCGPADDR_params, ciCGPADDR, ciCGPADDR, ciCGPADDR),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGPIAF",plusCGPIAF_params, ciCGPIAF, ciCGPIAF, ciCGPIAF),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("^CACAP", NULL, ciCACAP, ciCACAP, ciCACAP),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CGCLASS", plusCGCLASS_params, ciCGCLASS, ciCGCLASS, ciCGCLASS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CESQ", plusCESQ_params, ciExtendedSignalQuality, ciExtendedSignalQuality, ciExtendedSignalQuality),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CESQ", plusCESQ_params, ciStarExtendedSignalQuality, ciStarExtendedSignalQuality, ciStarExtendedSignalQuality),
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSCON", plusCSCON_params, "+CSCON: (0-3)", ciCSCON, ciCSCON), //rls16 10.1.30
+#endif
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+BGLTEPLMN", plusBGLTEPLMN_params, ciOperSelLte, ciOperSelLte, ciOperSelLte),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*FDY", starFDY_params, "*FDY:(1),(1-2147483647),(1-2147483647),(1-2147483647),(1-2147483647)", ciStarFDY, ciStarFDY),
+ utlDEFINE_EXACTION_AT_COMMAND("^SYSINFO", NULL, "^SYSINFO:", ciSysInfo),
+
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*DIALE", starDIALE_params, "*DIALE: <number>, (0-31)", ciDialEmergency,ciDialEmergency),
+ utlDEFINE_EXACTION_AT_COMMAND("*CPBC", NULL, "*CPBC", ciGetPhoneBookCapacity),
+ utlDEFINE_EXACTION_AT_COMMAND("*FDNBYPASS", NULL, "*FDNBYPASS: ", ciFdnBypass),
+ utlDEFINE_EXACTION_AT_COMMAND("*RSTMEMFULL", NULL, "*RSTMEMFULL: ", ciRSTMemFull),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CSCB", starCSCB_params, "*CSCB:(0,1)", ciSelectCbMsgType, ciSelectCbMsgType),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CBMCS", starCBMCS_params, "*CBMCS:(0,1),[<disablecb:0/1>]", ciCbmChannelStatus, ciCbmChannelStatus),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*NASCHK", starNASCHK_params, "*NASCHK:(0,1)", ciStarNASCHK, ciStarNASCHK),
+ utlDEFINE_EXTENDED_AT_COMMAND("*USBT", starUSBT_params, "*USBT:(0,1)", ciUsbTether, ciUsbTether),
+ utlDEFINE_EXTENDED_AT_COMMAND("*MOBILEDATA", starMOBILEDATA_params, "*MOBILEDATA:(0,1),(0,1)", ciMobileData, ciMobileData),
+ utlDEFINE_EXACTION_AT_COMMAND("*GATR", NULL, "*GATR:", ciGetATR),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CGATT", starCGATT_params, "*CGATT:(0,1)", ciPsPowerOnAutoAttach, ciPsPowerOnAutoAttach),
+#if defined(ATCMD_UNIFY_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("*GRIP", starGRIP_params, "*GRIP:<type>,[<value>,nwmode,band,[bandwidth]]", ciGRIP, ciGRIP),
+#else
+ utlDEFINE_EXTENDED_AT_COMMAND("*GRIP", starGRIP_params, "*GRIP:<type>,[<value>,nwmode,band]", ciGRIP, ciGRIP),
+#endif
+ utlDEFINE_EXTENDED_AT_COMMAND("*PSPG", starPSPG_params, "*PSPG:(0,1)", ciPsPlusPaging, ciPsPlusPaging),
+ utlDEFINE_EXACTION_AT_COMMAND("*CGMR", NULL, "*CGMR", ciCGMR),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*COMCFG", starCOMCFG_params, "*COMCFG:<mode>,<tokens> or \
+ <UMTS_WB_AMR>,<GSM_WB_AMR>,<VENDOR>,<MANUFACTURE>,<LTE_CATEGORY>,<MULTISLOT_POWERPROFILE>,<LTE_SMS_ONLY>,<EC_SUPPORTED>,<EPCO_SUPPORTED>,<HCCP_SUPPORTED>,<MDRB_SUPPORTED>,<CP_BACKOFF>,<NSLP>,<EAB>,<ROHC>", ciCOMCFG, ciCOMCFG),
+
+#ifdef OPERATOR_VERIZON
+ //
+ // Operator - verizon specific
+ //
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CGATTC", starCGATTC_params, ciPSAttachWithCause, ciPSAttachWithCause, ciPSAttachWithCause),
+ utlDEFINE_EXTENDED_AT_COMMAND("+VZWRSRP", NULL, "+VZWRSRP?", ciVZWRSRP, ciVZWRSRP),
+ utlDEFINE_EXTENDED_AT_COMMAND("+VZWRSRQ", NULL, "+VZWRSRQ?", ciVZWRSRQ, ciVZWRSRQ),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*VZWTESTAPP", starVZWTESTAPP_params, ciVZWTESTAPP, ciVZWTESTAPP,ciVZWTESTAPP),
+ utlDEFINE_EXTENDED_AT_COMMAND("+VZWAPNE", plusVZWAPNE_params, "+VZWAPNE:<wapn>,<apncl>,<apnni>,<apntype>,<apnb>,<apned>,<apntime>", ciVZWAPNE, ciVZWAPNE),
+
+#endif
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*CGDFLT", starCGDFLT_params, "*CGDFLT: <mode:0/1>,[<PDP_type:ip/ipv6/ipv4v6>,[<APN>,[<emg_ind:0/1>,[<ipcp_req:0/1>,[<pcscf_v6:0/1>,[<imcn_sig:0/1>,[<dns_v6:0/1>,[<nw_bear:0/1>,[<dsm_v6_ha:0/1>,[<dsm_v6_pref:0/1>,[<dsm_v6_ha_v4:0/1>,[<ip_via_nas:0/1>,[<ip_via_dhcp::0/1>,[<pcscf_v4:0/1>,[<dns_v4:0/1>,[<msisdn:0/1>,[<ifom:0/1>,[<v4mtu:0/1>,[<local_tft:0/1>, [<etifFlag>]]]]]]]]]]]]]]]]]", ciCGDFLT, ciCGDFLT),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CGDFAUTH", starCGDFAUTH_params, "*CGDFAUTH:<mode>,<authProt>[,<username>,<password>]", ciCGDFAUTH, ciCGDFAUTH),
+ utlDEFINE_EXTENDED_AT_COMMAND("*LTEBAND", starLTEBAND_params, "*LTEBAND:", ciSetLTEBand, ciSetLTEBand),
+ utlDEFINE_EXTENDED_AT_COMMAND("*RFTEMP", starRFTEMP_params, "*RFTEMP:(0-3)", ciRFTemperatureRead, ciRFTemperatureRead),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CSQ", starCSQ_params, "*CSQ:(0-2),(0-65535)", ciCSQConfig, ciCSQConfig),
+ utlDEFINE_EXTENDED_AT_COMMAND("*LTECOEX", starLTECOEX_params, "*LTECOEX:", ciLteCoex, ciLteCoex),
+ /*eMBMS function*/
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("%MBMSCMD", starMBMS_params, ciMBMS, ciMBMS, ciMBMS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("%MBMSEV", starMBMSEv_params, ciMBMSEv, ciMBMSEv, ciMBMSEv),
+ /*eMBMS add end*/
+ utlDEFINE_EXTENDED_AT_COMMAND("+CEN", plusCEN_params, "+CEN: <reporting:0/1>", ciEmergencyNumbers, ciEmergencyNumbers),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CNEM", plusCNEM_params, "+CNEM: <reporting:0/1>", ciNwEmergencyBearerServices, ciNwEmergencyBearerServices),
+ utlDEFINE_EXACTION_AT_COMMAND("*SINR", NULL, "*SINR: ", ciSINR),
+ utlDEFINE_EXACTION_AT_COMMAND("*RSSI", NULL, "*RSSI: ", ciRSSI),
+ utlDEFINE_EXACTION_AT_COMMAND("*RSRP", NULL, "*RSRP: ", ciRSRP),
+ utlDEFINE_EXACTION_AT_COMMAND("*RSRPP", NULL, "*RSRPP: ", ciRSRPP),
+ utlDEFINE_EXACTION_AT_COMMAND("*RSRPS", NULL, "*RSRPS: ", ciRSRPS),
+ utlDEFINE_EXACTION_AT_COMMAND("*RSRQ", NULL, "*RSRQ: ", ciRSRQ),
+ utlDEFINE_EXACTION_AT_COMMAND("*RSRQP", NULL, "*RSRQP: ", ciRSRQP),
+ utlDEFINE_EXACTION_AT_COMMAND("*RSRQS", NULL, "*RSRQS: ", ciRSRQS),
+ utlDEFINE_EXACTION_AT_COMMAND("*CQI", NULL, "*CQI: ", ciCQI),
+ utlDEFINE_EXACTION_AT_COMMAND("*URSLCT", NULL, "*URSLCT", ciURSLCT),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CISRVCC", plusCISRVCC_params, "+CISRVCC: (0,1)", ciSrvccSupport, ciSrvccSupport),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CEVDP", plusCEVDP_params, "+CEVDP: (1-4)", ciEutranVoiceDomainPreference, ciEutranVoiceDomainPreference),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CVDP", plusCVDP_params, "+CVDP: (1-3)", ciUtranVoiceDomainPreference, ciUtranVoiceDomainPreference),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CEUS", plusCEUS_params, "+CEUS: (0, 1)", ciEpsUsageSetting, ciEpsUsageSetting),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CAVIMS", plusCAVIMS_params, "+CAVIMS: (0, 1)", ciImsVoiceCallAvailability, ciImsVoiceCallAvailability),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CASIMS", plusCASIMS_params, "+CASIMS: (0, 1)", ciImsSmsAvailability, ciImsSmsAvailability),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMMIVT", plusCMMIVT_params, "+CMMIVT: (1, 2)", ciMmImsVoiceTermination, ciMmImsVoiceTermination),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CIREP", plusCIREP_params, "+CIREP: (0, 1)", ciImsNwReportMode, ciImsNwReportMode),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSSAC", NULL, "+CSSAC", ciSsacStatus,ciSsacStatus),
+ utlDEFINE_EXTENDED_AT_COMMAND("*DONOF", NULL, "*DONOF", ciStarDONOF, ciStarDONOF),
+ utlDEFINE_EXTENDED_AT_COMMAND("*PWRPLMN", starPWRPLMN_params, "*PWRPLMN: (0-2)", ciPowerUpPlmnMode, ciPowerUpPlmnMode),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CISCC", starCISCC_params, "*CISCC: [<call1>[,<call2>[,...]]] ", ciSetCurrentCalls, ciSetCurrentCalls),
+ utlDEFINE_EXTENDED_AT_COMMAND("*RANDFILL", starRANDFILL_params, "*RANDFILL:(0,1)", ciL2RandFill, ciL2RandFill),
+
+#ifdef OPERATOR_ATT
+//
+// Operator - AT&T specific
+//
+ utlDEFINE_EXACTION_AT_COMMAND("$CSQ", NULL, "$CSQ: (0-31,99),(0-7,99)[,(0,-24db)]", ciATTSignalQuality),
+ utlDEFINE_EXTENDED_AT_COMMAND("$CREG", dollarCREG_params, "$CREG: (0-3)", ciRegStatus, ciRegStatus),
+ utlDEFINE_EXTENDED_AT_COMMAND("$CCLK", dollarCCLK_params, "$CCLK:", ciCCLK, ciCCLK),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CSG", starCSG_params, "*CSG: (0,1,2,3)", ciCSG, ciCSG),
+ utlDEFINE_EXTENDED_AT_COMMAND("*IGN", starIGN_params, "*IGN: (0-1) [,(1-600),(1-600)]", ciIGNSwitch, ciIGNSwitch),
+ utlDEFINE_EXTENDED_AT_COMMAND("*FRATLIST", starFRATLIST_params, "*FRATLIST: (0-2) [,PLMN String]", ciFRATLISTSwitch, ciFRATLISTSwitch),
+ utlDEFINE_EXTENDED_AT_COMMAND("+RSRP", NULL, "+RSRP?", ciPlusRSRP, ciPlusRSRP),
+ utlDEFINE_EXTENDED_AT_COMMAND("+RSRQ", NULL, "+RSRQ?", ciPlusRSRQ, ciPlusRSRQ),
+ utlDEFINE_EXTENDED_AT_COMMAND("+RSCP", NULL, "+RSCP?", ciPlusRSCP, ciPlusRSCP),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ECNO", NULL, "+ECNO?", ciPlusECNO, ciPlusECNO),
+#endif
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*APCFG", starAPCFG_params, "*APCFG: (0, 1)", ciNotifyApConfig, ciNotifyApConfig),
+ utlDEFINE_EXACTION_AT_COMMAND("*ISIMAID", NULL, "*ISIMAID", ciISIMAID),
+ utlDEFINE_EXACTION_AT_COMMAND("+MPBK", NULL, "+MPBK", ciMPBK),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CIIND", starCIIND_params, "*CIIND: (0-256)", ciNotifyImsRegState, ciNotifyImsRegState),
+ //proxy channel AT commands
+ utlDEFINE_EXTENDED_AT_COMMAND("*PRXYSET",starPrxySet_params,"*PROXYSET: (0-1),commands list,indications list", ciProxySet,ciProxySet),
+ utlDEFINE_EXTENDED_AT_COMMAND("*PRXYRSP",starPrxyRsp_params,"*PROXY: (XID),command String,intermedeate indication flag", ciProxyRsp,ciProxyRsp),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CHDSTST", starCHDSTST_params, "*CHDSTST: (0,1)", ciChannelDestSwitch, ciChannelDestSwitch),
+ utlDEFINE_EXACTION_AT_COMMAND("+CNMPSD", NULL, "+CNMPSD:",ciFastDormancy),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSAS",plusCsas_params, "+CSAS: 0-255",ciCsas,ciCsas),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CRES",plusCres_params, "+CRES: (0)",ciCres,ciCres),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*TELMODE", starTelMode_params, ciTelMode, ciTelMode, ciTelMode),
+ utlDEFINE_EXTENDED_AT_COMMAND("*PSDC", starPSDC_params, "*PSDC:(0,1)", ciPsDomainConfig, ciPsDomainConfig),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CBRAT", starCBRAT_params, "*CBRAT: (0-6)", ciSelectCbRat, ciSelectCbRat),
+ utlDEFINE_EXTENDED_AT_COMMAND("*IMLCONFIG", starIMLCONFIG_params, "*IMLCONFIG:<IMLTYPE>[,<data>]", ciIMLCONFIG, ciIMLCONFIG),
+
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*PCO", starPCO_params, "*PCO:(0-15)", ciPsGetPCO, ciPsGetPCO),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CSDF", plusCSDF_params, "+CSDF:(1-255),(1-2)", ciCSDF, ciCSDF),
+
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CLAN", plusCLAN_params, ciCLAN, ciCLAN, ciCLAN),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CELLINFO", starCELLINFO_params, ciCELLINFO, ciCELLINFO, ciCELLINFO),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CCUG", plusCCUG_params, "", ciCCUG, ciCCUG),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CPNER", plusCPNER_params, "+CPNER: (0-1)", ciCPNER, ciCPNER),
+
+/* STK / USAT related extdened begin */
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CATPROF", starSTKPROF_params,ciStarCATPROF,ciStarCATPROF,ciStarCATPROF),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CATEN", starCATEN_params,ciStarCaten,ciStarCaten,ciStarCaten),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*RCATR", starRCATR_params,ciStarRCATR, ciStarRCATR, ciStarRCATR),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CATTR", starCATTR_params,ciStarCATTR ,ciStarCATTR,ciStarCATTR),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*CATENV", starCATENV_params, ciStarCATENV,ciStarCATENV,ciStarCATENV),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("*RCATE", starRCATE_params, ciStarRCATE, ciStarRCATE, ciStarRCATE),
+/* STK / USAT related extdened end */
+
+#ifndef NO_AUDIO
+/* audio atcmds: */
+ utlDEFINE_EXTENDED_AT_COMMAND("*AUDIOMODE",starAUDIOMODE_params, "*AUDIOMODE: (0-4)",ubusAudioMode, ubusAudioMode),
+ utlDEFINE_EXTENDED_AT_COMMAND("*AUDIODEVICE",starAUDIODEVICE_params, "*AUDIODEVICE: (0-2)",ubusAudioDevice, ubusAudioDevice),
+ utlDEFINE_EXTENDED_AT_COMMAND("*AUDIOVOL",starAUDIOVOL_params, "*AUDIOVOL: (0-100)",ubusAudioVolume, ubusAudioVolume),
+ utlDEFINE_EXTENDED_AT_COMMAND("*AUDIOMUTE",starAUDIOMUTE_params, "*AUDIOMUTE: (0-1)",ubusAudioMute, ubusAudioMute),
+ utlDEFINE_EXTENDED_AT_COMMAND("*AUDREC", starAUDREC_params,"*AUDREC: <***.wav>[,<time>[,<rate>[,<mode>]]]", ciAudioRec, ciAudioRec),
+ utlDEFINE_EXACTION_AT_COMMAND("*AUDRECSTOP", NULL, "*AUDRECSTOP", ciAudioRecStop),
+ utlDEFINE_EXTENDED_AT_COMMAND("*AUDPLAY", starAUDPLAY_params,"*AUDPLAY: <***.wav>[,<pos>,[<combine>]]", ciAudioPlay, ciAudioPlay),
+ utlDEFINE_EXACTION_AT_COMMAND("*AUDPLAYSTOP", NULL, "*AUDPLAYSTOP", ciAudioPlayStop),
+ utlDEFINE_EXTENDED_AT_COMMAND("*AUDGAIN", starAUDGAIN_params,"*AUDGAIN: <db>,<mode>", ciAudioGain, ciAudioGain),
+
+#ifdef ECALL_SUPPORT
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CECALLINSIDE", plusCECALLINSIDE_params, ciCeCallInside, ciCeCallInside, ciCeCallInside),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CECALL", plusCECALL_params, ciCeCall, ciCeCall, ciCeCall),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLDATA", starECALLDATA_params, "*ECALLDATA: (0-7),(0-1|00000000-FFFFFFFF),(DataString)", ubusEcallData, ubusEcallData),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLVOICE", starECALLVOICE_params, "*ECALLVOICE: (0-4),(0-1),(0-1)", ubusEcallVoice, ubusEcallVoice),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLCFG", starECALLCFG_params,"*ECALLCFG: <time>,<inactivity_time1>,<inactivity_time2>", ciStartEcallCfg, ciStartEcallCfg),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLONLY", starECALLONLY_params,"*ECALLONLY: <active>[,<testnum>[,<reconfignum>]]", ciStarEcallOnly, ciStarEcallOnly),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLREG", starECALLREG_params,"*ECALLREG: <active>", ciStarEcallReg, ciStarEcallReg),
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("*IMSECALLREG", starIMSECALLREG_params,"*IMSECALLREG: <active>[,<callType>]", ciStarIMSEcallReg, ciStarIMSEcallReg),
+#else
+ utlDEFINE_EXTENDED_AT_COMMAND("*IMSECALLREG", starIMSECALLREG_params,"*IMSECALLREG: <active>", ciStarIMSEcallReg, ciStarIMSEcallReg),
+#endif
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLONLYSIM", NULL,"*ECALLONLYSIM: (0-1)", ciEcallOnlySim, ciEcallOnlySim),
+ utlDEFINE_EXACTION_AT_COMMAND("*ECALLMSDGEN", NULL,"*ECALLMSDGEN", ciEcallMsdGen),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLMSD", starECALLMSD_params,"*ECALLMSD: <msd_data>", ciEcallMsd, ciEcallMsd),
+ utlDEFINE_EXACTION_AT_COMMAND("*ECALLPUSH", NULL,"*ECALLPUSH", ciEcallPush),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLMSDCFG", starECALLMSDCFG_params,"*ECALLMSDCFG: <item>,<config>[,<persistent>]", ciEcallMsdCfg, ciEcallMsdCfg),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLSMSNUM", starECALLSMSNUMCFG_params,"*ECALLSMSNUM: <sms_number>", ciEcallSmsNumCfg, ciEcallSmsNumCfg),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLSMS", starECALLSMS_params, "*ECALLSMS: <smsFlag>", ciEcallSmsMsdAct, ciEcallSmsMsdAct),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLMODE", starECALLSWITCHMODE_params,"*ECALLMODE: <ecall_mode>", ciEcallSwitchMode, ciEcallSwitchMode),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLTIMER", starECALLTMR_params,"*ECALLTIMER: <name>[,<value>]", ciEcallTimer, ciEcallTimer),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLMUTESPK", starECALLMUTESPK_params,"*ECALLMUTESPK: <mute>", ciEcallMuteSpk, ciEcallMuteSpk),
+ //internal AT
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLMEDIAMSD", starECALLMEDIAMSD_params,"*ECALLMEDIAMSD: <msd_data>", ciEcallMediaMsd, ciEcallMediaMsd),
+ utlDEFINE_EXTENDED_AT_COMMAND("*IMSECALLSUPT", NULL,"*IMSECALLSUPT?", ciImsEcallSupt, ciImsEcallSupt),
+ utlDEFINE_EXACTION_AT_COMMAND("*ECALLONLYREG", NULL,"*ECALLONLYREG", ciEcallOnlyReg),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ECALLOVERIMS", starECALLOVERIMS_params,"*ECALLOVERIMS: <mode>", ciEcalloverIms, ciEcalloverIms),
+#endif
+
+/* audio atcmds end */
+#endif // NO_AUDIO
+ utlDEFINE_EXACTION_AT_COMMAND("*SIMPLUG", NULL, "*SIMPLUG", ciSimHotPlug),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CGDCONTL", starCGDCONTL_params, "*CGDCONTL: <cid>,<addr>,<mult>", ciSetContextLoopBack, ciSetContextLoopBack),
+ utlDEFINE_EXTENDED_AT_COMMAND("*SPIND", starSPIND_params, "*SPIND: (0, 1)", ciSetSerialPortIndicationState, ciSetSerialPortIndicationState),
+ utlDEFINE_EXACTION_AT_COMMAND("*ECCLIST", NULL, "*ECCLIST", ciEccList),
+ utlDEFINE_EXTENDED_AT_COMMAND("*IMSSRV", starIMSSRV_params, "*IMSSRV:(0-255),(0-255),(0-255)", ciPsSetImsSrv, ciPsSetImsSrv),
+ utlDEFINE_EXACTION_AT_COMMAND("+CPLMNS", NULL, "+CPLMNS", ciCancelPlmnSearch),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CACL", plusCACL_params, "+CACL:(0, 1),(0, 1)", ciCacl, ciCacl),
+ utlDEFINE_EXTENDED_AT_COMMAND("*DCONF", starUdconf_params,
+ "*DCONF: 20,(0,1)\r\n*DCONF: 31,(0,1)\r\n*DCONF: 32,(0-127)\r\n*DCONF: 40,(0-3),(0-3)\r\n*DCONF: 50,(0,1)\r\n*DCONF: 51,(0,1)\r\n*DCONF: 60,(0-2)\r\n*DCONF: 61,(0-2)\r\n*DCONF: 62,(0,1)\r\n*DCONF: 70,(0-7)\r\n*DCONF: 81,(0,1)\r\n*DCONF: 100,(0,1)",
+ ciUdconf, ciUdconf),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CGCLASS", starUCGCLASS_params, "*CGCLASS:(\"B\",\"CC\")", ciStarUCGCLASS, ciStarUCGCLASS),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CIWLANCID", starCIWLANCID_params, "*CIWLANCID:(1-15),(0-1)", ciReserveCid, ciReserveCid),
+
+ // Add for BT SAP
+#ifdef BT_SAP
+ utlDEFINE_EXTENDED_AT_COMMAND("*BTSCNCT", starBTSCNCT_params, "*BTSCNCT:(0-65535)", ciBTSConnect, ciBTSConnect),
+ utlDEFINE_EXACTION_AT_COMMAND("*BTSDISSCNCT", NULL, "*BTSDISSCNCT: ", ciBTSDisconnect),
+ utlDEFINE_EXTENDED_AT_COMMAND("*BTSTAPDU", starBTSTAPDU_params, "*BTSTAPDU:(0,1)", ciBTSTransferAPDU, ciBTSTransferAPDU),
+ utlDEFINE_EXTENDED_AT_COMMAND("*BTSTATR", NULL, "*BTSTATR: ", ciBTSTATR, ciBTSTATR),
+ utlDEFINE_EXTENDED_AT_COMMAND("*BTSCTRL", starBTSCTRL_params, "*BTSCTRL:(0-2)", ciBTSSimControl, ciBTSSimControl),
+ utlDEFINE_EXTENDED_AT_COMMAND("*BTSCRSTAT", NULL, "*BTSCRSTAT: ", ciBTSCardStatus, ciBTSCardStatus),
+ utlDEFINE_EXTENDED_AT_COMMAND("*BTSTP", starBTSTP_params, "*BTSTP:(0,1)", ciBTSTransportProtocol, ciBTSTransportProtocol),
+#endif
+ utlDEFINE_EXTENDED_AT_COMMAND("+OPERCFG", opercfg_params, "+OPERCFG=<feature1>,<value1>[,<feature2>,<value2>,....]", ciSetOperCfg, ciSetOperCfg),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ICCID", NULL, "*ICCID:", ciICCID, ciICCID),
+ utlDEFINE_EXTENDED_AT_COMMAND("*PARK", starPARK_params, "*PARK:", ciPARK, ciPARK),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CHECKEMER", startCheckEmer_params, "*CHECKEMER: <Emergency Call Number>", CheckEmergNumber, CheckEmergNumber),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*TEMPTEST", starTEMPTEST_params, "*TEMPTEST:(0,1)", ciTEMPTEST, ciTEMPTEST),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+ACONFIG", plusACONFIG_params, "+ACONFIG", ciACONFIG, ciACONFIG),
+ utlDEFINE_EXTENDED_AT_COMMAND("+IMSFUNC", plusIMSFUNC_params, "+IMSFUNC", ciIMSFUNC, ciIMSFUNC),
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+STRESS", plusSTRESSTEST_params, "+STRESS:<p1,p2>", ciSTRESS, ciSTRESS),
+ utlDEFINE_EXTENDED_AT_COMMAND("+SULOG", plusSULOG_params, "+SULOG:(0,1)", ciSULOG, ciSULOG),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MEDCR", plusMEDCR_params, "+MEDCR", ciMEDCR, ciMEDCR),
+
+#ifdef GPS_SUPPORT
+ utlDEFINE_EXTENDED_AT_COMMAND("+GPSINIT", gpsInit_params, "+GPSINIT: (1,2)", ciGPSInit, ciGPSInit),
+ utlDEFINE_EXTENDED_AT_COMMAND("+GPSSLEEP", gpsSleep_params, "+GPSSLEEP: (0,1)", ciGPSSleep, ciGPSSleep),
+ utlDEFINE_EXACTION_AT_COMMAND("+GPSPF", NULL, NULL, ciGPSPF),
+ utlDEFINE_EXTENDED_AT_COMMAND("+AGNSSGET", agnssGet_params, "+AGNSSGET: <supl_server_addr>", ciAGnssGet, ciAGnssGet),
+ //utlDEFINE_EXTENDED_AT_COMMAND("+AGNSSCFG", agnssCfg_params, "+AGNSSCFG: <server>,<port>,<user>,<pass>,<day>,<force>", ciAGnssCfg, ciAGnssCfg),
+ utlDEFINE_EXACTION_AT_COMMAND("+AGNSSSET", NULL, NULL, ciAGnssSet),
+ utlDEFINE_EXACTION_AT_COMMAND("+GPSST", NULL, NULL, ciGPSState),
+ utlDEFINE_EXTENDED_AT_COMMAND("+GPSSETTING", gpsSet_params, "+GPSSETTING: <string>", ciGPSSetting, ciGPSSetting),
+#endif
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*FACTORY", NULL, "*FACTORY", ciFactoryReset, ciFactoryReset),
+ //utlDEFINE_EXTENDED_AT_COMMAND("+CMTLR", plusCMTLR_params, "+CMTLR: (0-3)", ciCMTLR, ciCMTLR),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CMTLRA", plusCMTLRA_params, "+CMTLRA: (0-1),(0-255)", ciCMTLRA, ciCMTLRA), //27.007(rls14) 8.58
+ utlDEFINE_EXTENDED_AT_COMMAND("*IND", starIND_params, "*IND: <dataStr>", ciSENDIND, ciSENDIND),
+
+#ifdef CMCC_IOT
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLVER", NULL, "+MIPLVER?", miplVersion, miplVersion),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLCREATE", miplcreate_params, "+MIPLCREATE:<totalsize>,<config>,<index>,<currentsize>,<flag>", miplCreate, miplCreate),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLDELETE", mipldelete_params, "+MIPLDELETE:<ref>", miplDelete, miplDelete),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLADDOBJ", mipladdobj_params, "+MIPLADDOBJ:<ref>,<objectid>,<instancecount>,<instancebitmap>,<attributecount>,<actioncount>", miplAddobj, miplAddobj),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLDELOBJ", mipldelobj_params, "+MIPLDELOBJ:<ref>,<objectid>", miplDelobj, miplDelobj),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLOPEN", miplopen_params, "+MIPLOPEN:<ref>,<lifetime>[,<timeout>]", miplOpen, miplOpen),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLUPDATE", miplupdate_params, "+MIPLUPDATE:<ref>,<lifetime>,<withObjectFlag>", miplUpdate, miplUpdate),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLCLOSE", miplclose_params, "+MIPLCLOSE:<ref>", miplClose, miplClose),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLDISCOVERRSP", mipldiscoverresp_params, "+MIPLDISCOVERRSP:<ref>,<msgid>,<result>,<length>,<valuestring>", miplDiscoverresp, miplDiscoverresp),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLREADRSP", miplreadrsp_params,
+ "+MIPLREADRSP:<ref>,<msgid>,<result>[,<objectid>,<instanceid>,<resourceid>,<valuetype>,<len>,<value>,<index>,<flag>]", miplReadrsp, miplReadrsp),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLWRITERSP", miplwritersp_params, "+MIPLWRITERSP:<ref>,<msgid>,<result>", miplWritersp, miplWritersp),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLEXECUTERSP", miplexecutersp_params, "+MIPLWRITERSP:<ref>,<msgid>,<result>", miplExecutersp, miplExecutersp),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLPARAMETERRSP", miplparameterrsp_params, "+MIPLPARAMETERRSP:<ref>,<msgid>,<result>", miplParameterrsp, miplParameterrsp),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLOBSERVERSP", miplobserversp_params, "+MIPLOBSERVERSP:<ref>,<msgid>,<result>", miplObserversp, miplObserversp),
+ utlDEFINE_EXTENDED_AT_COMMAND("+MIPLNOTIFY", miplnotify_params,
+ "+MIPLNOTIFY:<ref>,<msgid>,<objectid>,<instanceid>,<resourceid>,<valuetype>,<len>,<value>,<index>,<flag>[,<ackid>]", miplNotify, miplNotify),
+#endif
+
+ utlDEFINE_EXTENDED_AT_COMMAND("+CWRITESIM", NULL, "+CWRITESIM?", ATCWRITESIM, ATCWRITESIM),
+#if !defined(CI_RELEASE_FLAG) && (defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI))
+ utlDEFINE_EXTENDED_AT_COMMAND("+CWRITESIMEXT", plusCWRITESIMEXT_params, "+CWRITESIMEXT", ciWriteSimExt, ciWriteSimExt),
+#endif
+ utlDEFINE_EXTENDED_AT_COMMAND("*SIMPOLL", starSIMPOLL_params, "*SIMPOLL:(0-1),(0-1),(0-1),(1-65535)", ciSimPoll, ciSimPoll),
+ utlDEFINE_EXTENDED_AT_COMMAND("*RSAPSTAT", plusRSAPStat_params,
+ "*RSAPSTAT:<status>(0-Err,1-Card reset,2-Card not accessible,3-Card Removed,4-Card inserted,5-Card recovered)",
+ ciRSAPStatus, ciRSAPStatus),
+ utlDEFINE_EXTENDED_AT_COMMAND("*RSAPSIMSELECT", plusRSAPSimSelect_params,
+ "*RSAPSIMSELECT:<service>(0-Reconnect,1-Disconnect),<sim type>(0-local,1-remote)",
+ ciRSAPSimSelect, ciRSAPSimSelect),
+ utlDEFINE_EXTENDED_AT_COMMAND("*RSAPRSP", plusRSAPRsp_params,
+ "*RSAPRSP:<rsp type>(0-CONN_REQ,1-DISCONN_REQ,2-ATR_REQ,3-TP_REQ,4-SIM_CTRL_REQ,5-APDU_REQ),<ret code>(0-success,>0-failur),<conn status>(0-OK,1-UNABLE_TO_ESTABLISH_CONNECTION,2-MAX_MESSAGE_SIZE_NOT_SUPPORTED,3-MAX_MESSAGE_SIZE_TOO_SMALL,4-CI_SIM_BTSAP_ONGOING_CALL),<rsp data>",
+ ciRSAPRsp, ciRSAPRsp),
+ utlDEFINE_EXTENDED_AT_COMMAND("+SIMLOCKFUSE", plusSIMLOCKFUSE_params, "+SIMLOCKFUSE=<s>", ciSIMLOCKFUSE, ciSIMLOCKFUSE),
+ utlDEFINE_EXTENDED_AT_COMMAND("+AUTOAPN", plusAUTOAPN_params, "+AUTOAPN: <mode:0/1>[,<PDP_type:IP/IPV6/IPV4V6>,<APN>[,<auth_type:0-None/1-PAP/2-CHAP>[,<username>,<password>]]]", AtDialAutoApn, AtDialAutoApn),
+ utlDEFINE_EXTENDED_AT_COMMAND("+VLAN", plusVLAN_params, "+VLAN: <enable:0/1>[,< base-id>,[default_pdp_vlan]]", AtVlanConfig, AtVlanConfig),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZVLAN", plusZVLAN_params, "+ZVLAN: <enable:0/1>", AtZVlan, AtZVlan),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZVLANID", plusZVLANID_params, "+ZVLANID: <cid:1-8>,<vlan_id:0-4095>", AtZVlanID, AtZVlanID),
+
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CMRSS",plusCMRSS_params, ciCMRSS, ciCMRSS, ciCMRSS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CMGSS",plusCMGSS_params, ciCMGSS, ciCMGSS, ciCMGSS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CMSMS",plusciCSMS_params, ciCMSMS, ciCMSMS, ciCMSMS),
+ utlDEFINE_EXTENDED_VSYNTAX_AT_COMMAND("+CMGMS",plusCMGMS_params, ciCMGMS, ciCMGMS, ciCMGMS),
+ utlDEFINE_EXACTION_AT_COMMAND("*SMSSTATUS", NULL, "*SMSSTATUS", ciSMSSTATUS),
+ utlDEFINE_EXTENDED_AT_COMMAND("*SSGLPC", NULL, "*SSGLPC", ciSSGLPC, ciSSGLPC),
+ utlDEFINE_EXTENDED_AT_COMMAND("*ANTTUNER", plusANTTUNER_params, "*ANTTUNER: (0-3)", ciAntennaTuner, ciAntennaTuner),
+ utlDEFINE_EXTENDED_AT_COMMAND("*WSTAT", starWSTAT_params, "*WSTAT: (1-16)", ciGetWanStatistics, ciGetWanStatistics),
+ utlDEFINE_EXTENDED_AT_COMMAND("*WIFRATE", starWSTAT_params, "*WIFRATE: (1-16)", ciGetWanIFRate, ciGetWanIFRate),
+ utlDEFINE_EXTENDED_AT_COMMAND("*WIFCONTIME", starWSTAT_params, "*WIFCONTIME: (1-16)", ciGetWanConTime, ciGetWanConTime),
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1903_CI) || (defined(ATCMD_1901_CI) && !defined(CI_RELEASE_FLAG))
+ utlDEFINE_EXTENDED_AT_COMMAND("*SELECTVSIM", plusSELECTVSIM_params, "*SELECTVSIM: <selectVsim(0-1)>[,resevered:(0-1)]", ciSelectVsim, ciSelectVsim),
+#endif
+ utlDEFINE_EXTENDED_AT_COMMAND("*AVSIM", starAVSIM_params, "*AVSIM: <iccid>,<imsi>,<para1>,<para2>", cistarAVSIM, cistarAVSIM),
+ utlDEFINE_EXTENDED_AT_COMMAND("*DDRFREQ", plusDDRFREQ_params, "*DDRFREQ: (0,1)", ciDdrFreq, ciDdrFreq),
+ utlDEFINE_EXTENDED_AT_COMMAND("*L1DEBUG", plusL1DEBUG_params, "*L1DEBUG:<info>", ciL1Debug, ciL1Debug),
+ utlDEFINE_EXTENDED_AT_COMMAND("+ZIPPASS", starZIPPASS_params, "+ZIPPASS: <enable:0/1>", atZIPPASS, atZIPPASS),
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI) || defined(ATCMD_UNIFY_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("*DSPINFO", starDspInfo_params, "*DSPINFO:(0-255), <dataStr>, (0-255)", ciDspInfo, ciDspInfo),
+#endif
+
+#if defined(ATCMD_1802S_CI) || defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXACTION_AT_COMMAND("+AOPS", NULL, "+AOPS: ", ciBandScan),
+ utlDEFINE_EXTENDED_AT_COMMAND("+AOPSCFG", starBandScan_params, "+AOPSCFG:\"scancontrol\",<RAT>,<gsmBand>,<umtsBand>,<lteBandL>,<lteBandH>,<lteBandExt>", ciBandScanCFG, ciBandScanCFG),
+#endif
+
+#ifdef LPA_SUPPORT
+ utlDEFINE_EXTENDED_AT_COMMAND("+CTRSPSTRT", ctRspStrt_params, "+CTRSPSTRT:SMDP_ADDR,MATCHID[,FLAG]", atCtRspStrt, atCtRspStrt),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CTRSPGETINFO", ctRspGetInfo_params, "+CTRSPGETINFO:QUERY_TYPE[,ICCID]", atCtRspGetInfo, atCtRspGetInfo),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CTRSPPROFACT", ctRspProfAct_params, "+CTRSPPROFACT:ICCID", atCtRspProfAct, atCtRspProfAct),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CTRSPNTFYLEAB", ctRspNfyLeab_params, "+CTRSPNTFYLEAB:ICCID", atCtRspNtfyLeab, atCtRspNtfyLeab),
+ utlDEFINE_EXACTION_AT_COMMAND("+CTRSPSVN", NULL, "+CTRSPSVN", atCtRspSvn),
+#endif
+
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("*DELFBPLMN", plusDELFBPLMN_params, "at*delfbplmn: (1-3)", ciDelFbPlmn, ciDelFbPlmn),
+ utlDEFINE_EXTENDED_AT_COMMAND("*RESENDPARA", plusRESEDPARA_params, "at*resendpara:<tr1mTime>,<retramTime>,<retryNum>,<isRetryRpError>", ciResendPara, ciResendPara),
+ utlDEFINE_EXTENDED_AT_COMMAND("*COMFEATURE", plusCOMFEATURE_params, "*COMFEATURE: (0-4),(0-14), <data_string>, (1-65535), <string>", ciComFeature, ciComFeature),
+#endif
+ utlDEFINE_EXTENDED_AT_COMMAND("*SECCAP", starSECCAP_params, "*SECCAP=<nasSeccap>,<umtsRrcCAPCap>,<umtsRrcIPCcap>", ciStarSECCAP, ciStarSECCAP),
+ utlDEFINE_EXTENDED_AT_COMMAND("*REJECTCAUSE", starREJECTCAUSE_params, "*REJECTCAUSE: <cid>", ciRejectCauseReq, ciRejectCauseReq),
+ utlDEFINE_EXACTION_AT_COMMAND("*SOCTEMP", NULL, "*SOCTEMP", ciSocTemp),
+#if defined(ATCMD_UNIFY_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("*RPM", NULL, "*RPM", ciRpm, ciRpm),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CFGRPMSWITCH", plusCFGRPMSWITCH_params, "+CFGRPMSWITCH: (0,1)", ciCfgRpmSwitch, ciCfgRpmSwitch),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CFGRPMPARA", plusCFGRPMPARA_params, "+CFGRPMPARA: (0-255),(0-255),(0-255),(0-255),(0-255),(0-255)", ciCfgRpmPara, ciCfgRpmPara),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CFGRPMCOUNTER", NULL, "+CFGRPMCOUNTER", ciCfgRpmCounter, ciCfgRpmCounter),
+ utlDEFINE_EXTENDED_AT_COMMAND("+CFGRPMCLR", plusCFGRPMCLR_params, "+CFGRPMCLR: (0-255),(0-255),(0-255)", ciCfgRpmClr, ciCfgRpmClr),
+#endif
+#if 0
+ utlDEFINE_EXTENDED_AT_COMMAND("+BTMAC", plusBTMAC_params, "+BTMAC=<a>[,<s>]", AtBtMAC, AtBtMAC), // write, read or delete the bluetooth MAC.
+#endif
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1802S_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("*ASRCOPS", NULL, "*ASRCOPS:", ciASRCOPS, ciASRCOPS),
+#endif
+
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+#ifdef ENABLE_WIFI_SCAN
+ utlDEFINE_EXTENDED_AT_COMMAND("*WIFICTRL", starWifiCtrl_params, "*WIFICTRL:(0-3),(1-255),(4-255),(0-255),(0-255)", ciWifiCtrl, ciWifiCtrl),
+#endif
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*CDNID", plusCDNID_params, "*CDNID: (<cid>), (<DN_id>)\r\n", ciSetSmPduDnReqContainer, ciSetSmPduDnReqContainer),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CAG", starCAG_params, "*CAG: (0,1,2,3)", ciCAG, ciCAG),
+ utlDEFINE_EXTENDED_AT_COMMAND("+C5GUSMS", plusC5GUSMS_params, "+C5GUSMS:(0-2),(0-1)", ciC5GUSMS, ciC5GUSMS),
+ utlDEFINE_EXTENDED_AT_COMMAND("*LOCALURSP", starLOCALURSP_params, "*LOCALURSP:(0-2),\"ursp stream\"", ciLocalUrsp, ciLocalUrsp),
+ utlDEFINE_EXTENDED_AT_COMMAND("*TSNCTRL", starTSNCTRL_params, "*TSNCTRL: <0-1>, <0,1>, <0-0xFFFFFFFF>,[<0-1>,<5,10,20,60,120,300,600>]", ciTsnCtrl, ciTsnCtrl),
+#ifdef NR_POSITION_SUPPORT
+ utlDEFINE_EXTENDED_AT_COMMAND("*POSFUN", starPOSFUN_params, "*POSFUN: (0-1),(0-3),(0-7),(1-10),(1-10),<data_string>", ciPositionFunc, ciPositionFunc),
+#endif
+#endif
+
+ utlDEFINE_EXTENDED_AT_COMMAND("*SELECTSIMSLOT", starSELECTSIMSLOT_params, "*SELECTSIMSLOT: (0,1)[,<reserved>]", ciSELECTSIMSLOT, ciSELECTSIMSLOT),
+
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1802S_CI)|| defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("*BLACKCELL", starBLACKCELL_params, "*BLACKCELL: (0-3),(0-3),<cell_info>", ciBLACKCELL, ciBLACKCELL),
+ utlDEFINE_EXTENDED_AT_COMMAND("*CSCO", starCSCO_params, "*CSCO=<offset_scell>,<offset_scell_qual>,<offset_ncell_lte>,<offset_ncell_lte_qual>,<offset_ncell_umts>,<offset_ncell_umts_qual>,<offset_ncell_gsm>", ciCSCO, ciCSCO), /* request to set cell select offest */
+#endif
+
+#ifdef WIFI_ATCMD
+ utlDEFINE_EXTENDED_AT_COMMAND("+WIFI", plusWIFI_params, "AT+WIFI=cmdline", ciWifiCmd, ciWifiCmd),
+#endif
+ utlDEFINE_EXACTION_AT_COMMAND("*READVER", NULL, "*READVER", ciREADVER),
+ utlDEFINE_EXTENDED_AT_COMMAND("*EEH", starEEH_params, "*EEH: (0,1)", ciEEH, ciEEH),
+ utlDEFINE_EXTENDED_AT_COMMAND("*DEVTEST", starDEVTEST_params, "*DEVTEST: (0,1)", ciDevTest, ciDevTest),
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1903_CI) || (defined(ATCMD_1901_CI) && !defined(CI_RELEASE_FLAG))
+ utlDEFINE_EXTENDED_AT_COMMAND("+RDNURI", plusRDNURI_params, "AT+RDNURI=filetype,record", ciRDNURI, ciRDNURI),
+#endif
+#if defined(ATCMD_UNIFY_CI) || defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ utlDEFINE_EXTENDED_AT_COMMAND("*REGRW", starReg_params, "*REGRW: <op>,<mem address>[,<mem value>]", AtRegRW, AtRegRW),
+#endif
+ utlDEFINE_EXTENDED_AT_COMMAND("*CGDATAON", starcgdataon_params, "*CGDATAON: <0-1>", ciDataON, ciDataON),
+
+#ifdef CUSTQ
+#if defined(ATCMD_1903_CI) || defined(ATCMD_1901_CI)
+#if !defined(CI_RELEASE_FLAG)
+ utlDEFINE_EXTENDED_AT_COMMAND("+QNWPREFCFG", plusqnwprefcfg_params, "+QNWPREFCFG: \"ue redcap setting\"[,(0-2)]", ciQnwPrefCfg, ciQnwPrefCfg),
+#endif
+#endif
+#endif
+
+};
+
+const utlAtCommand_T * const pshell_commands = shell_commands;
+const unsigned int shell_commands_num = utlNumberOf(shell_commands);
+
+const utlAtCommand_T proxyUnknownCmd = utlDEFINE_EXTENDED_AT_COMMAND("*PRXYUNKOWN",NULL,NULL, NULL,NULL);
+
+ATCMD_TimeOut atcmd_timeout_table[utlNumberOf(shell_commands)]={
+ {"+CCFC", {155, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CCWA", {155, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CGLA", {150, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CSIM", {150, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CFUN", {120, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CGDATA", {155, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CLIR", {utlAT_AWAIT_ASYNC_TIMEOUT_TIME, 155, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CMGS", {120, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CMGC", {120, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CMGW", {50, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+COPN", {100, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+COPS", {250, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, 250}},
+ {"+BGLTEPLMN", {utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, 250}},
+ {"*BAND", {60, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CGATT", {120, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"*PSDC", {80, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"*CGATTC", {80, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"*CSG", {100, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, 250}},
+ {" ", {60, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"D", {120, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"*DIALE", {60, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"CPLMNS", {15, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+ZSNT", {60, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+CNUM", {60, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+STRESS", {0x7fffffff, 0x7fffffff, 0x7fffffff}},
+ {"*IMSCFG", {100, 100, 100}},
+ {"*CAG", {100, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+ {"+AOPS", {300, 300, 300}},
+ {"+CLCK", {155, utlAT_AWAIT_ASYNC_TIMEOUT_TIME, utlAT_AWAIT_ASYNC_TIMEOUT_TIME}},
+
+};
+pthread_mutex_t gTimeoutTableLock = PTHREAD_MUTEX_INITIALIZER;
+
+
+/*------------------------------------------------------------------------------*/
+int getFd(TelAtParserID sAtpIndex)
+{
+ F_ENTER(getFd);
+ if (sAtpIndex < NUM_OF_TEL_ATP)
+ return gAtpCtrl[sAtpIndex].iFd;
+ else
+ return 0; //return to stdout
+
+ F_LEAVE(getFd1);
+}
+
+int notifyAtParser(TelAtParserID sAtpIndex, unsigned char cmd)
+{
+ int ret = -1;
+ if (sAtpIndex < NUM_OF_TEL_ATP && gAtpCtrl[sAtpIndex].iNotifyWriteEnd > 0
+ && cmd < TEL_ATP_CMD_NUM)
+ {
+ do
+ {
+ ret = write(gAtpCtrl[sAtpIndex].iNotifyWriteEnd, &cmd, sizeof(cmd));
+ }while (ret < 0 && errno == EINTR);
+ if(ret > 0)
+ WARNMSG(notifyAtParser, "notifyAtParser: send message %d to parser_p %d\n", cmd, sAtpIndex);
+ }
+ return ret;
+}
+
+int triggerAtParser(const utlAtParser_P parser_p)
+{
+ TelAtParserID sAtpIndex;
+ int ret = -1;
+ if(parser_p == NULL)
+ {
+ ERRMSG(triggerAtParser, "triggerAtParser NULL parser pointer\n");
+ return ret;
+ }
+ sAtpIndex = *(TelAtParserID *)(parser_p->call_backs.arg_p);
+ ret = notifyAtParser(sAtpIndex, TEL_ATP_CMD_TRIGGER_PARSER);
+ return ret;
+}
+
+
+void writeATcmd2file(char *atcmd)
+{
+#if 0
+ FILE *fp = NULL;
+ static pthread_mutex_t lockfile = PTHREAD_MUTEX_INITIALIZER;
+ if (atcmd == NULL)
+ return;
+
+ pthread_mutex_lock(&lockfile);
+ fp = fopen("/tmp/atcmdrec", "w");
+ if (!fp){
+ pthread_mutex_unlock(&lockfile);
+ return;
+ }
+
+ fprintf(fp, "%s\n", atcmd);
+ fclose(fp);
+ pthread_mutex_unlock(&lockfile);
+#endif
+}
+
+/*******************************************************************
+* FUNCTION: atChanThread()
+*
+* PARAMETERS: None
+*
+* DESCRIPTION: This function is used to handle the AT Command Channel
+*
+* RETURNS:
+*
+*******************************************************************/
+int SmsMsgLen[NUM_OF_TEL_ATP] = {0};
+CHAR* SmsMsgData[NUM_OF_TEL_ATP];
+
+void ProcessAtChanThread(TelAtParserID sAtpIndex)
+{
+
+ int received = -1, fd, i = 0;
+ char buffer[TEL_AT_CMDSTR_MAX_LEN];
+ int rc;
+
+ fd_set fds;
+ int nfds = -1;
+ unsigned char ctrl_msg = 0xff;
+ int ret = -1;
+
+ /* Detach itself */
+ pthread_detach(pthread_self());
+ /* Set thread name */
+ if (sAtpIndex < TEL_SOCKET_AT_CMD_ATP_BEGIN) {
+ WARNMSG(ProcessAtChanThread10, "ProcessAtChanThread: create thread of %s \r\n", gAtpName[sAtpIndex]);
+ prctl(PR_SET_NAME, "atcmdsrv");
+ //prctl(PR_SET_NAME, gAtpName[sAtpIndex]);
+ /*pthread_setname_np(pthread_self(), gAtpName[sAtpIndex]);*/
+ } else {
+ char thread_name[16];
+ snprintf(thread_name, sizeof(thread_name), "%s:ATP_%d", getTelAtpDesc(sAtpIndex)->path, sAtpIndex);
+ WARNMSG(ProcessAtChanThread11, "ProcessAtChanThread: create thread of %s \r\n", thread_name);
+ prctl(PR_SET_NAME, "atcmdsrv");
+ /*pthread_setname_np(pthread_self(), thread_name);*/
+ //prctl(PR_SET_NAME, thread_name);
+ }
+
+ fd = getFd(sAtpIndex);
+
+ // Init PS status veriables
+ gAtpCtrl[sAtpIndex].psQueryAllCid = FALSE;
+ gAtpCtrl[sAtpIndex].psCurrCid = CI_PS_MAX_MO_AND_MT_PDP_CTX_NUM;
+
+ // make sure notify pipe is empty before entering loop
+ do
+ {
+ ret = read(gAtpCtrl[sAtpIndex].iNotifyReadEnd, &ctrl_msg, sizeof(ctrl_msg));
+ }while ((ret > 0) || (ret < 0 && errno == EINTR));
+
+ while (1)
+ {
+ received = -1;
+ nfds = -1;
+
+ /*
+ * Receive message
+ */
+ //DBGMSG(ProcessAtChanThread, "ProcessAtChanThread reading handle: %d, parser_p: %d.\n", fd, sAtpIndex);
+ FD_ZERO(&fds);
+ FD_SET(fd, &fds);
+ if(fd > nfds)
+ nfds = fd;
+
+ FD_SET(gAtpCtrl[sAtpIndex].iNotifyReadEnd, &fds);
+ if(gAtpCtrl[sAtpIndex].iNotifyReadEnd > nfds)
+ nfds = gAtpCtrl[sAtpIndex].iNotifyReadEnd;
+
+ rc = select(nfds + 1, &fds, NULL, NULL, NULL); // block until a byte is received
+ if (rc <= 0)
+ {
+ WARNMSG(ProcessAtChanThread1, "****Select returned %d atp=%d\r\n", rc, sAtpIndex);
+ }
+
+ ctrl_msg = 0xff;
+
+ if(FD_ISSET(gAtpCtrl[sAtpIndex].iNotifyReadEnd, &fds))
+ {
+ do
+ {
+ ret = read(gAtpCtrl[sAtpIndex].iNotifyReadEnd, &ctrl_msg, sizeof(ctrl_msg));
+ }while (ret < 0 && errno == EINTR);
+
+ if(ret > 0)
+ {
+ //DBGMSG(ProcessAtChanThread2, "ProcessAtChanThread: parser_p %d receive control message: %d\n", sAtpIndex, ctrl_msg);
+ }
+ }
+
+ if((ctrl_msg == TEL_ATP_CMD_EXIT_CHAN)
+#ifdef AT_PRODUCTION_CMNDS
+ || (ctrl_msg == TEL_ATP_CMD_EXIT_CHAN_AND_START_DIAG)
+#endif
+ ) // exit channel
+ {
+ break;
+ }
+ else if(ctrl_msg == TEL_ATP_CMD_TRIGGER_PARSER && !FD_ISSET(fd, &fds))
+ {
+ unsigned char null_buf[1];
+
+ //DBGMSG(ProcessAtChanThread3, "ProcessAtChanThread: parser_p %d run atparser to process next command\n", sAtpIndex);
+ utlAtParse(aParser_p[sAtpIndex], null_buf, 0);
+ continue;
+ }
+ else if(!FD_ISSET(fd, &fds))
+ {
+ // incorrect message, ignore it
+ continue;
+ }
+
+ memset(buffer, 0x00, TEL_AT_CMDSTR_MAX_LEN);
+ received = read(fd, buffer, TEL_AT_CMDSTR_MAX_LEN);
+ ERRMSG(ProcessAtChanThread4, "ATP %d receveid: %d:\n", sAtpIndex, received);
+
+ //dbg_dump_string("AT CMD (string)", buffer, received);
+ //dbg_dump_buffer("AT CMD (buffer)", buffer, received);
+ /*
+ * Send bytes and check for more incoming data in loop
+ */
+ if (received > 0)
+ {
+ if ( gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode != TEL_MSG_DATA_NONE )
+ {
+ ERRMSG(ProcessAtChanThread5, "Currently in SmsDataEntryMode.\n");
+ // loop thru the buffer
+ if(!SmsMsgData[sAtpIndex])
+ {
+ //INFOMSG(ProcessAtChanThread5, "%s:sAtpIndex[%d] enter SmsDataEntryMode,need malloc buffer", __func__, sAtpIndex);
+ SmsMsgData[sAtpIndex] = malloc(TEL_AT_CMDSTR_MAX_LEN + 2);
+ if(!SmsMsgData[sAtpIndex])
+ {
+ INFOMSG(ProcessAtChanThread60, "%s:sAtpIndex[%d] enter SmsDataEntryMode, malloc buffer failed", __func__, sAtpIndex);
+ gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode = TEL_MSG_DATA_NONE;
+ continue;
+ }
+ memset(SmsMsgData[sAtpIndex], 0, TEL_AT_CMDSTR_MAX_LEN + 2);
+ }
+
+ for (i = 0; i < received; i++)
+ {
+ if((SmsMsgData[sAtpIndex] == NULL) && (gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode == TEL_MSG_DATA_NONE))
+ {
+ ERRMSG(ProcessAtChanThread9, "%s:buffer was freed,need exit sms data mode.", __func__);
+ break;
+ }
+
+ switch (buffer[i])
+ {
+
+ case 0x1a: //control-z
+// case 'z': //[Jerry] temp test
+ {
+ if ((gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode == TEL_MSG_DATA_CMGS) ||
+ (gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode == TEL_MSG_DATA_CMGC) ||
+ (gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode == TEL_MSG_DATA_CMGW))
+ {
+ CHAR *convertBuf = NULL;
+ UINT16 convertBufLength = 0;
+ AtciCharacterSet *pchset_type = NULL;
+ UINT32 reqHandle = gSendMsgReqHandle[sAtpIndex];
+ int phoneNum = 0;
+ BOOL *pImsRegState = NULL;
+
+
+
+ if (!isTelAtpCurrentForSIM2(sAtpIndex)) {
+ reqHandle = gSendMsgReqHandle[sAtpIndex];
+ pchset_type = &chset_type[sAtpIndex];
+ pImsRegState = &gImsRegState;
+ }
+ else{
+ reqHandle = gSendMsgReqHandle_1[sAtpIndex];
+ pchset_type = &chset_type_1[sAtpIndex];
+ pImsRegState = &gImsRegState_1;
+ }
+
+ AtciSmsFormatMode smsFormatMode = gSmsFormatMode[sAtpIndex] & (~ATCI_SMS_FORMAT_TXT_MODE_SHOW_MASK);
+ if((smsFormatMode == ATCI_SMS_FORMAT_TXT_MODE) && (checkDataValidity(SmsMsgData[sAtpIndex], SmsMsgLen[sAtpIndex], pchset_type) == FALSE) )
+ {
+ //ERRMSG(ProcessAtChanThread6,"%s:pImsRegState %d", __func__, *pImsRegState);
+
+ if((*pImsRegState == TRUE) && (gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode != TEL_MSG_DATA_CMGW))
+ {
+ ims_sms_data_invalid_report_error = TRUE;
+ ciSendMsgAfterEsc(sAtpIndex, gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode); /* Cancel data mode in proxy interface */
+ }
+ else
+ ATRESP( reqHandle, ATCI_RESULT_CODE_CMS_ERROR, CMS_INVALID_TEXT_MODE_PARA, NULL);
+
+ //ERRMSG(ProcessAtChanThread7,"%s: pSendMsgReqHandle %d, sim%d", __func__, reqHandle, (sAtpIndex > TEL_AT_CMD_ATP_36) );
+
+ memcpy(&(gAtpCtrl[sAtpIndex].pTelAtpDataEntry), &sTelAtpDataEntry, sizeof(TelAtpDataEntry));
+ gCurrentSmsDataMode = TEL_MSG_DATA_NONE;
+ SmsMsgLen[sAtpIndex] = 0;
+ if(SmsMsgData[sAtpIndex] != NULL)
+ {
+ free(SmsMsgData[sAtpIndex]);
+ SmsMsgData[sAtpIndex] = NULL;
+ }
+ memset(buffer, 0, TEL_AT_CMDSTR_MAX_LEN);
+
+ continue;
+ }
+ convertBuf = MSG_ConvertfromCscsStr(sAtpIndex, SmsMsgData[sAtpIndex], SmsMsgLen[sAtpIndex], (UINT16*)&convertBufLength);
+ if(convertBuf == NULL)
+ ciSendMsgAfterCtrlZ( sAtpIndex, SmsMsgData[sAtpIndex], SmsMsgLen[sAtpIndex], gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode );
+ else
+ {
+ //update SmsMsgLen and SmsMsgData with converted str
+ SmsMsgLen[sAtpIndex] = convertBufLength;
+ memset(SmsMsgData[sAtpIndex], 0, TEL_AT_CMDSTR_MAX_LEN);
+ memcpy(SmsMsgData[sAtpIndex], convertBuf, convertBufLength);
+ ciSendMsgAfterCtrlZ( sAtpIndex, convertBuf, convertBufLength, gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode);
+ }
+ gCurrentSmsDataMode = TEL_MSG_DATA_NONE;
+
+ memcpy(&(gAtpCtrl[sAtpIndex].pTelAtpDataEntry), &sTelAtpDataEntry, sizeof(TelAtpDataEntry));
+ if(convertBuf != NULL)
+ {
+ free(convertBuf);
+ convertBuf = NULL;
+ }
+
+ memset(buffer, 0, TEL_AT_CMDSTR_MAX_LEN);
+ i = received;
+ }
+ else if (gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode == TEL_MSG_DATA_CNMA)
+ {
+ ciNewMsgAckAfterCtrlZ( gAtpCtrl[sAtpIndex].pTelAtpDataEntry.reqHandle, SmsMsgData[sAtpIndex], SmsMsgLen[sAtpIndex],
+ gAtpCtrl[sAtpIndex].pTelAtpDataEntry.cnmaReply, gAtpCtrl[sAtpIndex].pTelAtpDataEntry.cnmaFlag);
+ memcpy(&(gAtpCtrl[sAtpIndex].pTelAtpDataEntry), &sTelAtpDataEntry, sizeof(TelAtpDataEntry));
+ SmsMsgLen[sAtpIndex] = 0;
+ gCurrentSmsDataMode = TEL_MSG_DATA_NONE;
+ if(SmsMsgData[sAtpIndex] != NULL)
+ {
+ free(SmsMsgData[sAtpIndex]);
+ SmsMsgData[sAtpIndex] = NULL;
+ }
+ memset(buffer, 0, TEL_AT_CMDSTR_MAX_LEN);
+ i = received;
+ }
+ break;
+ }
+
+ case 0x1b: //escape
+ {
+ //if ((gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode == TEL_MSG_DATA_CMGS) ||
+ //(gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode == TEL_MSG_DATA_CMGW))
+ {
+ ciSendMsgAfterEsc(sAtpIndex, gAtpCtrl[sAtpIndex].pTelAtpDataEntry.smsDataEntryMode);
+ memcpy(&(gAtpCtrl[sAtpIndex].pTelAtpDataEntry), &sTelAtpDataEntry, sizeof(TelAtpDataEntry));
+ SmsMsgLen[sAtpIndex] = 0;
+ free(SmsMsgData[sAtpIndex]);
+ SmsMsgData[sAtpIndex] = NULL;
+ memset(buffer, 0, TEL_AT_CMDSTR_MAX_LEN);
+ i = received;
+ }
+ break;
+ }
+ /* only skip "\r\n" for SMS PDU mode */
+ case 0x0a:
+ case 0x0d:
+ if (getSmsFormatModeWithAtpIndex(sAtpIndex) == ATCI_SMS_FORMAT_PDU_MODE)
+ break;
+ default:
+ {
+ if(SmsMsgLen[sAtpIndex] < (TEL_AT_CMDSTR_MAX_LEN-1))
+ {
+ /* Copy SMS PDU one byte each time */
+ memcpy(SmsMsgData[sAtpIndex] + SmsMsgLen[sAtpIndex], buffer + i, 1);
+ SmsMsgLen[sAtpIndex]++;
+ }
+
+ break;
+ }
+ } // end switch
+ } // end for loop
+ }
+ else
+ {
+
+
+ /*
+ * Parse the Data to AT parser
+ */
+#ifdef AT_CONFIG_P701
+ if(gModemAtp < 0) {
+ char *p = strstr(buffer, "AT*APPOWERIND=1;+CMEE=2");
+ if (p)
+ gModemAtp = sAtpIndex;
+ } else {
+ if (gModemAtp == sAtpIndex)
+ gNumofAT++;
+ }
+#endif
+ writeATcmd2file(buffer);
+ ERRMSG(ProcessAtChanThread8, "[ProcessAtChanThread](length=%d):%s\n", received, buffer);
+ ret = utlAtParse(aParser_p[sAtpIndex], (unsigned char *)buffer, received);
+ if(utlSUCCESS != ret)
+ {
+ ERRMSG(ProcessAtChanThread10, "[AT FAIL][%d] %s failed, ret %d",sAtpIndex,buffer,ret);
+
+ //uart_printf("[AT FAIL][%d] %s failed, ret %d\r\n",sAtpIndex,buffer,ret);
+ }
+
+ memset(buffer, 0, TEL_AT_CMDSTR_MAX_LEN);
+ }
+
+ } else if (sAtpIndex >= TEL_SOCKET_AT_CMD_ATP_BEGIN) {
+ if (received == 0 || !(errno == EAGAIN || errno == EINTR))
+ break;
+ }
+ }
+ clearPdpContextOwner(sAtpIndex);
+ close(gAtpCtrl[sAtpIndex].iFd);
+ gAtpCtrl[sAtpIndex].iFd = -1;
+ gAtpCtrl[sAtpIndex].bEnable = FALSE;
+
+ //reset channel ID for IMS
+ if(sAtpIndex == gProxyChannelId)
+ gProxyChannelId = NUM_OF_TEL_ATP;
+
+#ifdef AT_PRODUCTION_CMNDS
+ if(sAtpIndex == TEL_PROD_AT_CMD_ATP)
+ {
+ //DBGMSG(ProcessAtChanThread7, "ProcessAtChanThread: production at channel closed\n");
+ if(ctrl_msg == TEL_ATP_CMD_EXIT_CHAN_AND_START_DIAG)
+ diagStartFromAT(start_at_cmd_srv);
+ }
+#endif
+}
+
+TelAtpDesc* TelAtpId2Desc(TelAtParserID atpId)
+{
+ unsigned int i;
+ for(i = 0; i < sizeof(gTelAtpDescConfig) / sizeof(gTelAtpDescConfig[0]); i++)
+ {
+ if(gTelAtpDescConfig[i].index == atpId)
+ return (gTelAtpDescConfig + i);
+ }
+ return NULL;
+}
+
+TelAtpDesc* getTelAtpDesc(TelAtParserID atpId)
+{
+ return gAtpCtrl[atpId].pTelAtpDesc;
+}
+
+SIMID getSharedTelAtpCurrentTargetSIM(TelAtParserID atpId)
+{
+ TelAtpCtrl *atp = &gAtpCtrl[atpId];
+ TelAtpDesc *pTelAtpDesc = atp->pTelAtpDesc;
+ if(pTelAtpDesc == NULL)
+ return SIMID_NUM;
+ if(pTelAtpDesc->targetSim != DUAL_SIM)
+ return SIMID_NUM;
+ return atp->currentTargetSim;
+}
+
+int setSharedTelAtpCurrentTargetSIM(TelAtParserID atpId, SIMID simId)
+{
+ if(simId != SIM1 && simId != SIM2)
+ return -1;
+
+ TelAtpCtrl *atp = &gAtpCtrl[atpId];
+ TelAtpDesc *pTelAtpDesc = atp->pTelAtpDesc;
+ if(pTelAtpDesc == NULL)
+ return -1;
+
+ if(pTelAtpDesc->targetSim != DUAL_SIM)
+ return -1;
+
+ atp->currentTargetSim = simId;
+ return 0;
+}
+
+BOOL isTelAtpCurrentForSIM2(TelAtParserID atpId)
+{
+ return gAtpCtrl[atpId].currentTargetSim == SIM2;
+}
+
+int switchMasterAtpCurrentSim(SIMID simId)
+{
+ int i;
+ for(i = 0; i < NUM_OF_TEL_ATP; i++)
+ {
+ TelAtpCtrl *atp = &gAtpCtrl[i];
+ TelAtpDesc *pTelAtpDesc = atp->pTelAtpDesc;
+ if(pTelAtpDesc && pTelAtpDesc->targetSim == MASTER_SIM)
+ atp->currentTargetSim = simId;
+ }
+ return 0;
+}
+
+static SIMID getInitialSimId(AtpSimType atpSimType)
+{
+ switch (atpSimType) {
+ case SIM2_ONLY:
+ return SIM2;
+ case MASTER_SIM:
+ return isSim2Master() ? SIM2 : SIM1;
+ default:
+ return SIM1;
+ }
+}
+
+static utlReturnCode_T acceptClient(const utlEventHandlerType_T handler_type UNUSED,
+ const utlEventHandlerType_T event_type UNUSED,
+ const int sock,
+ const utlRelativeTime_P2c period_p UNUSED,
+ void *arg_p UNUSED)
+{
+ struct sockaddr addr;
+ socklen_t alen = sizeof(addr);
+ int fd = accept(sock, &addr, &alen);
+ if (fd < 0) {
+ ERRMSG(acceptClient, "Fail to accept Socket: %s", strerror(errno));
+ return utlFAILED;
+ }
+ if (fcntl(fd, F_SETFL, O_NONBLOCK) < 0) {
+ ERRMSG(acceptClient1, "Error setting O_NONBLOCK errno:%s", strerror(errno));
+ }
+
+ TelAtpCtrl* atp = NULL;
+ int i;
+ for (i = TEL_SOCKET_AT_CMD_ATP_BEGIN; i < NUM_OF_TEL_ATP; i++) {
+ atp = &gAtpCtrl[i];
+ if (!atp->bEnable && atp->iFd < 0)
+ break;
+ }
+ if (i >= NUM_OF_TEL_ATP) {
+ ERRMSG(acceptClient2, "No free ATP to accept socket\n");
+ close(fd);
+ return utlFAILED;
+ }
+ atp->pTelAtpDesc = (TelAtpDesc *)arg_p;
+ atp->currentTargetSim = getInitialSimId(atp->pTelAtpDesc->targetSim);
+ atp->iFd = fd;
+
+ if (aParser_p[atp->index] == NULL)
+ tcInitAtParser(&atp->index);
+
+ int status = pthread_create(&atp->taskRef, NULL,
+ (void *)ProcessAtChanThread, (void *)(long)i);
+ if (status)
+ {
+ close(atp->iFd);
+ atp->iFd = -1;
+ ERRMSG(acceptClient3, "Thread Create Error!\n");
+ return utlFAILED;
+ }
+
+ atp->bEnable = TRUE;
+
+ return utlSUCCESS;
+}
+
+void initAtPara(void)
+{
+ WARNMSG(initAtPara1,"%s: enter\n", __FUNCTION__);
+ int i=0;
+
+ memset(chset_type, ATCI_CHSET_IRA, NUM_OF_TEL_ATP);
+ memset(chset_type_1, ATCI_CHSET_IRA, NUM_OF_TEL_ATP);
+
+ memset(isGsmChset, 0, NUM_OF_TEL_ATP);
+ memset(isGsmChset_1, 0, NUM_OF_TEL_ATP);
+
+ for(i=0; i<8; i++)
+ {
+ gProxySmsSegment[i] = NULL;
+ gProxySmsSegment_1[i] = NULL;
+
+ memset(gProxySmsSegmentLen, 0, 8);
+ memset(gProxySmsSegmentLen_1, 0, 8);
+ }
+
+ gExtendedSignal.Rxlev = 99;
+ gExtendedSignal.Ber = 99;
+ gExtendedSignal.Rscp = 255;
+ gExtendedSignal.Ecno = 255;
+ gExtendedSignal.Rsrp = 255;
+ gExtendedSignal.Rsrq = 255;
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ gExtendedSignal.ssRSRP = 255;
+ gExtendedSignal.ssRSRQ = 255;
+ gExtendedSignal.ssSINR = 255;
+#endif
+
+ gExtendedSignal_1.Rxlev = 99;
+ gExtendedSignal_1.Ber = 99;
+ gExtendedSignal_1.Rscp = 255;
+ gExtendedSignal_1.Ecno = 255;
+ gExtendedSignal_1.Rsrp = 255;
+ gExtendedSignal_1.Rsrq = 255;
+#if defined(ATCMD_1901_CI) || defined(ATCMD_1903_CI)
+ gExtendedSignal_1.ssRSRP = 255;
+ gExtendedSignal_1.ssRSRQ = 255;
+ gExtendedSignal_1.ssSINR = 255;
+#endif
+ for(i=0; i<NUM_OF_TEL_ATP; i++)
+ {
+ SmsMsgData[i] = NULL;
+ SmsMsgLen[i] = 0;
+
+ gCurrOperation[i] = AT_MSG_OPERATION_NULL;
+ gCurrOperation_1[i] = AT_MSG_OPERATION_NULL;
+
+ gSmsFormatMode[i] = ATCI_SMS_FORMAT_PDU_MODE;
+ }
+}
+
+static int createSocket(const char *name)
+{
+ struct sockaddr_un addr;
+ int fd, ret;
+ char *secon;
+
+ fd = socket(AF_UNIX, SOCK_STREAM, 0);
+ if (fd < 0) {
+ ERRMSG(createSocket, "Failed to open socket '%s': %s\n", name, strerror(errno));
+ return -1;
+ }
+
+ memset(&addr, 0 , sizeof(addr));
+ addr.sun_family = AF_UNIX;
+ snprintf(addr.sun_path, sizeof(addr.sun_path), "/tmp/%s", name);
+
+ ret = unlink(addr.sun_path);
+ if (ret != 0 && errno != ENOENT) {
+ ERRMSG(createSocket1, "Failed to unlink old socket '%s': %s\n", name, strerror(errno));
+ goto out_close;
+ }
+
+ ret = bind(fd, (struct sockaddr *) &addr, sizeof (addr));
+ if (ret) {
+ ERRMSG(createSocket2, "Failed to bind socket '%s': %s\n", name, strerror(errno));
+ goto out_unlink;
+ }
+
+ ret = listen(fd, 4);
+ if (ret < 0) {
+ ERRMSG(createSocket3, "Failed to listen on socket '%s': %s", name, strerror(errno));
+ goto out_unlink;
+ }
+ ret = chmod(addr.sun_path, 0666);
+ if (ret < 0) {
+ ERRMSG(createSocket4, "Failed to chmod on socket '%s': %s", name, strerror(errno));
+ goto out_unlink;
+ }
+
+ //DBGMSG(createSocket5, "Created socket '%s' ", addr.sun_path);
+
+ return fd;
+
+out_unlink:
+ unlink(addr.sun_path);
+out_close:
+ close(fd);
+ return -1;
+}
+
+static void startSocketListeners(void)
+{
+ static TelAtpDesc disc[] = {
+ DEFINE_SIM1_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmd", FALSE),
+ DEFINE_SIM1_NO_INDICATION_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmdni", FALSE),
+ DEFINE_SIM1_NO_INDICATION_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmdni1", FALSE),
+ DEFINE_MASTER_SIM_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmdm", FALSE),
+#ifndef BIONIC /* No DSDS in NZ3*/
+ DEFINE_MASTER_SIM_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmdmni", FALSE),
+#else
+ DEFINE_MASTER_SIM_NO_INDICATION_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmdmni", FALSE),
+#endif /* BIONIC */
+
+#ifndef BIONIC // No DSDS in NZ3
+ DEFINE_MASTER_SIM_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "gsmtty4", FALSE),
+#else
+ DEFINE_MASTER_SIM_NO_INDICATION_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "gsmtty4", FALSE),
+#endif // BIONIC
+
+#ifdef ADDITIONAL_MODEM_DEVICE
+ DEFINE_MASTER_SIM_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmdmni1", FALSE),
+#endif
+#ifdef UART2_AT
+ DEFINE_MASTER_SIM_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmdttyS1", FALSE),
+#endif
+
+#ifdef PPP_PSEUDO_DEVICE
+ DEFINE_MASTER_SIM_NO_INDICATION_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmdpts", FALSE),
+#endif
+ DEFINE_MASTER_SIM_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmdtest", FALSE),
+#ifdef LPA_SUPPORT
+ DEFINE_SIM1_NO_INDICATION_CHANEL_DESC(TEL_SOCKET_AT_CMD_ATP_BEGIN, "atcmdLpa", FALSE),
+#endif
+ };
+
+ unsigned int i;
+ for (i = 0; i < sizeof(disc) / sizeof(disc[0]); i++) {
+ TelAtpDesc* pd = &disc[i];
+ int sock = createSocket(pd->path);
+ if (sock >= 0) {
+ (void)utlSetFdEventHandler(utlEVENT_HANDLER_TYPE_READ,
+ utlEVENT_HANDLER_PRIORITY_MEDIUM,
+ sock, acceptClient, pd);
+ }
+ }
+}
+
+BOOL tcInit( char * ext_serial_path)
+{
+ int status;
+ int i, j, k,imsChannel;
+ void *taskStack;
+ BOOL bIsDualSim = isDualSimSolution();
+ BOOL bIsSim2Master = isSim2Master();
+ TelAtpDesc *pTelAtpDesc;
+
+ F_ENTER(tcInit0);
+
+ //
+ // Init Variable
+ //
+ utlUpdateTelModeFromProperty();
+ uci_AT_ctx_get();
+
+ for ( i = 0; i < NUM_OF_TEL_ATP; i++)
+ {
+ int fd[2];
+ gAtpCtrl[i].bEnable = FALSE;
+ gAtpCtrl[i].iFd = -1;
+ gAtpCtrl[i].index = i;
+ gAtpCtrl[i].AtpIndEnable = 1;
+ memcpy(&(gAtpCtrl[i].pTelAtpDataEntry), &sTelAtpDataEntry, sizeof(TelAtpDataEntry));
+ if (i < TEL_SOCKET_AT_CMD_ATP_BEGIN) {
+ gAtpCtrl[i].pTelAtpDesc = TelAtpId2Desc(gAtpCtrl[i].index);
+ if(gAtpCtrl[i].pTelAtpDesc == NULL)
+ {
+ ERRMSG(tcInit, "tcInit: !!!!!!!!fail to get AT channel desc, %d", i);
+ return FALSE;
+ }
+ gAtpCtrl[i].currentTargetSim = getInitialSimId(gAtpCtrl[i].pTelAtpDesc->targetSim);
+ }
+ if(pipe(fd) < 0)
+ {
+ ERRMSG(tcInit1, "tcInit: create pipe error: %s", strerror(errno));
+ return FALSE;
+ }
+
+ gCurrentCgerepMode[i] = 2;
+ gRequestCgerepMode[i] = 2;
+
+ gAtpCtrl[i].iNotifyReadEnd = fd[0];
+ gAtpCtrl[i].iNotifyWriteEnd = fd[1];
+ (void)fcntl(gAtpCtrl[i].iNotifyReadEnd, F_SETFL, O_NONBLOCK);
+ }
+ getTelAtpDesc(TEL_ESP_AT_CMD_ATP)->path = ext_serial_path;
+
+ /*
+ * Create thread to read each port, 40 means "(null)"
+ */
+ for(i = 0; i < TEL_SOCKET_AT_CMD_ATP_BEGIN; i++)
+ {
+ char *path;
+ pTelAtpDesc = getTelAtpDesc(i);
+
+
+#ifdef AT_PRODUCTION_CMNDS
+ if((i == TEL_PROD_AT_CMD_ATP) || (ap_only && pTelAtpDesc->apOnly == FALSE) ||
+#else
+ if((ap_only && pTelAtpDesc->apOnly == FALSE) ||
+#endif
+ (!bIsDualSim && pTelAtpDesc->targetSim == SIM2_ONLY))
+ continue;
+
+ path = pTelAtpDesc->path;
+ if(path == NULL || path[0] == 40)
+ continue;
+ //DBGMSG(tcInit2, "Setting up for AT Command Channel: %d,%s\n", i, gAtpName[i]);
+
+ if (i == TEL_ESP_AT_CMD_ATP)
+ tcOpenExtSerialPort(&gAtpCtrl[i].iFd, path, O_RDWR | O_NOCTTY);
+ else
+ tcOpenDevice(&gAtpCtrl[i].iFd, path, O_RDWR | O_NOCTTY );
+
+ if (gAtpCtrl[i].iFd <= 0)
+ return FALSE;
+
+ tcInitAtParser(&gAtpCtrl[i].index);
+
+ status = pthread_create(&gAtpCtrl[i].taskRef, NULL,
+ (void *)ProcessAtChanThread, (void *)(long)i);
+ if (status)
+ {
+ ERRMSG(tcInit3, "Thread Create Error!\n");
+ return FALSE;
+ }
+
+ gAtpCtrl[i].bEnable = TRUE;
+ }
+
+ loadPSRegOptionSetting();
+ initAtPara();
+
+#ifndef NO_AUDIO
+#ifdef ECALL_SUPPORT
+ //restoreMsd(&gMsdCfg);
+#endif
+#endif
+ startSocketListeners();
+ F_LEAVE(tcInit4);
+ return TRUE;
+}
+
+BOOL tcInitAtParser( TelAtParserID * sAtpIndex )
+{
+
+ F_ENTER(tcInitAtParser0);
+ int index = *sAtpIndex;
+ //DBGMSG(tcInitAtParser, "ATP Index: %d.\n", index);
+
+#if defined (BIONIC)
+ property_get("ro.atm.id", ATM_ID, "ASR");
+ property_get("ro.atm.manufacturer.id", ATM_MANUFACTURER_ID, "ASR");
+ property_get("ro.product.device", ATM_MODEL_ID, "LINUX");
+#endif
+
+ /* Enable AT Parser*/
+ /*
+ * Opens a new AT command parser with the array of utlAtCommand_T structures
+ */
+ if ((aParser_p[index] = utlOpenAtParser(shell_commands,
+ utlNumberOf(shell_commands), sAtpIndex)) == NULL)
+ {
+ ERRMSG(tcInitAtParser1, "tcInitAtParser: utlOpenAtParser(%d) failed\n", index);
+ return FALSE;
+ }
+
+ //
+ // Set the reply handler function
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_REPLY_HANDLER, atParserShellReplyFunction) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser2, "Cannot set reply handler\n");
+ return FALSE;
+ }
+
+ //
+ // Set the AT command timeout value setting handler function
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_GET_ATCMD_TIMEOUT_VALUE_HANDLER, atParserGetAtcmdTimeoutValue) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser3, "Cannot set get AT command timeout value handler\n");
+ return FALSE;
+ }
+
+ //
+ // Set the AT command tineout error handler function
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_ATCMD_TIMEOUT_ERROR_HANDLER, atParserAtcmdTimeoutError) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser4, "Cannot set AT command timeout error handler\n");
+ return FALSE;
+ }
+
+#ifdef ATCMD_CONTINUOUS_TIMEOUT_RECOVERY
+ //
+ // Set the AT command continuous tineout handler function
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_ATCMD_CONTINUOUS_TIMEOUT_HANDLER, atParserAtcmdContinuousTimeout) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser5, "Cannot set AT command continuous timeout value handler\n");
+ return FALSE;
+ }
+#endif
+ //
+ // Set the AT parser trigger handler function
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_AT_PARSER_TRIGGER_HANDLER, triggerAtParser) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser6, "Cannot set AT parser trigger handler\n");
+ return FALSE;
+ }
+
+ /*
+ //
+ // Set the sParameter Function
+ //
+ if (utlAtParserOp(aParser_p[*sAtpIndex], utlAT_PARSER_OP_SET_S_PARAMETER_HANDLER, sParameterFunction) != utlSUCCESS) {
+ fprintf(stderr, "atParserShell: utlAtParserOp(1.2) failed\n");
+ return false;
+ }
+
+ //
+ // Set the Driver Request handler
+ //
+ if (utlAtParserOp(aParser_p[*sAtpIndex], utlAT_PARSER_OP_SET_DRIVER_REQUEST_HANDLER, driverRequestFunction) != utlSUCCESS) {
+ fprintf(stderr, "atParserShell: utlAtParserOp(1.3) failed\n");
+ return false;
+ }
+ */
+
+ //
+ // Set ECHO mode
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_ECHO_OFF) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser7, "Cannot turn off ECHO\n");
+ return FALSE;
+ }
+
+ //
+ // Set the AT Parser ID Name
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_ID, ATM_ID) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser8, "Set AT Parser ID Name Error\n");
+ return FALSE;
+ }
+
+ //
+ // Set the Manufacturer ID
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_MANUFACTURER, ATM_MANUFACTURER_ID) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser9, "Set Manufacturer ID Error\n");
+ return FALSE;
+ }
+
+ //
+ // Set Model ID
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_MODEL, ATM_MODEL_ID) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser10, "Set Model ID Error\n");
+ return FALSE;
+ }
+
+ //
+ // Set Revision ID
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_REVISION, ATM_REVISION_ID) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser11, "Set Revision ID Error\n");
+ return FALSE;
+ }
+
+ //
+ // Set serial number
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_SERIAL_NUMBER, ATM_SERIAL_NUMBER) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser12, "Set Serial Number Error\n");
+ return FALSE;
+ }
+
+ //
+ // Set the object ID
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_OBJECT_ID, ATM_OBJ_ID) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser13, "utlAtParserOp(1.10) failed\n");
+ return FALSE;
+ }
+
+ //
+ // Set Country Code
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_COUNTRY_CODE, ATM_COUNTRY_CODE) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser14, "Set Country Code Error\n");
+ return FALSE;
+ }
+
+ //
+ // Get auto answer delay
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_GET_AUTO_ANSWER_DELAY, PARSER_GET_AUTO_ANSWER_DELAY) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser15, "Get auto answer delay error\n");
+ return FALSE;
+ }
+
+ //
+ // Set auto answer delay
+ //
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_AUTO_ANSWER_DELAY, PARSER_SET_AUTO_ANSWER_DELAY) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser16, "Set auto answer delay error\n");
+ return FALSE;
+ }
+
+ //
+ // Update auto answer setting in global variable
+ //
+// #if defined (BIONIC)
+ {
+ char prop_auto_answare[PROPERTY_VALUE_MAX] = {'\0'};
+
+ if(isTelAtpCurrentForSIM2(index))
+ {
+ property_get("persist.radio.sim2.auto_answer",prop_auto_answare,"false");
+ }
+ else
+ {
+ property_get("persist.radio.sim1.auto_answer",prop_auto_answare,"false");
+ }
+
+ if ( strcmp(prop_auto_answare, "true") == 0)
+ {
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_S_PARAMETER_VALUE, utlAT_AUTO_ANSWER, 1) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser17, "Set auto answer delay error\n");
+ return FALSE;
+ }
+ }
+ }
+// #endif
+
+ //set proxy call back function
+
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_AT_PARSER_PROXY_CB, createStringToProxy) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser18, "Set sendToProxy CB error\n");
+ return FALSE;
+ }
+
+ //set call back function to find if proxy request
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_IS_PROXY_REQ_CB, utlIsProxyReq) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser19, "Set isProxy CB error\n");
+ return FALSE;
+ }
+
+ //set proxy call back function for timeout counter handling
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_INC_PROXY_TO_COUNTER_CB, utlIncProxyTimeoutCounter) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser20, "Set INC_PROXY_TO_COUNTER_CB error\n");
+ return FALSE;
+ }
+
+ //set ptr to cmd struct handling proxy unknown cmds
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_PRXY_ONLY_CMD_PTR, &proxyUnknownCmd) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser21, "Set SET_PRXY_ONLY_CMD_PTR error\n");
+ return FALSE;
+ }
+
+ //set callback function to proxy esc
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_PRXY_ESC_CB, &proxyEsc) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser22, "Set proxy_esc_CB error\n");
+ return FALSE;
+ }
+
+ //callback function to clear sms datamode
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_CLEAR_SMS_DATDAMODE_CB, &clearSmsDataMode) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser23, "set clear_sms_datamode_CB error\n");
+ return FALSE;
+ }
+
+ //callback function to clear sms_over_nas
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_CLEAR_SMS_OVER_NAS_CB, &clearSmsoverNas) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser24, "set sms_over_nas_CB error\n");
+ return FALSE;
+ }
+
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_SET_CHECK_SMS_PARA_CB, &checkSmsPara) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser25, "Set checkSmsPara CB error\n");
+ return FALSE;
+ }
+
+ if (utlAtParserOp(aParser_p[index], utlAT_PARSER_OP_CONVERT_ATCMD_STR_CB, &convertAtcmdStr) != utlSUCCESS)
+ {
+ ERRMSG(tcInitAtParser25, "Set checkSmsPara CB error\n");
+ return FALSE;
+ }
+
+ F_LEAVE(tcInitAtParser24);
+ return TRUE;
+}
+
+BOOL tcOpenExtSerialPort(int *fd, char * serial_path, int flag )
+{
+
+ F_ENTER(tcOpenExtSerialPort0);
+
+ tcOpenDevice(fd, serial_path, flag);
+
+ if (*fd < 0)
+ {
+ F_LEAVE(tcOpenExtSerialPort);
+ return FALSE;
+ }
+
+
+ /*
+ * The following will handle the physical serial port setting
+ */
+
+ struct termios tio; //place for old and new port settings for serial port
+
+ memset(&tio, 0x0, sizeof(tio));
+
+ // Make the file descriptor asynchronous (the manual page says only
+ // O_APPEND and O_NONBLOCK, will work with F_SETFL...)
+ (void)fcntl(*fd, F_SETFL, 0);
+
+ tcgetattr(*fd, &savetio); // save current port settings
+
+ // set new port settings for canonical input processing
+ tio.c_cflag = BAUD | CRTSCTS | DATABITS | STOPBITS | PARITYON | PARITY | CLOCAL | CREAD;
+ tio.c_iflag = IGNPAR;
+ tio.c_oflag = 0;
+ tio.c_lflag = 0; //ICANON;
+
+ /*special contrrl character are listed below, for others:
+ VINTR(Ctrl-c) VQUIT(Ctrl-\) VKILL(@) VTIME(inter-character timer unused)
+ VSWTC('\0') VSTART(Ctrl-q) VSTOP(Ctrl-s) VSUSP(Ctrl-z)
+ VREPRINT(Ctrl-r) VDISCARD(Ctrl-u) VWERASE(Ctrl-w) VLNEXT(Ctrl-v) VEOL2('\0')
+ are set to 0.
+ */
+ tio.c_cc[VERASE] = 0x8; /* del */
+ tio.c_cc[VEOF] = 4; /* Ctrl-d */
+ tio.c_cc[VMIN] = 1; /* blocking read until 1 character arrives */
+ tio.c_cc[VEOL] = 0xD; /* '\0' */
+
+ tcflush(*fd, TCIFLUSH);
+ tcsetattr(*fd, TCSANOW, &tio);
+
+ F_LEAVE(tcOpenExtSerialPort1);
+
+ return TRUE;
+}
+
+BOOL tcOpenDevice(int* fd, char * char_dev_path, int flag)
+{
+ F_ENTER(tcOpenDevice0);
+ /*open the device(com port) to be non-blocking (read will return immediately) */
+ *fd = open(char_dev_path, flag );
+
+ if (*fd < 0)
+ {
+ ERRMSG(tcOpenDevice, "Error opening device %s\n", char_dev_path);
+ return FALSE;
+ }
+
+ //DBGMSG(tcOpenDevice1, "Opened %s, fd is: %d.\n", char_dev_path, *fd);
+
+ F_LEAVE(tcOpenDevice2);
+ return TRUE;
+}
+
+
+int tcWriteParser(TelAtParserID sAtpIndex, char * string, int len)
+{
+ F_ENTER(tcWriteParser0);
+
+ int fd;
+ ssize_t size;
+ int cur;
+ int retry = 10;
+ fd = getFd(sAtpIndex);
+
+ if (fd <= 0)
+ {
+ ERRMSG(tcWriteParser, "Wrong AT Parser ID- sAtpIndex: %d, fd: %d\n", sAtpIndex, fd);
+ return -1;
+ }
+
+ cur = 0;
+ while(cur < len)
+ {
+ do
+ {
+ size = write(fd, string + cur, len - cur);
+ }while(size < 0 && errno == EINTR);
+
+ if (size > 0)
+ cur += (int)size;
+ else if (size == 0)
+ {
+ if (retry)
+ {
+ retry--;
+ usleep(1000);
+ continue;
+ }
+ else
+ break;
+ }
+ else
+ {
+ if ((!strcmp(gAtpCtrl[sAtpIndex].pTelAtpDesc->path, BACKEND_SERIALATCMD_ATCMD_CHAN_DEVICE)) )
+ {
+ WARNMSG(tcWriteParser1, "tcWriteParser: write %s warning %d(%s)\n",
+ gAtpCtrl[sAtpIndex].pTelAtpDesc->path, errno, strerror(errno));
+ }
+ else
+ {
+ ERRMSG(tcWriteParser2, "tcWriteParser: write %s error %d(%s)\n",
+ gAtpCtrl[sAtpIndex].pTelAtpDesc->path, errno, strerror(errno));
+ }
+ break;
+ }
+ }
+
+ WARNMSG(tcWriteParser3, "tcWriteParser: writing to device (index=%d) %s %d bytes\n", sAtpIndex, gAtpCtrl[sAtpIndex].pTelAtpDesc->path, cur);
+ fsync(fd);
+
+ F_LEAVE(tcWriteParser4);
+ return (int)cur;
+}
+
+/******************************************************************************
+* AT Parser Callback function
+******************************************************************************/
+utlReturnCode_T atParserShellReplyFunction(const char *string_p, void *arg_p)
+{
+
+ /*
+ * Dumping the reply to stdout
+ */
+ TelAtParserID * sATP_p = arg_p;
+
+ WARNMSG(atParserShellReplyFunction, "ShellReply: %s on index: %d\n", string_p, *sATP_p);
+
+ /*
+ * If there is socket attached, dump it to the socket as well
+ */
+
+ tcWriteParser(*sATP_p, (char *)string_p, strlen(string_p));
+ return utlSUCCESS;
+}
+
+utlReturnCode_T atParserShellGetFunction(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)
+{
+ UNUSEDPARAM(op)
+ UNUSEDPARAM(command_name_p)
+ UNUSEDPARAM(parameter_values_p)
+ UNUSEDPARAM(num_parameters)
+
+ char tempBuf[200];
+ *xid_p = MAKE_AT_HANDLE(*(TelAtParserID *)arg_p);
+
+ //DBGMSG(atParserShellGetFunction, "atParserShellGetFunction: %s\n", command_name_p);
+ //DBGMSG(atParserShellGetFunction1, "\t*info_text_p = %s\n", info_text_p);
+ if(NULL != info_text_p)
+ {
+ strncpy(tempBuf, info_text_p, sizeof(tempBuf));
+ tempBuf[sizeof(tempBuf) - 1] = '\0';
+ }
+ else tempBuf[0] = '\0';
+
+ ATRESP(*xid_p, ATCI_RESULT_CODE_OK, 0, tempBuf);
+ return utlSUCCESS;
+}
+
+/*------------------------------------------------------------------------------*/
+utlReturnCode_T atParserShellSetFunction(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)
+{
+ UNUSEDPARAM(op)
+ UNUSEDPARAM(command_name_p)
+ UNUSEDPARAM(parameter_values_p)
+ UNUSEDPARAM(num_parameters)
+ UNUSEDPARAM(info_text_p)
+
+ * xid_p = MAKE_AT_HANDLE(*(TelAtParserID *)arg_p);
+ char tempBuf[400];
+ //DBGMSG(atParserShellSetFunction, "Set command: %s\n", command_name_p);
+ //DBGMSG(atParserShellSetFunction1, "\t*info_text_p = %s\n", info_text_p);
+ if(NULL != info_text_p)
+ {
+ strncpy(tempBuf, info_text_p, sizeof(tempBuf));
+ tempBuf[sizeof(tempBuf) - 1] = '\0';
+ }
+ else tempBuf[0] = '\0';
+
+ ATRESP(*xid_p, ATCI_RESULT_CODE_OK, 0, tempBuf);
+ return utlSUCCESS;
+}
+
+/*------------------------------------------------------------------------------*/
+unsigned int atParserGetAtcmdTimeoutValue(const char* cmd_name_p, const utlAtAsyncOp_T op)
+{
+ ATCMD_TimeOut *timeout_p = atcmd_timeout_table;
+ int index = -1;
+ switch(op)
+ {
+ case utlAT_ASYNC_OP_SET:
+ case utlAT_ASYNC_OP_ACTION:
+ case utlAT_ASYNC_OP_EXEC:
+ index = 0;
+ break;
+ case utlAT_ASYNC_OP_GET:
+ index = 1;
+ break;
+ case utlAT_ASYNC_OP_SYNTAX:
+ index = 2;
+ break;
+ case utlAT_ASYNC_OP_NULL:
+ case utlAT_ASYNC_OP_UNKNOWN:
+ default:
+ break;
+ }
+ if(index >= 0)
+ {
+ while(timeout_p->name_p != NULL)
+ {
+ if(strcmp(timeout_p->name_p, cmd_name_p) == 0)
+ return timeout_p->time_second[index];
+ timeout_p++;
+ }
+ }
+ return utlAT_AWAIT_ASYNC_TIMEOUT_TIME;
+}
+
+int atParserAtcmdTimeoutError(unsigned int atHandle)
+{
+ return handle_CMEE_code(atHandle, CME_COMMMAND_TIMEOUT_ERR);
+}
+
+#ifdef ATCMD_CONTINUOUS_TIMEOUT_RECOVERY
+#define MAX_TIMEOUT_NUM 5
+void atParserAtcmdContinuousTimeout(void)
+{
+ char resetInfo[256];
+ pthread_mutex_lock(&gTimeoutLock);
+ if(++gTimeoutNum >= MAX_TIMEOUT_NUM)
+ {
+ sprintf(resetInfo, "timeout nums is %d, reach limit\n", gTimeoutNum);
+ if(cp_silent_reset_on_req(resetInfo, 0) == 0)
+ gTimeoutNum = 0;
+ }
+ pthread_mutex_unlock(&gTimeoutLock);
+}
+#endif
+
+bool utlAtCommandTimeoutModify(const char *commandName, int mode, int timeout)
+{
+ utlAtCommand_P2c command_p = pshell_commands;
+ utlAtCommand_P2c term_command_p = command_p + shell_commands_num;
+ ATCMD_TimeOut *timeout_p;
+ ATCMD_TimeOut *term_timeout_p = atcmd_timeout_table + shell_commands_num;
+ bool cmdValid = false;
+ unsigned int j;
+ if((commandName == NULL) || ((term_timeout_p - 1)->name_p != NULL))
+ return false;
+ /*--- for each command... ---*/
+ for (; command_p < term_command_p; command_p++)
+ {
+ if(strcasecmp(command_p->name_p, commandName) == 0)
+ {
+ if((command_p->type == utlAT_COMMAND_TYPE_BASIC) && (mode != TEL_AT_HTCCTO_2_MODE_SET))
+ cmdValid = false;
+ else
+ cmdValid = true;
+ break;
+ }
+ }
+ if(cmdValid)
+ {
+ pthread_mutex_lock(&gTimeoutTableLock);
+ timeout_p = atcmd_timeout_table;
+ while(timeout_p->name_p != NULL)
+ {
+ if(strcasecmp(command_p->name_p, timeout_p->name_p) == 0)
+ {
+ for(j = 0; j < 3; j++)
+ {
+ if(((mode >> j) & 1UL) != 0)
+ {
+ timeout_p->time_second[j] = timeout;
+ }
+ }
+ break;
+ }
+ timeout_p++;
+ }
+ if(timeout_p->name_p == NULL)
+ {
+ for(j = 0; j < 3; j++)
+ {
+ if(((mode >> j) & 1UL) != 0)
+ {
+ timeout_p->time_second[j] = timeout;
+ }
+ else
+ {
+ timeout_p->time_second[j] = utlAT_AWAIT_ASYNC_TIMEOUT_TIME;
+ }
+ }
+ timeout_p->name_p = command_p->name_p;
+ }
+ pthread_mutex_unlock(&gTimeoutTableLock);
+ return true;
+ }
+ return false;
+}
+/************************************************************************************
+ * F@: ciAT - Process the command "AT"
+ *
+ */
+utlReturnCode_T ciAT( 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)
+{
+ UNUSEDPARAM(op)
+ UNUSEDPARAM(command_name_p)
+ UNUSEDPARAM(parameter_values_p)
+ UNUSEDPARAM(num_parameters)
+ UNUSEDPARAM(info_text_p)
+
+ TelAtParserID sAtpIndex = *(TelAtParserID *)arg_p;
+
+ UINT32 atHandle = AT_RESV_HANDLE(sAtpIndex, 3);
+
+ *xid_p = atHandle;
+
+ //DBGMSG(ciAT, "ciAT: atHandle:%d, gServiceGroupRegistered:%d\n", atHandle, gServiceGroupRegistered);
+
+ if (gServiceGroupRegistered > CI_SG_NUMIDS || ap_only)
+ ATRESP(atHandle, ATCI_RESULT_CODE_OK, 0, NULL);
+ else
+ ATRESP(atHandle, ATCI_RESULT_CODE_ERROR, 0, NULL);
+
+ return utlSUCCESS;
+}
+
+utlReturnCode_T ciCLAC( 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)
+{
+ UNUSEDPARAM(command_name_p)
+ UNUSEDPARAM(parameter_values_p)
+ UNUSEDPARAM(num_parameters)
+ UNUSEDPARAM(info_text_p)
+
+ RETURNCODE_T rc = INITIAL_RETURN_CODE;
+ CiReturnCode ret = CIRC_FAIL;
+
+ utlAtCommand_P2c command_p = pshell_commands;
+ utlAtCommand_P2c term_command_p = command_p + shell_commands_num;
+ char* commands_buf_p;
+ char* commands_temp_p;
+
+ UINT32 atHandle = MAKE_AT_HANDLE(*(TelAtParserID *)arg_p);
+ *xid_p = atHandle;
+
+ //DBGMSG(ciCLAC, "ciCLAC: atHandle:%d\n", atHandle);
+
+ switch(op)
+ {
+ case TEL_EXT_ACTION_CMD:
+ {
+ commands_buf_p = (char *)malloc(20*shell_commands_num); //reserve 20 bytes for each command
+ if(commands_buf_p == NULL)
+ {
+ ret = ATRESP(atHandle, ATCI_RESULT_CODE_ERROR, 0, NULL);
+ break;
+ }
+ else
+ commands_temp_p = commands_buf_p;
+ /*--- for each command... ---*/
+ for (; command_p < term_command_p; command_p++)
+ {
+ commands_temp_p += sprintf(commands_temp_p, "AT%s\r\n", command_p->name_p);
+ }
+ ret = ATRESP(atHandle, ATCI_RESULT_CODE_OK, 0, commands_buf_p);
+ free(commands_buf_p);
+ break;
+ }
+ case TEL_EXT_TEST_CMD:
+ default:
+ {
+ ret = ATRESP(atHandle, ATCI_RESULT_CODE_CME_ERROR, CME_OPERATION_NOT_SUPPORTED, NULL);
+ break;
+ }
+ }
+
+ rc = HANDLE_RETURN_VALUE(ret);
+ return(rc);
+}
+
+#ifdef AT_PRODUCTION_CMNDS
+#define ATMODE_NOTIFICATION_STR "AT COMMAND OK"
+int start_prod_at_cmd_srv(void)
+{
+ int status;
+ struct termios tio;
+ memset(&tio, 0x0, sizeof(tio));
+ if(tcOpenDevice(&gAtpCtrl[TEL_PROD_AT_CMD_ATP].iFd, gAtpCtrl[TEL_PROD_AT_CMD_ATP].pTelAtpDesc->path, O_RDWR) == FALSE)
+ {
+ ERRMSG(start_prod_at_cmd_srv, "open path: %s error\n", gAtpCtrl[TEL_PROD_AT_CMD_ATP].pTelAtpDesc->path);
+ return FALSE;
+ }
+
+ memset(&tio, 0, sizeof(tio));
+
+ /* Configure termios */
+ tio.c_cflag = BAUD | CS8 | CLOCAL | CREAD;
+ tio.c_iflag = 0;
+ //tio.c_iflag = IGNPAR;
+ tio.c_oflag = 0;
+ tio.c_lflag = 0;
+ tio.c_cc[VMIN] = 1;
+ tio.c_cc[VTIME]= 0;
+ tcflush(gAtpCtrl[TEL_PROD_AT_CMD_ATP].iFd, TCIOFLUSH); //flush both data received but not read and data written but not transmitted.
+ tcsetattr(gAtpCtrl[TEL_PROD_AT_CMD_ATP].iFd, TCSANOW, &tio); //the change shall occur immediately
+
+ status = pthread_create(&gAtpCtrl[TEL_PROD_AT_CMD_ATP].taskRef, NULL,
+ (void *)ProcessAtChanThread, (void *)TEL_PROD_AT_CMD_ATP);
+
+ if (status)
+ {
+ ERRMSG(start_prod_at_cmd_srv1, "Thread for PROD Create Error!\n");
+ return FALSE;
+ }
+
+ //DBGMSG(start_prod_at_cmd_srv2, "start_prod_at_cmd_srv: %s\n", ATMODE_NOTIFICATION_STR);
+ gAtpCtrl[TEL_PROD_AT_CMD_ATP].bEnable = TRUE;
+ tcWriteParser(gAtpCtrl[TEL_PROD_AT_CMD_ATP].index, ATMODE_NOTIFICATION_STR, strlen(ATMODE_NOTIFICATION_STR));
+ return TRUE;
+}
+
+static void start_at_cmd_srv(void)
+{
+ if(gAtpCtrl[TEL_PROD_AT_CMD_ATP].bEnable == FALSE)
+ {
+ start_prod_at_cmd_srv();
+ }
+}
+
+int stop_prod_at_cmd_srv(int b_start_diag)
+{
+ unsigned char cmd;
+
+ if(b_start_diag)
+ cmd = TEL_ATP_CMD_EXIT_CHAN_AND_START_DIAG;
+ else
+ cmd = TEL_ATP_CMD_EXIT_CHAN;
+
+ if(notifyAtParser(TEL_PROD_AT_CMD_ATP, cmd) < 0)
+ return FALSE;
+ else
+ return TRUE;
+}
+#endif
+
+unsigned int utlIsAtpForSimCard(unsigned int parserId, SIMID simId)
+{
+ return gAtpCtrl[parserId].currentTargetSim == simId;
+}
+
+
+unsigned int utlIsAtpForMasterCard(unsigned int parserId)
+{
+ char buf[PROPERTY_VALUE_MAX] = {'\0'};
+ unsigned int forMasterSim = 0;
+ BOOL bIsSim2Master = isSim2Master();
+
+ VDBGMSG(utlIsAtpForMasterCard, "PROXY_DEBUG -utlIsAtpForMasterCard,%d- Check if for master SIM - parserID %d, sim2Flag %d\n",
+ __LINE__, parserId, bIsSim2Master);
+
+ if(bIsSim2Master)
+ forMasterSim = utlIsAtpForSimCard(parserId, SIM2);
+ else
+ forMasterSim = utlIsAtpForSimCard(parserId, SIM1);
+
+ VDBGMSG(utlIsAtpForMasterCard1, "PROXY_DEBUG -utlIsAtpForMasterCard,%d- forMastSim flag for parserID %d, sim2Flag %d is %d\n",
+ __LINE__, parserId, bIsSim2Master, forMasterSim);
+
+ return forMasterSim;
+}
+
+unsigned int utlIsReqForAtp(unsigned int handle, unsigned int parserId)
+{
+ unsigned int ret = 0;
+ if(handle == IND_REQ_HANDLE)
+ ret = utlIsAtpForSimCard(parserId, SIM1);
+ else if(handle == IND_REQ_HANDLE_1)
+ ret = utlIsAtpForSimCard(parserId, SIM2);
+ else if(!GET_SIM1_FLAG(handle))
+ ret = utlIsAtpForSimCard(parserId, SIM1);
+ else if(GET_SIM1_FLAG(handle))
+ ret = utlIsAtpForSimCard(parserId, SIM2);
+ return ret;
+}
+
+
+
+unsigned int utlIsProxyReq(const char *cmdName, utlAtParameterOp_T cmdOp, unsigned int parserId)
+{
+ //go through the list of requests to check if it is a proxy request
+ utlAtProxyCommand_P pProxyCommand;
+ unsigned int result = 0;
+ UINT32 atHandleForSimTest;
+
+ if((cmdName ==NULL) ||(parserId >= NUM_OF_TEL_ATP)) {
+ //DBGMSG(utlIsProxyReq, "PROXY_DEBUG -utlIsProxyReq,%d- param error\n", __LINE__);
+ return result;
+ }
+
+ if(gProxyChannelId == NUM_OF_TEL_ATP)
+ {
+ //DBGMSG(utlIsProxyReq, "PROXY_DEBUG -utlIsProxyReq,%d- proxy not set\n", __LINE__);
+ return result;
+ }
+
+ //VDBGMSG(utlIsProxyReq1, "PROXY_DEBUG -utlIsProxyReq,%d- check if cmd %s, operation %d, parser ID %d is proxy\n",
+ // __LINE__, cmdName, (int)cmdOp, (int)parserId );
+
+ //check that the AT channel the command was received on is not the proxy chanel
+ //find the parser first
+
+ if((aParser_p[gAtpCtrl[parserId].index] != NULL)&&
+ (aParser_p[gAtpCtrl[parserId].index]->isProxy)){
+ WARNMSG(utlIsProxyReq2, "PROXY_DEBUG -utlIsProxyReq,%d- Message received from proxy - handle as standard command\n",
+ __LINE__);
+
+ return result;
+ }
+
+ //check if request is for master SIM
+ if(!utlIsAtpForMasterCard(parserId)) {
+ VDBGMSG(utlIsProxyReq3, "PROXY_DEBUG -utlIsProxyReq,%d- request NOT for master SIM, do NOT proxy\n",
+ __LINE__);
+ return result;
+ }
+ pthread_mutex_lock(&gProxyAccessLock);
+ pProxyCommand = atProxyReq;
+
+ while(pProxyCommand != NULL)
+ {
+ if(!(strcasecmp(cmdName,pProxyCommand->commandName))) {
+ //match operation
+
+ result = pProxyCommand->operation & (0x1<<cmdOp);
+ break;
+ }
+ pProxyCommand = pProxyCommand->next_p;
+ }
+ pthread_mutex_unlock(&gProxyAccessLock);
+
+ WARNMSG(utlIsProxyReq4, "PROXY_DEBUG -utlIsProxyReq,%d- proxy flag for checking req %s, op %d is %d\n",
+ __LINE__, cmdName, (int)cmdOp, result);
+
+ return result;
+}
+
+//check if the indication is proxy, and if it should be forwarded
+//to proxy client or sent to all channels
+unsigned int utlIsProxyInd(const char *indName,unsigned int indHandle)
+
+{
+ unsigned int result = 0;
+ utlAtProxyCommand_P pProxyInd;
+ utlAtParser_P parser_p;
+ BOOL bIsSim2Master = isSim2Master();
+
+ if((bIsSim2Master && indHandle == IND_REQ_HANDLE) ||
+ (!bIsSim2Master && indHandle == IND_REQ_HANDLE_1))
+ return result;
+
+ if(indName ==NULL){
+ DBGMSG(utlIsProxyInd, "PROXY_DEBUG -utlIsProxyInd,%d- param error\n", __LINE__);
+ return result;
+ }
+
+ //VDBGMSG(utlIsProxyInd1, "PROXY_DEBUG -utlIsProxyInd,%d- check if ind %s, \n",
+ // __LINE__, indName);
+
+ if(strcasecmp(indName,"+CBM")==0 || strcasecmp(indName,"+CDS")==0 || strcasecmp(indName,"+CMT")==0){
+ return result;
+ }
+
+ pthread_mutex_lock(&gProxyAccessLock);
+ //check that the indication is a proxy indication
+ pProxyInd = atProxyInd;
+ while(pProxyInd != NULL)
+ {
+ //look for the indication name in the receievd string
+ if(strcasestr(indName,pProxyInd->commandName)) {
+ //match operation
+ result = 1;
+ break;
+ }
+ pProxyInd = pProxyInd->next_p;
+ }
+ pthread_mutex_unlock(&gProxyAccessLock);
+
+ VDBGMSG(utlIsProxyInd2, "PROXY_DEBUG -utlIsProxyInd,%d- result for ind %s is %d, \n",
+ __LINE__, indName, result);
+
+ return result;
+}
+
+//Increment or reset Proxy timeout counter. This function is a parser
+//call back function, which is operated when the timeout for a command
+//that was proxied expires
+//if the counter exceeds the maximum value - an indication is sent to
+//the proxy channel
+void utlIncProxyTimeoutCounter(unsigned int incValue)
+{
+ char msgToProxy[20];
+ UINT32 atHandleForProxyChannel;
+
+ if(incValue)
+ {
+ gProxyTimeoutCounter = gProxyTimeoutCounter + incValue;
+
+ WARNMSG(utlIncProxyTimeoutCounter, "PROXY_DEBUG -utlIncProxyTimeoutCounter,%d- counter value after inc with %d is %d \n",
+ __LINE__, incValue, gProxyTimeoutCounter);
+ if((gProxyTimeoutCounter >=ATCMD_PROXY_TIMEOUT_COUNTER_MAX_VALUE)
+ &&(gProxyChannelId != NUM_OF_TEL_ATP))
+ {
+ //send indication to proxy channel
+ memset(msgToProxy,0, sizeof(msgToProxy));
+
+ sprintf(msgToProxy,"*PRXYRST");
+
+ atHandleForProxyChannel = MAKE_AT_HANDLE(gProxyChannelId);
+
+ ERRMSG(utlIncProxyTimeoutCounter1, "Error - Proxy Timeout - send PRXYRST indication to proxy channel \r\n");
+
+ ATRESP(atHandleForProxyChannel , ATCI_RESULT_CODE_NULL, 0, msgToProxy);
+
+ //reset counter
+ gProxyTimeoutCounter = 0;
+ aParser_p[gAtpCtrl[gProxyChannelId].index]->isProxy = FALSE;
+ gProxyChannelId = NUM_OF_TEL_ATP;
+ pthread_mutex_lock(&gProxyAccessLock);
+ clearProxyLists(&atProxyReq);
+ clearProxyLists(&atProxyInd);
+ pthread_mutex_unlock(&gProxyAccessLock);
+ }
+ }
+ else
+ {
+ //reset counter
+ WARNMSG(utlIncProxyTimeoutCounter2, "PROXY_DEBUG -utlIncProxyTimeoutCounter,%d- reset counter \n", __LINE__);
+ gProxyTimeoutCounter = 0;
+ }
+}
+
+unsigned int utlIsProxySmsTrs(const char *cmdName)
+{
+ unsigned int onGoingTrsFalg = 0;
+
+ if(!strcasecmp("+CMGS", (char*)cmdName))
+ {
+ onGoingTrsFalg = 1;
+ gCurrentSmsDataMode = TEL_MSG_DATA_CMGS;
+ }
+ else if(!strcasecmp("+CMGC", (char*)cmdName))
+ {
+ onGoingTrsFalg = 1;
+ gCurrentSmsDataMode = TEL_MSG_DATA_CMGC;
+ }
+ else if(!strcasecmp("+CMGW", (char*)cmdName))
+ {
+ onGoingTrsFalg = 1;
+ gCurrentSmsDataMode = TEL_MSG_DATA_CMGW;
+ }
+ else if(!strcasecmp("+CNMA", (char*)cmdName))
+ {
+ onGoingTrsFalg = 1;
+ gCurrentSmsDataMode = TEL_MSG_DATA_CNMA;
+ }
+
+
+ return onGoingTrsFalg;
+}
+
+bool utlIsReqForPPP(unsigned int atHandle)
+{
+ unsigned int sAtpIndex = GET_ATP_INDEX(atHandle);
+
+ ERRMSG(utlIsReqForPPP, "utlIsReqForPPP: athandle = 0x%x, sAtpIndex = %d, bEnable = %d, path = %s\n",
+ atHandle, sAtpIndex, gAtpCtrl[sAtpIndex].bEnable, gAtpCtrl[sAtpIndex].pTelAtpDesc->path);
+
+ if(sAtpIndex < NUM_OF_TEL_ATP && gAtpCtrl[sAtpIndex].bEnable) {
+ if (gAtpCtrl[sAtpIndex].pTelAtpDesc->path && strcmp(gAtpCtrl[sAtpIndex].pTelAtpDesc->path, "atcmdmni") == 0)
+ return true;
+
+ if (gAtpCtrl[sAtpIndex].pTelAtpDesc->path && strcmp(gAtpCtrl[sAtpIndex].pTelAtpDesc->path, "atcmdtest") == 0)
+ return true;
+#ifdef ADDITIONAL_MODEM_DEVICE
+ if (gAtpCtrl[sAtpIndex].pTelAtpDesc->path && strcmp(gAtpCtrl[sAtpIndex].pTelAtpDesc->path, "atcmdmni1") == 0)
+ return true;
+#endif
+#ifdef UART2_AT
+ if (gAtpCtrl[sAtpIndex].pTelAtpDesc->path && strcmp(gAtpCtrl[sAtpIndex].pTelAtpDesc->path, "atcmdttyS1") == 0)
+ return true;
+#endif
+ }
+
+ return false;
+}
+
+/************************************************************************************
+ * F@: ciChannelDestSwitch - GLOBAL API for AT*CHDSTST-command
+ *
+ */
+RETURNCODE_T ciChannelDestSwitch( 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)
+{
+ UNUSEDPARAM(command_name_p)
+ UNUSEDPARAM(num_parameters)
+ UNUSEDPARAM(info_text_p)
+
+ RETURNCODE_T rc = INITIAL_RETURN_CODE;
+ CiReturnCode ret = CIRC_FAIL;
+ int sAtpIndex = *(TelAtParserID *)arg_p;
+ UINT32 atHandle = MAKE_AT_HANDLE(sAtpIndex);
+
+ *xid_p = atHandle;
+ //DBGMSG(ciChannelDestSwitch, "ciChannelDestSwitch: atHandle = %d.\n", atHandle);
+
+ /*
+ ** Check the operation type.
+ */
+ switch ( op )
+ {
+ case TEL_EXT_GET_CMD: /* AT*CHDSTST? */
+ {
+ char buf[32];
+ SIMID simId = getSharedTelAtpCurrentTargetSIM(sAtpIndex);
+ if(simId != SIM1 && simId != SIM2)
+ ret = ATRESP( atHandle, ATCI_RESULT_CODE_CME_ERROR, CME_OPERATION_NOT_SUPPORTED, NULL);
+ else
+ {
+ memset(buf, 0x00, sizeof(buf));
+ snprintf(buf, sizeof(buf)-1, "*CHDSTST:%d", simId);
+ ret = ATRESP( atHandle, ATCI_RESULT_CODE_OK, 0, buf);
+ }
+ break;
+ }
+
+ case TEL_EXT_SET_CMD: /* AT*CHDSTST= */
+ {
+ int dest;
+ if ( getExtValue( parameter_values_p, 0, &dest, 0, 1, 0 ) == TRUE )
+ {
+ if(setSharedTelAtpCurrentTargetSIM(sAtpIndex, (SIMID)dest) == 0)
+ ret = ATRESP( atHandle, ATCI_RESULT_CODE_OK, 0, NULL);
+ else
+ ret = ATRESP( atHandle, ATCI_RESULT_CODE_CME_ERROR, CME_OPERATION_NOT_SUPPORTED, NULL);
+ }
+ else
+ {
+ ret = ATRESP( atHandle, ATCI_RESULT_CODE_CME_ERROR, CME_INVALID_PARAM, NULL);
+ }
+
+ break;
+ }
+
+ default:
+ {
+ ret = ATRESP( atHandle, ATCI_RESULT_CODE_CME_ERROR, CME_OPERATION_NOT_SUPPORTED, NULL);
+ break;
+ }
+ }
+
+
+ /* handle the return value */
+ rc = HANDLE_RETURN_VALUE(ret);
+ return(rc);
+}