mirror of
https://review.coreboot.org/flashrom.git
synced 2025-07-01 14:11:15 +02:00
Replace remaining explicit erases in SPI programmer drivers with auto-erases
Some SPI chip drivers and the generic 1-byte SPI chip write functions didn't include the automatic erase present in other chip drivers. Since the majority is definitely auto-erase, change the remaining explicit-erase cases to be auto-erase as well. Corresponding to flashrom svn r673. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Carlos Arnau Perez <cemede@gmail.com>
This commit is contained in:
@ -45,12 +45,14 @@ int sb600_spi_read(struct flashchip *flash, uint8_t *buf, int start, int len)
|
||||
return spi_read_chunked(flash, buf, start, len, 8);
|
||||
}
|
||||
|
||||
/* FIXME: SB600 can write 5 bytes per transaction. */
|
||||
int sb600_spi_write_1(struct flashchip *flash, uint8_t *buf)
|
||||
{
|
||||
int rc = 0, i;
|
||||
int total_size = flash->total_size * 1024;
|
||||
int result;
|
||||
|
||||
spi_disable_blockprotect();
|
||||
/* Erase first */
|
||||
printf("Erasing flash before programming... ");
|
||||
if (flash->erase(flash)) {
|
||||
@ -61,7 +63,6 @@ int sb600_spi_write_1(struct flashchip *flash, uint8_t *buf)
|
||||
|
||||
printf("Programming flash");
|
||||
for (i = 0; i < total_size; i++, buf++) {
|
||||
spi_disable_blockprotect();
|
||||
result = spi_byte_program(i, *buf);
|
||||
/* wait program complete. */
|
||||
if (i % 0x8000 == 0)
|
||||
|
Reference in New Issue
Block a user