1.调整升级后mcu整机重启
This commit is contained in:
		
							parent
							
								
									dde2efee23
								
							
						
					
					
						commit
						e24a164ac4
					
				| 
						 | 
				
			
			@ -519,10 +519,6 @@ void Load_MenuInfo(void)
 | 
			
		|||
		#if HUNTING_CAMERA_MCU == ENABLE
 | 
			
		||||
        sf_power_on_para_check_init();
 | 
			
		||||
        Save_MenuInfo();
 | 
			
		||||
        if(!sf_is_usb_flag())
 | 
			
		||||
        {
 | 
			
		||||
            sf_mcu_reg_set(SF_MCU_SOFT_UPDATE, 0);
 | 
			
		||||
        }
 | 
			
		||||
		#endif
 | 
			
		||||
		#if HUNTING_CAMERA_MCU == ENABLE
 | 
			
		||||
        //origInfo = currentInfo;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -63,7 +63,7 @@ UINT8 sf_signal_level_get(UINT8 netFlagG, UINT8 cqSignal);
 | 
			
		|||
 | 
			
		||||
BOOL sf_get_para_check_flag(void);
 | 
			
		||||
void sf_sys_check_flag(void);
 | 
			
		||||
BOOL sf_Check_OTA(void);
 | 
			
		||||
BOOL sf_check_ota(void);
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
#if __cplusplus
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -531,6 +531,7 @@ typedef enum _SF_DEV_CMD_STEP_e{
 | 
			
		|||
    SF_DEV_CMD_OTA = 0x6,
 | 
			
		||||
    SF_DEV_CMD_BLU_START = 0x7,
 | 
			
		||||
    SF_DEV_CMD_ESIM_OPERATION_SELECT_RESP = 0x8,
 | 
			
		||||
    SF_DEV_CMD_LPA,
 | 
			
		||||
    SF_DEV_CMD_BUTT
 | 
			
		||||
} SF_DEV_CMD_STEP_e;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -67,6 +67,7 @@ void sf_power_off_msg_to_cardv(void);
 | 
			
		|||
SINT32 sf_app_mcu_para_power_no_start(void);
 | 
			
		||||
SINT32 sf_app_mcu_updata_start(void);
 | 
			
		||||
UINT8 sf_app_get_mcu_init_flag(void);
 | 
			
		||||
