1.优化代码,检测完存储器后再进行下一步
This commit is contained in:
parent
cf01d35f69
commit
6aa658ce7d
|
@ -74,17 +74,8 @@ static void card_insert_job(void)
|
|||
SF_RtosStrgRegister(0, ret);
|
||||
#endif
|
||||
#if HUNTING_CAMERA_MCU == ENABLE
|
||||
if(TRUE == sf_check_card_full())
|
||||
{
|
||||
DBG_WRN("ERR card full\r\n");
|
||||
fastboot_set_done(BOOT_INIT_FILESYSOK);
|
||||
}
|
||||
else
|
||||
{
|
||||
fastboot_set_done(BOOT_INIT_FILESYSOK);
|
||||
//sf_log_confg();
|
||||
//sf_log_open();
|
||||
}
|
||||
sf_check_card_full();
|
||||
fastboot_set_done(BOOT_INIT_FILESYSOK);
|
||||
#endif
|
||||
|
||||
printf("filesys_init e\r\n");
|
||||
|
|
|
@ -1027,8 +1027,8 @@ static void MovieFast_FileNamingCB(MOVIE_CFG_REC_ID id, char *pFileName)
|
|||
}
|
||||
}
|
||||
}
|
||||
char *dcf_file = mmc_dev->dev_type == MMC_DEV_EMMC ? SF_EMMC_DCF_FILE_NAME : SF_SD_DCF_FILE_NAME;
|
||||
DCF_SetFileFreeChars(DCF_FILE_TYPE_ANYFORMAT, dcf_file);
|
||||
//char *dcf_file = mmc_dev->dev_type == MMC_DEV_EMMC ? SF_EMMC_DCF_FILE_NAME : SF_SD_DCF_FILE_NAME;
|
||||
//DCF_SetFileFreeChars(DCF_FILE_TYPE_ANYFORMAT, dcf_file);
|
||||
DCF_MakeObjPathEx(handle, nextFolderID, nextFileID, DCF_FILE_TYPE_MP4, pFileName);
|
||||
DCF_AddDBfileEx(handle, pFileName);
|
||||
DBG_DUMP("%s added to DCF\r\n", pFileName);
|
||||
|
@ -1341,7 +1341,7 @@ int MovieFast_GetWaterLogoSource(const UINT32 recWidth,WATERLOGO_BUFFER *waterSr
|
|||
return E_OK;
|
||||
}
|
||||
|
||||
static void MovieFast_FileNaming_Init(void)
|
||||
static void MovieFast_FileNaming_Init(MMC_DEV_TYPE dev_type)
|
||||
{
|
||||
static UINT8 is_init = 0;
|
||||
|
||||
|
@ -1373,7 +1373,7 @@ static void MovieFast_FileNaming_Init(void)
|
|||
DCF_SetParm(DCF_PRMID_SET_VALID_FILE_FMT, DCF_FILE_TYPE_JPG|DCF_FILE_TYPE_MP4|DCF_FILE_TYPE_MOV);
|
||||
DCF_SetParm(DCF_PRMID_SET_DEP_FILE_FMT, DCF_FILE_TYPE_JPG|DCF_FILE_TYPE_WAV|DCF_FILE_TYPE_MPO);
|
||||
DCF_SetDirFreeChars(DCF_DIR_NAME);
|
||||
//DCF_SetFileFreeChars(DCF_FILE_TYPE_ANYFORMAT, DCF_FILE_NAME);
|
||||
DCF_SetFileFreeChars(DCF_FILE_TYPE_ANYFORMAT, (dev_type == MMC_DEV_EMMC ? SF_EMMC_DCF_FILE_NAME : SF_SD_DCF_FILE_NAME));
|
||||
}
|
||||
|
||||
THREAD_RETTYPE MovieFast_InitFileNamingThread(void *arg)
|
||||
|
@ -1385,49 +1385,57 @@ THREAD_RETTYPE MovieFast_InitFileNamingThread(void *arg)
|
|||
.WorkbuffAddr = mempool_dcf,
|
||||
.WorkbuffSize = POOL_SIZE_DCF_BUFFER,
|
||||
};
|
||||
DCF_OPEN_PARM dcfParm2 = {
|
||||
.Drive = 'B',
|
||||
.WorkbuffAddr = mempool_dcf + POOL_SIZE_DCF_BUFFER,
|
||||
.WorkbuffSize = POOL_SIZE_DCF_BUFFER,
|
||||
};
|
||||
|
||||
//fastboot_wait_done(BOOT_INIT_FILESYSOK);
|
||||
if(fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK, FASTBOOT_WAIT_FILESYS_TIMEOUT_MS) != E_OK)
|
||||
INT32 ret = E_SYS;
|
||||
|
||||
if(gpio_getPin(GPIO_CARD_DETECT) == 0)
|
||||
{
|
||||
if(gpio_getPin(GPIO_CARD_DETECT) == 0)
|
||||
{
|
||||
fastboot_msg_en(ENABLE);
|
||||
}
|
||||
DBG_ERR(" FILESYS TIMEOUT failed\r\n");
|
||||
//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);
|
||||
}
|
||||
ret = fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK, FASTBOOT_WAIT_FILESYS_TIMEOUT_MS);
|
||||
}
|
||||
MovieFast_FileNaming_Init();
|
||||
|
||||
if(g_dcf_hdl == -1){
|
||||
g_dcf_hdl = DCF_Open(&dcfParm);
|
||||
DCF_ScanObjEx(g_dcf_hdl);
|
||||
}
|
||||
else{
|
||||
DBG_WRN("dcf handle1 is already opened\n");
|
||||
}
|
||||
INT32 ret2 = fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK_2, FASTBOOT_WAIT_FILESYS_TIMEOUT_MS);
|
||||
|
||||
#if HUNTING_CAMERA_MCU == ENABLE
|
||||
if(TRUE != sf_is_card_full())
|
||||
#endif
|
||||
if((TRUE != sf_is_emmc_full()) && (ret2 == E_OK))
|
||||
{
|
||||
#if USE_RTOS_MMC_CHECK
|
||||
//SF_RtosStrgSetDcfHandle(MMC_DEV_EMMC, g_dcf_hdl);
|
||||
#endif
|
||||
MovieFast_FileNaming_Init(MMC_DEV_EMMC);
|
||||
if(g_dcf_hdl2 == -1){
|
||||
g_dcf_hdl2 = DCF_Open(&dcfParm2);
|
||||
DCF_ScanObjEx(g_dcf_hdl2);
|
||||
}
|
||||
else{
|
||||
DBG_WRN("dcf handle1 is already opened\n");
|
||||
}
|
||||
fastboot_set_done(BOOT_INIT_FILENAMINGOK_2);
|
||||
}
|
||||
else if((TRUE != sf_is_card_full()) && (ret == E_OK))
|
||||
{
|
||||
MovieFast_FileNaming_Init(MMC_DEV_SD);
|
||||
if(g_dcf_hdl == -1){
|
||||
g_dcf_hdl = DCF_Open(&dcfParm);
|
||||
DCF_ScanObjEx(g_dcf_hdl);
|
||||
}
|
||||
else{
|
||||
DBG_WRN("dcf handle1 is already opened\n");
|
||||
}
|
||||
fastboot_set_done(BOOT_INIT_FILENAMINGOK);
|
||||
}
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
fastboot_msg_en(ENABLE);
|
||||
DBG_ERR(" FILESYS TIMEOUT failed\r\n");
|
||||
}
|
||||
}
|
||||
THREAD_RETURN(0);
|
||||
}
|
||||
|
||||
THREAD_RETTYPE MovieFast_InitFileNamingThread2(void *arg)
|
||||
{
|
||||
#if 0
|
||||
if(DrvGPIO_GetPhotoMovieModeFromMonitor() != DX_HUNTING_MODE_PHOTO_MOVIE ){
|
||||
|
||||
#if (FS_MULTI_STRG_FUNC)
|
||||
|
@ -1475,7 +1483,7 @@ THREAD_RETTYPE MovieFast_InitFileNamingThread2(void *arg)
|
|||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
#endif
|
||||
THREAD_RETURN(0);
|
||||
}
|
||||
|
||||
|
|
|
@ -716,7 +716,7 @@ HD_RESULT PhotoFast_get_hd_common_buf(PPHOTOFAST_HD_COM_BUF p_hd_comm_buf)
|
|||
return HD_OK;
|
||||
}
|
||||
|
||||
static void PhotoFast_FileNaming_Init(void)
|
||||
static void PhotoFast_FileNaming_Init(MMC_DEV_TYPE dev_type)
|
||||
{
|
||||
static UINT8 is_init = 0;
|
||||
|
||||
|
@ -731,7 +731,7 @@ static void PhotoFast_FileNaming_Init(void)
|
|||
DCF_SetParm(DCF_PRMID_SET_VALID_FILE_FMT, DCF_FILE_TYPE_JPG|DCF_FILE_TYPE_MP4|DCF_FILE_TYPE_MOV);
|
||||
DCF_SetParm(DCF_PRMID_SET_DEP_FILE_FMT, DCF_FILE_TYPE_JPG|DCF_FILE_TYPE_WAV|DCF_FILE_TYPE_MPO);
|
||||
DCF_SetDirFreeChars(DCF_DIR_NAME);
|
||||
//DCF_SetFileFreeChars(DCF_FILE_TYPE_ANYFORMAT, DCF_FILE_NAME);
|
||||
DCF_SetFileFreeChars(DCF_FILE_TYPE_ANYFORMAT, (dev_type == MMC_DEV_EMMC ? SF_EMMC_DCF_FILE_NAME : SF_SD_DCF_FILE_NAME));
|
||||
}
|
||||
|
||||
INT32 PhotoFast_FileNaming_Open(void)
|
||||
|
@ -742,7 +742,7 @@ INT32 PhotoFast_FileNaming_Open(void)
|
|||
.WorkbuffSize = POOL_SIZE_DCF_BUFFER,
|
||||
};
|
||||
|
||||
PhotoFast_FileNaming_Init();
|
||||
PhotoFast_FileNaming_Init(MMC_DEV_SD);
|
||||
|
||||
if(g_dcf_hdl == -1){
|
||||
g_dcf_hdl = DCF_Open(&dcfParm);
|
||||
|
@ -772,7 +772,7 @@ INT32 PhotoFast_FileNaming_Open2(void)
|
|||
.WorkbuffSize = POOL_SIZE_DCF_BUFFER,
|
||||
};
|
||||
|
||||
PhotoFast_FileNaming_Init();
|
||||
PhotoFast_FileNaming_Init(MMC_DEV_EMMC);
|
||||
|
||||
if(g_dcf_hdl2 == -1){
|
||||
g_dcf_hdl2 = DCF_Open(&dcfParm);
|
||||
|
@ -1091,8 +1091,8 @@ INT32 PhotoFast_WriteFile(UINT32 Addr, UINT32 Size, UINT32 Fmt, UINT32 uiPathId,
|
|||
}
|
||||
}
|
||||
}
|
||||
char *dcf_file = mmc_dev->dev_type == MMC_DEV_EMMC ? SF_EMMC_DCF_FILE_NAME : SF_SD_DCF_FILE_NAME;
|
||||
DCF_SetFileFreeChars(DCF_FILE_TYPE_ANYFORMAT, dcf_file);
|
||||
//char *dcf_file = mmc_dev->dev_type == MMC_DEV_EMMC ? SF_EMMC_DCF_FILE_NAME : SF_SD_DCF_FILE_NAME;
|
||||
//DCF_SetFileFreeChars(DCF_FILE_TYPE_ANYFORMAT, dcf_file);
|
||||
DCF_MakeObjPathEx(handle, nextFolderID, nextFileID, fileType, FilePath);
|
||||
DCF_AddDBfileEx(handle, FilePath);
|
||||
DBG_DUMP("%s added to DCF\r\n", FilePath);
|
||||
|
@ -1598,20 +1598,64 @@ static void PhotoFast_CaptureStart(HD_VIDEO_FRAME *p_video_frame)
|
|||
|
||||
THREAD_RETTYPE PhotoFast_InitFileNamingThread(void *arg)
|
||||
{
|
||||
DCF_OPEN_PARM dcfParm = {
|
||||
.Drive = 'A',
|
||||
.WorkbuffAddr = mempool_dcf,
|
||||
.WorkbuffSize = POOL_SIZE_DCF_BUFFER,
|
||||
};
|
||||
DCF_OPEN_PARM dcfParm2 = {
|
||||
.Drive = 'B',
|
||||
.WorkbuffAddr = mempool_dcf + POOL_SIZE_DCF_BUFFER,
|
||||
.WorkbuffSize = POOL_SIZE_DCF_BUFFER,
|
||||
};
|
||||
|
||||
fastboot_wait_done(BOOT_INIT_FILESYSOK);
|
||||
PhotoFast_FileNaming_Open();
|
||||
fastboot_set_done(BOOT_INIT_FILENAMINGOK);
|
||||
INT32 ret = E_SYS;
|
||||
|
||||
if(gpio_getPin(GPIO_CARD_DETECT) == 0)
|
||||
{
|
||||
ret = fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK, FASTBOOT_WAIT_FILESYS_TIMEOUT_MS);
|
||||
}
|
||||
|
||||
INT32 ret2 = fastboot_wait_done_timeout(BOOT_INIT_FILESYSOK_2, FASTBOOT_WAIT_FILESYS_TIMEOUT_MS);
|
||||
|
||||
if((TRUE != sf_is_emmc_full()) && (ret2 == E_OK))
|
||||
{
|
||||
PhotoFast_FileNaming_Init(MMC_DEV_EMMC);
|
||||
if(g_dcf_hdl2 == -1){
|
||||
g_dcf_hdl2 = DCF_Open(&dcfParm2);
|
||||
DCF_ScanObjEx(g_dcf_hdl2);
|
||||
}
|
||||
else{
|
||||
DBG_WRN("dcf handle1 is already opened\n");
|
||||
}
|
||||
fastboot_set_done(BOOT_INIT_FILENAMINGOK_2);
|
||||
}
|
||||
else if((TRUE != sf_is_card_full()) && (ret == E_OK))
|
||||
{
|
||||
PhotoFast_FileNaming_Init(MMC_DEV_SD);
|
||||
if(g_dcf_hdl == -1){
|
||||
g_dcf_hdl = DCF_Open(&dcfParm);
|
||||
DCF_ScanObjEx(g_dcf_hdl);
|
||||
}
|
||||
else{
|
||||
DBG_WRN("dcf handle1 is already opened\n");
|
||||
}
|
||||
fastboot_set_done(BOOT_INIT_FILENAMINGOK);
|
||||
}
|
||||
else
|
||||
{
|
||||
fastboot_msg_en(ENABLE);
|
||||
DBG_ERR(" FILESYS TIMEOUT failed\r\n");
|
||||
}
|
||||
THREAD_RETURN(0);
|
||||
}
|
||||
|
||||
THREAD_RETTYPE PhotoFast_InitFileNamingThread2(void *arg)
|
||||
{
|
||||
|
||||
fastboot_wait_done(BOOT_INIT_FILESYSOK_2);
|
||||
PhotoFast_FileNaming_Open2();
|
||||
fastboot_set_done(BOOT_INIT_FILENAMINGOK_2);
|
||||
// fastboot_wait_done(BOOT_INIT_FILESYSOK_2);
|
||||
// PhotoFast_FileNaming_Open2();
|
||||
// fastboot_set_done(BOOT_INIT_FILENAMINGOK_2);
|
||||
|
||||
THREAD_RETURN(0);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user