From 86fc9cf7ab221bc54ef6f10252e296fc2d7a22d2 Mon Sep 17 00:00:00 2001 From: Alan Green Date: Mon, 26 Aug 2019 15:02:12 +1000 Subject: flashchips.c: Add GD25Q256D from downstream Take definition of GD25Q256D from ChromiumOS repository. This chip was added in `commit 0c38355c` by dlaurie@google.com 2019-03-17. Signed-off-by: Alan Green Change-Id: I79d4ed48aa9126a8a6ce455a9564451346195b8f Reviewed-on: https://review.coreboot.org/c/flashrom/+/35480 Tested-by: build bot (Jenkins) Reviewed-by: Edward O'Callaghan --- flashchips.c | 38 ++++++++++++++++++++++++++++++++++++++ flashchips.h | 1 + 2 files changed, 39 insertions(+) diff --git a/flashchips.c b/flashchips.c index 3994c93cf..e6215a0c3 100644 --- a/flashchips.c +++ b/flashchips.c @@ -6274,6 +6274,44 @@ const struct flashchip flashchips[] = { .voltage = {2700, 3600}, }, + { + .vendor = "GigaDevice", + .name = "GD25Q256D", + .bustype = BUS_SPI, + .manufacture_id = GIGADEVICE_ID, + .model_id = GIGADEVICE_GD25Q256D, + .total_size = 32768, + .page_size = 256, + .feature_bits = FEATURE_WRSR_WREN | FEATURE_OTP | FEATURE_4BA_WREN, + .tested = TEST_UNTESTED, + .probe = probe_spi_rdid, + .probe_timing = TIMING_ZERO, + .block_erasers = + { + { + .eraseblocks = { {4 * 1024, 8192} }, + .block_erase = spi_block_erase_20, + }, { + .eraseblocks = { {32 * 1024, 1024} }, + .block_erase = spi_block_erase_52, + }, { + .eraseblocks = { {64 * 1024, 512} }, + .block_erase = spi_block_erase_d8, + }, { + .eraseblocks = { {32 * 1024 * 1024, 1} }, + .block_erase = spi_block_erase_60, + }, { + .eraseblocks = { {32 * 1024 * 1024, 1} }, + .block_erase = spi_block_erase_c7, + } + }, + .printlock = spi_prettyprint_status_register_bp3_srwd, + .unlock = spi_disable_blockprotect, + .write = spi_chip_write_256, + .read = spi_chip_read, + .voltage = {2700, 3600}, + }, + { .vendor = "GigaDevice", .name = "GD25Q32(B)", diff --git a/flashchips.h b/flashchips.h index 7b8bf04ed..c4b863d1b 100644 --- a/flashchips.h +++ b/flashchips.h @@ -372,6 +372,7 @@ #define GIGADEVICE_GD25Q32 0x4016 /* Same as GD25Q32B */ #define GIGADEVICE_GD25Q64 0x4017 /* Same as GD25Q64B */ #define GIGADEVICE_GD25Q128 0x4018 /* GD25Q128B and GD25Q128C only, can be distinguished by SFDP */ +#define GIGADEVICE_GD25Q256D 0x4019 #define GIGADEVICE_GD25VQ21B 0x4212 #define GIGADEVICE_GD25VQ41B 0x4213 /* Same as GD25VQ40C, can be distinguished by SFDP */ #define GIGADEVICE_GD25VQ80C 0x4214 -- cgit v1.2.3