FDS write 콜백 무한 대기 조건 변경
- fstorage.c: FDS write 콜백 무한 대기 -> 3초 타임아웃
This commit is contained in:
@@ -244,6 +244,7 @@ void config_load( void )
|
||||
fds_record_desc_t desc = { 0 };
|
||||
fds_find_token_t tok = { 0 };
|
||||
uint8_t cfg_retry = 0;
|
||||
uint32_t fds_wait_cnt = 0; // FDS write 대기 카운터
|
||||
|
||||
cfg_load_start:
|
||||
memset((char *)&desc, 0, sizeof(desc));
|
||||
@@ -330,11 +331,21 @@ void config_load( void )
|
||||
fds_flag_write = false;
|
||||
}
|
||||
|
||||
while( fds_flag_write )
|
||||
fds_wait_cnt = 0; //
|
||||
|
||||
while(fds_flag_write && fds_wait_cnt < 3000) // FDS write 최대 3초 타임아웃
|
||||
{
|
||||
nrf_pwr_mgmt_run();
|
||||
nrf_delay_ms(1);
|
||||
fds_wait_cnt++;
|
||||
}
|
||||
|
||||
if(fds_flag_write) // FDS write 타임아웃 시 플래그 강제 해제
|
||||
{
|
||||
DBG_PRINTF("[FDS] write TIMEOUT! forcing flag clear\r\n");
|
||||
fds_flag_write = false;
|
||||
}
|
||||
|
||||
if( (rc != NRF_SUCCESS) && (rc == FDS_ERR_NO_SPACE_IN_FLASH) )
|
||||
{
|
||||
rc = fds_gc();
|
||||
|
||||
Reference in New Issue
Block a user