diff options
author | Bryan Freed <bfreed@chromium.org> | 2012-09-17 00:05:44 +0000 |
---|---|---|
committer | Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> | 2012-09-17 00:05:44 +0000 |
commit | 5bfef9d3211cc8a6d3ea3fae058c704f8ace4368 (patch) | |
tree | 491b79617c273958e51ee2aa2a7603c8758d35e8 | |
parent | 33366a012ce15042ec2ea22af7be1757b716a980 (diff) | |
download | flashrom-5bfef9d3211cc8a6d3ea3fae058c704f8ace4368.tar.gz flashrom-5bfef9d3211cc8a6d3ea3fae058c704f8ace4368.tar.bz2 flashrom-5bfef9d3211cc8a6d3ea3fae058c704f8ace4368.zip |
Add support for GigaDevice GD25LQ32
This is the low power version (vendor,device = 0xc8,0x6016) of
GD25Q32 (0xc8,0x4016) which matches that of W25Q32 (0xef,0x4016) and
W25Q32DW (0xef,0x6016). All their datasheets look pretty much the
same with respect to commands, erase blocks, etc.
Stolen from chromiumos:
http://git.chromium.org/gitweb/?p=chromiumos/third_party/flashrom.git;a=commitdiff;h=9a0051f0ba0b67af6f08e052c31cba3e9dbbbdbf
Corresponding to flashrom svn r1598.
Signed-off-by: Bryan Freed <bfreed@chromium.org>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
-rw-r--r-- | flashchips.c | 37 | ||||
-rw-r--r-- | flashchips.h | 1 |
2 files changed, 38 insertions, 0 deletions
diff --git a/flashchips.c b/flashchips.c index a3f0520a..11753337 100644 --- a/flashchips.c +++ b/flashchips.c @@ -4240,6 +4240,43 @@ const struct flashchip flashchips[] = { }, { + .vendor = "GigaDevice", + .name = "GD25LQ32", + .bustype = BUS_SPI, + .manufacture_id = GIGADEVICE_ID, + .model_id = GIGADEVICE_GD25LQ32, + .total_size = 4096, + .page_size = 256, + .feature_bits = FEATURE_WRSR_WREN, + .tested = TEST_OK_PREW, + .probe = probe_spi_rdid, + .probe_timing = TIMING_ZERO, + .block_erasers = + { + { + .eraseblocks = { {4 * 1024, 1024} }, + .block_erase = spi_block_erase_20, + }, { + .eraseblocks = { {32 * 1024, 128} }, + .block_erase = spi_block_erase_52, + }, { + .eraseblocks = { {64 * 1024, 64} }, + .block_erase = spi_block_erase_d8, + }, { + .eraseblocks = { {4 * 1024 * 1024, 1} }, + .block_erase = spi_block_erase_60, + }, { + .eraseblocks = { {4 * 1024 * 1024, 1} }, + .block_erase = spi_block_erase_c7, + } + }, + .unlock = spi_disable_blockprotect, + .write = spi_chip_write_256, + .read = spi_chip_read, + .voltage = {1700, 1950}, + }, + + { .vendor = "Hyundai", .name = "HY29F002T", .bustype = BUS_PARALLEL, diff --git a/flashchips.h b/flashchips.h index b3125875..8e51d351 100644 --- a/flashchips.h +++ b/flashchips.h @@ -305,6 +305,7 @@ #define GIGADEVICE_GD25Q32 0x4016 #define GIGADEVICE_GD25Q64 0x4017 #define GIGADEVICE_GD25Q128 0x4018 +#define GIGADEVICE_GD25LQ32 0x6016 #define HYUNDAI_ID 0xAD /* Hyundai */ #define HYUNDAI_HY29F400T 0x23 /* Same as HY29F400AT */ |