diff --git a/testhal/STM32/STM32F4xx/FSMC_NAND/.cproject b/testhal/STM32/STM32F4xx/FSMC_NAND/.cproject index d5451e0b..034a4fc9 100644 --- a/testhal/STM32/STM32F4xx/FSMC_NAND/.cproject +++ b/testhal/STM32/STM32F4xx/FSMC_NAND/.cproject @@ -1,33 +1,79 @@ - - + + - - - + + + - - - - - - - - + + + + + + + + + + + + - - + + + + - - + + + + @@ -41,12 +87,10 @@ - + - - - + diff --git a/testhal/STM32/STM32F4xx/FSMC_NAND/main.c b/testhal/STM32/STM32F4xx/FSMC_NAND/main.c index 29b2dfb8..e75a937a 100644 --- a/testhal/STM32/STM32F4xx/FSMC_NAND/main.c +++ b/testhal/STM32/STM32F4xx/FSMC_NAND/main.c @@ -124,7 +124,7 @@ static time_measurement_t tmu_driver_start; /* * */ -static bitmap_word_t badblock_map_array[BAD_MAP_LEN]; +static bitmap_word_t badblock_map_array[BAD_MAP_LEN]; static bitmap_t badblock_map = { badblock_map_array, BAD_MAP_LEN @@ -429,6 +429,26 @@ static void general_test (NANDDriver *nandp, size_t first, } } + /* check fail status */ + for (block=first; blockconfig->page_data_size, &wecc); + osalDbgCheck(0 == (op_status & 1)); + + pattern_fill(); + op_status = nandWritePageData(nandp, block, 0, + nand_buf, nandp->config->page_data_size, &wecc); + /* operation must failed here because of write in unerased space */ + osalDbgCheck(1 == (op_status & 1)); + } + } + /* write block with pattern, read it back and compare */ for (block=first; block