diff -ur orig/flashrom-0.9.9/flashchips.c flashrom-0.9.9/flashchips.c --- orig/flashrom-0.9.9/flashchips.c 2016-03-13 16:16:30.000000000 +0100 +++ flashrom-0.9.9/flashchips.c 2017-11-06 13:48:16.492818193 +0100 @@ -33,7 +33,6 @@ * alphabetically sorted. Within families keep them in order of density. */ const struct flashchip flashchips[] = { - /* * .vendor = Vendor name * .name = Chip name @@ -16060,6 +16059,41 @@ .read = NULL, }, + { + .vendor = "FMD", /*http://famousconnections.eu/wp-content/uploads/2017/10/FT25H04.pdf*/ + .name = "FT25H04", + .bustype = BUS_SPI, + .manufacture_id = FMD_ID, + .model_id = FMD_FT25H04, + .total_size = 512, + .page_size = 256, + .feature_bits = FEATURE_WRSR_WREN, + .tested = TEST_UNTESTED, + .probe = probe_spi_rdid, + .probe_timing = TIMING_ZERO, + .block_erasers = + { + { + .eraseblocks = { {4 * 1024, 128} }, + .block_erase = spi_block_erase_20, + }, { + .eraseblocks = { {64 * 1024, 8} }, + .block_erase = spi_block_erase_d8, + }, { + .eraseblocks = { {512 * 1024, 1} }, + .block_erase = spi_block_erase_60, + }, { + .eraseblocks = { {512 * 1024, 1} }, + .block_erase = spi_block_erase_c7, + } + }, + .printlock = spi_prettyprint_status_register_bp2_srwd, + .unlock = spi_disable_blockprotect_bp2_srwd, + .write = spi_chip_write_256, + .read = spi_chip_read, /* Fast read (0x0B) and multi I/O supported */ + .voltage = {2700, 3600}, + }, + { .vendor = "Generic", .name = "unknown SPI chip (RDID)", @@ -16086,6 +16120,8 @@ .write = NULL, }, + + {0} }; diff -ur orig/flashrom-0.9.9/flashchips.h flashrom-0.9.9/flashchips.h --- orig/flashrom-0.9.9/flashchips.h 2016-03-06 15:33:49.000000000 +0100 +++ flashrom-0.9.9/flashchips.h 2017-11-06 13:02:49.858667319 +0100 @@ -40,6 +40,7 @@ #define PROGMANUF_ID 0xFFFE /* dummy ID for opaque chips behind a programmer */ #define PROGDEV_ID 0x01 /* dummy ID for opaque chips behind a programmer */ + #define ALLIANCE_ID 0x52 /* Alliance Semiconductor */ #define ALLIANCE_AS29F002B 0x34 #define ALLIANCE_AS29F002T 0xB0 @@ -950,4 +951,7 @@ #define WINBOND_W49V002A 0xB0 #define WINBOND_W49V002FA 0x32 +#define FMD_ID 0x0E /* Fremont Micro Devices */ +#define FMD_FT25H04 0x4013 + #endif /* !FLASHCHIPS_H */