1.关机TASK调整

This commit is contained in:
payton 2024-01-23 18:02:39 +08:00
parent 0ce61cbe2a
commit 46ba1e4654
3 changed files with 27 additions and 9 deletions

View File

@ -981,6 +981,8 @@ static void fastboot(void)
VK_TASK_HANDLE handle_movie_filenaming = 0;
VK_TASK_HANDLE handle_movie_filenaming2 = 0;
VK_TASK_HANDLE handle_movie_moviemode = 0;
VK_TASK_HANDLE handle_moviefast_power_off_tsk_id = 0;
#if (FASTBOOT_USB_FUNC == ENABLE)
VK_TASK_HANDLE handle_usb_msdcmode = 0;
VK_TASK_HANDLE handle_usb_uvacmode = 0;
@ -1101,6 +1103,13 @@ static void fastboot(void)
}
else
vos_task_resume(handle_movie_moviemode);
handle_moviefast_power_off_tsk_id = vos_task_create(MovieFast_PowerOffTsk, 0, "MovieFastPwrTsk", 10, 8192);
if (!handle_moviefast_power_off_tsk_id) {
DBG_ERR("MovieFast_PowerOffTsk create failed.\r\n");
} else {
vos_task_resume(handle_moviefast_power_off_tsk_id);
}
/* GxTime, for stamp */
fwload_wait_done(CODE_SECTION_10);

View File

@ -113,7 +113,7 @@ static UINT32 g_moviefast_tsk_run = 1;
static UINT32 g_moviefast_poweroff_tsk_run = 1;
static THREAD_HANDLE g_moviefast_tsk_id = 0;
static THREAD_HANDLE g_moviefast_raw_tsk_id = 0;
static THREAD_HANDLE g_moviefast_power_off_tsk_id = 0;
// static THREAD_HANDLE g_moviefast_power_off_tsk_id = 0;
static THREAD_HANDLE g_moviefast_write_tsk_id = 0;
static BOOL g_bIsRecStatus = FALSE;
static BOOL g_manual_raw_tsk_running = FALSE;
@ -135,6 +135,7 @@ static void MovieFast_Close(void);
static void MovieFast_Load_Sen_Cfg(MOVIEFAST_IQ_CFG cfg);
extern void sf_log_sava(void);
extern void MovieFast_Set_Shutdown_flag(void);
static VOID MovieFast_Set_RecStartTick(VOS_TICK tick)
{
g_rec_start_tick = tick;
@ -170,15 +171,16 @@ static ER MovieFast_InstallID(void)
return ret;
}
static THREAD_RETTYPE MovieFast_PowerOffTsk(void)
THREAD_RETTYPE MovieFast_PowerOffTsk(void *arg)
{
const BOOL delay_ms = 200;
VOS_TICK t1, t2;
THREAD_ENTRY();
DBG_DUMP("MovieFast_PowerOffTsk started\n");
g_moviefast_poweroff_tsk_run = TRUE;
vos_perf_mark(&t1);
while(g_moviefast_poweroff_tsk_run)
{
@ -187,6 +189,13 @@ static THREAD_RETTYPE MovieFast_PowerOffTsk(void)
break;
}
vos_perf_mark(&t2);
if((vos_perf_duration(t1, t2) / 1000) > (30*1000))
{
fastboot_msg_en(ENABLE);
DBG_ERR("failed timeout ID:%d\n", MOVIEFAST_FLG_ID);
break;
}
vos_util_delay_ms(delay_ms);
}
@ -2049,11 +2058,11 @@ DBG_WRN(">>>>>>>>>>>>>>> movie thread <<<<<<<<<<\r\n");
}
vos_util_delay_ms(33);
if ((g_moviefast_power_off_tsk_id = vos_task_create(MovieFast_PowerOffTsk, 0, "MovieFastPwrTsk", PRI_MOVIEFAST_CMDTSK, STKSIZE_MOVIEFAST_CMDTSK)) == 0) {
DBG_ERR("MovieFast_PowerOffTsk create failed.\r\n");
} else {
vos_task_resume(g_moviefast_power_off_tsk_id);
}
// if ((g_moviefast_power_off_tsk_id = vos_task_create(MovieFast_PowerOffTsk, 0, "MovieFastPwrTsk", PRI_MOVIEFAST_CMDTSK, STKSIZE_MOVIEFAST_CMDTSK)) == 0) {
// DBG_ERR("MovieFast_PowerOffTsk create failed.\r\n");
// } else {
// vos_task_resume(g_moviefast_power_off_tsk_id);
// }
if ((g_moviefast_tsk_id = vos_task_create(MovieFast_CmdTsk, 0, "MovieFastTsk", PRI_MOVIEFAST_CMDTSK, STKSIZE_MOVIEFAST_CMDTSK)) == 0) {
DBG_ERR("MovieFast_CmdTsk create failed.\r\n");

View File

@ -13,7 +13,7 @@
extern THREAD_RETTYPE MovieFast_InitFileNamingThread(void *arg);
extern THREAD_RETTYPE MovieFast_InitFileNamingThread2(void *arg);
extern THREAD_RETTYPE MovieFast_InitMovieModeThread(void *arg);
extern THREAD_RETTYPE MovieFast_PowerOffTsk(void *arg);
typedef enum
{
EAC_CONFIG_AD_DMIC_EN, ///< Configure AD(Record) Digital Microphone Enable/Disable.