summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVasily Galkin <galkin-vv@ya.ru>2021-10-07 14:48:20 +0300
committerAnastasia Klimchuk <aklm@chromium.org>2023-08-30 08:53:40 +0000
commit86907148c6a02142564d551ebe76aad81612cffd (patch)
tree09432ddf8c64e215194586712df2c392eeeca79d
parentbeaf9cd90b96d06f5a724bce42d3f8e4df58ea14 (diff)
downloadflashrom-86907148c6a02142564d551ebe76aad81612cffd.tar.gz
flashrom-86907148c6a02142564d551ebe76aad81612cffd.tar.bz2
flashrom-86907148c6a02142564d551ebe76aad81612cffd.zip
flashchips.c: Add support for IS25WQ040
Based on https://github.com/flashrom/flashrom/pull/204 squashed with fixes of IS25WQ040 size: it is 4Mbits, not 4MBytes, see https://www.issi.com/WW/pdf/25WQ020-040.pdf Tested read, write and erase with ft2232_spi-based "Tigard" programmer. Change-Id: I072c6b94d7931637d1c2721c3316205f2d57320e Signed-off-by: Roman Stingler <roman.stingler@gmail.com> Signed-off-by: Vasily Galkin <galkin-vv@ya.ru> Reviewed-on: https://review.coreboot.org/c/flashrom/+/58179 Reviewed-by: Anastasia Klimchuk <aklm@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
-rw-r--r--flashchips.c40
-rw-r--r--include/flashchips.h1
2 files changed, 41 insertions, 0 deletions
diff --git a/flashchips.c b/flashchips.c
index 6920c03c9..ce68e9508 100644
--- a/flashchips.c
+++ b/flashchips.c
@@ -8109,6 +8109,46 @@ const struct flashchip flashchips[] = {
{
.vendor = "ISSI",
+ .name = "IS25WQ040",
+ .bustype = BUS_SPI,
+ .manufacture_id = ISSI_ID_SPI,
+ .model_id = ISSI_IS25WQ040,
+ .total_size = 512,
+ .page_size = 256,
+ .feature_bits = FEATURE_WRSR_WREN | FEATURE_OTP | FEATURE_QPI,
+ .tested = TEST_OK_PREW,
+ .probe = PROBE_SPI_RDID,
+ .probe_timing = TIMING_ZERO,
+ .block_erasers =
+ {
+ {
+ .eraseblocks = { {4 * 1024, 128} },
+ .block_erase = SPI_BLOCK_ERASE_20,
+ }, {
+ .eraseblocks = { {4 * 1024, 128} },
+ .block_erase = SPI_BLOCK_ERASE_D7,
+ }, {
+ .eraseblocks = { {32 * 1024, 16} },
+ .block_erase = SPI_BLOCK_ERASE_52,
+ }, {
+ .eraseblocks = { {64 * 1024, 8} },
+ .block_erase = SPI_BLOCK_ERASE_D8,
+ }, {
+ .eraseblocks = { {512 * 1024, 1} },
+ .block_erase = SPI_BLOCK_ERASE_60,
+ }, {
+ .eraseblocks = { {512 * 1024, 1} },
+ .block_erase = SPI_BLOCK_ERASE_C7,
+ }
+ },
+ .unlock = SPI_DISABLE_BLOCKPROTECT,
+ .write = SPI_CHIP_WRITE256,
+ .read = SPI_CHIP_READ,
+ .voltage = {1650, 1950},
+ },
+
+ {
+ .vendor = "ISSI",
.name = "IS29GL064B",
.bustype = BUS_PARALLEL,
.manufacture_id = ISSI_ID,
diff --git a/include/flashchips.h b/include/flashchips.h
index e07a48dcc..6e191eb1d 100644
--- a/include/flashchips.h
+++ b/include/flashchips.h
@@ -487,6 +487,7 @@
#define ISSI_IS25WP080 0x7014
#define ISSI_IS25WP128 0x7018
#define ISSI_IS25WP256 0x7019
+#define ISSI_IS25WQ040 0x1253
#define ISSI_PMC_IS29GL032B 0xF9
#define ISSI_PMC_IS29GL032T 0xF6
#define ISSI_PMC_IS29GL064B 0x7E1000