diff --git a/.gitignore b/.gitignore index b66fc1ab6..5bd477956 100755 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,10 @@ **/*.mod.c **/*.su *.ko +**/*.o +**/*.a +**/*.so +**/*nvt_finish **/*.sln *.vcxproj *.filters diff --git a/Makefile b/Makefile index a4df8018d..f4ac41f2a 100755 --- a/Makefile +++ b/Makefile @@ -178,7 +178,16 @@ endif BUILD_ALL += pack CLEAN_ALL += pack_clean cfg_clean -all: $(BUILD_ALL) +sifarsdk: + $(MAKE) -C ./code/application/sifarsdk prepare + $(MAKE) -C ./code/application/sifarsdk/novatek/S530 sf_cs_app + @cp ./code/application/sifarsdk/out/bin/quectel-CM-EG915Q code/application/source/sf_app/build/ + @cp ./code/application/sifarsdk/out/bin/quectel-CM-EG91 code/application/source/sf_app/build/ + @cp ./code/application/sifarsdk/out/bin/QLog-EG915Q code/application/source/sf_app/build/QLog + @cp ./code/application/sifarsdk/out/bin/DownloadCLI-EG915Q code/application/source/sf_app/build/ + @cp ./code/application/sifarsdk/out/bin/QFirehose-EG91 code/application/source/sf_app/build/QFirehose + +all: sifarsdk $(BUILD_ALL) @echo "Finish generating images at $(BUILD_COMPLETE_STRING)" @$(call update_modelcfg_to_build) diff --git a/code/application/.gitignore b/code/application/.gitignore new file mode 100755 index 000000000..b67992051 --- /dev/null +++ b/code/application/.gitignore @@ -0,0 +1 @@ +sifarsdk/ \ No newline at end of file diff --git a/code/application/Makefile b/code/application/Makefile old mode 100644 new mode 100755 index 2fba7ed06..9f578b020 --- a/code/application/Makefile +++ b/code/application/Makefile @@ -9,6 +9,7 @@ LIB_EXTLIST := $(shell cd $(LIBRARY_DIR)/external; make -s list) BUILD_LIST := $(LIB_EXTLIST:%=nvt@ext@lib@%) $(LIBSUBDIRS:%=nvt@lib@%) $(APP_EXTLIST:%=nvt@ext@app@%) $(APPSUBDIRS) all: +# $(MAKE) -C ./sifarsdk/novatek/S530 sf_cs_app @$(call makedep, $(BUILD_LIST)) listpackage: diff --git a/code/application/sifarsdk/Makefile b/code/application/sifarsdk/Makefile new file mode 100644 index 000000000..513bc75ac --- /dev/null +++ b/code/application/sifarsdk/Makefile @@ -0,0 +1,43 @@ +gmock: + $(MAKE) -C external/gtest all +gmock_clean: + $(MAKE) -C external/gtest clean +cmake: + $(MAKE) -C build/cmake all +cmake_clean: + $(MAKE) -C build/cmake clean + +prepare: + @if [ -d ".git" ]; then \ + echo "source code exist"; \ + else \ + echo "source code not exist"; \ + git init; \ + git remote add origin http://192.168.6.216/xiaojiazhu/sifarsdk.git; \ + rm Makefile; \ + git pull origin master; \ + fi + @if [ -n "$(shell git status -s)" ]; then \ + echo "source code changed."; \ + else \ + echo "source code do not changed."; \ + fi +clean_code: + @rm -rf !(Makefile) + +all:cmake + $(MAKE) -C cmake-shell-linux all +clean: + $(MAKE) -C cmake-shell-linux clean + @rm -rf external/gtest/googletest-release-1.11.0 \ + external/lvglLinux-x86/lv_sim_vscode_sdl \ + external/openssl/openssl-1.1.1s \ + external/openssl/build \ + external/curl/curl-8.1.2 \ + external/EG915Q/quectel-CM \ + external/EG915Q/QLog_Linux_Android_V1.5.18 \ + external/EG91/quectel-CM \ + out \ + cmake-shell-linux + + diff --git a/code/application/source/cardv/SrcCode/PrjCfg_HUNTING_S530.h b/code/application/source/cardv/SrcCode/PrjCfg_HUNTING_S530.h old mode 100644 new mode 100755 diff --git a/code/application/source/cardv/SrcCode/System/SysUsb_Exe.c b/code/application/source/cardv/SrcCode/System/SysUsb_Exe.c index b4fbc560c..650df4658 100755 --- a/code/application/source/cardv/SrcCode/System/SysUsb_Exe.c +++ b/code/application/source/cardv/SrcCode/System/SysUsb_Exe.c @@ -32,22 +32,21 @@ /////////////////////////////////////////////////////////////////////////////// static char driver_path_prefix[64] = "/lib/modules/4.19.91"; - static char* usb_host_drivers[] = { - "kernel/drivers/usb/common/usb-common.ko", - "kernel/drivers/usb/core/usbcore.ko", - "kernel/drivers/usb/host/ehci-hcd.ko", - "kernel/drivers/net/mii.ko", - "kernel/drivers/net/usb/usbnet.ko", - "extra/net/GobiNet/drv_gobi_net.ko", - "kernel/drivers/net/usb/cdc_ether.ko", - "kernel/drivers/net/usb/rndis_host.ko", - "kernel/drivers/usb/serial/usbserial.ko", - "kernel/drivers/usb/serial/usb_wwan.ko", - "kernel/drivers/usb/serial/option.ko", - "kernel/drivers/usb/class/cdc-wdm.ko", - "kernel/drivers/net/usb/qmi_wwan.ko", - NULL + "kernel/drivers/usb/common/usb-common.ko", + "kernel/drivers/usb/core/usbcore.ko", + "kernel/drivers/usb/host/ehci-hcd.ko", + "kernel/drivers/net/mii.ko", + "kernel/drivers/net/usb/usbnet.ko", + "extra/net/GobiNet/drv_gobi_net.ko", + "kernel/drivers/net/usb/cdc_ether.ko", + "kernel/drivers/net/usb/rndis_host.ko", + "kernel/drivers/usb/serial/usbserial.ko", + "kernel/drivers/usb/serial/usb_wwan.ko", + "kernel/drivers/usb/serial/option.ko", + "kernel/drivers/usb/class/cdc-wdm.ko", + "kernel/drivers/net/usb/qmi_wwan.ko", + NULL }; static char* usb_dev_drivers[] = { diff --git a/code/application/source/sf_app/Makefile b/code/application/source/sf_app/Makefile old mode 100644 new mode 100755 index ff6d93c24..74fe50f6d --- a/code/application/source/sf_app/Makefile +++ b/code/application/source/sf_app/Makefile @@ -52,6 +52,7 @@ EXTRA_LIB_DIR += \ -L$(VOS_DRIVER_DIR)/output \ -L$(NVT_VOS_DIR)/output \ -L$(NVT_DRIVER_DIR)/output \ + -L$(APP_DIR)/sifarsdk/out/libs \ # public includes EXTRA_INCLUDE += \ @@ -74,6 +75,7 @@ EXTRA_INCLUDE += \ -I$(NVT_HDAL_DIR)/vendor/media/include \ -I$(NVT_HDAL_DIR)/vendor/common/include \ -I$(SIFAR_APP_DIR) \ + -I$(APP_DIR)/sifarsdk/out/libs/include \ # application local includes EXTRA_INCLUDE += \ @@ -187,6 +189,16 @@ EXTRA_LIB += \ -l:libtse.a \ -l:liblogfile.a \ +# sifarsdk/out/libs +EXTRA_LIB += \ + -l:libFtpManager.a \ + -l:libServers.a \ + -l:libLog.a \ + $(APP_DIR)/sifarsdk/out/libs/libcurl.a \ + $(APP_DIR)/sifarsdk/out/libs/libssl.a \ + $(APP_DIR)/sifarsdk/out/libs/libcrypto.a \ + -lstdc++ + ifeq "$(UI_STYLE)" "UI_STYLE_LVGL" EXTRA_LIB += \ -l:liblvgl.a \ @@ -269,6 +281,9 @@ SRC = \ #--------- END OF SOURCEs FOR APPLICATION --------------------------------------------- +C_PREDEFINED += \ + -DNETWORK_MODULE_EG915Q + #--------- ENVIRONMENT SETTING -------------------- INCLUDES = -I$(NVT_HDAL_DIR)/include -I$(LIBRARY_DIR)/include WARNING = -Wall -Wundef -Wsign-compare -Wno-missing-braces -Wstrict-prototypes diff --git a/code/application/source/sf_app/code/include/sf_eg91_sim.h b/code/application/source/sf_app/code/include/sf_eg91_sim.h index 4c0e85ea4..bb257d97a 100644 --- a/code/application/source/sf_app/code/include/sf_eg91_sim.h +++ b/code/application/source/sf_app/code/include/sf_eg91_sim.h @@ -107,10 +107,19 @@ typedef enum USBNET_APN_INIT_E USBNET_APN_INIT_END, }USBNET_APN_INIT_e; +typedef enum set_usbnet +{ + SET_USBNET_START = (unsigned char)0x01, + SET_USBNET_ECM_TYPE, + SET_USBNET_DIAL, + SET_USBNET_END +} SET_USBNET; + typedef enum SF_QUECTEL_NETREG { QUECTEL_NETREG_FRIST = (unsigned char)0x01, QUECTEL_NETREG_DBGCTL, + QUECTEL_NETREG_QSIMDET, QUECTEL_NETREG_QSIMSTAT, QUECTEL_NETREG_IPREX, QUECTEL_NETREG_QURCCFG, @@ -297,6 +306,8 @@ SINT32 sf_module_complete_init(void); SINT32 sf_net_regist_manual(void); SINT32 sf_auto_net_reg(void); + +SINT32 eg915q_set_usbnet(SF_FN_PARAM_S *pfnParam); #ifdef __cplusplus #if __cplusplus } diff --git a/code/application/source/sf_app/code/include/sf_hal_ttyusb.h b/code/application/source/sf_app/code/include/sf_hal_ttyusb.h index d746d8ad8..93a523986 100644 --- a/code/application/source/sf_app/code/include/sf_hal_ttyusb.h +++ b/code/application/source/sf_app/code/include/sf_hal_ttyusb.h @@ -34,6 +34,7 @@ extern "C" { #define GPRS_MODULE_TYPE_EG91 "EG91" #define GPRS_MODULE_TYPE_EG95 "EG95" +#define GPRS_MODULE_TYPE_EG915Q "EG915Q" #define GPRS_MODULE_TYPE_EG91_V "EG91VX" #define GPRS_MODULE_TYPE_EG95_V "EG95VX" diff --git a/code/application/source/sf_app/code/source/4gMng/sf_eg91_sim.c b/code/application/source/sf_app/code/source/4gMng/sf_eg91_sim.c index 248e5b8eb..581ed0164 100644 --- a/code/application/source/sf_app/code/source/4gMng/sf_eg91_sim.c +++ b/code/application/source/sf_app/code/source/4gMng/sf_eg91_sim.c @@ -2324,7 +2324,7 @@ SINT32 sf_module_complete_init(void) UIMenuStoreInfo *puiPara = sf_app_ui_para_get(); - SLOGD(" s\n"); + SLOGD(" s"); //needRecordLogFlag = 1; puiPara->NetGeneration = SF_NET_NO; @@ -2477,14 +2477,23 @@ SINT32 sf_module_complete_init(void) if(strstr((const char *)gsmPara, "OK")) { - if (sf_qgmr_decode(gsmPara, puiPara->ModuleSubver) == SUCCESS) - { - printf("[%s:%d]puiPara->ModuleSubver:%s\n", __FUNCTION__, __LINE__, puiPara->ModuleSubver); - eNetRegLocation = QUECTEL_NETREG_QSIMDET; - strcpy((char *)gsmPara, "AT+QSIMDET=0,1\r"); - ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); - SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); - } + pTemp = strstr((const char *)gsmPara, EG91); + + if(pTemp != NULL) + { + sf_quectel_module_subver_change(pTemp); + SLOGI(puiPara->ModuleSubver); + } +#ifdef NETWORK_MODULE_EG915Q + eNetRegLocation = QUECTEL_NETREG_QSIMDET; + strcpy((char *)gsmPara, "AT+QSIMDET=0,1\r"); +#endif +#ifdef NETWORK_MODULE_EG91 + eNetRegLocation = QUECTEL_NETREG_QSIMSTAT; + strcpy((char *)gsmPara, "AT+QSIMSTAT?\r"); +#endif + ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); + SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); } else { @@ -2510,7 +2519,27 @@ SINT32 sf_module_complete_init(void) SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); } break; - + case QUECTEL_NETREG_QSIMDET: + if(strstr((const char *)gsmPara, "OK")) + { + eNetRegLocation = QUECTEL_NETREG_QSIMSTAT; + strcpy((char *)gsmPara, "AT+QSIMSTAT?\r"); + ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); + SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + } + else + { + callTime++; + if(callTime > 10) + { + ret = SF_SIM_ERROR_AT_TIMEOUT; + SLOGE(gsmPara); + sprintf((char *)logStr, "Error Code:0x%08X\n", ret); + SLOGE(logStr); + goto SF_MODULE_END; + } + } + break; case QUECTEL_NETREG_QSIMSTAT: #if SF_TEST_ERROR_CODE sf_test_code_err(eNetRegLocation, "+QSIMSTAT: 0,0"); @@ -2717,8 +2746,12 @@ SINT32 sf_module_complete_init(void) break; case QUECTEL_NETREG_QLWCFG_URC: - +#ifdef NETWORK_MODULE_EG915Q + // ignore +#endif +#ifdef NETWORK_MODULE_EG91 if(strstr((const char *)gsmPara, "OK")) +#endif { eNetRegLocation = QUECTEL_NETREG_QLWCFG_STARTUP; strcpy((char *)gsmPara, "AT+QLWCFG=\"urc\",0\r"); @@ -2730,7 +2763,12 @@ SINT32 sf_module_complete_init(void) case QUECTEL_NETREG_QLWCFG_STARTUP: +#ifdef NETWORK_MODULE_EG915Q + // ignore +#endif +#ifdef NETWORK_MODULE_EG91 if(strstr((const char *)gsmPara, "OK")) +#endif { eNetRegLocation = QUECTEL_NETREG_CPIN; strcpy((char *)gsmPara, "AT+QLWCFG=\"auto_reg\",0\r"); @@ -2741,7 +2779,12 @@ SINT32 sf_module_complete_init(void) case QUECTEL_NETREG_CPIN: +#ifdef NETWORK_MODULE_EG915Q + // ignore +#endif +#ifdef NETWORK_MODULE_EG91 if(strstr((const char *)gsmPara, "OK")) +#endif { eNetRegLocation = QUECTEL_NETREG_READY; strcpy((char *)gsmPara, "AT+CPIN?\r"); @@ -3013,7 +3056,7 @@ SINT32 sf_net_regist_manual(void) UIMenuStoreInfo *puiPara = sf_app_ui_para_get(); - SF_LOG(" s\n"); + SF_LOG(" s"); #if MEGA_TEST @@ -3663,7 +3706,7 @@ SINT32 sf_net_regist_manual(void) } } - if((sf_get_mode_flag()) || (PWR_ON_GPRS_INIT == sf_poweron_type_get()) || (PWR_ON_DAILY_REPORT == sf_poweron_type_get())) + if((sf_get_mode_flag()) || (PWR_ON_GPRS_INIT == sf_convert_power_on_mode()) || (PWR_ON_DAILY_REPORT == sf_convert_power_on_mode())) { eNetRegLocation = QUECTEL_NETREG_ATW; strcpy((char *)gsmPara, "AT&W\r"); @@ -3746,7 +3789,7 @@ SINT32 sf_auto_net_reg(void) UIMenuStoreInfo *puiPara = sf_app_ui_para_get(); - SF_LOG(" s\n"); + SF_LOG(" s"); //needRecordLogFlag = 1; puiPara->NetGeneration = 0; @@ -3809,19 +3852,19 @@ SINT32 sf_auto_net_reg(void) } else if(strstr((const char *)gsmPara, "+QSIMSTAT: 0,1")) { - if(PWR_ON_SMS == sf_poweron_type_get()) + if(PWR_ON_SMS == sf_convert_power_on_mode()) { eNetRegLocation = QUECTEL_NETREG_CGREG; strcpy((char *)gsmPara, "AT+CGREG?\r"); } else { - eNetRegLocation = QUECTEL_NETREG_QLWCFG_URC; - if(strstr(puiPara->ModuleVer, GPRS_MODULE_TYPE_EG915Q)){ + eNetRegLocation = QUECTEL_NETREG_QLWCFG_URC; + if(strstr(puiPara->ModuleVer, GPRS_MODULE_TYPE_EG915Q)){ strcpy((char *)gsmPara, "AT+QLWCFG=\"auto_reg\",0\r"); } else{ - strcpy((char *)gsmPara, "AT+QLWCFG=\"startup\",0\r"); + strcpy((char *)gsmPara, "AT+QLWCFG=\"startup\",0\r"); } } @@ -4268,6 +4311,93 @@ SINT32 sf_auto_net_reg(void) return ret; } +SINT32 eg915q_set_usbnet(SF_FN_PARAM_S *pfnParam) +{ + SF_COMM_CHECK_POINTER(pfnParam->pstParam, SF_FAILURE); + SF_COMM_CHECK_POINTER(pfnParam->pstaticParam, SF_FAILURE); + SF_COMM_CHECK_POINTER(pfnParam->pfn_AT_instruction_exit, SF_FAILURE); + + UINT16 count = 0; + SINT32 ret = SF_SUCCESS; + SINT32 ret1 = SF_SUCCESS; + SF_CHAR ttyData[SF_TTYUSB_RECV_MAX] = { 0 }; + UINT8 sts = 1; + USBNET_APN_INIT_e enMmcLocation; + enMmcLocation = SET_USBNET_START; + UIMenuStoreInfo *pStaticParam = sf_app_ui_para_get(); + + + sprintf(ttyData, "AT\r"); + ret1 = sf_hal_ttyusb2_write(ttyData, strlen(ttyData)); + if(ret1 == SF_FAILURE) + { + ret1 = SF_4G_ERROR_MODULE_OPEN; + return ret1; + } + while(sf_app_while_flag() && sts) + { + if(SF_TRUE == pfnParam->pfn_AT_instruction_exit(0)) + { + MLOGE("4G module has already connected!!!\n"); + return SF_FAILURE; + } + + SLOGD("time:%d--MMC:%d\n", count, enMmcLocation); + sf_hal_ttyusb2_read(ttyData, 100); + + count++; + if(count > 300) + { + SLOGE("timeout, enMmcLocation=%d\n", enMmcLocation); + count = 0; + return SF_4G_ERROR_AT_TIMEOUT; + } + + SLOGD("ttyData=%s\n",ttyData); + + switch (enMmcLocation) + { + case SET_USBNET_START: + sprintf(ttyData, "AT+QCFG=\"usbnet\",1\r"); + enMmcLocation = SET_USBNET_ECM_TYPE; + + ret1 = sf_hal_ttyusb2_write(ttyData, strlen(ttyData)); + if(ret1 == SF_FAILURE) + { + ret1 = SF_4G_ERROR_MODULE_OPEN; + return ret1; + } + + break; + case SET_USBNET_ECM_TYPE: + if(strstr(ttyData, "OK")) + { + count = 0; + sprintf(ttyData, "AT+QNETDEVCTL=3,1,1\r"); + enMmcLocation = SET_USBNET_DIAL; + ret1 = sf_hal_ttyusb2_write(ttyData, strlen(ttyData)); + if(ret1 == SF_FAILURE) + { + ret1 = SF_4G_ERROR_MODULE_OPEN; + return ret1; + } + } + break; + case SET_USBNET_DIAL: + if(strstr(ttyData, "OK")) + { + count = 0; + sts = 0; + ret = SF_SUCCESS; + } + break; + default: + break; + } + } + return ret; +} + void sf_set_netsearch_step(UINT8 stepValue) { gprs_search_process = stepValue; diff --git a/code/application/source/sf_app/code/source/4gMng/sf_ftp.c b/code/application/source/sf_app/code/source/4gMng/sf_ftp.c old mode 100644 new mode 100755 index e0e73d84f..7df8b8975 --- a/code/application/source/sf_app/code/source/4gMng/sf_ftp.c +++ b/code/application/source/sf_app/code/source/4gMng/sf_ftp.c @@ -47,6 +47,7 @@ extern "C" { #include "sf_service.h" #include "sf_sms.h" #include "sf_ledmng.h" +#include "ftp_manager.h" /************************************************************************** * C O N S T A N T S * **************************************************************************/ @@ -177,6 +178,52 @@ SINT32 sf_check_max_num(void) *************************************************/ SINT32 sf_ftp_config(UINT8 ssl, UINT8 GprsMode, UINT8 timeout) { +#ifdef NETWORK_MODULE_EG915Q + UIMenuStoreInfo *pPara = sf_app_ui_para_get(); + FtpSslFlag ssl_flag = FTP_SSL_FLAG_END; + const unsigned char *ftpIP; + int port; + const UINT8 *user; + const UINT8 *password; + // FtpConfig config; + if((0 == pPara->FtpSwitch)) + { + ssl_flag = FTP_SSL_FLAG_DISABLE; + ftpIP = pPara->FtpIp; + port = atoi((const char *)(pPara->FtpPort)); + user = pPara->FtpUsr; + password = pPara->FtpPwd; + } + else if((2 == pPara->FtpSwitch))//ftps + { + ssl_flag = FTP_SSL_FLAG_ENABLE; + ftpIP = pPara->FtpsIp; + port = atoi((const char *)(pPara->FtpsPort)); + user = pPara->FtpsUsr; + password = pPara->FtpsPwd; + } else + { + ssl_flag = FTP_SSL_FLAG_DISABLE; + ftpIP = NULL; + port = 0; + user = NULL; + password = NULL; + } + FtpConfig config = { + .ip = (const char*)ftpIP, + .port = (const unsigned int)port, + .ftpsFlag = ssl_flag, + .user = (const char*)user, + .password = (const char*)password}; + // printf("ftp_manager_init url = %s\n", config.ip); + // printf("ftp_manager_init port = %d param port = %s\n", config.port, pPara->FtpsPort); + // printf("ftp_manager_init ftpsFlag = %d\n", config.ftpsFlag); + // printf("ftp_manager_init user = %s\n", config.user); + // printf("ftp_manager_init password = %s\n", config.password); + ftp_manager_init(config); + return SF_SUCCESS; +#endif + SINT32 ret = SF_SUCCESS; FTP_SIM_E eFtpLocation = FTP_SIM_CGDCONT; SINT32 ttyRet = 0; @@ -184,7 +231,6 @@ SINT32 sf_ftp_config(UINT8 ssl, UINT8 GprsMode, UINT8 timeout) UINT16 time = 0; UINT8 pdpIndex = 0; - UIMenuStoreInfo *pPara = sf_app_ui_para_get(); pdpIndex = sf_get_pdp_index(); @@ -510,6 +556,11 @@ SINT32 sf_ftp_config(UINT8 ssl, UINT8 GprsMode, UINT8 timeout) *************************************************/ SINT32 sf_ftp_send(UINT8 *ftpFileName, UINT8 *filePath, UINT8 timeout) { +#ifdef NETWORK_MODULE_EG915Q + // printf(" ftp_upload_file ftpFileName = %s filePath = %s\n", ftpFileName, filePath); + return ftp_upload_file((const char *)ftpFileName, (const char *)filePath, timeout); +#endif + SINT32 ret = SF_SUCCESS; FTP_SIM_E eFtpLocation = FTP_SIM_CFTPSCFG; SINT32 ttyRet = 0; @@ -640,6 +691,9 @@ SINT32 sf_ftp_send(UINT8 *ftpFileName, UINT8 *filePath, UINT8 timeout) *************************************************/ SINT32 sf_ftp_stop(UINT8 ssl, UINT8 GprsMode) { +#ifdef NETWORK_MODULE_EG915Q + return SF_SUCCESS; +#endif SINT32 ret = SF_SUCCESS; FTP_SIM_E eFtpLocation = FTP_SIM_CFTPSLOGOUT; SINT32 ttyRet = 0; @@ -854,7 +908,12 @@ SINT32 sf_pic_send_ftp(void) }else{ sprintf((char *)ftpFileName[piccount], "%s%s", cameraID, pThumbFileCfg->stfileattr[piccount].thumbfileName); } +#ifdef NETWORK_MODULE_EG915Q + sprintf((char *)filePath[piccount], "%s", pThumbFileCfg->stfileattr[piccount].thumbfilePath); +#endif +#ifdef NETWORK_MODULE_EG91 sprintf((char *)filePath[piccount], "UFS:/%s", pThumbFileCfg->stfileattr[piccount].thumbfileName); +#endif piccount++; } @@ -868,7 +927,12 @@ SINT32 sf_pic_send_ftp(void) }else{ sprintf((char *)ftpFileName[piccount], "%s%s", cameraID, pThumbFileCfg->stfileattr[piccount].thumbfileName); } +#ifdef NETWORK_MODULE_EG915Q + sprintf((char *)filePath[piccount], "%s", pThumbFileCfg->stfileattr[piccount].thumbfilePath); +#endif +#ifdef NETWORK_MODULE_EG91 sprintf((char *)filePath[piccount], "UFS:/%s", pThumbFileCfg->stfileattr[piccount].thumbfileName); +#endif piccount++; } @@ -879,7 +943,12 @@ SINT32 sf_pic_send_ftp(void) }else{ sprintf((char *)ftpFileName[piccount], "%s%s", cameraID, pThumbFileCfg->stfileattr[piccount].thumbfileName); } +#ifdef NETWORK_MODULE_EG915Q + sprintf((char *)filePath[piccount], "%s", pThumbFileCfg->stfileattr[piccount].thumbfilePath); +#endif +#ifdef NETWORK_MODULE_EG91 sprintf((char *)filePath[piccount], "UFS:/%s", pThumbFileCfg->stfileattr[piccount].thumbfileName); +#endif piccount++; } @@ -890,7 +959,12 @@ SINT32 sf_pic_send_ftp(void) }else{ sprintf((char *)ftpFileName[piccount], "%s%s", cameraID, pThumbFileCfg->stfileattr[piccount].thumbfileName); } +#ifdef NETWORK_MODULE_EG915Q + sprintf((char *)filePath[piccount], "%s", pThumbFileCfg->stfileattr[piccount].thumbfilePath); +#endif +#ifdef NETWORK_MODULE_EG91 sprintf((char *)filePath[piccount], "UFS:/%s", pThumbFileCfg->stfileattr[piccount].thumbfileName); +#endif piccount++; } @@ -901,7 +975,12 @@ SINT32 sf_pic_send_ftp(void) }else{ sprintf((char *)ftpFileName[piccount], "%s%s", cameraID, pThumbFileCfg->stfileattr[piccount].thumbfileName); } +#ifdef NETWORK_MODULE_EG915Q + sprintf((char *)filePath[piccount], "%s", pThumbFileCfg->stfileattr[piccount].thumbfilePath); +#endif +#ifdef NETWORK_MODULE_EG91 sprintf((char *)filePath[piccount], "UFS:/%s", pThumbFileCfg->stfileattr[piccount].thumbfileName); +#endif piccount++; } } diff --git a/code/application/source/sf_app/code/source/app/sf_device.c b/code/application/source/sf_app/code/source/app/sf_device.c old mode 100644 new mode 100755 index 1e0d89b6e..bfa5959ed --- a/code/application/source/sf_app/code/source/app/sf_device.c +++ b/code/application/source/sf_app/code/source/app/sf_device.c @@ -54,20 +54,20 @@ SF_THREAD_S PirMonitorTskCfg = static char driver_path_prefix[] = "/lib/modules/4.19.91"; static char* usb_host_drivers[] = { - "kernel/drivers/usb/common/usb-common.ko", - "kernel/drivers/usb/core/usbcore.ko", - "kernel/drivers/usb/host/ehci-hcd.ko", - "kernel/drivers/net/mii.ko", - "kernel/drivers/net/usb/usbnet.ko", - "extra/net/GobiNet/drv_gobi_net.ko", - "kernel/drivers/net/usb/cdc_ether.ko", - "kernel/drivers/net/usb/rndis_host.ko", - "kernel/drivers/usb/serial/usbserial.ko", - "kernel/drivers/usb/serial/usb_wwan.ko", - "kernel/drivers/usb/serial/option.ko", - "kernel/drivers/usb/class/cdc-wdm.ko", - "kernel/drivers/net/usb/qmi_wwan.ko", - NULL + "kernel/drivers/usb/common/usb-common.ko", + "kernel/drivers/usb/core/usbcore.ko", + "kernel/drivers/usb/host/ehci-hcd.ko", + "kernel/drivers/net/mii.ko", + "kernel/drivers/net/usb/usbnet.ko", + "extra/net/GobiNet/drv_gobi_net.ko", + "kernel/drivers/net/usb/cdc_ether.ko", + "kernel/drivers/net/usb/rndis_host.ko", + "kernel/drivers/usb/serial/usbserial.ko", + "kernel/drivers/usb/serial/usb_wwan.ko", + "kernel/drivers/usb/serial/option.ko", + "kernel/drivers/usb/class/cdc-wdm.ko", + "kernel/drivers/net/usb/qmi_wwan.ko", + NULL }; void* pir_monitoring_thread(void *arg) @@ -601,7 +601,7 @@ BOOL sf_load_ko(void) usb_drivers = usb_host_drivers; //printf("[%s:%d] s\n", __FUNCTION__, __LINE__); - MLOGI(" s\n"); + MLOGI("sf_load_ko start --.\n"); while(usb_drivers[cnt++]) { } @@ -612,7 +612,7 @@ BOOL sf_load_ko(void) if(driver_path){ snprintf(cmd, sizeof(cmd), "insmod %s/%s", driver_path_prefix, driver_path); - //printf("[%s:%d] %s\n", __FUNCTION__, __LINE__, cmd); + MLOGI("[%s:%d] %s\n", __FUNCTION__, __LINE__, cmd); ret = system(cmd); if(0 != ret) { @@ -620,7 +620,7 @@ BOOL sf_load_ko(void) } } } - MLOGI(" s\n"); + MLOGI("sf_load_ko finsihed.\n"); //printf("[%s:%d] e\n", __FUNCTION__, __LINE__); return ret2; } diff --git a/code/application/source/sf_app/code/source/app/sf_service.c b/code/application/source/sf_app/code/source/app/sf_service.c index fa1ad2aa0..9249e188b 100644 --- a/code/application/source/sf_app/code/source/app/sf_service.c +++ b/code/application/source/sf_app/code/source/app/sf_service.c @@ -79,7 +79,7 @@ SINT32 app_ttyusb_IsOpen(void) { int retryFlag = 0; SINT32 s32ret = 0; MLOGD("ttyUSB has not been init, will init ttyUSB!\n"); - while ((sf_app_while_flag()) && ((s32ret = sf_hal_ttyusb2_init()) < 0)) { + while ((s32ret = sf_hal_ttyusb2_init()) < 0) { retryTime++; if ((0 == retryFlag) && (retryTime >= 100) && (retryTime % 100 == 0)) // 200ms*100 = 20s @@ -166,7 +166,12 @@ SINT32 sf_USB_net_init(void) { } sprintf(cmdStr, "/usr/bin/quectel-CM -n %d&",A_PDP_INDEX); for (UINT8 i = 0; i < 40; i++) { +#ifdef NETWORK_MODULE_EG915Q if (access("/dev/ttyUSB3", F_OK) == SF_SUCCESS) { +#endif +#ifdef NETWORK_MODULE_EG91 + if (access("/dev/qcqmi0", F_OK) == SF_SUCCESS) { +#endif ret = SF_SUCCESS; printf("usb net ko exist!\r\n"); break; @@ -174,6 +179,11 @@ SINT32 sf_USB_net_init(void) { usleep(100 * 1000); } } +#ifdef NETWORK_MODULE_EG915Q + // TODO: quectel-CM should be improved by original. + system("ifconfig usb0 up"); + system("udhcpc -n -t 5 -i usb0"); +#endif if (ret == SF_SUCCESS) { system(cmdStr); @@ -1062,11 +1072,6 @@ static SINT32 app_file_transfer(SF_FN_PARAM_S *pfnParam) { if(sf_get_send_video()){ s32ret = sf_video_ftp_send(); } - - if(sf_get_send_log()){ - s32ret = sf_log_send_ftp(); - } - break; case SF_MCU_STARTUP_SYN_PARAM: if (pCustomerParam->GpsSendFlag) { @@ -1091,10 +1096,6 @@ static SINT32 app_file_transfer(SF_FN_PARAM_S *pfnParam) { if(sf_get_send_video()){ s32ret = sf_video_ftp_send(); } - - if(sf_get_send_log()){ - s32ret = sf_log_send_ftp(); - } SLOGD("GpsSendFlag:%d\n", pCustomerParam->GpsSendFlag); break; default: @@ -1230,7 +1231,6 @@ static SINT32 app_Register_Net_startup_mode(SF_FN_PARAM_S *pfnParam) { // UINT8 bIsKeepConnect = 0; // SF_CHAR version[12] = {0}; // SF_MESSAGE_BUF_S stMessageBuf = {0}; - // SF_PDT_PARAM_CFG_S *pCustomerParam = pfnParam->pstParam; // SF_PDT_PARAM_STATISTICS_S *pStaticParam = pfnParam->pstaticParam; UIMenuStoreInfo *pCustomerParam = sf_app_ui_para_get(); @@ -1276,7 +1276,6 @@ static SINT32 app_Register_Net_startup_mode(SF_FN_PARAM_S *pfnParam) { s32ret = sf_4G_register_net_manual(pfnParam); //sf_share_mem_customer_down(1); SF_APPCOMM_CHECK_RETURN(s32ret, s32ret); - #ifdef SF_GPS_TEST s32ret = app_gps_map_update(pfnParam); SF_APPCOMM_CHECK_RETURN(s32ret, SF_APP_ERROR_NO_SUPPOET); @@ -1302,7 +1301,8 @@ static SINT32 app_Register_Net_startup_mode(SF_FN_PARAM_S *pfnParam) { sf_4G_usb_net_apn_cfg(pfnParam); sf_USB_net_init(); } - + sf_4G_usb_net_apn_cfg(pfnParam); + sf_USB_net_init(); SF_APPCOMM_CHECK_RETURN(s32ret, s32ret); break; @@ -1331,6 +1331,8 @@ static SINT32 app_Register_Net_startup_mode(SF_FN_PARAM_S *pfnParam) { s32ret = sf_4G_register_net_auto(pfnParam); //sf_share_mem_customer_down(1); SF_APPCOMM_CHECK_RETURN(s32ret, SF_APP_ERROR_REQUEST); + sf_4G_usb_net_apn_cfg(pfnParam); + sf_USB_net_init(); s32ret = sf_read_message(); SF_APPCOMM_CHECK_RETURN(s32ret, SF_APP_ERROR_REQUEST); @@ -1343,9 +1345,6 @@ static SINT32 app_Register_Net_startup_mode(SF_FN_PARAM_S *pfnParam) { else if(sf_get_send_video()){ s32ret = sf_video_ftp_send(); } - else if(sf_get_send_log()){ - s32ret = sf_log_send_ftp(); - } break; case SF_MCU_STARTUP_TIMELAPSE: @@ -1382,6 +1381,8 @@ static SINT32 app_Register_Net_startup_mode(SF_FN_PARAM_S *pfnParam) { } //sf_share_mem_customer_down(1); SF_APPCOMM_CHECK_RETURN(s32ret, SF_APP_ERROR_REQUEST); + sf_4G_usb_net_apn_cfg(pfnParam); + sf_USB_net_init(); s32ret = sf_file_send_auto(); SF_APPCOMM_CHECK_RETURN(s32ret, SF_APP_ERROR_REQUEST); @@ -1410,6 +1411,8 @@ static SINT32 app_Register_Net_startup_mode(SF_FN_PARAM_S *pfnParam) { sf_set_signal_ready_flag(TRUE); } SF_APPCOMM_CHECK_RETURN(s32ret, SF_APP_ERROR_REQUEST); + sf_4G_usb_net_apn_cfg(pfnParam); + sf_USB_net_init(); s32ret = sf_get_utc(); if ((s32ret == SF_SIM_ERROR_UTC) || (SF_ON == pCustomerParam->GpsSwitch)) { @@ -1451,6 +1454,8 @@ static SINT32 app_Register_Net_startup_mode(SF_FN_PARAM_S *pfnParam) { sf_set_signal_ready_flag(TRUE); } SF_APPCOMM_CHECK_RETURN(s32ret, SF_APP_ERROR_REQUEST); + sf_4G_usb_net_apn_cfg(pfnParam); + sf_USB_net_init(); s32ret = sf_get_utc(); if ((s32ret == SF_SIM_ERROR_UTC) || (SF_ON == pCustomerParam->GpsSwitch)) { @@ -1487,6 +1492,8 @@ static SINT32 app_Register_Net_startup_mode(SF_FN_PARAM_S *pfnParam) { s32ret = sf_4G_register_net_auto(pfnParam); SF_APPCOMM_CHECK_RETURN(s32ret, SF_APP_ERROR_REQUEST); + sf_4G_usb_net_apn_cfg(pfnParam); + sf_USB_net_init(); s32ret = sf_read_message(); SF_APPCOMM_CHECK_RETURN(s32ret, SF_APP_ERROR_REQUEST); @@ -1506,9 +1513,6 @@ static SINT32 app_Register_Net_startup_mode(SF_FN_PARAM_S *pfnParam) { else if(sf_get_send_video()){ s32ret = sf_video_ftp_send(); } - else if(sf_get_send_log()){ - s32ret = sf_log_send_ftp(); - } //sf_share_mem_customer_down(1); break; diff --git a/code/driver/source/net/GobiNet/GobiUSBNet.c b/code/driver/source/net/GobiNet/GobiUSBNet.c index b40c29ae5..7aa91a059 100755 --- a/code/driver/source/net/GobiNet/GobiUSBNet.c +++ b/code/driver/source/net/GobiNet/GobiUSBNet.c @@ -1938,6 +1938,7 @@ static const struct usb_device_id QuecGobiVIDPIDTable [] = GOBI_FIXED_INTF( 0x2c7c, 0x0435 ), // Quectel AG35 GOBI_FIXED_INTF( 0x2c7c, 0x0296 ), // Quectel BG96 GOBI_FIXED_INTF( 0x2c7c, 0x0191 ), // Quectel EG91 + GOBI_FIXED_INTF( 0x2C7C, 0x6007 ), // Quectel EG915Q GOBI_FIXED_INTF( 0x2c7c, 0x0195 ), // Quectel EG95 GOBI_FIXED_INTF( 0x2c7c, 0x0512 ), // Quectel EG12/EP12/EM12/EG16/EG18,SDx20 GOBI_FIXED_INTF( 0x2c7c, 0x0620 ), // Quectel EG20,SDx24 diff --git a/code/lib/include/openssl/opensslconf.h b/code/lib/include/openssl/opensslconf.h index accab6ac6..73f3854fc 100644 --- a/code/lib/include/openssl/opensslconf.h +++ b/code/lib/include/openssl/opensslconf.h @@ -104,8 +104,8 @@ extern "C" { #if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ #if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "/home/payton/S530/code/lib/external/__install/lib/engines" -#define OPENSSLDIR "/home/payton/S530/code/lib/external/__install/ssl" +#define ENGINESDIR "/home/xiaojiazhu/project_codes/s530-ntk/code/lib/external/__install/lib/engines" +#define OPENSSLDIR "/home/xiaojiazhu/project_codes/s530-ntk/code/lib/external/__install/ssl" #endif #endif