From dd3ea521ad48b6e409cdc72a88919cadfc1920e0 Mon Sep 17 00:00:00 2001 From: James Buren Date: Mon, 26 Oct 2020 02:29:01 +0000 Subject: iriver_flash: correctly calculate when to stop erasing the bootloader It was originally hard-coded at 0x200 which is 512 sectors. This only works for the H100 and H120. The larger ROM of the H300 is 1024 sectors in size. In either case the bootloader starts 16 sectors before the end of the ROM so rely on this fact to correctly calculate where to stop the bootloader erasure. Change-Id: Iec4112ebf24379f80a7bf1363035e005c434907e --- apps/plugins/iriver_flash.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'apps/plugins') diff --git a/apps/plugins/iriver_flash.c b/apps/plugins/iriver_flash.c index 2ef6872c7d..2004840531 100644 --- a/apps/plugins/iriver_flash.c +++ b/apps/plugins/iriver_flash.c @@ -514,7 +514,7 @@ int flash_bootloader(const char *filename) cfi_program_word(FB + i, p16[i]); /* Erase the bootloader flash section. */ - for (i = BOOTLOADER_ENTRYPOINT/SEC_SIZE; i < 0x200; i++) + for (i = BOOTLOADER_ERASEGUARD; i < BOOTLOADER_ERASEGUARD+16; i++) /*rc =*/ cfi_erase_sector(FB + (SEC_SIZE/2) * i); pos = BOOTLOADER_ENTRYPOINT/2; -- cgit v1.2.3