SINT32 sf_app_lpa_start(void);
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
#if __cplusplus
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1207,7 +1207,7 @@ UINT8 sf_message_data_processing(UINT8 strValue[30][32], UINT16 mm, UINT8 *sms_s
 | 
			
		|||
				{
 | 
			
		||||
					if((strValue[i][4] - '0') == 1)
 | 
			
		||||
					{
 | 
			
		||||
						CameraCmd.cameraRestart = 1;
 | 
			
		||||
					    sf_cmd_camera_restart(1);
 | 
			
		||||
						Readmmsok = SMS_STATUS_RECIEV;
 | 
			
		||||
					}
 | 
			
		||||
					else
 | 
			
		||||
| 
						 | 
				
			
			@ -2493,7 +2493,7 @@ SINT32 sf_power_off_module_ota(void)
 | 
			
		|||
	{
 | 
			
		||||
		if(app_ttyusb_IsOpen() != SUCCESS)
 | 
			
		||||
		{
 | 
			
		||||
			CameraCmd.cameraRestart = 1; //usb error,need restart
 | 
			
		||||
            sf_cmd_camera_restart(1);//usb error,need restart
 | 
			
		||||
		}
 | 
			
		||||
		else
 | 
			
		||||
		{
 | 
			
		||||
| 
						 | 
				
			
			@ -2573,7 +2573,7 @@ SINT32 sf_power_off_module_sd_update(void)
 | 
			
		|||
	{
 | 
			
		||||
		if(app_ttyusb_IsOpen() != SUCCESS)
 | 
			
		||||
		{
 | 
			
		||||
			CameraCmd.cameraRestart = 1; //usb error,need restart
 | 
			
		||||
            sf_cmd_camera_restart(1);//usb error,need restart
 | 
			
		||||
		}
 | 
			
		||||
		else
 | 
			
		||||
		{
 | 
			
		||||
| 
						 | 
				
			
			@ -2828,7 +2828,7 @@ SINT32 sf_power_off_check_gprs(void)
 | 
			
		|||
				}
 | 
			
		||||
				else
 | 
			
		||||
				{
 | 
			
		||||
					CameraCmd.cameraRestart = 1; //usb error,need restart
 | 
			
		||||
                    sf_cmd_camera_restart(1);//usb error,need restart
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
| 
						 | 
				
			
			@ -2855,14 +2855,13 @@ SINT32 sf_power_off_check_fw_update(void)
 | 
			
		|||
 | 
			
		||||
			if(app_ttyusb_IsOpen() != SUCCESS)
 | 
			
		||||
			{
 | 
			
		||||
				CameraCmd.cameraRestart = 1; //usb error,need restart
 | 
			
		||||
                sf_cmd_camera_restart(1);//usb error,need restart
 | 
			
		||||
			}
 | 
			
		||||
			else
 | 
			
		||||
			{
 | 
			
		||||
				if(sf_camera_ota_ftp() == SUCCESS)
 | 
			
		||||
				{
 | 
			
		||||
                    CameraCmd.setPara = 0;
 | 
			
		||||
					CameraCmd.cameraRestart = 1;
 | 
			
		||||
				}
 | 
			
		||||
				else
 | 
			
		||||
				{
 | 
			
		||||
| 
						 | 
				
			
			@ -2876,7 +2875,7 @@ SINT32 sf_power_off_check_fw_update(void)
 | 
			
		|||
						}
 | 
			
		||||
						else
 | 
			
		||||
						{
 | 
			
		||||
							CameraCmd.cameraRestart = 1; //usb error,need restart
 | 
			
		||||
                            sf_cmd_camera_restart(1);//usb error,need restart
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
| 
						 | 
				
			
			@ -2912,7 +2911,7 @@ SINT32 sf_power_off_check_module_sleep(void)
 | 
			
		|||
					{
 | 
			
		||||
						if(app_ttyusb_IsOpen() != SUCCESS)
 | 
			
		||||
						{
 | 
			
		||||
							CameraCmd.cameraRestart = 1; //usb error,need restart
 | 
			
		||||
                            sf_cmd_camera_restart(1);//usb error,need restart
 | 
			
		||||
						}
 | 
			
		||||
						else
 | 
			
		||||
						{
 | 
			
		||||
| 
						 | 
				
			
			@ -2924,7 +2923,7 @@ SINT32 sf_power_off_check_module_sleep(void)
 | 
			
		|||
				{
 | 
			
		||||
					if(app_ttyusb_IsOpen() != SUCCESS)
 | 
			
		||||
					{
 | 
			
		||||
						CameraCmd.cameraRestart = 1; //usb error,need restart
 | 
			
		||||
                        sf_cmd_camera_restart(1);//usb error,need restart
 | 
			
		||||
					}
 | 
			
		||||
					else
 | 
			
		||||
					{
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -989,7 +989,9 @@ static SINT32 sf_app_proccess_cmd_dev(SF_MESSAGE_BUF_S *pMessageBuf)
 | 
			
		|||
                sf_blue_app_start();
 | 
			
		||||
            }
 | 
			
		||||
			break;
 | 
			
		||||
			
 | 
			
		||||
		case SF_DEV_CMD_LPA:
 | 
			
		||||
            sf_app_lpa_start();
 | 
			
		||||
            break;
 | 
			
		||||
		default:
 | 
			
		||||
			break;
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -54,6 +54,9 @@ static SINT32 AutoPowerOffTime = 0;
 | 
			
		|||
static SINT32 sfusbstatus = 0;
 | 
			
		||||
extern SF_PARA_TIME_S rtcTime;
 | 
			
		||||
 | 
			
		||||
pthread_cond_t condition;
 | 
			
		||||
extern pthread_mutex_t Param_mutexLock;
 | 
			
		||||
int shared_condition = 1;
 | 
			
		||||
 | 
			
		||||
SINT32 bUpdateEnble = 0;
 | 
			
		||||
SINT32 s32ThreeWaySwitch = 0;
 | 
			
		||||
| 
						 | 
				
			
			@ -146,6 +149,13 @@ SF_THREAD_S PowerOffTskCfg =
 | 
			
		|||
	.IsRun = 0,
 | 
			
		||||
	.TskId = -1,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
SF_THREAD_S LpaTskCfg =
 | 
			
		||||
{
 | 
			
		||||
	.IsRun = 0,
 | 
			
		||||
	.TskId = -1,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
SINT8 debugFlag = 0;
 | 
			
		||||
 | 
			
		||||
UINT8 McuInitFlag = 0;
 | 
			
		||||
| 
						 | 
				
			
			@ -956,9 +966,6 @@ void sf_power_off(void)
 | 
			
		|||
    sf_power_off_msg_to_cardv();
 | 
			
		||||
	printf("[%s:%d] e\n", __FUNCTION__, __LINE__);
 | 
			
		||||
}
 | 
			
		||||
pthread_cond_t condition;
 | 
			
		||||
extern pthread_mutex_t Param_mutexLock;
 | 
			
		||||
int shared_condition = 1;
 | 
			
		||||
 | 
			
		||||
void* sf_para_signaling_thread(void* arg)
 | 
			
		||||
{
 | 
			
		||||
| 
						 | 
				
			
			@ -1422,9 +1429,10 @@ UINT8 sf_check_power_on_mode(void)
 | 
			
		|||
    FILE *fp = NULL;
 | 
			
		||||
    UINT32 u32ize = 0;
 | 
			
		||||
    char *pStrSrc = NULL;
 | 
			
		||||
    char *pStrOtsOk = "Mode=";
 | 
			
		||||
    char *pStrMode = "Mode=";
 | 
			
		||||
    char *pStrUpFw = "UpFw=";
 | 
			
		||||
    char *pStrUpMcu = "mcu=";
 | 
			
		||||
    char *pStrOtsOk = "ota_flag=0x1";
 | 
			
		||||
 | 
			
		||||
    char *temp = NULL;
 | 
			
		||||
	UINT8 startup = 0;
 | 
			
		||||
| 
						 | 
				
			
			@ -1443,7 +1451,7 @@ UINT8 sf_check_power_on_mode(void)
 | 
			
		|||
	pStrSrc = (char *)malloc(u32ize*sizeof(char));
 | 
			
		||||
	if (pStrSrc) {
 | 
			
		||||
		fread(pStrSrc, 1, u32ize, fp);
 | 
			
		||||
        temp = strstr(pStrSrc, pStrOtsOk);
 | 
			
		||||
        temp = strstr(pStrSrc, pStrMode);
 | 
			
		||||
		if ( temp != NULL) {
 | 
			
		||||
            temp += strlen("Mode=");
 | 
			
		||||
            sscanf(temp, "%hhd", &startup);
 | 
			
		||||
| 
						 | 
				
			
			@ -1463,7 +1471,12 @@ UINT8 sf_check_power_on_mode(void)
 | 
			
		|||
            sscanf(temp, "%hhd", &Upmcu);
 | 
			
		||||
            sf_set_mcu_update_flag(Upmcu);
 | 
			
		||||
		}
 | 
			
		||||
        SLOGI("StartMode=%d,UpFw=%d Upmcu=%d\r\n", startup, UpFw, Upmcu);
 | 
			
		||||
        temp = strstr(pStrSrc, pStrOtsOk);
 | 
			
		||||
		if ( temp != NULL) {
 | 
			
		||||
            SLOGI(": ota upgrade success\r\n");
 | 
			
		||||
            sf_cmd_camera_restart(1);
 | 
			
		||||
		}
 | 
			
		||||
        SLOGI("StartMode=%d,UpFw=%d Upmcu=%d ota=%d\r\n", startup, UpFw, Upmcu, sf_get_camera_restart());
 | 
			
		||||
 | 
			
		||||
		free(pStrSrc);
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			@ -1486,6 +1499,10 @@ void* sf_app_mcu_para_thread(void *arg)
 | 
			
		|||
    if((SF_MCU_STARTUP_NORMAL != sf_poweron_type_get()) && (!isUsb)){
 | 
			
		||||
        sf_get_power_on_mode();
 | 
			
		||||
        sf_mcu_wdg_set(5);
 | 
			
		||||
        if(sf_get_camera_restart())
 | 
			
		||||
        {
 | 
			
		||||
            sf_mcu_reg_set(SF_MCU_SOFT_UPDATE, 0);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    McuInitFlag = 1;
 | 
			
		||||
	McuParaTskCfg.IsRun = 0;
 | 
			
		||||
| 
						 | 
				
			
			@ -1715,3 +1732,32 @@ SINT32 sf_app_mcu_updata_start(void)
 | 
			
		|||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
void* sf_lpa_thread(void *arg)
 | 
			
		||||
{
 | 
			
		||||
	SLOGI("thread run\n");
 | 
			
		||||
    sf_poweroff_check_lpa_excute_cmd();
 | 
			
		||||
 | 
			
		||||
    sf_poweroff_check_lpa_enable_profile();
 | 
			
		||||
    LpaTskCfg.IsRun = 0;
 | 
			
		||||
    SLOGI("thread end\n");
 | 
			
		||||
	return NULL;
 | 
			
		||||
}
 | 
			
		||||
SINT32 sf_app_lpa_start(void)
 | 
			
		||||
{
 | 
			
		||||
    SINT32 ret = SF_FAILURE;
 | 
			
		||||
	if(LpaTskCfg.IsRun)
 | 
			
		||||
	{	
 | 
			
		||||
		SLOGE("thread has already run !!!\n");
 | 
			
		||||
		return SF_FAILURE;
 | 
			
		||||
	}
 | 
			
		||||
    LpaTskCfg.IsRun = 1;
 | 
			
		||||
	SLOGI("thread run\n");
 | 
			
		||||
	ret = pthread_create(&LpaTskCfg.TskId, NULL, sf_lpa_thread, NULL);
 | 
			
		||||
	if(ret != SF_SUCCESS)
 | 
			
		||||
	{	
 | 
			
		||||
        MLOGD("thread  creat fail!\n");
 | 
			
		||||
		return ret;
 | 
			
		||||
	}
 | 
			
		||||
	return SF_SUCCESS;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -88,7 +88,7 @@ void sf_sys_check_flag(void)
 | 
			
		|||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
BOOL sf_Check_OTA(void)
 | 
			
		||||
BOOL sf_check_ota(void)
 | 
			
		||||
{
 | 
			
		||||
    FILE *fp = NULL;
 | 
			
		||||
    UINT32 u32ize = 0;
 | 
			
		||||
| 
						 | 
				
			
			@ -96,8 +96,8 @@ BOOL sf_Check_OTA(void)
 | 
			
		|||
    char *pStrOtsOk = "ota_flag=0x1";
 | 
			
		||||
    BOOL ret = FALSE;
 | 
			
		||||
 | 
			
		||||
    system("cat /proc/cmdline > /tmp/sf_ota.txt");
 | 
			
		||||
    fp = fopen("/tmp/sf_ota.txt","r");
 | 
			
		||||
    system("cat /proc/cmdline > /tmp/ota.txt");
 | 
			
		||||
    fp = fopen("/tmp/ota.txt","r");
 | 
			
		||||
    if(fp == NULL){
 | 
			
		||||
    	return FALSE;
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue
	
	Block a user