diff --git a/cores/common/arduino/libraries/inline/Flash/Flash.h b/cores/common/arduino/libraries/inline/Flash/Flash.h index e9c46ef..7a4290e 100644 --- a/cores/common/arduino/libraries/inline/Flash/Flash.h +++ b/cores/common/arduino/libraries/inline/Flash/Flash.h @@ -23,13 +23,13 @@ class FlashClass { /** @copydoc lt_flash_read() */ inline bool readBlock(uint32_t offset, uint8_t *data, size_t length) { // - return lt_flash_read(offset, data, length); + return lt_flash_read(offset, data, length) == length; } /** @copydoc lt_flash_write() */ inline bool writeBlock(uint32_t offset, uint8_t *data, size_t length) { // - return lt_flash_write(offset, data, length); + return lt_flash_write(offset, data, length) == length; } }; diff --git a/cores/common/base/api/lt_flash.h b/cores/common/base/api/lt_flash.h index 6117f24..0551907 100644 --- a/cores/common/base/api/lt_flash.h +++ b/cores/common/base/api/lt_flash.h @@ -40,9 +40,9 @@ bool lt_flash_erase_block(uint32_t offset); * @param offset starting offset (in bytes) * @param data pointer to where to store the data * @param length length of data to read - * @return whether reading was successful (i.e. all bytes were successfully read) + * @return length of data successfully read (should equal 'length') */ -bool lt_flash_read(uint32_t offset, uint8_t *data, size_t length); +uint32_t lt_flash_read(uint32_t offset, uint8_t *data, size_t length); /** * @brief Write data to the flash. @@ -50,6 +50,6 @@ bool lt_flash_read(uint32_t offset, uint8_t *data, size_t length); * @param offset starting offset (in bytes) * @param data pointer to data to write * @param length length of data to write - * @return whether writing was successful (i.e. all bytes were successfully written) + * @return length of data successfully written (should equal 'length') */ -bool lt_flash_write(uint32_t offset, uint8_t *data, size_t length); +uint32_t lt_flash_write(uint32_t offset, uint8_t *data, size_t length); diff --git a/cores/common/base/lt_api.c b/cores/common/base/lt_api.c index 10a139d..0ea6995 100644 --- a/cores/common/base/lt_api.c +++ b/cores/common/base/lt_api.c @@ -148,12 +148,12 @@ bool lt_flash_erase_block(uint32_t offset) { return fal_partition_erase(fal_root_part, offset, 1) >= 0; } -bool lt_flash_read(uint32_t offset, uint8_t *data, size_t length) { - return fal_partition_write(fal_root_part, offset, data, length) == length; +uint32_t lt_flash_read(uint32_t offset, uint8_t *data, size_t length) { + return fal_partition_read(fal_root_part, offset, data, length); } -bool lt_flash_write(uint32_t offset, uint8_t *data, size_t length) { - return fal_partition_read(fal_root_part, offset, data, length) == length; +uint32_t lt_flash_write(uint32_t offset, uint8_t *data, size_t length) { + return fal_partition_write(fal_root_part, offset, data, length); } /*__ __