summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSean Nelson <audiohacked@gmail.com>2009-12-17 04:22:40 +0000
committerCarl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>2009-12-17 04:22:40 +0000
commitc12fc71f74530902c04ea3a2c158d872d2b4ffea (patch)
tree66e4f1e680d327f72cb10ec350aaced0dbe9c62a
parentd3abc651bcc5565b708e157df0864d11508b7b58 (diff)
downloadast2050-flashrom-c12fc71f74530902c04ea3a2c158d872d2b4ffea.zip
ast2050-flashrom-c12fc71f74530902c04ea3a2c158d872d2b4ffea.tar.gz
Skip all delays in probe_jedec() if probe_delay is 0
Probe_jedec() checks the delay value and issues programmer_delay based on the value except for delays between single chip_writeb. If a chip has zero probe_delay, delays between chip_writeb should be skipped as well. Corresponding to flashrom svn r805. Signed-off-by: Sean Nelson <audiohacked@gmail.com> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
-rw-r--r--jedec.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/jedec.c b/jedec.c
index 83a0b83..8ba7b06 100644
--- a/jedec.c
+++ b/jedec.c
@@ -96,11 +96,14 @@ int probe_jedec(struct flashchip *flash)
/* Issue JEDEC Product ID Entry command */
chip_writeb(0xAA, bios + 0x5555);
- programmer_delay(10);
+ if (probe_timing_enter)
+ programmer_delay(10);
chip_writeb(0x55, bios + 0x2AAA);
- programmer_delay(10);
+ if (probe_timing_enter)
+ programmer_delay(10);
chip_writeb(0x90, bios + 0x5555);
- programmer_delay(probe_timing_enter);
+ if (probe_timing_enter)
+ programmer_delay(probe_timing_enter);
/* Read product ID */
id1 = chip_readb(bios);
@@ -122,11 +125,14 @@ int probe_jedec(struct flashchip *flash)
/* Issue JEDEC Product ID Exit command */
chip_writeb(0xAA, bios + 0x5555);
- programmer_delay(10);
+ if (probe_timing_exit)
+ programmer_delay(10);
chip_writeb(0x55, bios + 0x2AAA);
- programmer_delay(10);
+ if (probe_timing_exit)
+ programmer_delay(10);
chip_writeb(0xF0, bios + 0x5555);
- programmer_delay(probe_timing_exit);
+ if (probe_timing_exit)
+ programmer_delay(probe_timing_exit);
printf_debug("%s: id1 0x%02x, id2 0x%02x", __func__, largeid1, largeid2);
if (!oddparity(id1))
OpenPOWER on IntegriCloud