Add support for two-byte RES probes
Some chips implement the RES (0xab) opcode, but they use a non-standard
two byte response instead of the usual one byte response. A two-byte
response has the accuracy of REMS and RDID, so don't check for REMS/RDID
availability before running a two-byte RES.
Corresponding to flashrom svn r1017.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
diff --git a/flashchips.c b/flashchips.c
index b1af60a..45f4076 100644
--- a/flashchips.c
+++ b/flashchips.c
@@ -4665,19 +4665,19 @@
/* The ST M25P05 is a bit of a problem. It has the same ID as the
* ST M25P05-A in RES mode, but supports only 128 byte writes instead
- * of 256 byte writes. We rely heavily on the fact that probe_spi_res
+ * of 256 byte writes. We rely heavily on the fact that probe_spi_res1
* only is successful if RDID does not work.
*/
{
.vendor = "ST",
.name = "M25P05.RES",
.bustype = CHIP_BUSTYPE_SPI,
- .manufacture_id = ST_ID,
+ .manufacture_id = 0, /* Not used. */
.model_id = ST_M25P05_RES,
.total_size = 64,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_res,
+ .probe = probe_spi_res1,
.probe_timing = TIMING_ZERO,
.block_erasers =
{
@@ -4723,12 +4723,12 @@
.vendor = "ST",
.name = "M25P10.RES",
.bustype = CHIP_BUSTYPE_SPI,
- .manufacture_id = ST_ID,
+ .manufacture_id = 0, /* Not used. */
.model_id = ST_M25P10_RES,
.total_size = 128,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_res,
+ .probe = probe_spi_res1,
.probe_timing = TIMING_ZERO,
.block_erasers =
{
@@ -4798,12 +4798,12 @@
.vendor = "ST",
.name = "M25P40-old",
.bustype = CHIP_BUSTYPE_SPI,
- .manufacture_id = ST_ID,
+ .manufacture_id = 0, /* Not used. */
.model_id = ST_M25P40_RES,
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_res,
+ .probe = probe_spi_res1,
.probe_timing = TIMING_ZERO,
.block_erasers =
{