优化mmc设备space状态和loop状态更新

This commit is contained in:
sober.song 2024-01-10 15:34:21 +08:00
parent dfad4c0234
commit cac4816d5c

View File

@ -51,11 +51,20 @@ SF_ST_MMC_DEV *pMMCDev = NULL;
void SF_SetMMCDev(SF_ST_MMC_DEV *pDev) void SF_SetMMCDev(SF_ST_MMC_DEV *pDev)
{ {
if(pDev == NULL)
{
return;
}
pMMCDev = pDev; pMMCDev = pDev;
} }
SF_ST_MMC_DEV *SF_GetMMCDev(void) SF_ST_MMC_DEV *SF_GetMMCDev(void)
{ {
if(pMMCDev == NULL)
{
return NULL;
}
return pMMCDev; return pMMCDev;
} }
@ -87,14 +96,21 @@ void SF_StrgUnInit(void)
sf_mmc_dev[i] = NULL; sf_mmc_dev[i] = NULL;
} }
} }
if(pMMCDev != NULL)
{
free(pMMCDev); free(pMMCDev);
pMMCDev = NULL; pMMCDev = NULL;
} }
}
int SF_GetMMCDevHandle(MMC_DEV_TYPE dev_type) int SF_GetMMCDevHandle(MMC_DEV_TYPE dev_type)
{ {
if(sf_mmc_dev != NULL) {
return sf_mmc_dev[dev_type]->dcf_handle; return sf_mmc_dev[dev_type]->dcf_handle;
} }
return 0;
}
void SF_StrgSetDcfHandle(UINT32 strg_id, UINT32 handle) void SF_StrgSetDcfHandle(UINT32 strg_id, UINT32 handle)
{ {
@ -105,6 +121,7 @@ static UINT32 SF_StrgSpaceCheckFull(MMC_DEV_TYPE mmc_dev)
{ {
UINT64 diskFree = 0; UINT64 diskFree = 0;
UINT32 ret = 0; UINT32 ret = 0;
UIMenuStoreInfo *puiPara = sf_ui_para_get();
#if HUNTING_CAMERA_MCU == ENABLE #if HUNTING_CAMERA_MCU == ENABLE
if(sf_get_power_off_flag() || sf_is_usb_flag()) if(sf_get_power_off_flag() || sf_is_usb_flag())
{ {
@ -131,6 +148,15 @@ static UINT32 SF_StrgSpaceCheckFull(MMC_DEV_TYPE mmc_dev)
{ {
ret = 0; ret = 0;
} }
if(sf_mmc_dev != NULL) {
sf_mmc_dev[mmc_dev]->space_state = ret == 0 ? MMC_DEV_SPACE_STATE_ENOUGH : MMC_DEV_SPACE_STATE_NO_ENOUGH;
}
for(int i = 0; i < MMC_DEV_MAX_NUM; i++)
{
sf_mmc_dev[i]->loop_state = puiPara->SdLoopSwitch == 1 ? MMC_DEV_LOOP_STATE_ON : MMC_DEV_LOOP_STATE_OFF;
}
//MLOGD("[%s:%d]sd card diskFree=%lluM\n", __FUNCTION__, __LINE__, diskFree); //MLOGD("[%s:%d]sd card diskFree=%lluM\n", __FUNCTION__, __LINE__, diskFree);
return ret; return ret;
} }