diff --git a/code/application/source/sf_app/code/source/app/sf_service.c b/code/application/source/sf_app/code/source/app/sf_service.c index ef867e46b..2ac9744e5 100755 --- a/code/application/source/sf_app/code/source/app/sf_service.c +++ b/code/application/source/sf_app/code/source/app/sf_service.c @@ -2441,12 +2441,20 @@ static int sf_is_sdc_mounted(void) int sf_check_sd(void) { UINT8 i = 0; - int ret = SF_SUCCESS; + static int ret = SF_SUCCESS; int cnt = 0; + static int flag = 0; + if((flag) && (sf_get_mode_flag() == 0)) + { + MLOGI("SD Status:%d\r\n", ret); + return ret; + } if(0 == sf_in_card_exist() && (0 == sf_in_emmc_exist())) { NET_SLOGE("NO SD\r\n"); - return SF_FAILURE; + flag = 1; + ret = SF_FAILURE; + return ret; } if (sf_sd_status_get() != SF_SD_OK) { ret = SF_FAILURE; @@ -2476,8 +2484,10 @@ int sf_check_sd(void) } } + flag = 1; return ret; } + flag = 1; return ret; } /*************************************************