diff options
author | Idwer Vollering <vidwer@gmail.com> | 2010-12-26 23:55:12 +0000 |
---|---|---|
committer | Michael Karcher <flashrom@mkarcher.dialup.fu-berlin.de> | 2010-12-26 23:55:12 +0000 |
commit | ecc67072b63430877e160da628f69a2ef2f34735 (patch) | |
tree | 69685a03cdb842eecd5c89b12cbfc425f70b4627 | |
parent | 22e0532caf883b84743c80c4dce24f2ef1fcecae (diff) | |
download | ast2050-flashrom-ecc67072b63430877e160da628f69a2ef2f34735.zip ast2050-flashrom-ecc67072b63430877e160da628f69a2ef2f34735.tar.gz |
Enable unlocking (erasing/writing) W39V040FB chips
Add code for the unlocking (erasing/writing) of Winbond W39V040FB
chips, enabling erasing/writing this type of chip.
Corresponding to flashrom svn r1248.
Signed-off-by: Idwer Vollering <vidwer@gmail.com>
Acked-by: Michael Karcher <flashrom@mkarcher.dialup.fu-berlin.de>
-rw-r--r-- | chipdrivers.h | 1 | ||||
-rw-r--r-- | flashchips.c | 1 | ||||
-rw-r--r-- | w39.c | 10 |
3 files changed, 12 insertions, 0 deletions
diff --git a/chipdrivers.h b/chipdrivers.h index a65cb99..a6faf9f 100644 --- a/chipdrivers.h +++ b/chipdrivers.h @@ -119,6 +119,7 @@ int printlock_w39v040fc(struct flashchip *flash); int printlock_w39v080a(struct flashchip *flash); int printlock_w39v080fa(struct flashchip *flash); int printlock_w39v080fa_dual(struct flashchip *flash); +int unlock_w39v040fb(struct flashchip *flash); int unlock_w39v080fa(struct flashchip *flash); /* w29ee011.c */ diff --git a/flashchips.c b/flashchips.c index 8082160..b6dff6c 100644 --- a/flashchips.c +++ b/flashchips.c @@ -7706,6 +7706,7 @@ struct flashchip flashchips[] = { } }, .printlock = printlock_w39v040fb, + .unlock = unlock_w39v040fb, .write = write_jedec_1, .read = read_memmapped, }, @@ -244,6 +244,16 @@ int printlock_w39v080fa_dual(struct flashchip *flash) return -1; } +int unlock_w39v040fb(struct flashchip *flash) +{ + if (unlock_w39_fwh(flash)) + return -1; + if (printlock_w39_common(flash, 0x7fff2)) + return -1; + + return 0; +} + int unlock_w39v080fa(struct flashchip *flash) { if (unlock_w39_fwh(flash)) |