diff options
author | Anton Samsonov <Anton.V.Samsonov@mcst.ru> | 2024-03-21 14:41:02 +0300 |
---|---|---|
committer | Anastasia Klimchuk <aklm@chromium.org> | 2024-03-26 05:34:52 +0000 |
commit | b65f347377b2f6166bd6af09f73d67f41af3a92b (patch) | |
tree | a982a27251f295c4060aa54f7f6f5c6ccdc432d5 | |
parent | 70e1a41eaddea9f81dd674e333a985ecac2c12f8 (diff) | |
download | flashrom-b65f347377b2f6166bd6af09f73d67f41af3a92b.tar.gz flashrom-b65f347377b2f6166bd6af09f73d67f41af3a92b.tar.bz2 flashrom-b65f347377b2f6166bd6af09f73d67f41af3a92b.zip |
flashchips: Add Zetta Device ZD25LQ128
Datasheet: http://www.zettadevice.com/uploads/files/163410630201e3483211247ac1.pdf
Tested probe, read, erase, write, verify on ZD25LQ128AWIG chips
using Linux SPI and DediProg SF100 programmers.
Renamed ZETTADEVICE_ macros to ZETTA_ to accomodate longer suffixes.
Change-Id: I5cb20158e81ab109f16958285b8787858efb4831
Signed-off-by: Anton Samsonov <devel@zxlab.ru>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/81392
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
-rw-r--r-- | flashchips.c | 46 | ||||
-rw-r--r-- | include/flashchips.h | 7 |
2 files changed, 46 insertions, 7 deletions
diff --git a/flashchips.c b/flashchips.c index 204f34ffb..74953d1bd 100644 --- a/flashchips.c +++ b/flashchips.c @@ -21593,8 +21593,8 @@ const struct flashchip flashchips[] = { .vendor = "Zetta Device", .name = "ZD25D20", .bustype = BUS_SPI, - .manufacture_id = ZETTADEVICE_ID, - .model_id = ZETTADEVICE_ZD25D20, + .manufacture_id = ZETTA_ID, + .model_id = ZETTA_ZD25D20, .total_size = 256, .page_size = 256, .feature_bits = FEATURE_WRSR_WREN, @@ -21631,8 +21631,8 @@ const struct flashchip flashchips[] = { .vendor = "Zetta Device", .name = "ZD25D40", .bustype = BUS_SPI, - .manufacture_id = ZETTADEVICE_ID, - .model_id = ZETTADEVICE_ZD25D40, + .manufacture_id = ZETTA_ID, + .model_id = ZETTA_ZD25D40, .total_size = 512, .page_size = 256, .feature_bits = FEATURE_WRSR_WREN, @@ -21666,6 +21666,44 @@ const struct flashchip flashchips[] = { }, { + .vendor = "Zetta Device", + .name = "ZD25LQ128", + .bustype = BUS_SPI, + .manufacture_id = ZETTA_ID, + .model_id = ZETTA_ZD25LQ128_REMS, + .total_size = 16384, + .page_size = 256, + .feature_bits = FEATURE_WRSR_WREN, + .tested = TEST_OK_PREW, + .probe = PROBE_SPI_REMS, + .probe_timing = TIMING_ZERO, + .block_erasers = + { + { + .eraseblocks = { {4 * 1024, 4096} }, + .block_erase = SPI_BLOCK_ERASE_20, + }, { + .eraseblocks = { {32 * 1024, 512} }, + .block_erase = SPI_BLOCK_ERASE_52, + }, { + .eraseblocks = { {64 * 1024, 256} }, + .block_erase = SPI_BLOCK_ERASE_D8, + }, { + .eraseblocks = { {16 * 1024 * 1024, 1} }, + .block_erase = SPI_BLOCK_ERASE_60, + }, { + .eraseblocks = { {16 * 1024 * 1024, 1} }, + .block_erase = SPI_BLOCK_ERASE_C7, + } + }, + .printlock = SPI_PRETTYPRINT_STATUS_REGISTER_PLAIN, /* TODO: improve */ + .unlock = SPI_DISABLE_BLOCKPROTECT, + .write = SPI_CHIP_WRITE256, + .read = SPI_CHIP_READ, + .voltage = {1650, 1950}, + }, + + { .vendor = "Unknown", .name = "SFDP-capable chip", .bustype = BUS_SPI, diff --git a/include/flashchips.h b/include/flashchips.h index d0a858b1f..932e458ac 100644 --- a/include/flashchips.h +++ b/include/flashchips.h @@ -1055,8 +1055,9 @@ #define XTX_XT25F02E 0x4012 #define XTX_XT25F64B 0x4017 -#define ZETTADEVICE_ID 0xBA /* Zetta Device */ -#define ZETTADEVICE_ZD25D20 0x2012 -#define ZETTADEVICE_ZD25D40 0x2013 +#define ZETTA_ID 0xBA /* Zetta Device */ +#define ZETTA_ZD25D20 0x2012 +#define ZETTA_ZD25D40 0x2013 +#define ZETTA_ZD25LQ128_REMS 0x17 /* RDID = 0x4218 */ #endif /* !FLASHCHIPS_H */ |