Merge branch 'feature/spi_flash_lock_recursive' into 'master'

spi_flash: Expose recursive op_lock for atomic multi-part flash operations

See merge request !1556
This commit is contained in:
Angus Gratton
2017-11-20 13:24:41 +08:00
5 changed files with 33 additions and 15 deletions
+6 -6
View File
@@ -212,27 +212,27 @@ IRAM_ATTR TEST_CASE("ETSTimers arm & disarm run from IRAM", "[ets_timer]")
/* arm a disabled timer, then disarm a live timer */
g_flash_guard_default_ops.start(); // Disables flash cache
spi_flash_guard_get()->start(); // Disables flash cache
ets_timer_arm(&timer1, INTERVAL, false);
// redundant call is deliberate (test code path if already armed)
ets_timer_arm(&timer1, INTERVAL, false);
ets_timer_disarm(&timer1);
g_flash_guard_default_ops.end(); // Re-enables flash cache
spi_flash_guard_get()->end(); // Re-enables flash cache
TEST_ASSERT_FALSE(flag); // didn't expire yet
/* do the same thing but wait for the timer to expire */
g_flash_guard_default_ops.start();
spi_flash_guard_get()->start();
ets_timer_arm(&timer1, INTERVAL, false);
g_flash_guard_default_ops.end();
spi_flash_guard_get()->end();
vTaskDelay(2 * INTERVAL / portTICK_PERIOD_MS);
TEST_ASSERT_TRUE(flag);
g_flash_guard_default_ops.start();
spi_flash_guard_get()->start();
ets_timer_disarm(&timer1);
g_flash_guard_default_ops.end();
spi_flash_guard_get()->end();
}