[coreboot] [flashrom] r600 - trunk

svn at coreboot.org svn at coreboot.org
Wed Jun 17 12:13:43 CEST 2009


Author: hailfinger
Date: 2009-06-17 12:13:42 +0200 (Wed, 17 Jun 2009)
New Revision: 600

Modified:
   trunk/ichspi.c
Log:
Use spi_nbyte_program in ichspi.c.
This shortens the code a lot and makes it more readable.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>
Acked-by: Ronald G. Minnich <rminnich at gmail.com>


Modified: trunk/ichspi.c
===================================================================
--- trunk/ichspi.c	2009-06-16 23:15:10 UTC (rev 599)
+++ trunk/ichspi.c	2009-06-17 10:13:42 UTC (rev 600)
@@ -617,30 +617,17 @@
 {
 	int page_size = flash->page_size;
 	uint32_t remaining = page_size;
-	int a;
+	int towrite;
 
 	printf_debug("ich_spi_write_page: offset=%d, number=%d, buf=%p\n",
 		     offset, page_size, bytes);
 
-	for (a = 0; a < page_size; a += maxdata) {
-		if (remaining < maxdata) {
-			if (run_opcode
-			    (curopcodes->opcode[0],
-			     offset + (page_size - remaining), remaining,
-			     &bytes[page_size - remaining]) != 0) {
-				printf_debug("Error writing");
-				return 1;
-			}
-			remaining = 0;
-		} else {
-			if (run_opcode
-			    (curopcodes->opcode[0],
-			     offset + (page_size - remaining), maxdata,
-			     &bytes[page_size - remaining]) != 0) {
-				printf_debug("Error writing");
-				return 1;
-			}
-			remaining -= maxdata;
+	for (; remaining > 0; remaining -= towrite) {
+		towrite = min(remaining, maxdata);
+		if (spi_nbyte_program(offset + (page_size - remaining),
+				      &bytes[page_size - remaining], towrite)) {
+			printf_debug("Error writing");
+			return 1;
 		}
 	}
 





More information about the coreboot mailing list