diff --git a/flash.h b/flash.h index 048f7440f0d55847f5ee78ecf2becc3e4a9c26a4..dc30f717cf15dc5ef5667701472b59cb4e7fff2b 100644 --- a/flash.h +++ b/flash.h @@ -165,6 +165,14 @@ extern struct flashchip flashchips[]; #define SHARP_ID 0xB0 /* Sharp */ #define SHARP_LHF00L04 0xCF +/* + * Spansion was previously a joint venture of AMD and Fujitsu. + * S25 chips are SPI. The first device ID byte is memory type and + * the second device ID byte is memory capacity. + */ +#define SPANSION_ID 0x01 /* Spansion */ +#define SPANSION_S25FL016A 0x0214 + /* * SST25 chips are SPI, first byte of device ID is memory type, second * byte of device ID is related to log(bitsize) at least for some chips. diff --git a/flashchips.c b/flashchips.c index 99bc08646cc72246c4d4120c7f3e13fc702ad95c..964591ff5049d15b91085cce851e46f2d9164ea5 100644 --- a/flashchips.c +++ b/flashchips.c @@ -56,6 +56,8 @@ struct flashchip flashchips[] = { probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write, generic_spi_chip_read}, {"MX25L3205", MX_ID, MX_25L3205, 4096, 256, probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write, generic_spi_chip_read}, + {"S25FL016A", SPANSION_ID, SPANSION_S25FL016A, 2048, 256, + probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write, generic_spi_chip_read}, {"SST25VF040B", SST_ID, SST_25VF040B, 512, 256, probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write, generic_spi_chip_read}, {"SST25VF016B", SST_ID, SST_25VF016B, 2048, 256,