diff options
author | Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> | 2013-03-03 23:49:48 +0000 |
---|---|---|
committer | Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> | 2013-03-03 23:49:48 +0000 |
commit | 50d67aaa79441e8043aa1de32bb40ae94fcc51b2 (patch) | |
tree | f1b620f41753f30ca126947b6e634156fea996cb | |
parent | 352e50b79e084c8f5f768d7b6f2ba6b6bd2ea8ce (diff) | |
download | flashrom-50d67aaa79441e8043aa1de32bb40ae94fcc51b2.tar.gz flashrom-50d67aaa79441e8043aa1de32bb40ae94fcc51b2.tar.bz2 flashrom-50d67aaa79441e8043aa1de32bb40ae94fcc51b2.zip |
Make write granularity a chip attribute
Corresponding to flashrom svn r1651.
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-rw-r--r-- | flash.h | 3 | ||||
-rw-r--r-- | flashrom.c | 3 |
2 files changed, 3 insertions, 3 deletions
@@ -68,9 +68,9 @@ enum chipbustype { * - 256 bytes: If less than 256 bytes are written, the contents of the unwritten bytes are undefined. */ enum write_granularity { + write_gran_256bytes = 0, /* We assume 256 byte granularity by default. */ write_gran_1bit, write_gran_1byte, - write_gran_256bytes, }; /* @@ -162,6 +162,7 @@ struct flashchip { uint16_t min; uint16_t max; } voltage; + enum write_granularity gran; }; struct flashctx { @@ -1273,7 +1273,7 @@ static int erase_and_write_block_helper(struct flashctx *flash, { unsigned int starthere = 0, lenhere = 0; int ret = 0, skip = 1, writecount = 0; - enum write_granularity gran = write_gran_256bytes; /* FIXME */ + enum write_granularity gran = flash->chip->gran; /* curcontents and newcontents are opaque to walk_eraseregions, and * need to be adjusted here to keep the impression of proper abstraction @@ -1281,7 +1281,6 @@ static int erase_and_write_block_helper(struct flashctx *flash, curcontents += start; newcontents += start; msg_cdbg(":"); - /* FIXME: Assume 256 byte granularity for now to play it safe. */ if (need_erase(curcontents, newcontents, len, gran)) { msg_cdbg("E"); ret = erasefn(flash, start, len); |