[coreboot] [PATCH] flashrom: Group probe function together with associated IDs
Carl-Daniel Hailfinger
c-d.hailfinger.devel.2006 at gmx.net
Wed Apr 22 01:29:12 CEST 2009
Flashrom does not support any notion of multiple probe functions for the
same chip nor does it support multiple IDs for the same chip. For
external flasher support with a clean design, this has to be changed.
Group each probe function together with the associated IDs in the flash
chip description. They belong together.
The trick in this patch is to use an anonymous struct which allows the
chip-specific code to stay unchanged for now, while still keeping full
functionality.
Besides easing review, it also keeps the tree working and bisectable.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>
Index: flashrom-probe_grouping/flash.h
===================================================================
--- flashrom-probe_grouping/flash.h (Revision 4161)
+++ flashrom-probe_grouping/flash.h (Arbeitskopie)
@@ -98,8 +98,11 @@
* (including) the 4th bank of JEDEC JEP106W Standard Manufacturer's
* Identification code.
*/
+ struct {
uint32_t manufacture_id;
uint32_t model_id;
+ int (*probe) (struct flashchip *flash);
+ };
int total_size;
int page_size;
@@ -110,7 +113,6 @@
*/
uint32_t tested;
- int (*probe) (struct flashchip *flash);
int (*erase) (struct flashchip *flash);
int (*write) (struct flashchip *flash, uint8_t *buf);
int (*read) (struct flashchip *flash, uint8_t *buf);
Index: flashrom-probe_grouping/flashchips.c
===================================================================
--- flashrom-probe_grouping/flashchips.c (Revision 4161)
+++ flashrom-probe_grouping/flashchips.c (Arbeitskopie)
@@ -31,21 +31,33 @@
*/
struct flashchip flashchips[] = {
- /* Vendor, Chip, Vendor ID, Chip ID,
- * Total size (kB), Page size (B),
- * Test status,
- * Probe function, Erase function, Write function, Read function
+ /*
+ * .vendor = Vendor name
+ * .name = Chip name
+ * { Probe/ID tuple
+ * .manufacture_id = Manufacturer chip ID
+ * .model_id = Model chip ID
+ * .probe = Probe function
+ * },
+ * .total_size = Total size in (binary) kbytes
+ * .page_size = Page or eraseblock(?) size in bytes
+ * .tested = Test status
+ * .erase = Chip erase function
+ * .write = Chip write function
+ * .read = Chip read function
*/
{
.vendor = "AMD",
.name = "Am29F002(N)BB",
+ {
.manufacture_id = AMD_ID,
.model_id = AM_29F002BB,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_en29f002a,
},
@@ -53,12 +65,14 @@
{
.vendor = "AMD",
.name = "Am29F002(N)BT",
+ {
.manufacture_id = AMD_ID,
.model_id = AM_29F002BT,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_en29f002a,
},
@@ -66,12 +80,14 @@
{
.vendor = "AMD",
.name = "Am29F016D",
+ {
.manufacture_id = AMD_ID,
.model_id = AM_29F016D,
+ .probe = probe_29f040b,
+ },
.total_size = 2048,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_29f040b,
.erase = erase_29f040b,
.write = write_29f040b,
},
@@ -79,12 +95,14 @@
{
.vendor = "AMD",
.name = "Am29F040B",
+ {
.manufacture_id = AMD_ID,
.model_id = AM_29F040B,
+ .probe = probe_29f040b,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_29f040b,
.erase = erase_29f040b,
.write = write_29f040b,
},
@@ -92,12 +110,14 @@
{
.vendor = "AMD",
.name = "Am29F080B",
+ {
.manufacture_id = 0x01,
.model_id = 0xd5,
+ .probe = probe_jedec,
+ },
.total_size = 1024,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_29f040b,
.write = write_29f040b,
},
@@ -105,12 +125,14 @@
{
.vendor = "AMD",
.name = "Am29LV040B",
+ {
.manufacture_id = AMD_ID,
.model_id = AM_29LV040B,
+ .probe = probe_29f040b,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_29f040b,
.erase = erase_29f040b,
.write = write_29f040b,
},
@@ -118,12 +140,14 @@
{
.vendor = "AMD",
.name = "Am29LV081B",
+ {
.manufacture_id = 0x01,
.model_id = 0x38,
+ .probe = probe_29f040b,
+ },
.total_size = 1024,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_29f040b,
.erase = erase_29f040b,
.write = write_29f040b,
},
@@ -131,12 +155,14 @@
{
.vendor = "ASD",
.name = "AE49F2008",
+ {
.manufacture_id = ASD_ID,
.model_id = ASD_AE49F2008,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 128,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -144,12 +170,14 @@
{
.vendor = "Atmel",
.name = "AT25DF021",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_25DF021,
+ .probe = probe_spi_rdid,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -158,12 +186,14 @@
{
.vendor = "Atmel",
.name = "AT25DF041A",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_25DF041A,
+ .probe = probe_spi_rdid,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -172,12 +202,14 @@
{
.vendor = "Atmel",
.name = "AT25DF081",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_25DF081,
+ .probe = probe_spi_rdid,
+ },
.total_size = 1024,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -186,12 +218,14 @@
{
.vendor = "Atmel",
.name = "AT25DF161",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_25DF161,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -200,12 +234,14 @@
{
.vendor = "Atmel",
.name = "AT25DF321",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_25DF321,
+ .probe = probe_spi_rdid,
+ },
.total_size = 4096,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -214,12 +250,14 @@
{
.vendor = "Atmel",
.name = "AT25DF321A",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_25DF321A,
+ .probe = probe_spi_rdid,
+ },
.total_size = 4096,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -228,12 +266,14 @@
{
.vendor = "Atmel",
.name = "AT25DF641",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_25DF641,
+ .probe = probe_spi_rdid,
+ },
.total_size = 8192,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -242,12 +282,14 @@
{
.vendor = "Atmel",
.name = "AT25F512B",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_25F512B,
+ .probe = probe_spi_rdid,
+ },
.total_size = 64,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -256,12 +298,14 @@
{
.vendor = "Atmel",
.name = "AT25FS010",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_25FS010,
+ .probe = probe_spi_rdid,
+ },
.total_size = 128,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -270,12 +314,14 @@
{
.vendor = "Atmel",
.name = "AT25FS040",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_25FS040,
+ .probe = probe_spi_rdid,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -284,12 +330,14 @@
{
.vendor = "Atmel",
.name = "AT26DF041",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_26DF041,
+ .probe = probe_spi_rdid,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL /* Incompatible Page write */,
.read = spi_chip_read,
@@ -298,12 +346,14 @@
{
.vendor = "Atmel",
.name = "AT26DF081A",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_26DF081A,
+ .probe = probe_spi_rdid,
+ },
.total_size = 1024,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -312,12 +362,14 @@
{
.vendor = "Atmel",
.name = "AT26DF161",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_26DF161,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -326,12 +378,14 @@
{
.vendor = "Atmel",
.name = "AT26DF161A",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_26DF161A,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -341,12 +395,14 @@
/*{
.vendor = "Atmel",
.name = "AT26DF321",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_26DF321,
+ .probe = probe_spi_rdid,
+ },
.total_size = 4096,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -355,12 +411,14 @@
{
.vendor = "Atmel",
.name = "AT26F004",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_26F004,
+ .probe = probe_spi_rdid,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = NULL /* Incompatible Page write */,
.read = spi_chip_read,
@@ -369,12 +427,14 @@
{
.vendor = "Atmel",
.name = "AT29C020",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_29C020,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -382,12 +442,14 @@
{
.vendor = "Atmel",
.name = "AT29C040A",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_29C040A,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -395,12 +457,14 @@
{
.vendor = "Atmel",
.name = "AT45CS1282",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_45CS1282,
+ .probe = probe_spi_rdid,
+ },
.total_size = 16896 /* No power of two sizes */,
.page_size = 1056 /* No power of two sizes */,
.tested = TEST_BAD_READ,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL /* Incompatible Page write */,
.read = NULL /* Incompatible read */,
@@ -409,12 +473,14 @@
{
.vendor = "Atmel",
.name = "AT45DB011D",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_45DB011D,
+ .probe = probe_spi_rdid,
+ },
.total_size = 128 /* Size can only be determined from status register */,
.page_size = 256 /* Size can only be determined from status register */,
.tested = TEST_BAD_READ,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
.read = NULL,
@@ -423,12 +489,14 @@
{
.vendor = "Atmel",
.name = "AT45DB021D",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_45DB021D,
+ .probe = probe_spi_rdid,
+ },
.total_size = 256 /* Size can only be determined from status register */,
.page_size = 256 /* Size can only be determined from status register */,
.tested = TEST_BAD_READ,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
.read = NULL,
@@ -437,12 +505,14 @@
{
.vendor = "Atmel",
.name = "AT45DB041D",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_45DB041D,
+ .probe = probe_spi_rdid,
+ },
.total_size = 512 /* Size can only be determined from status register */,
.page_size = 256 /* Size can only be determined from status register */,
.tested = TEST_BAD_READ,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
.read = NULL,
@@ -451,12 +521,14 @@
{
.vendor = "Atmel",
.name = "AT45DB081D",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_45DB081D,
+ .probe = probe_spi_rdid,
+ },
.total_size = 1024 /* Size can only be determined from status register */,
.page_size = 256 /* Size can only be determined from status register */,
.tested = TEST_BAD_READ,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
.read = NULL,
@@ -465,12 +537,14 @@
{
.vendor = "Atmel",
.name = "AT45DB161D",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_45DB161D,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048 /* Size can only be determined from status register */,
.page_size = 512 /* Size can only be determined from status register */,
.tested = TEST_BAD_READ,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
.read = NULL,
@@ -479,12 +553,14 @@
{
.vendor = "Atmel",
.name = "AT45DB321C",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_45DB321C,
+ .probe = probe_spi_rdid,
+ },
.total_size = 4224 /* No power of two sizes */,
.page_size = 528 /* No power of two sizes */,
.tested = TEST_BAD_READ,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
.read = NULL /* Incompatible read */,
@@ -493,12 +569,14 @@
{
.vendor = "Atmel",
.name = "AT45DB321D",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_45DB321D,
+ .probe = probe_spi_rdid,
+ },
.total_size = 4096 /* Size can only be determined from status register */,
.page_size = 512 /* Size can only be determined from status register */,
.tested = TEST_BAD_READ,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
.read = NULL,
@@ -507,12 +585,14 @@
{
.vendor = "Atmel",
.name = "AT45DB642D",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_45DB642D,
+ .probe = probe_spi_rdid,
+ },
.total_size = 8192 /* Size can only be determined from status register */,
.page_size = 1024 /* Size can only be determined from status register */,
.tested = TEST_BAD_READ,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
.read = NULL,
@@ -521,12 +601,14 @@
{
.vendor = "Atmel",
.name = "AT49F002(N)",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_49F002N,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_49f002,
},
@@ -534,12 +616,14 @@
{
.vendor = "Atmel",
.name = "AT49F002(N)T",
+ {
.manufacture_id = ATMEL_ID,
.model_id = AT_49F002NT,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_49f002,
},
@@ -547,12 +631,14 @@
{
.vendor = "AMIC",
.name = "A25L40P",
+ {
.manufacture_id = AMIC_ID,
.model_id = AMIC_A25L40P,
+ .probe = probe_spi_rdid4,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid4,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -561,12 +647,14 @@
{
.vendor = "AMIC",
.name = "A29002B",
+ {
.manufacture_id = AMIC_ID_NOPREFIX,
.model_id = AMIC_A29002B,
+ .probe = probe_29f002,
+ },
.total_size = 256,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_29f002,
.erase = erase_29f002,
.write = write_29f002,
},
@@ -574,12 +662,14 @@
{
.vendor = "AMIC",
.name = "A29002T",
+ {
.manufacture_id = AMIC_ID_NOPREFIX,
.model_id = AMIC_A29002T,
+ .probe = probe_29f002,
+ },
.total_size = 256,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_29f002,
.erase = erase_29f002,
.write = write_29f002,
},
@@ -587,12 +677,14 @@
{
.vendor = "AMIC",
.name = "A29040B",
+ {
.manufacture_id = AMIC_ID_NOPREFIX,
.model_id = AMIC_A29040B,
+ .probe = probe_29f040b,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_OK_PR,
- .probe = probe_29f040b,
.erase = erase_29f040b,
.write = write_29f040b,
},
@@ -600,12 +692,14 @@
{
.vendor = "AMIC",
.name = "A49LF040A",
+ {
.manufacture_id = AMIC_ID_NOPREFIX,
.model_id = AMIC_A49LF040A,
+ .probe = probe_49fl00x,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_49fl00x,
.erase = erase_49fl00x,
.write = write_49fl00x,
},
@@ -613,12 +707,14 @@
{
.vendor = "EMST",
.name = "F49B002UA",
+ {
.manufacture_id = EMST_ID,
.model_id = EMST_F49B002UA,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 4096,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_49f002,
},
@@ -626,12 +722,14 @@
{
.vendor = "EON",
.name = "EN29F002(A)(N)B",
+ {
.manufacture_id = EON_ID,
.model_id = EN_29F002B,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_en29f002a,
},
@@ -639,12 +737,14 @@
{
.vendor = "EON",
.name = "EN29F002(A)(N)T",
+ {
.manufacture_id = EON_ID,
.model_id = EN_29F002T,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_en29f002a,
},
@@ -652,12 +752,14 @@
{
.vendor = "Fujitsu",
.name = "MBM29F004BC",
+ {
.manufacture_id = FUJITSU_ID,
.model_id = MBM29F004BC,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = NULL,
.write = NULL,
},
@@ -665,12 +767,14 @@
{
.vendor = "Fujitsu",
.name = "MBM29F004TC",
+ {
.manufacture_id = FUJITSU_ID,
.model_id = MBM29F004TC,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = NULL,
.write = NULL,
},
@@ -678,12 +782,14 @@
{
.vendor = "Fujitsu",
.name = "MBM29F400BC",
+ {
.manufacture_id = FUJITSU_ID,
.model_id = MBM29F400BC,
+ .probe = probe_m29f400bt,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_m29f400bt,
.erase = erase_m29f400bt,
.write = write_coreboot_m29f400bt,
},
@@ -691,12 +797,14 @@
{
.vendor = "Fujitsu",
.name = "MBM29F400TC",
+ {
.manufacture_id = FUJITSU_ID,
.model_id = MBM29F400TC,
+ .probe = probe_m29f400bt,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_m29f400bt,
.erase = erase_m29f400bt,
.write = write_coreboot_m29f400bt,
},
@@ -704,12 +812,14 @@
{
.vendor = "Intel",
.name = "82802AB",
+ {
.manufacture_id = INTEL_ID,
.model_id = 173,
+ .probe = probe_82802ab,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_82802ab,
.erase = erase_82802ab,
.write = write_82802ab,
},
@@ -717,12 +827,14 @@
{
.vendor = "Intel",
.name = "82802AC",
+ {
.manufacture_id = INTEL_ID,
.model_id = 172,
+ .probe = probe_82802ab,
+ },
.total_size = 1024,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_82802ab,
.erase = erase_82802ab,
.write = write_82802ab,
},
@@ -730,12 +842,14 @@
{
.vendor = "Macronix",
.name = "MX25L512",
+ {
.manufacture_id = MX_ID,
.model_id = MX_25L512,
+ .probe = probe_spi_rdid,
+ },
.total_size = 64,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -744,12 +858,14 @@
{
.vendor = "Macronix",
.name = "MX25L1005",
+ {
.manufacture_id = MX_ID,
.model_id = MX_25L1005,
+ .probe = probe_spi_rdid,
+ },
.total_size = 128,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -758,12 +874,14 @@
{
.vendor = "Macronix",
.name = "MX25L2005",
+ {
.manufacture_id = MX_ID,
.model_id = MX_25L2005,
+ .probe = probe_spi_rdid,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -772,12 +890,14 @@
{
.vendor = "Macronix",
.name = "MX25L4005",
+ {
.manufacture_id = MX_ID,
.model_id = MX_25L4005,
+ .probe = probe_spi_rdid,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -786,12 +906,14 @@
{
.vendor = "Macronix",
.name = "MX25L8005",
+ {
.manufacture_id = MX_ID,
.model_id = MX_25L8005,
+ .probe = probe_spi_rdid,
+ },
.total_size = 1024,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -800,12 +922,14 @@
{
.vendor = "Macronix",
.name = "MX25L1605",
+ {
.manufacture_id = MX_ID,
.model_id = MX_25L1605,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -814,12 +938,14 @@
{
.vendor = "Macronix",
.name = "MX25L1635D",
+ {
.manufacture_id = MX_ID,
.model_id = MX_25L1635D,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -828,12 +954,14 @@
{
.vendor = "Macronix",
.name = "MX25L3205",
+ {
.manufacture_id = MX_ID,
.model_id = MX_25L3205,
+ .probe = probe_spi_rdid,
+ },
.total_size = 4096,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -842,12 +970,14 @@
{
.vendor = "Macronix",
.name = "MX25L6405",
+ {
.manufacture_id = MX_ID,
.model_id = MX_25L6405,
+ .probe = probe_spi_rdid,
+ },
.total_size = 8192,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -856,12 +986,14 @@
{
.vendor = "Macronix",
.name = "MX25L12805",
+ {
.manufacture_id = MX_ID,
.model_id = MX_25L12805,
+ .probe = probe_spi_rdid,
+ },
.total_size = 16384,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -870,12 +1002,14 @@
{
.vendor = "Macronix",
.name = "MX29F002B",
+ {
.manufacture_id = MX_ID,
.model_id = MX_29F002B,
+ .probe = probe_29f002,
+ },
.total_size = 256,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_29f002,
.erase = erase_29f002,
.write = write_29f002,
},
@@ -883,12 +1017,14 @@
{
.vendor = "Macronix",
.name = "MX29F002T",
+ {
.manufacture_id = MX_ID,
.model_id = MX_29F002T,
+ .probe = probe_29f002,
+ },
.total_size = 256,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_29f002,
.erase = erase_29f002,
.write = write_29f002,
},
@@ -896,12 +1032,14 @@
{
.vendor = "Macronix",
.name = "MX29LV040C",
+ {
.manufacture_id = MX_ID,
.model_id = MX_29LV040C,
+ .probe = probe_29f002,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_OK_PR,
- .probe = probe_29f002,
.erase = erase_29f002,
.write = write_29f002,
},
@@ -909,12 +1047,14 @@
{
.vendor = "Numonyx",
.name = "M25PE10",
+ {
.manufacture_id = ST_ID,
.model_id = 0x8011,
+ .probe = probe_spi_rdid,
+ },
.total_size = 128,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_d8,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -923,12 +1063,14 @@
{
.vendor = "Numonyx",
.name = "M25PE20",
+ {
.manufacture_id = ST_ID,
.model_id = 0x8012,
+ .probe = probe_spi_rdid,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_d8,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -937,12 +1079,14 @@
{
.vendor = "Numonyx",
.name = "M25PE40",
+ {
.manufacture_id = ST_ID,
.model_id = 0x8013,
+ .probe = probe_spi_rdid,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_d8,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -951,12 +1095,14 @@
{
.vendor = "Numonyx",
.name = "M25PE80",
+ {
.manufacture_id = ST_ID,
.model_id = 0x8014,
+ .probe = probe_spi_rdid,
+ },
.total_size = 1024,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_d8,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -965,12 +1111,14 @@
{
.vendor = "Numonyx",
.name = "M25PE16",
+ {
.manufacture_id = ST_ID,
.model_id = 0x8015,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_d8,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -979,12 +1127,14 @@
{
.vendor = "PMC",
.name = "Pm25LV010",
+ {
.manufacture_id = PMC_ID,
.model_id = PMC_25LV010,
+ .probe = probe_spi_rdid,
+ },
.total_size = 128,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -993,12 +1143,14 @@
{
.vendor = "PMC",
.name = "Pm25LV016B",
+ {
.manufacture_id = PMC_ID,
.model_id = PMC_25LV016B,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1007,12 +1159,14 @@
{
.vendor = "PMC",
.name = "Pm25LV020",
+ {
.manufacture_id = PMC_ID,
.model_id = PMC_25LV020,
+ .probe = probe_spi_rdid,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1021,12 +1175,14 @@
{
.vendor = "PMC",
.name = "Pm25LV040",
+ {
.manufacture_id = PMC_ID,
.model_id = PMC_25LV040,
+ .probe = probe_spi_rdid,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1035,12 +1191,14 @@
{
.vendor = "PMC",
.name = "Pm25LV080B",
+ {
.manufacture_id = PMC_ID,
.model_id = PMC_25LV080B,
+ .probe = probe_spi_rdid,
+ },
.total_size = 1024,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1049,12 +1207,14 @@
{
.vendor = "PMC",
.name = "Pm25LV512",
+ {
.manufacture_id = PMC_ID,
.model_id = PMC_25LV512,
+ .probe = probe_spi_rdid,
+ },
.total_size = 64,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1063,12 +1223,14 @@
{
.vendor = "PMC",
.name = "Pm49FL002",
+ {
.manufacture_id = PMC_ID_NOPREFIX,
.model_id = PMC_49FL002,
+ .probe = probe_49fl00x,
+ },
.total_size = 256,
.page_size = 16 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_49fl00x,
.erase = erase_49fl00x,
.write = write_49fl00x,
},
@@ -1076,12 +1238,14 @@
{
.vendor = "PMC",
.name = "Pm49FL004",
+ {
.manufacture_id = PMC_ID_NOPREFIX,
.model_id = PMC_49FL004,
+ .probe = probe_49fl00x,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_49fl00x,
.erase = erase_49fl00x,
.write = write_49fl00x,
},
@@ -1089,12 +1253,14 @@
{
.vendor = "Sharp",
.name = "LHF00L04",
+ {
.manufacture_id = SHARP_ID,
.model_id = SHARP_LHF00L04,
+ .probe = probe_lhf00l04,
+ },
.total_size = 1024,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_lhf00l04,
.erase = erase_lhf00l04,
.write = write_lhf00l04,
},
@@ -1102,12 +1268,14 @@
{
.vendor = "Spansion",
.name = "S25FL016A",
+ {
.manufacture_id = SPANSION_ID,
.model_id = SPANSION_S25FL016A,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1116,12 +1284,14 @@
{
.vendor = "SST",
.name = "SST25VF016B",
+ {
.manufacture_id = SST_ID,
.model_id = SST_25VF016B,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1130,12 +1300,14 @@
{
.vendor = "SST",
.name = "SST25VF032B",
+ {
.manufacture_id = SST_ID,
.model_id = SST_25VF032B,
+ .probe = probe_spi_rdid,
+ },
.total_size = 4096,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1144,12 +1316,14 @@
{
.vendor = "SST",
.name = "SST25VF040B",
+ {
.manufacture_id = SST_ID,
.model_id = SST_25VF040B,
+ .probe = probe_spi_rdid,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1158,12 +1332,14 @@
{
.vendor = "SST",
.name = "SST25VF040.REMS",
+ {
.manufacture_id = 0xbf,
.model_id = 0x44,
+ .probe = probe_spi_rems,
+ },
.total_size = 512,
.page_size = 64*1024,
.tested = TEST_OK_PR,
- .probe = probe_spi_rems,
.erase = spi_chip_erase_60,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1172,12 +1348,14 @@
{
.vendor = "SST",
.name = "SST25VF040B.REMS",
+ {
.manufacture_id = 0xbf,
.model_id = 0x8d,
+ .probe = probe_spi_rems,
+ },
.total_size = 512,
.page_size = 64*1024,
.tested = TEST_OK_PR,
- .probe = probe_spi_rems,
.erase = spi_chip_erase_c7,
.write = spi_aai_write,
.read = spi_chip_read,
@@ -1186,12 +1364,14 @@
{
.vendor = "SST",
.name = "SST25VF080B",
+ {
.manufacture_id = SST_ID,
.model_id = SST_25VF080B,
+ .probe = probe_spi_rdid,
+ },
.total_size = 1024,
.page_size = 256,
.tested = TEST_OK_PROBE,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_60_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1200,12 +1380,14 @@
{
.vendor = "SST",
.name = "SST28SF040A",
+ {
.manufacture_id = SST_ID,
.model_id = SST_28SF040,
+ .probe = probe_28sf040,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_28sf040,
.erase = erase_28sf040,
.write = write_28sf040,
},
@@ -1213,12 +1395,14 @@
{
.vendor = "SST",
.name = "SST29EE010",
+ {
.manufacture_id = SST_ID,
.model_id = SST_29EE010,
+ .probe = probe_jedec,
+ },
.total_size = 128,
.page_size = 128,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -1226,12 +1410,14 @@
{
.vendor = "SST",
.name = "SST29LE010",
+ {
.manufacture_id = SST_ID,
.model_id = SST_29LE010,
+ .probe = probe_jedec,
+ },
.total_size = 128,
.page_size = 128,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -1239,12 +1425,14 @@
{
.vendor = "SST",
.name = "SST29EE020A",
+ {
.manufacture_id = SST_ID,
.model_id = SST_29EE020A,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 128,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -1252,12 +1440,14 @@
{
.vendor = "SST",
.name = "SST29LE020",
+ {
.manufacture_id = SST_ID,
.model_id = SST_29LE020,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 128,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -1265,12 +1455,14 @@
{
.vendor = "SST",
.name = "SST39SF010A",
+ {
.manufacture_id = SST_ID,
.model_id = SST_39SF010,
+ .probe = probe_jedec,
+ },
.total_size = 128,
.page_size = 4096,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -1278,12 +1470,14 @@
{
.vendor = "SST",
.name = "SST39SF020A",
+ {
.manufacture_id = SST_ID,
.model_id = SST_39SF020,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 4096,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -1291,12 +1485,14 @@
{
.vendor = "SST",
.name = "SST39SF040",
+ {
.manufacture_id = SST_ID,
.model_id = SST_39SF040,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 4096,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -1304,12 +1500,14 @@
{
.vendor = "SST",
.name = "SST39VF512",
+ {
.manufacture_id = SST_ID,
.model_id = SST_39VF512,
+ .probe = probe_jedec,
+ },
.total_size = 64,
.page_size = 4096,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -1317,12 +1515,14 @@
{
.vendor = "SST",
.name = "SST39VF010",
+ {
.manufacture_id = SST_ID,
.model_id = SST_39VF010,
+ .probe = probe_jedec,
+ },
.total_size = 128,
.page_size = 4096,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -1330,12 +1530,14 @@
{
.vendor = "SST",
.name = "SST39VF020",
+ {
.manufacture_id = SST_ID,
.model_id = SST_39VF020,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 4096,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -1343,12 +1545,14 @@
{
.vendor = "SST",
.name = "SST39VF040",
+ {
.manufacture_id = SST_ID,
.model_id = SST_39VF040,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 4096,
.tested = TEST_OK_PROBE,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -1356,12 +1560,14 @@
{
.vendor = "SST",
.name = "SST39VF080",
+ {
.manufacture_id = 0xbf,
.model_id = 0xd8,
+ .probe = probe_jedec,
+ },
.total_size = 1024,
.page_size = 4096,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -1369,12 +1575,14 @@
{
.vendor = "SST",
.name = "SST49LF002A/B",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF002A,
+ .probe = probe_sst_fwhub,
+ },
.total_size = 256,
.page_size = 16 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_sst_fwhub,
.erase = erase_sst_fwhub,
.write = write_sst_fwhub,
},
@@ -1382,12 +1590,14 @@
{
.vendor = "SST",
.name = "SST49LF003A/B",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF003A,
+ .probe = probe_sst_fwhub,
+ },
.total_size = 384,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_sst_fwhub,
.erase = erase_sst_fwhub,
.write = write_sst_fwhub,
},
@@ -1395,12 +1605,14 @@
{
.vendor = "SST",
.name = "SST49LF004A/B",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF004A,
+ .probe = probe_sst_fwhub,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_sst_fwhub,
.erase = erase_sst_fwhub,
.write = write_sst_fwhub,
},
@@ -1408,12 +1620,14 @@
{
.vendor = "SST",
.name = "SST49LF004C",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF004C,
+ .probe = probe_49lfxxxc,
+ },
.total_size = 512,
.page_size = 4 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_49lfxxxc,
.erase = erase_49lfxxxc,
.write = write_49lfxxxc,
},
@@ -1421,12 +1635,14 @@
{
.vendor = "SST",
.name = "SST49LF008A",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF008A,
+ .probe = probe_sst_fwhub,
+ },
.total_size = 1024,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_sst_fwhub,
.erase = erase_sst_fwhub,
.write = write_sst_fwhub,
},
@@ -1434,12 +1650,14 @@
{
.vendor = "SST",
.name = "SST49LF008C",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF008C,
+ .probe = probe_49lfxxxc,
+ },
.total_size = 1024,
.page_size = 4 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_49lfxxxc,
.erase = erase_49lfxxxc,
.write = write_49lfxxxc,
},
@@ -1447,12 +1665,14 @@
{
.vendor = "SST",
.name = "SST49LF016C",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF016C,
+ .probe = probe_49lfxxxc,
+ },
.total_size = 2048,
.page_size = 4 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_49lfxxxc,
.erase = erase_49lfxxxc,
.write = write_49lfxxxc,
},
@@ -1460,12 +1680,14 @@
{
.vendor = "SST",
.name = "SST49LF020",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF020,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 16 * 1024,
.tested = TEST_OK_PR,
- .probe = probe_jedec,
.erase = erase_49lf040,
.write = write_49lf040,
},
@@ -1473,12 +1695,14 @@
{
.vendor = "SST",
.name = "SST49LF020A",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF020A,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 16 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_49lf040,
.write = write_49lf040,
},
@@ -1486,12 +1710,14 @@
{
.vendor = "SST",
.name = "SST49LF040",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF040,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 4096,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_49lf040,
.write = write_49lf040,
},
@@ -1499,12 +1725,14 @@
{
.vendor = "SST",
.name = "SST49LF040B",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF040B,
+ .probe = probe_sst_fwhub,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_sst_fwhub,
.erase = erase_sst_fwhub,
.write = write_sst_fwhub,
},
@@ -1512,12 +1740,14 @@
{
.vendor = "SST",
.name = "SST49LF080A",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF080A,
+ .probe = probe_jedec,
+ },
.total_size = 1024,
.page_size = 4096,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_49lf040,
.write = write_49lf040,
},
@@ -1525,12 +1755,14 @@
{
.vendor = "SST",
.name = "SST49LF160C",
+ {
.manufacture_id = SST_ID,
.model_id = SST_49LF160C,
+ .probe = probe_49lfxxxc,
+ },
.total_size = 2048,
.page_size = 4 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_49lfxxxc,
.erase = erase_49lfxxxc,
.write = write_49lfxxxc,
},
@@ -1538,12 +1770,14 @@
{
.vendor = "ST",
.name = "M25P05-A",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M25P05A,
+ .probe = probe_spi_rdid,
+ },
.total_size = 64,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1552,12 +1786,14 @@
{
.vendor = "ST",
.name = "M25P10-A",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M25P10A,
+ .probe = probe_spi_rdid,
+ },
.total_size = 128,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1566,12 +1802,14 @@
{
.vendor = "ST",
.name = "M25P20",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M25P20,
+ .probe = probe_spi_rdid,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1580,12 +1818,14 @@
{
.vendor = "ST",
.name = "M25P40",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M25P40,
+ .probe = probe_spi_rdid,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1594,12 +1834,14 @@
{
.vendor = "ST",
.name = "M25P40-old",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M25P40_RES,
+ .probe = probe_spi_res,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_res,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1608,12 +1850,14 @@
{
.vendor = "ST",
.name = "M25P80",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M25P80,
+ .probe = probe_spi_rdid,
+ },
.total_size = 1024,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1622,12 +1866,14 @@
{
.vendor = "ST",
.name = "M25P16",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M25P16,
+ .probe = probe_spi_rdid,
+ },
.total_size = 2048,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1636,12 +1882,14 @@
{
.vendor = "ST",
.name = "M25P32",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M25P32,
+ .probe = probe_spi_rdid,
+ },
.total_size = 4096,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1650,12 +1898,14 @@
{
.vendor = "ST",
.name = "M25P64",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M25P64,
+ .probe = probe_spi_rdid,
+ },
.total_size = 8192,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1664,12 +1914,14 @@
{
.vendor = "ST",
.name = "M25P128",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M25P128,
+ .probe = probe_spi_rdid,
+ },
.total_size = 16384,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1678,12 +1930,14 @@
{
.vendor = "ST",
.name = "M29F002B",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M29F002B,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_m29f002,
.write = write_m29f002b,
},
@@ -1691,12 +1945,14 @@
{
.vendor = "ST",
.name = "M29F002T/NT",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M29F002T,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_m29f002,
.write = write_m29f002t,
},
@@ -1704,12 +1960,14 @@
{
.vendor = "ST",
.name = "M29F040B",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M29F040B,
+ .probe = probe_29f040b,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_29f040b,
.erase = erase_29f040b,
.write = write_29f040b,
},
@@ -1717,12 +1975,14 @@
{
.vendor = "ST",
.name = "M29F400BT",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M29F400BT,
+ .probe = probe_m29f400bt,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_m29f400bt,
.erase = erase_m29f400bt,
.write = write_coreboot_m29f400bt,
},
@@ -1730,12 +1990,14 @@
{
.vendor = "ST",
.name = "M29W010B",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M29W010B,
+ .probe = probe_jedec,
+ },
.total_size = 128,
.page_size = 16 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -1743,12 +2005,14 @@
{
.vendor = "ST",
.name = "M29W040B",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M29W040B,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -1756,12 +2020,14 @@
{
.vendor = "ST",
.name = "M50FLW040A",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M50FLW040A,
+ .probe = probe_stm50flw0x0x,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_stm50flw0x0x,
.erase = erase_stm50flw0x0x,
.write = write_stm50flw0x0x,
},
@@ -1769,12 +2035,14 @@
{
.vendor = "ST",
.name = "M50FLW040B",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M50FLW040B,
+ .probe = probe_stm50flw0x0x,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_stm50flw0x0x,
.erase = erase_stm50flw0x0x,
.write = write_stm50flw0x0x,
},
@@ -1782,12 +2050,14 @@
{
.vendor = "ST",
.name = "M50FLW080A",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M50FLW080A,
+ .probe = probe_stm50flw0x0x,
+ },
.total_size = 1024,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_stm50flw0x0x,
.erase = erase_stm50flw0x0x,
.write = write_stm50flw0x0x,
},
@@ -1795,12 +2065,14 @@
{
.vendor = "ST",
.name = "M50FLW080B",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M50FLW080B,
+ .probe = probe_stm50flw0x0x,
+ },
.total_size = 1024,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_stm50flw0x0x,
.erase = erase_stm50flw0x0x,
.write = write_stm50flw0x0x,
},
@@ -1808,12 +2080,14 @@
{
.vendor = "ST",
.name = "M50FW002",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M50FW002,
+ .probe = probe_49lfxxxc,
+ },
.total_size = 256,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_49lfxxxc,
.erase = NULL,
.write = NULL,
},
@@ -1821,12 +2095,14 @@
{
.vendor = "ST",
.name = "M50FW016",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M50FW016,
+ .probe = probe_82802ab,
+ },
.total_size = 2048,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_82802ab,
.erase = erase_82802ab,
.write = write_82802ab,
},
@@ -1834,12 +2110,14 @@
{
.vendor = "ST",
.name = "M50FW040",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M50FW040,
+ .probe = probe_82802ab,
+ },
.total_size = 512,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_82802ab,
.erase = erase_82802ab,
.write = write_82802ab,
},
@@ -1847,12 +2125,14 @@
{
.vendor = "ST",
.name = "M50FW080",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M50FW080,
+ .probe = probe_82802ab,
+ },
.total_size = 1024,
.page_size = 64 * 1024,
.tested = TEST_OK_PREW,
- .probe = probe_82802ab,
.erase = erase_82802ab,
.write = write_82802ab,
},
@@ -1860,12 +2140,14 @@
{
.vendor = "ST",
.name = "M50LPW116",
+ {
.manufacture_id = ST_ID,
.model_id = ST_M50LPW116,
+ .probe = probe_jedec,
+ },
.total_size = 2048,
.page_size = 64 * 1024,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -1873,12 +2155,14 @@
{
.vendor = "SyncMOS",
.name = "S29C31004T",
+ {
.manufacture_id = SYNCMOS_ID,
.model_id = S29C31004T,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 128,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_49f002,
},
@@ -1886,12 +2170,14 @@
{
.vendor = "SyncMOS",
.name = "S29C51001T",
+ {
.manufacture_id = SYNCMOS_ID,
.model_id = S29C51001T,
+ .probe = probe_jedec,
+ },
.total_size = 128,
.page_size = 128,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_49f002,
},
@@ -1899,12 +2185,14 @@
{
.vendor = "SyncMOS",
.name = "S29C51002T",
+ {
.manufacture_id = SYNCMOS_ID,
.model_id = S29C51002T,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 128,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_49f002,
},
@@ -1912,12 +2200,14 @@
{
.vendor = "SyncMOS",
.name = "S29C51004T",
+ {
.manufacture_id = SYNCMOS_ID,
.model_id = S29C51004T,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 128,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_49f002,
},
@@ -1925,12 +2215,14 @@
{
.vendor = "Winbond",
.name = "W25x10",
+ {
.manufacture_id = WINBOND_NEX_ID,
.model_id = W_25X10,
+ .probe = probe_spi_rdid,
+ },
.total_size = 128,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1939,12 +2231,14 @@
{
.vendor = "Winbond",
.name = "W25x20",
+ {
.manufacture_id = WINBOND_NEX_ID,
.model_id = W_25X20,
+ .probe = probe_spi_rdid,
+ },
.total_size = 256,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1953,12 +2247,14 @@
{
.vendor = "Winbond",
.name = "W25x40",
+ {
.manufacture_id = WINBOND_NEX_ID,
.model_id = W_25X40,
+ .probe = probe_spi_rdid,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1967,12 +2263,14 @@
{
.vendor = "Winbond",
.name = "W25x80",
+ {
.manufacture_id = WINBOND_NEX_ID,
.model_id = W_25X80,
+ .probe = probe_spi_rdid,
+ },
.total_size = 1024,
.page_size = 256,
.tested = TEST_OK_PREW,
- .probe = probe_spi_rdid,
.erase = spi_chip_erase_c7,
.write = spi_chip_write,
.read = spi_chip_read,
@@ -1981,12 +2279,14 @@
{
.vendor = "Winbond",
.name = "W29C011",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_29C011,
+ .probe = probe_jedec,
+ },
.total_size = 128,
.page_size = 128,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -1994,12 +2294,14 @@
{
.vendor = "Winbond",
.name = "W29C020C",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_29C020C,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 128,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -2007,12 +2309,14 @@
{
.vendor = "Winbond",
.name = "W29C040P",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_29C040P,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -2020,12 +2324,14 @@
{
.vendor = "Winbond",
.name = "W29EE011",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_29C011,
+ .probe = probe_w29ee011,
+ },
.total_size = 128,
.page_size = 128,
.tested = TEST_OK_PREW,
- .probe = probe_w29ee011,
.erase = erase_chip_jedec,
.write = write_jedec,
},
@@ -2033,12 +2339,14 @@
{
.vendor = "Winbond",
.name = "W39V040A",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_39V040A,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 64*1024,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -2046,12 +2354,14 @@
{
.vendor = "Winbond",
.name = "W39V040B",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_39V040B,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 64*1024,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -2059,12 +2369,14 @@
{
.vendor = "Winbond",
.name = "W39V040C",
+ {
.manufacture_id = WINBOND_ID,
.model_id = 0x50,
+ .probe = probe_w39v040c,
+ },
.total_size = 512,
.page_size = 64*1024,
.tested = TEST_OK_PREW,
- .probe = probe_w39v040c,
.erase = erase_w39v040c,
.write = write_w39v040c,
},
@@ -2072,12 +2384,14 @@
{
.vendor = "Winbond",
.name = "W39V040FA",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_39V040FA,
+ .probe = probe_jedec,
+ },
.total_size = 512,
.page_size = 64*1024,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -2085,12 +2399,14 @@
{
.vendor = "Winbond",
.name = "W39V080A",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_39V080A,
+ .probe = probe_jedec,
+ },
.total_size = 1024,
.page_size = 64*1024,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_39sf020,
},
@@ -2098,12 +2414,14 @@
{
.vendor = "Winbond",
.name = "W49F002U",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_49F002U,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 128,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_49f002,
},
@@ -2111,12 +2429,14 @@
{
.vendor = "Winbond",
.name = "W49V002A",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_49V002A,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 128,
.tested = TEST_OK_PREW,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_49f002,
},
@@ -2124,12 +2444,14 @@
{
.vendor = "Winbond",
.name = "W49V002FA",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_49V002FA,
+ .probe = probe_jedec,
+ },
.total_size = 256,
.page_size = 128,
.tested = TEST_UNTESTED,
- .probe = probe_jedec,
.erase = erase_chip_jedec,
.write = write_49f002,
},
@@ -2137,12 +2459,14 @@
{
.vendor = "Winbond",
.name = "W39V080FA",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_39V080FA,
+ .probe = probe_winbond_fwhub,
+ },
.total_size = 1024,
.page_size = 64*1024,
.tested = TEST_OK_PREW,
- .probe = probe_winbond_fwhub,
.erase = erase_winbond_fwhub,
.write = write_winbond_fwhub,
},
@@ -2150,12 +2474,14 @@
{
.vendor = "Winbond",
.name = "W39V080FA (dual mode)",
+ {
.manufacture_id = WINBOND_ID,
.model_id = W_39V080FA_DM,
+ .probe = probe_winbond_fwhub,
+ },
.total_size = 512,
.page_size = 64*1024,
.tested = TEST_UNTESTED,
- .probe = probe_winbond_fwhub,
.erase = erase_winbond_fwhub,
.write = write_winbond_fwhub,
},
@@ -2163,12 +2489,14 @@
{
.vendor = "Atmel",
.name = "unknown Atmel SPI chip",
+ {
.manufacture_id = ATMEL_ID,
.model_id = GENERIC_DEVICE_ID,
+ .probe = probe_spi_rdid,
+ },
.total_size = 0,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
},
@@ -2176,12 +2504,14 @@
{
.vendor = "EON",
.name = "unknown EON SPI chip",
+ {
.manufacture_id = EON_ID_NOPREFIX,
.model_id = GENERIC_DEVICE_ID,
+ .probe = probe_spi_rdid,
+ },
.total_size = 0,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
},
@@ -2189,12 +2519,14 @@
{
.vendor = "Macronix",
.name = "unknown Macronix SPI chip",
+ {
.manufacture_id = MX_ID,
.model_id = GENERIC_DEVICE_ID,
+ .probe = probe_spi_rdid,
+ },
.total_size = 0,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
},
@@ -2202,12 +2534,14 @@
{
.vendor = "PMC",
.name = "unknown PMC SPI chip",
+ {
.manufacture_id = PMC_ID,
.model_id = GENERIC_DEVICE_ID,
+ .probe = probe_spi_rdid,
+ },
.total_size = 0,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
},
@@ -2215,12 +2549,14 @@
{
.vendor = "SST",
.name = "unknown SST SPI chip",
+ {
.manufacture_id = SST_ID,
.model_id = GENERIC_DEVICE_ID,
+ .probe = probe_spi_rdid,
+ },
.total_size = 0,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
},
@@ -2228,12 +2564,14 @@
{
.vendor = "ST",
.name = "unknown ST SPI chip",
+ {
.manufacture_id = ST_ID,
.model_id = GENERIC_DEVICE_ID,
+ .probe = probe_spi_rdid,
+ },
.total_size = 0,
.page_size = 256,
.tested = TEST_UNTESTED,
- .probe = probe_spi_rdid,
.erase = NULL,
.write = NULL,
},
--
http://www.hailfinger.org/
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: flashrom_probe_grouping2.diff
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20090422/d2c07636/attachment.ksh>
More information about the coreboot
mailing list