1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-06-30 21:52:36 +02:00

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>
This commit is contained in:
Carl-Daniel Hailfinger
2010-10-08 18:52:29 +00:00
parent 92c8b0cec2
commit f52f784bb3
12 changed files with 97 additions and 183 deletions

View File

@ -122,12 +122,6 @@ int write_28sf040(struct flashchip *flash, uint8_t *buf)
msg_cinfo("Programming page: ");
for (i = 0; i < total_size / page_size; i++) {
/* erase the page before programming */
if (erase_sector_28sf040(flash, i * page_size, page_size)) {
msg_cerr("ERASE FAILED!\n");
return -1;
}
/* write to the sector */
msg_cinfo("%04d at address: 0x%08x", i, i * page_size);
write_sector_28sf040(bios, buf + i * page_size,