X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=packages%2Fio%2Fflash%2Fv2_0%2Fsrc%2Fflash.c;h=59725c5083fc252919b6c8ed9b85412ced7b5d5c;hb=4c2006ffbdfc5374f88746332a30f8356deecc69;hp=f9527131266b8d3fb1cb38e3e57e65838e70aa65;hpb=7a4ea0a4d67744fd3f6b5f207d857005fc707b46;p=karo-tx-redboot.git diff --git a/packages/io/flash/v2_0/src/flash.c b/packages/io/flash/v2_0/src/flash.c index f9527131..59725c50 100644 --- a/packages/io/flash/v2_0/src/flash.c +++ b/packages/io/flash/v2_0/src/flash.c @@ -233,7 +233,8 @@ flash_erase(void *addr, int len, void **err_addr) flash_info.pf("."); #endif } - FLASH_Disable((void *)((CYG_ADDRESS)addr & flash_info.block_mask), end_addr); + FLASH_Disable((void *)((CYG_ADDRESS)addr & flash_info.block_mask), + end_addr); HAL_FLASH_CACHES_ON(d_cache, i_cache); #ifdef CYGSEM_IO_FLASH_CHATTER flash_info.pf("\n"); @@ -304,10 +305,10 @@ flash_program(void *_addr, void *_data, int len, void **err_addr) flash_info.pf("."); #endif len -= size; - addr += size/sizeof(*addr); - data += size/sizeof(*data); + addr += size / sizeof(*addr); + data += size / sizeof(*data); } - FLASH_Disable(_addr, addr); + FLASH_Disable(_addr, addr + len); HAL_FLASH_CACHES_ON(d_cache, i_cache); #ifdef CYGSEM_IO_FLASH_CHATTER flash_info.pf("\n"); @@ -378,7 +379,7 @@ flash_read(void *_addr, void *_data, int len, void **err_addr) addr += size / sizeof(*addr); data += size / sizeof(*data); } - FLASH_Disable(_addr, addr); + FLASH_Disable(_addr, addr + len); HAL_FLASH_CACHES_ON(d_cache, i_cache); #ifdef CYGSEM_IO_FLASH_CHATTER_VERBOSE flash_info.pf("\n");