summaryrefslogtreecommitdiffstats
path: root/flashchips.c
diff options
context:
space:
mode:
authorStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>2013-06-28 21:28:27 +0000
committerStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>2013-06-28 21:28:27 +0000
commit278ba6e96766f1d17202642a720f4e4eac007c74 (patch)
treef0520da2262238adda4fb28a94fda700722c5bf4 /flashchips.c
parent682122bce7714e285d196be09d4c97666458c487 (diff)
downloadast2050-flashrom-278ba6e96766f1d17202642a720f4e4eac007c74.zip
ast2050-flashrom-278ba6e96766f1d17202642a720f4e4eac007c74.tar.gz
Introduce additional SPI status register helpers
- spi_prettyprint_status_register_default_welwip(): It just prettyprints the plain hex value and the welwip bits. - spi_prettyprint_status_register_default_bp4(): Prints the hex value, welwip, bp0-5 and srwd bits. - spi_disable_blockprotect_bp2_srwd(), - spi_disable_blockprotect_bp3_srwd() and spi_disable_blockprotect_bp4_srwd(): Three new common block unprotection functions for the frequent cases where there is a status register lock bit at bit #7 and some block protection bits at bits #2-#4, #2-#5 and #2-#6 respectively. Corresponding to flashrom svn r1681. Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Diffstat (limited to 'flashchips.c')
-rw-r--r--flashchips.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/flashchips.c b/flashchips.c
index d188617..bbd61ff 100644
--- a/flashchips.c
+++ b/flashchips.c
@@ -1849,7 +1849,8 @@ const struct flashchip flashchips[] = {
}
},
.printlock = spi_prettyprint_status_register_at25f4096,
- .unlock = spi_disable_blockprotect_at25f4096,
+ /* "Bits 5-6 are 0s when device is not in an internal write cycle." Better leave them alone: */
+ .unlock = spi_disable_blockprotect_bp2_srwd,
.write = spi_chip_write_256,
.read = spi_chip_read,
.voltage = {2700, 3600},
@@ -4473,7 +4474,8 @@ const struct flashchip flashchips[] = {
.block_erase = spi_block_erase_c7,
}
},
- .printlock = spi_prettyprint_status_register_plain, /* TODO: improve */
+ .printlock = spi_prettyprint_status_register_default_bp4,
+ .unlock = spi_disable_blockprotect_bp4_srwd, /* TODO: 2nd status reg (read with 0x35) */
.unlock = spi_disable_blockprotect,
.write = spi_chip_write_256,
.read = spi_chip_read,
OpenPOWER on IntegriCloud