[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