1.优化无sd卡时文件系统处理
This commit is contained in:
parent
ec11a26dd1
commit
8904ab034e
|
@ -27,7 +27,7 @@
|
|||
#define MAX_OPENED_FILE_NUM 10
|
||||
|
||||
static THREAD_HANDLE task_hdl, task_hdl2;
|
||||
|
||||
int FileInitFalg = 0;
|
||||
static void card_insert_job(void)
|
||||
{
|
||||
UINT32 uiPoolAddr;
|
||||
|
@ -53,9 +53,16 @@ static void card_insert_job(void)
|
|||
strncpy(Param.FSParam.szMountPath, "/mnt/sd", sizeof(Param.FSParam.szMountPath) - 1); //only used by FsLinux
|
||||
Param.FSParam.szMountPath[sizeof(Param.FSParam.szMountPath) - 1] = '\0';
|
||||
Param.FSParam.MaxOpenedFileNum = MAX_OPENED_FILE_NUM;
|
||||
if (FST_STA_OK != FileSys_Init(FileSys_GetOPS_uITRON())) {
|
||||
DBG_WRN("FileSys_Init failed\r\n");
|
||||
}
|
||||
if(!FileInitFalg)
|
||||
{
|
||||
if (FST_STA_OK != FileSys_Init(FileSys_GetOPS_uITRON())) {
|
||||
DBG_WRN("FileSys_Init failed\r\n");
|
||||
}
|
||||
else {
|
||||
FileInitFalg = 0;
|
||||
}
|
||||
}
|
||||
|
||||
ret = FileSys_OpenEx('A', StrgDXH, &Param);
|
||||
if (FST_STA_OK != ret) {
|
||||
DBG_WRN("FileSys_Open err %d\r\n", ret);
|
||||
|
@ -115,6 +122,15 @@ static void card_insert_job2(void)
|
|||
strncpy(Param.FSParam.szMountPath, "/mnt/sd2", sizeof(Param.FSParam.szMountPath) - 1); //only used by FsLinux
|
||||
Param.FSParam.szMountPath[sizeof(Param.FSParam.szMountPath) - 1] = '\0';
|
||||
Param.FSParam.MaxOpenedFileNum = MAX_OPENED_FILE_NUM;
|
||||
if(!FileInitFalg)
|
||||
{
|
||||
if (FST_STA_OK != FileSys_Init(FileSys_GetOPS_uITRON())) {
|
||||
DBG_WRN("FileSys_Init failed\r\n");
|
||||
}
|
||||
else {
|
||||
FileInitFalg = 0;
|
||||
}
|
||||
}
|
||||
DBG_WRN("Open B:\n");
|
||||
ret = FileSys_OpenEx('B', StrgDXH2, &Param);
|
||||
if (FST_STA_OK != ret) {
|
||||
|
|
|
@ -326,7 +326,10 @@ static void MovieFast_ShutDown(void)
|
|||
}
|
||||
#endif
|
||||
//DBG_DUMP("wait filesys close ...\n");
|
||||
FileSys_Close(FST_TIME_INFINITE);
|
||||
|
||||
//FileSys_Close(FST_TIME_INFINITE);
|
||||
FileSys_CloseEx('A', FST_TIME_INFINITE);
|
||||
FileSys_CloseEx('B', FST_TIME_INFINITE);
|
||||
#if SF_IQ_TEST != ENABLE
|
||||
if(sf_get_power_off_flag()){
|
||||
sf_mcu_reg_set(SF_MCU_POWEROFF,0);
|
||||
|
@ -914,15 +917,22 @@ INT32 MovieFast_Wait_FileSys(UINT32 timeout_ms)
|
|||
// DBG_ERR("boot_init = BOOT_INIT_INVALID\n");
|
||||
// return E_SYS;
|
||||
// }
|
||||
INT32 ret = fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK, timeout_ms);
|
||||
INT32 ret = E_SYS;
|
||||
|
||||
if(gpio_getPin(GPIO_CARD_DETECT) == 0)
|
||||
{
|
||||
ret = fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK, timeout_ms);
|
||||
}
|
||||
|
||||
INT32 ret2 = fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK_2, timeout_ms);
|
||||
|
||||
// E_OK
|
||||
if(ret == E_OK && ret2 == E_OK)
|
||||
if(ret == E_OK || ret2 == E_OK)
|
||||
{
|
||||
return E_OK;
|
||||
}
|
||||
else {
|
||||
fastboot_msg_en(ENABLE);
|
||||
DBG_ERR("boot_init = BOOT_INIT_INVALID\n");
|
||||
return E_SYS;
|
||||
}
|
||||
|
@ -932,7 +942,6 @@ INT32 MovieFast_Wait_FileNaming(UINT32 timeout_ms)
|
|||
{
|
||||
DCF_HANDLE handle = MovieFast_Get_DCF_Handle();
|
||||
BOOT_INIT boot_init = BOOT_INIT_INVALID;
|
||||
|
||||
if(handle == g_dcf_hdl){
|
||||
boot_init = BOOT_INIT_FILENAMINGOK;
|
||||
}
|
||||
|
@ -943,7 +952,9 @@ INT32 MovieFast_Wait_FileNaming(UINT32 timeout_ms)
|
|||
#endif
|
||||
|
||||
if(boot_init != BOOT_INIT_INVALID)
|
||||
{
|
||||
return fastboot_wait_done_timeout(boot_init, timeout_ms);
|
||||
}
|
||||
else{
|
||||
DBG_ERR("boot_init = BOOT_INIT_INVALID\n");
|
||||
return E_SYS;
|
||||
|
@ -1302,6 +1313,8 @@ static void MovieFast_UserEventCb(UINT32 id, MOVIE_USER_CB_EVENT event_id, UINT3
|
|||
MovieFast_FileNamingCB(id, pFileName);
|
||||
}
|
||||
else{
|
||||
fastboot_msg_en(ENABLE);
|
||||
DBG_ERR(" MovieFast_Wait_FileNaming err TIMEOUT\n");
|
||||
vos_flag_set(MOVIEFAST_FLG_ID, FLGMOVIEFAST_SHUTDOWN);
|
||||
}
|
||||
}
|
||||
|
@ -1376,9 +1389,18 @@ THREAD_RETTYPE MovieFast_InitFileNamingThread(void *arg)
|
|||
//fastboot_wait_done(BOOT_INIT_FILESYSOK);
|
||||
if(fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK, FASTBOOT_WAIT_FILESYS_TIMEOUT_MS) != E_OK)
|
||||
{
|
||||
fastboot_msg_en(ENABLE);
|
||||
if(gpio_getPin(GPIO_CARD_DETECT) == 0)
|
||||
{
|
||||
fastboot_msg_en(ENABLE);
|
||||
}
|
||||
DBG_ERR(" FILESYS TIMEOUT failed\r\n");
|
||||
THREAD_RETURN(1);
|
||||
//THREAD_RETURN(1);
|
||||
if(fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK, FASTBOOT_WAIT_FILESYS_TIMEOUT_MS) != E_OK)
|
||||
{
|
||||
//fastboot_msg_en(ENABLE);
|
||||
DBG_ERR(" FILESYS TIMEOUT failed 2\r\n");
|
||||
//THREAD_RETURN(1);
|
||||
}
|
||||
}
|
||||
MovieFast_FileNaming_Init();
|
||||
|
||||
|
@ -1421,7 +1443,11 @@ THREAD_RETTYPE MovieFast_InitFileNamingThread2(void *arg)
|
|||
{
|
||||
fastboot_msg_en(ENABLE);
|
||||
DBG_ERR(" BOOT_INIT_FILESYSOK_2 TIMEOUT failed\r\n");
|
||||
THREAD_RETURN(1);
|
||||
if(fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK_2, FASTBOOT_WAIT_FILESYS_TIMEOUT_MS) != E_OK)
|
||||
{
|
||||
DBG_ERR(" BOOT_INIT_FILESYSOK_2 TIMEOUT failed 2\r\n");
|
||||
}
|
||||
//THREAD_RETURN(1);
|
||||
}
|
||||
MovieFast_FileNaming_Init();
|
||||
|
||||
|
|
|
@ -41,8 +41,9 @@
|
|||
#if HUNTING_CAMERA_MCU == ENABLE
|
||||
#include <sf_mcu.h>
|
||||
#include "sf_led.h"
|
||||
#endif
|
||||
#include "IOCfg.h"
|
||||
#include "sf_sd_common.h"
|
||||
#endif
|
||||
|
||||
|
||||
#if POWERON_FAST_SLICE_ENC == ENABLE
|
||||
|
@ -980,11 +981,16 @@ INT32 PhotoFast_Wait_FileSys(UINT32 timeout_ms)
|
|||
// boot_init = BOOT_INIT_FILESYSOK_2;
|
||||
// }
|
||||
// #endif
|
||||
INT32 ret = fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK, timeout_ms);
|
||||
INT32 ret = E_SYS;
|
||||
|
||||
if(gpio_getPin(GPIO_CARD_DETECT) == 0)
|
||||
{
|
||||
ret = fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK, timeout_ms);
|
||||
}
|
||||
INT32 ret2 = fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK_2, timeout_ms);
|
||||
|
||||
// E_OK
|
||||
if(ret == E_OK && ret2 == E_OK)
|
||||
if(ret == E_OK || ret2 == E_OK)
|
||||
{
|
||||
return E_OK;
|
||||
}
|
||||
|
@ -2210,7 +2216,9 @@ static void PhotoFast_ShutDown(void)
|
|||
LogFile_Close();
|
||||
}
|
||||
#endif
|
||||
FileSys_Close(FST_TIME_INFINITE);
|
||||
// FileSys_Close(FST_TIME_INFINITE);
|
||||
FileSys_CloseEx('A', FST_TIME_INFINITE);
|
||||
FileSys_CloseEx('B', FST_TIME_INFINITE);
|
||||
#if SF_IQ_TEST != ENABLE
|
||||
if(sf_get_power_off_flag()){
|
||||
sf_mcu_reg_set(SF_MCU_POWEROFF,0);
|
||||
|
|
Loading…
Reference in New Issue
Block a user