diff --git a/libraries/BlockDevices/BlockDevice.h b/libraries/BlockDevices/BlockDevice.h index 89b317e15..98e554742 100644 --- a/libraries/BlockDevices/BlockDevice.h +++ b/libraries/BlockDevices/BlockDevice.h @@ -30,8 +30,8 @@ #define BD_ERROR_DEVICE_ERROR (-4001) #define BD_ERROR_WRITE_PROTECTED (4002) -typedef uint32_t bd_addr_t; -typedef uint32_t bd_size_t; +typedef uint64_t bd_addr_t; +typedef uint64_t bd_size_t; typedef pin_size_t pin_t; /* -------------------------------------------------------------------------- */ @@ -107,4 +107,4 @@ class BlockDevice { virtual const char *get_type() const = 0; }; -#endif \ No newline at end of file +#endif diff --git a/libraries/BlockDevices/CodeFlashBlockDevice.h b/libraries/BlockDevices/CodeFlashBlockDevice.h index 24454b8b9..1b26e3f77 100644 --- a/libraries/BlockDevices/CodeFlashBlockDevice.h +++ b/libraries/BlockDevices/CodeFlashBlockDevice.h @@ -54,8 +54,8 @@ using FLASH_set_callback_f = fsp_err_t (*)(flash_ctrl_t * const p_api_ct class CodeFlashBlockDevice : public BlockDevice { private: CodeFlashBlockDevice(); - int erase_block(uint32_t add); - int check_blank(uint32_t add); + int erase_block(bd_addr_t add); + int check_blank(bd_addr_t add); uint32_t get_block_starting_address(bd_addr_t add); uint32_t get_physical_address(bd_addr_t add); virtual int write(const void *buffer, bd_addr_t addr, bd_size_t size) override; diff --git a/libraries/BlockDevices/DataFlashBlockDevice.h b/libraries/BlockDevices/DataFlashBlockDevice.h index a206ee689..4e036760d 100644 --- a/libraries/BlockDevices/DataFlashBlockDevice.h +++ b/libraries/BlockDevices/DataFlashBlockDevice.h @@ -73,8 +73,8 @@ using FLASH_set_callback_f = fsp_err_t (*)(flash_ctrl_t * const p_api_ct class DataFlashBlockDevice : public BlockDevice { private: DataFlashBlockDevice(); - int erase_block(uint32_t add); - int check_blank(uint32_t add); + int erase_block(bd_addr_t add); + int check_blank(bd_addr_t add); uint32_t get_block_starting_address(bd_addr_t add); uint32_t get_physical_address(bd_addr_t add); bool is_address_correct(bd_addr_t add); @@ -136,4 +136,4 @@ class DataFlashBlockDevice : public BlockDevice { }; -#endif \ No newline at end of file +#endif diff --git a/libraries/BlockDevices/SDCardBlockDevice.cpp b/libraries/BlockDevices/SDCardBlockDevice.cpp index 1cd897ed6..4b5c825b3 100644 --- a/libraries/BlockDevices/SDCardBlockDevice.cpp +++ b/libraries/BlockDevices/SDCardBlockDevice.cpp @@ -313,7 +313,7 @@ int SDCardBlockDevice::open() { read_block_size = sd_card_info.sector_size_bytes; erase_block_size = sd_card_info.sector_size_bytes; write_block_size = sd_card_info.sector_size_bytes; - total_size = sd_card_info.sector_count * sd_card_info.sector_size_bytes; + total_size = (bd_size_t) sd_card_info.sector_count * (bd_size_t) sd_card_info.sector_size_bytes; } } @@ -478,7 +478,7 @@ fsp_err_t SDCardBlockDevice::wait_for_completition() { rv = FSP_ERR_TIMEOUT; } - + return rv; }