Skip to content

Commit 1c5fe1c

Browse files
authored
Merge pull request #11752 from mnaberez/erase-value
FlashIAP: Get erase value from HAL instead of hardcoding it
2 parents 5a5b0f6 + 6be96ba commit 1c5fe1c

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

TESTS/mbed_drivers/flashiap/main.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@ void flashiap_cross_sector_program_test()
143143
TEST_ASSERT_EQUAL_INT32(0, ret);
144144

145145
uint32_t page_size = flash_device.get_page_size();
146+
uint8_t erase_value = flash_device.get_erase_value();
146147

147148
// Erase last two sectors
148149
uint32_t address = flash_device.get_flash_start() + flash_device.get_flash_size();
@@ -170,7 +171,7 @@ void flashiap_cross_sector_program_test()
170171
data[i] = rand() % 256;
171172
}
172173
for (uint32_t i = prog_size; i < aligned_prog_size; i++) {
173-
data[i] = 0xFF;
174+
data[i] = erase_value;
174175
}
175176

176177
ret = flash_device.program(data, address, prog_size);

drivers/source/FlashIAP.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ int FlashIAP::program(const void *buffer, uint32_t addr, uint32_t size)
9999
uint32_t page_size = get_page_size();
100100
uint32_t flash_size = flash_get_size(&_flash);
101101
uint32_t flash_start_addr = flash_get_start_address(&_flash);
102+
uint8_t flash_erase_value = flash_get_erase_value(&_flash);
102103
uint32_t chunk, prog_size;
103104
const uint8_t *buf = (uint8_t *) buffer;
104105
const uint8_t *prog_buf;
@@ -123,7 +124,7 @@ int FlashIAP::program(const void *buffer, uint32_t addr, uint32_t size)
123124
chunk = std::min(chunk, page_size);
124125
memcpy(_page_buf, buf, chunk);
125126
if (chunk < page_size) {
126-
memset(_page_buf + chunk, 0xFF, page_size - chunk);
127+
memset(_page_buf + chunk, flash_erase_value, page_size - chunk);
127128
}
128129
prog_buf = _page_buf;
129130
prog_size = page_size;

0 commit comments

Comments
 (0)