Index: firmware/drivers/ata_flash.c =================================================================== RCS file: /cvsroot/rockbox/firmware/drivers/ata_flash.c,v retrieving revision 1.1 diff -u -r1.1 ata_flash.c --- firmware/drivers/ata_flash.c 18 Jan 2006 10:01:35 -0000 1.1 +++ firmware/drivers/ata_flash.c 10 Apr 2006 18:11:56 -0000 @@ -81,27 +81,30 @@ #endif } -unsigned char flash_read_data(void) +static inline unsigned char flash_read_data(void) { return FLASH_REG_DATA; } -void flash_write_data(unsigned char data) +static inline void flash_write_data(unsigned char data) { FLASH_REG_DATA = data; } -void flash_write_cmd(unsigned char cmd) +/* TODO: these two doesn't work when inlined, probably some + delay is required */ + +static void flash_write_cmd(unsigned char cmd) { FLASH_REG_CMD = cmd; } -void flash_write_addr(unsigned char addr) +static void flash_write_addr(unsigned char addr) { FLASH_REG_ADDR = addr; } -void flash_wait_ready(void) +static void flash_wait_ready(void) { int i; for (i = 0; i < 5; i++) @@ -362,6 +365,7 @@ int done = flash_disk_read_sectors(start, incount, inbuf); if (done < 0) return -1; + start += done; incount -= done; inbuf += SECTOR_SIZE * done; }