diff options
author | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2010-10-08 18:52:29 +0000 |
---|---|---|
committer | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2010-10-08 18:52:29 +0000 |
commit | f52f784bb300ec0acbd6c6bd9e6c3e5b435c4a90 (patch) | |
tree | 957964a468245432abbd23cd06839898b64105ce /jedec.c | |
parent | 92c8b0cec2ed06db9c24c4d93cf38a596edf23ab (diff) | |
download | ast2050-flashrom-f52f784bb300ec0acbd6c6bd9e6c3e5b435c4a90.zip ast2050-flashrom-f52f784bb300ec0acbd6c6bd9e6c3e5b435c4a90.tar.gz |
Move implicit erase out of chip drivers
Flashrom had an implicit erase-on-write for most flash chip and
programmer drivers, but it was not entirely consistent.
Some drivers had their own hand-rolled partial update functionality
which made handling partial updates from generic code impossible.
Move implicit erase out of chip drivers, and kill some dead erase
functions at the same time. A full chip erase is now performed in the
generic code for all flash chips on write, and after that the whole chip
is written.
Corresponding to flashrom svn r1206.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
Diffstat (limited to 'jedec.c')
-rw-r--r-- | jedec.c | 11 |
1 files changed, 0 insertions, 11 deletions
@@ -402,11 +402,6 @@ int write_jedec(struct flashchip *flash, uint8_t *buf) mask = getaddrmask(flash); - if (erase_chip_jedec(flash)) { - msg_cerr("ERASE FAILED!\n"); - return -1; - } - msg_cinfo("Programming page: "); for (i = 0; i < total_size / page_size; i++) { msg_cinfo("%04d at address: 0x%08x", i, i * page_size); @@ -429,12 +424,6 @@ int write_jedec_1(struct flashchip *flash, uint8_t * buf) mask = getaddrmask(flash); - programmer_delay(10); - if (erase_flash(flash)) { - msg_cerr("ERASE FAILED!\n"); - return -1; - } - msg_cinfo("Programming page: "); for (i = 0; i < flash->total_size; i++) { if ((i & 0x3) == 0) |