From d31ad05d75b550e1138c77def2ad9bf08815107c Mon Sep 17 00:00:00 2001 From: Dominik Ermel Date: Wed, 27 Nov 2024 15:21:06 +0100 Subject: [PATCH] Revert "tests/storage/flash_map: Support for no flash_area_open" This reverts commit 29f7f53f85bace5f9b056a54635d25612602421f. Signed-off-by: Dominik Ermel --- tests/subsys/storage/flash_map/src/main.c | 98 +++++++---------------- 1 file changed, 29 insertions(+), 69 deletions(-) diff --git a/tests/subsys/storage/flash_map/src/main.c b/tests/subsys/storage/flash_map/src/main.c index aa8728767f5..1b529bbbfce 100644 --- a/tests/subsys/storage/flash_map/src/main.c +++ b/tests/subsys/storage/flash_map/src/main.c @@ -32,71 +32,10 @@ ZTEST(flash_map, test_flash_area_disabled_device) zassert_equal(rc, -ENOENT, "Open did not fail"); } -ZTEST(flash_map, test_flash_area_device_is_ready) -{ - const struct flash_area no_dev { - .fa_dev = NULL; - }; - - zassert_false(flash_area_device_is_ready(NULL)); - zassert_false(flash_area_device_is_ready(no_dev)); - /* The below just assumes that tests are executed so late that - * all devices are already initialized and ready. - */ - zassert_true(flash_area_device_is_ready(FIXED_PARTITION(SLOT1_PARTITION)); -} - -static void layout_match(const struct device flash_dev) -{ - uint32_t sec_cnt; - off_t off = 0; - int i; - - /* For each reported sector, check if it corresponds to real page on device */ - for (i = 0; i < sec_cnt; ++i) { - struct flash_pages_info fpi; - - zassert_ok( - flash_get_page_info_by_offs(flash_dev, SLOT1_PARTITION_OFFSET + off, &fpi)); - /* Offset of page taken directly from device corresponds to offset - * within flash area - */ - zassert_equal(fpi.start_offset, fs_sectors[i].fs_off + SLOT1_PARTITION_OFFSET); - zassert_equal(fpi.size, fs_sectors[i].fs_size); - off += fs_sectors[i].fs_size; - } -} - /** * @brief Test flash_area_get_sectors() */ ZTEST(flash_map, test_flash_area_get_sectors) -{ - const struct flash_area *fa; - int rc; - const struct device *flash_dev; - const struct device *flash_dev_a = SLOT1_PARTITION_DEV; - - fa = FIXED_PARTITION(SLOT1_PARTITION); - - zassert_true(flash_area_device_is_ready(fa)); - - flash_dev = flash_area_get_device(fa); - zassert_true(device_is_ready(fa)); - - /* Device obtained by label should match the one from fa object */ - zassert_equal(flash_dev, flash_dev_a, "Device for slot1_partition do not match"); - - memset(&fs_sectors[0], 0, sizeof(fs_sectors)); - - sec_cnt = ARRAY_SIZE(fs_sectors); - rc = flash_area_get_sectors(SLOT1_PARTITION_ID, &sec_cnt, fs_sectors); - zassert_true(rc == 0, "flash_area_get_sectors failed"); - - layout_match(flash_dev); -} - -ZTEST(flash_map, test_flash_area_sectors) { const struct flash_area *fa; uint32_t sec_cnt; @@ -106,21 +45,38 @@ ZTEST(flash_map, test_flash_area_sectors) const struct device *flash_dev; const struct device *flash_dev_a = SLOT1_PARTITION_DEV; - fa = FIXED_PARTITION(SLOT1_PARTITION); - - zassert_true(flash_area_device_is_ready(fa)); + rc = flash_area_open(SLOT1_PARTITION_ID, &fa); + zassert_true(rc == 0, "flash_area_open() fail"); + /* First erase the area so it's ready for use. */ flash_dev = flash_area_get_device(fa); - zassert_true(device_is_ready(fa)); /* Device obtained by label should match the one from fa object */ zassert_equal(flash_dev, flash_dev_a, "Device for slot1_partition do not match"); sec_cnt = ARRAY_SIZE(fs_sectors); - rc = flash_area_sectors(SLOT1_PARTITION_ID, &sec_cnt, fs_sectors); + rc = flash_area_get_sectors(SLOT1_PARTITION_ID, &sec_cnt, fs_sectors); zassert_true(rc == 0, "flash_area_get_sectors failed"); - layout_match(); + off = 0; + + /* For each reported sector, check if it corresponds to real page on device */ + for (i = 0; i < sec_cnt; ++i) { + struct flash_pages_info fpi; + + zassert_ok(flash_get_page_info_by_offs(flash_dev, + SLOT1_PARTITION_OFFSET + off, + &fpi)); + /* Offset of page taken directly from device corresponds to offset + * within flash area + */ + zassert_equal(fpi.start_offset, + fs_sectors[i].fs_off + SLOT1_PARTITION_OFFSET); + zassert_equal(fpi.size, fs_sectors[i].fs_size); + off += fs_sectors[i].fs_size; + } + + flash_area_close(fa); } ZTEST(flash_map, test_flash_area_erased_val) @@ -130,7 +86,8 @@ ZTEST(flash_map, test_flash_area_erased_val) uint8_t val; int rc; - fa = FIXED_PARTITION(SLOT1_PARTITION); + rc = flash_area_open(SLOT1_PARTITION_ID, &fa); + zassert_true(rc == 0, "flash_area_open() fail"); val = flash_area_erased_val(fa); @@ -138,6 +95,8 @@ ZTEST(flash_map, test_flash_area_erased_val) zassert_equal(param->erase_value, val, "value different than the flash erase value"); + + flash_area_close(fa); } ZTEST(flash_map, test_fixed_partition_node_macros) @@ -159,7 +118,8 @@ ZTEST(flash_map, test_flash_area_erase_and_flatten) const struct flash_area *fa; const struct device *flash_dev; - fa = FIXED_PARTITION(SLOT1_PARTITION); + rc = flash_area_open(SLOT1_PARTITION_ID, &fa); + zassert_true(rc == 0, "flash_area_open() fail"); /* First erase the area so it's ready for use. */ flash_dev = flash_area_get_device(fa);