|
17 | 17 | #define FLASH_NODE DT_INVALID_NODE |
18 | 18 | #endif |
19 | 19 |
|
20 | | -#define TEST_AREA_OFFSET 0xff000 |
21 | | -#define EXPECTED_SIZE 512 |
| 20 | +#define TEST_AREA_OFFSET 0xff000 |
| 21 | +#define EXPECTED_SIZE 512 |
| 22 | +#define FLASH_PAGE_SIZE 4096 |
| 23 | + |
22 | 24 | uint8_t buf[EXPECTED_SIZE]; |
23 | 25 |
|
24 | 26 | static const struct device *flash_dev = DEVICE_DT_GET(FLASH_NODE); |
25 | 27 |
|
26 | | - |
27 | 28 | void thread_definition(void) |
28 | 29 | { |
29 | | - int ret; |
| 30 | + int rc; |
| 31 | + uint8_t fill_value = 0x00; |
30 | 32 |
|
31 | 33 | while (1) { |
32 | | - ret = flash_read(flash_dev, TEST_AREA_OFFSET, buf, EXPECTED_SIZE); |
33 | | - if (ret < 0) { |
34 | | - printk("Failure in reading byte %d", ret); |
35 | | - return; |
| 34 | + rc = flash_erase(flash_dev, TEST_AREA_OFFSET, FLASH_PAGE_SIZE); |
| 35 | + __ASSERT(rc == 0, "flash_erase %d\n", rc); |
| 36 | + rc = flash_fill(flash_dev, fill_value, TEST_AREA_OFFSET, EXPECTED_SIZE); |
| 37 | + __ASSERT(rc == 0, "flash_fill %d\n", rc); |
| 38 | + rc = flash_read(flash_dev, TEST_AREA_OFFSET, buf, EXPECTED_SIZE); |
| 39 | + __ASSERT(rc == 0, "flash_read %d\n", rc); |
| 40 | + for (size_t i = 0; i < EXPECTED_SIZE; i++) { |
| 41 | + __ASSERT(buf[i] == fill_value, "flash value %d but expected %d\n", buf[i], |
| 42 | + fill_value); |
| 43 | + buf[i] = (uint8_t)i; |
36 | 44 | } |
| 45 | + fill_value++; |
37 | 46 | }; |
38 | 47 | }; |
0 commit comments