修改部分EMMC和SD卡切换逻辑
This commit is contained in:
parent
2a20d7fd2a
commit
69dc8b618c
|
@ -1236,13 +1236,13 @@ static void MovieExe_FileNamingCB(MOVIE_CFG_REC_ID id, char *pFileName)
|
||||||
#if(SENSOR_CAPS_COUNT>=2 || ((defined(_NVT_ETHREARCAM_RX_)) && (ETH_REARCAM_CAPS_COUNT >= 2)))
|
#if(SENSOR_CAPS_COUNT>=2 || ((defined(_NVT_ETHREARCAM_RX_)) && (ETH_REARCAM_CAPS_COUNT >= 2)))
|
||||||
char NH_endChar='A';
|
char NH_endChar='A';
|
||||||
|
|
||||||
if(mmc_dev == MMC_DEV_SD)
|
//if(mmc_dev == MMC_DEV_SD)
|
||||||
{
|
{
|
||||||
NH_endChar='A';
|
//NH_endChar='A';
|
||||||
}
|
}
|
||||||
else if(mmc_dev == MMC_DEV_EMMC)
|
//else if(mmc_dev == MMC_DEV_EMMC)
|
||||||
{
|
{
|
||||||
NH_endChar='B';
|
//NH_endChar='B';
|
||||||
}
|
}
|
||||||
|
|
||||||
if(id < _CFG_REC_ID_MAX){
|
if(id < _CFG_REC_ID_MAX){
|
||||||
|
|
|
@ -595,7 +595,7 @@ static SINT32 sf_app_process_cmd_SD(SF_MESSAGE_BUF_S *pMessageBuf)
|
||||||
UINT32 status;
|
UINT32 status;
|
||||||
SINT16 startup = sf_poweron_type_get();
|
SINT16 startup = sf_poweron_type_get();
|
||||||
|
|
||||||
MLOGD("[%d,%s]\n",pMessageBuf->arg1,app_process_SD_getstatusstring(pMessageBuf->arg1));
|
MLOGD("[dev_id:%d,evt:%s]\n",pMessageBuf->arg2,app_process_SD_getstatusstring(pMessageBuf->arg1));
|
||||||
|
|
||||||
sf_mmc_dev_register(pMessageBuf);
|
sf_mmc_dev_register(pMessageBuf);
|
||||||
|
|
||||||
|
|
|
@ -19,8 +19,6 @@
|
||||||
#include "sf_mmc_dev.h"
|
#include "sf_mmc_dev.h"
|
||||||
#include <sf_param_common.h>
|
#include <sf_param_common.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
int event;
|
int event;
|
||||||
|
@ -28,13 +26,12 @@ typedef struct
|
||||||
int mounted_status;
|
int mounted_status;
|
||||||
}STRG_CB_PARAM;
|
}STRG_CB_PARAM;
|
||||||
|
|
||||||
|
|
||||||
static SF_ST_MMC_DEV sf_mmc_dev[MMC_DEV_MAX_NUM] = {0};
|
static SF_ST_MMC_DEV sf_mmc_dev[MMC_DEV_MAX_NUM] = {0};
|
||||||
|
|
||||||
SINT32 sf_mmc_dev_space_check_full(const char *mountPath)
|
SINT32 sf_mmc_dev_space_check_full(const char *mountPath)
|
||||||
{
|
{
|
||||||
SF_STORE_ATTR_S *pstoreattrs = NULL;
|
SF_STORE_ATTR_S *pstoreattrs = NULL;
|
||||||
SF_COMM_CHECK_POINTER(pstoreattrs,SF_FAILURE);
|
//SF_COMM_CHECK_POINTER(pstoreattrs,SF_FAILURE);
|
||||||
SINT32 fd = -1;
|
SINT32 fd = -1;
|
||||||
UINT32 Isfull = 0;
|
UINT32 Isfull = 0;
|
||||||
fd = open(mountPath, O_RDONLY,0);
|
fd = open(mountPath, O_RDONLY,0);
|
||||||
|
@ -100,12 +97,14 @@ static int sf_mmc_dev_node_check(const char *devName)
|
||||||
void sf_mmc_dev_register(SF_MESSAGE_BUF_S *pMessageBuf)
|
void sf_mmc_dev_register(SF_MESSAGE_BUF_S *pMessageBuf)
|
||||||
{
|
{
|
||||||
STRG_CB_PARAM strg_cb_param;
|
STRG_CB_PARAM strg_cb_param;
|
||||||
|
|
||||||
UIMenuStoreInfo *puiPara = sf_app_ui_para_get();
|
UIMenuStoreInfo *puiPara = sf_app_ui_para_get();
|
||||||
strg_cb_param.event = pMessageBuf->arg1;
|
strg_cb_param.event = pMessageBuf->arg1;
|
||||||
strg_cb_param.dev_id = pMessageBuf->arg2;
|
strg_cb_param.dev_id = pMessageBuf->arg2;
|
||||||
strg_cb_param.mounted_status = pMessageBuf->arg3;
|
strg_cb_param.mounted_status = pMessageBuf->arg3;
|
||||||
|
|
||||||
|
MLOGD("[dev_id:%d, evt:%d]\n",strg_cb_param.dev_id, strg_cb_param.event);
|
||||||
|
|
||||||
if(strg_cb_param.dev_id == MMC_DEV_SD)
|
if(strg_cb_param.dev_id == MMC_DEV_SD)
|
||||||
{
|
{
|
||||||
if(strg_cb_param.event == CMD_SD_STRG_CB_INSERTED)
|
if(strg_cb_param.event == CMD_SD_STRG_CB_INSERTED)
|
||||||
|
@ -189,8 +188,13 @@ void sf_mmc_dev_register(SF_MESSAGE_BUF_S *pMessageBuf)
|
||||||
MMC_DEV_TYPE sf_mmc_check_workable_dev(void)
|
MMC_DEV_TYPE sf_mmc_check_workable_dev(void)
|
||||||
{
|
{
|
||||||
MMC_DEV_TYPE workable_dev = MMC_DEV_NO;
|
MMC_DEV_TYPE workable_dev = MMC_DEV_NO;
|
||||||
|
MLOGD("sf mmc check workable dev start!!!\n");
|
||||||
if(sf_mmc_dev[MMC_DEV_EMMC].node == MMC_DEV_NODE_STATE_NO_EXIST) //EMMC节点不存在
|
if((sf_mmc_dev[MMC_DEV_SD].node == MMC_DEV_NODE_STATE_NO_EXIST) &&
|
||||||
|
(sf_mmc_dev[MMC_DEV_EMMC].node == MMC_DEV_NODE_STATE_NO_EXIST))
|
||||||
|
{
|
||||||
|
workable_dev = MMC_DEV_NO;
|
||||||
|
}
|
||||||
|
else if(sf_mmc_dev[MMC_DEV_EMMC].node == MMC_DEV_NODE_STATE_NO_EXIST) //EMMC节点不存在
|
||||||
{
|
{
|
||||||
if(sf_mmc_dev[MMC_DEV_EMMC].moumted_state == MMC_DEV_MOUNT_STATE_MOUNTED)
|
if(sf_mmc_dev[MMC_DEV_EMMC].moumted_state == MMC_DEV_MOUNT_STATE_MOUNTED)
|
||||||
{
|
{
|
||||||
|
@ -226,7 +230,12 @@ MMC_DEV_TYPE sf_mmc_check_workable_dev(void)
|
||||||
}
|
}
|
||||||
else //MMC节点都存在
|
else //MMC节点都存在
|
||||||
{
|
{
|
||||||
if(sf_mmc_dev[MMC_DEV_SD].moumted_state == MMC_DEV_MOUNT_STATE_UNMOUNTED)
|
if((sf_mmc_dev[MMC_DEV_SD].moumted_state == MMC_DEV_MOUNT_STATE_UNMOUNTED) &&
|
||||||
|
(sf_mmc_dev[MMC_DEV_EMMC].moumted_state == MMC_DEV_MOUNT_STATE_UNMOUNTED))
|
||||||
|
{
|
||||||
|
workable_dev = MMC_DEV_NO;
|
||||||
|
}
|
||||||
|
else if(sf_mmc_dev[MMC_DEV_SD].moumted_state == MMC_DEV_MOUNT_STATE_UNMOUNTED)
|
||||||
{
|
{
|
||||||
if(sf_mmc_dev[MMC_DEV_EMMC].space_state == MMC_DEV_SPACE_STATE_ENOUGH)
|
if(sf_mmc_dev[MMC_DEV_EMMC].space_state == MMC_DEV_SPACE_STATE_ENOUGH)
|
||||||
{
|
{
|
||||||
|
@ -278,5 +287,13 @@ MMC_DEV_TYPE sf_mmc_check_workable_dev(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
MLOGD("sf mmc check workable dev end, dev_id = %d!!!\n", workable_dev);
|
||||||
|
for(int i = 0; i < 2; i++)
|
||||||
|
{
|
||||||
|
MLOGD("node:%d, mount:%d, space:%d, loop:%d\n",
|
||||||
|
sf_mmc_dev[i].node, sf_mmc_dev[i].moumted_state,
|
||||||
|
sf_mmc_dev[i].space_state, sf_mmc_dev[i].loop_state);
|
||||||
|
}
|
||||||
|
|
||||||
return workable_dev;
|
return workable_dev;
|
||||||
}
|
}
|
||||||
|
|
|
@ -112,7 +112,7 @@ static void card_insert_job(void)
|
||||||
//if(TRUE == sf_check_card_full())
|
//if(TRUE == sf_check_card_full())
|
||||||
//{
|
//{
|
||||||
//DBG_WRN("ERR card full\r\n");
|
//DBG_WRN("ERR card full\r\n");
|
||||||
//fastboot_set_done(BOOT_INIT_FILESYSOK);
|
fastboot_set_done(BOOT_INIT_FILESYSOK);
|
||||||
//}
|
//}
|
||||||
//else
|
//else
|
||||||
//{
|
//{
|
||||||
|
@ -146,7 +146,7 @@ static void card_insert_job(void)
|
||||||
// FileSys_SetParamEx('B', FST_PARM_UPDATE_FSINFO , TRUE);
|
// FileSys_SetParamEx('B', FST_PARM_UPDATE_FSINFO , TRUE);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
fastboot_set_done(BOOT_INIT_FILESYSOK);
|
//fastboot_set_done(BOOT_INIT_FILESYSOK);
|
||||||
DBG_WRN("filesys_init e\r\n");
|
DBG_WRN("filesys_init e\r\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -183,8 +183,13 @@ int sf_rtos_mmc_dev_register(int devid, int mounted_state)
|
||||||
MMC_DEV_TYPE sf_rtos_mmc_check_workable_dev(void)
|
MMC_DEV_TYPE sf_rtos_mmc_check_workable_dev(void)
|
||||||
{
|
{
|
||||||
MMC_DEV_TYPE workable_dev = MMC_DEV_NO;
|
MMC_DEV_TYPE workable_dev = MMC_DEV_NO;
|
||||||
|
|
||||||
if(sf_mmc_dev[MMC_DEV_SD].moumted_state == MMC_DEV_MOUNT_STATE_UNMOUNTED)
|
if((sf_mmc_dev[MMC_DEV_SD].moumted_state == MMC_DEV_MOUNT_STATE_UNMOUNTED) &&
|
||||||
|
(sf_mmc_dev[MMC_DEV_EMMC].moumted_state == MMC_DEV_MOUNT_STATE_UNMOUNTED))
|
||||||
|
{
|
||||||
|
workable_dev = MMC_DEV_NO;
|
||||||
|
}
|
||||||
|
else if(sf_mmc_dev[MMC_DEV_SD].moumted_state == MMC_DEV_MOUNT_STATE_UNMOUNTED)
|
||||||
{
|
{
|
||||||
if(sf_mmc_dev[MMC_DEV_EMMC].space_state == MMC_DEV_SPACE_STATE_ENOUGH)
|
if(sf_mmc_dev[MMC_DEV_EMMC].space_state == MMC_DEV_SPACE_STATE_ENOUGH)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue
Block a user