Fix bug in probe_28sf040() causing flash corruption on SST49LF160C verify

The first byte of the flash chip was read at the start of the function
and later written back to address 0 if the flash chip was not identified
as SST28SF040, which means most of the time. This write caused corruption
of flash contents when verifying a SST49LF160C part.

Corresponding to flashrom svn r126 and coreboot v2 svn r2744.

Signed-off-by: Ed Swierk <eswierk@arastra.com>
Acked-by: Peter Stuge <peter@stuge.se>
diff --git a/sst28sf040.c b/sst28sf040.c
index f2d8167..c8f71f8 100644
--- a/sst28sf040.c
+++ b/sst28sf040.c
@@ -106,10 +106,7 @@
 int probe_28sf040(struct flashchip *flash)
 {
 	volatile uint8_t *bios = flash->virtual_memory;
-	uint8_t id1, id2, tmp;
-
-	/* save the value at the beginning of the Flash */
-	tmp = *bios;
+	uint8_t id1, id2;
 
 	*bios = RESET;
 	myusec_delay(10);
@@ -127,8 +124,6 @@
 	if (id1 == flash->manufacture_id && id2 == flash->model_id)
 		return 1;
 
-	/* if there is no SST28SF040, restore the original value */
-	*bios = tmp;
 	return 0;
 }