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