<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">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 &lt; 5; i++)
@@ -362,6 +365,7 @@
         int done = flash_disk_read_sectors(start, incount, inbuf);
         if (done &lt; 0)
             return -1;
+        start += done;
         incount -= done;
         inbuf += SECTOR_SIZE * done;
     }
</pre></body></html>