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>
diff --git a/sb600spi.c b/sb600spi.c
index 5f2cf98..c853f42 100644
--- a/sb600spi.c
+++ b/sb600spi.c
@@ -45,12 +45,14 @@
 	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 @@
 
 	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)