1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-04-26 22:52:34 +02:00

flashchips: Add support for IS25WP016

Tested reading, writing and erasing using `linux_spi` programmer
on Raspberry Pi CM4.

Datasheet: https://web.archive.org/web/20221129211027/https://www.issi.com/WW/pdf/25LP-WP016D.pdf

Change-Id: I2b8caea229ffda72f1b04183c31715faccb64ad5
Signed-off-by: Alex Mikhalev <alex@corvus-robotics.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/70140
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Alex Mikhalev 2022-11-29 11:28:11 -08:00 committed by Anastasia Klimchuk
parent 104503375d
commit 1c22de20ea
2 changed files with 43 additions and 0 deletions

View File

@ -7643,6 +7643,48 @@ const struct flashchip flashchips[] = {
.voltage = {2300, 3600},
},
{
.vendor = "ISSI",
.name = "IS25WP016",
.bustype = BUS_SPI,
.manufacture_id = ISSI_ID_SPI,
.model_id = ISSI_IS25WP016,
.total_size = 2048,
.page_size = 256,
/* OTP: 1024B total; read 0x48; write 0x42 */
/* QPI enable 0x35, disable 0xF5 */
.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, 512} },
.block_erase = SPI_BLOCK_ERASE_20,
}, {
.eraseblocks = { {4 * 1024, 512} },
.block_erase = SPI_BLOCK_ERASE_D7,
}, {
.eraseblocks = { {32 * 1024, 64} },
.block_erase = SPI_BLOCK_ERASE_52,
}, {
.eraseblocks = { {64 * 1024, 32} },
.block_erase = SPI_BLOCK_ERASE_D8,
}, {
.eraseblocks = { {2 * 1024 * 1024, 1} },
.block_erase = SPI_BLOCK_ERASE_60,
}, {
.eraseblocks = { {2 * 1024 * 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 = "IS25WP032",

View File

@ -476,6 +476,7 @@
#define ISSI_IS25LP064 0x6017
#define ISSI_IS25LP128 0x6018
#define ISSI_IS25LP256 0x6019
#define ISSI_IS25WP016 0x7015
#define ISSI_IS25WP032 0x7016
#define ISSI_IS25WP064 0x7017
#define ISSI_IS25WP128 0x7018