Sort list of flash chips alphabetically, add comment (trivial).
authorUwe Hermann <uwe@hermann-uwe.de>
Sun, 16 Mar 2008 02:06:25 +0000 (02:06 +0000)
committerUwe Hermann <uwe@hermann-uwe.de>
Sun, 16 Mar 2008 02:06:25 +0000 (02:06 +0000)
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3152 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1

util/flashrom/flashchips.c

index f9023f38aa71cfe3c687b3e75ef2c8d3d72bd1fe..e33813f04cda5083db513b8666ea0606490013f6 100644 (file)
 #include "msys_doc.h"
 #endif
 
+/**
+ * List of supported flash ROM chips.
+ *
+ * Please keep the list sorted by vendor name and chip name, so that
+ * the output of 'flashrom -L' is alphabetically sorted.
+ */
 struct flashchip flashchips[] = {
        /******************************************************************************************************************************************************************************************************/
        /* Vendor       Chip                    Vendor ID       Chip ID                 TODO    TODO            Probe function          Erase function                  Write function          Read function */
        /******************************************************************************************************************************************************************************************************/
+       {"AMD",         "Am29F016D",            AMD_ID,         AM_29F016D,             2048,   64 * 1024,      probe_29f040b,          erase_29f040b,                  write_29f040b},
        {"AMD",         "Am29F040B",            AMD_ID,         AM_29F040B,             512,    64 * 1024,      probe_29f040b,          erase_29f040b,                  write_29f040b},
        {"AMD",         "Am29LV040B",           AMD_ID,         AM_29LV040B,            512,    64 * 1024,      probe_29f040b,          erase_29f040b,                  write_29f040b},
-       {"AMD",         "Am29F016D",            AMD_ID,         AM_29F016D,             2048,   64 * 1024,      probe_29f040b,          erase_29f040b,                  write_29f040b},
        {"ASD",         "AE49F2008",            ASD_ID,         ASD_AE49F2008,          256,    128,            probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"Atmel",       "At29C040A",            ATMEL_ID,       AT_29C040A,             512,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"Atmel",       "At29C020",             ATMEL_ID,       AT_29C020,              256,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"Atmel",       "At49F002(N)",          ATMEL_ID,       AT_49F002N,             256,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"Atmel",       "At49F002(N)T",         ATMEL_ID,       AT_49F002NT,            256,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"EON",         "EN29F002(A)(N)T",      EON_ID,         EN_29F002T,             256,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"Atmel",       "AT29C020",             ATMEL_ID,       AT_29C020,              256,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"Atmel",       "AT29C040A",            ATMEL_ID,       AT_29C040A,             512,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"Atmel",       "AT49F002(N)",          ATMEL_ID,       AT_49F002N,             256,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"Atmel",       "AT49F002(N)T",         ATMEL_ID,       AT_49F002NT,            256,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"EMST",        "F49B002UA",            EMST_ID,        EMST_F49B002UA,         256,    4096,           probe_jedec,            erase_chip_jedec,               write_49f002},
        {"EON",         "EN29F002(A)(N)B",      EON_ID,         EN_29F002B,             256,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"EON",         "EN29F002(A)(N)T",      EON_ID,         EN_29F002T,             256,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
        {"Fujitsu",     "MBM29F400TC",          FUJITSU_ID,     MBM29F400TC_STRANGE,    512,    64 * 1024,      probe_m29f400bt,        erase_m29f400bt,                write_coreboot_m29f400bt},
-       {"Macronix",    "MX29F002",             MX_ID,          MX_29F002,              256,    64 * 1024,      probe_29f002,           erase_29f002,                   write_29f002},
+       {"Intel",       "82802AB",              INTEL_ID,       173,                    512,    64 * 1024,      probe_82802ab,          erase_82802ab,                  write_82802ab},
+       {"Intel",       "82802AC",              INTEL_ID,       172,                    1024,   64 * 1024,      probe_82802ab,          erase_82802ab,                  write_82802ab},
+       {"Macronix",    "MX25L3205",            MX_ID,          MX_25L3205,             4096,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
        {"Macronix",    "MX25L4005",            MX_ID,          MX_25L4005,             512,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
        {"Macronix",    "MX25L8005",            MX_ID,          MX_25L8005,             1024,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"Macronix",    "MX25L3205",            MX_ID,          MX_25L3205,             4096,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"Macronix",    "MX29F002",             MX_ID,          MX_29F002,              256,    64 * 1024,      probe_29f002,           erase_29f002,                   write_29f002},
+#ifndef DISABLE_DOC
+       {"M-Systems",   "MD-2802",              MSYSTEMS_ID,    MSYSTEMS_MD2802,        8,      8 * 1024,       probe_md2802,           erase_md2802,                   write_md2802,           read_md2802},
+#endif
+       {"PMC",         "Pm25LV010",            PMC_ID,         PMC_25LV010,            128,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"PMC",         "Pm25LV016B",           PMC_ID,         PMC_25LV016B,           2048,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"PMC",         "Pm25LV020",            PMC_ID,         PMC_25LV020,            256,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"PMC",         "Pm25LV040",            PMC_ID,         PMC_25LV040,            512,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"PMC",         "Pm25LV080B",           PMC_ID,         PMC_25LV080B,           1024,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"PMC",         "Pm25LV512",            PMC_ID,         PMC_25LV512,            64,     256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"PMC",         "Pm49FL002",            PMC_ID_NOPREFIX,PMC_49FL002,            256,    16 * 1024,      probe_jedec,            erase_chip_jedec,               write_49fl004},
+       {"PMC",         "Pm49FL004",            PMC_ID_NOPREFIX,PMC_49FL004,            512,    64 * 1024,      probe_jedec,            erase_chip_jedec,               write_49fl004},
+       {"Sharp",       "LHF00L04",             SHARP_ID,       SHARP_LHF00L04,         1024,   64 * 1024,      probe_lhf00l04,         erase_lhf00l04,                 write_lhf00l04},
        {"Spansion",    "S25FL016A",            SPANSION_ID,    SPANSION_S25FL016A,     2048,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"SST",         "SST25VF040B",          SST_ID,         SST_25VF040B,           512,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
        {"SST",         "SST25VF016B",          SST_ID,         SST_25VF016B,           2048,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"SST",         "SST29EE020A",          SST_ID,         SST_29EE020A,           256,    128,            probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"SST",         "SST25VF040B",          SST_ID,         SST_25VF040B,           512,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
        {"SST",         "SST28SF040A",          SST_ID,         SST_28SF040,            512,    256,            probe_28sf040,          erase_28sf040,                  write_28sf040},
+       {"SST",         "SST29EE020A",          SST_ID,         SST_29EE020A,           256,    128,            probe_jedec,            erase_chip_jedec,               write_jedec},
        {"SST",         "SST39SF010A",          SST_ID,         SST_39SF010,            128,    4096,           probe_jedec,            erase_chip_jedec,               write_39sf020},
        {"SST",         "SST39SF020A",          SST_ID,         SST_39SF020,            256,    4096,           probe_jedec,            erase_chip_jedec,               write_39sf020},
        {"SST",         "SST39SF040",           SST_ID,         SST_39SF040,            512,    4096,           probe_jedec,            erase_chip_jedec,               write_39sf020},
        {"SST",         "SST39VF020",           SST_ID,         SST_39VF020,            256,    4096,           probe_jedec,            erase_chip_jedec,               write_39sf020},
 // assume similar to 004B, ignoring data sheet
-       {"SST",         "SST49LF040B",          SST_ID,         SST_49LF040B,           512,    64 * 1024,      probe_sst_fwhub,        erase_sst_fwhub,                write_sst_fwhub},
-       {"SST",         "SST49LF040",           SST_ID,         SST_49LF040,            512,    4096,           probe_jedec,            erase_49lf040,                  write_49lf040},
-       {"SST",         "SST49LF020A",          SST_ID,         SST_49LF020A,           256,    16 * 1024,      probe_jedec,            erase_49lf040,                  write_49lf040},
-       {"SST",         "SST49LF080A",          SST_ID,         SST_49LF080A,           1024,   4096,           probe_jedec,            erase_49lf040,                  write_49lf040},
        {"SST",         "SST49LF002A/B",        SST_ID,         SST_49LF002A,           256,    16 * 1024,      probe_sst_fwhub,        erase_sst_fwhub,                write_sst_fwhub},
        {"SST",         "SST49LF003A/B",        SST_ID,         SST_49LF003A,           384,    64 * 1024,      probe_sst_fwhub,        erase_sst_fwhub,                write_sst_fwhub},
        {"SST",         "SST49LF004A/B",        SST_ID,         SST_49LF004A,           512,    64 * 1024,      probe_sst_fwhub,        erase_sst_fwhub,                write_sst_fwhub},
-       {"SST",         "SST49LF008A",          SST_ID,         SST_49LF008A,           1024,   64 * 1024,      probe_sst_fwhub,        erase_sst_fwhub,                write_sst_fwhub},
        {"SST",         "SST49LF004C",          SST_ID,         SST_49LF004C,           512,    4 * 1024,       probe_49lfxxxc,         erase_49lfxxxc,                 write_49lfxxxc},
+       {"SST",         "SST49LF008A",          SST_ID,         SST_49LF008A,           1024,   64 * 1024,      probe_sst_fwhub,        erase_sst_fwhub,                write_sst_fwhub},
        {"SST",         "SST49LF008C",          SST_ID,         SST_49LF008C,           1024,   4 * 1024,       probe_49lfxxxc,         erase_49lfxxxc,                 write_49lfxxxc},
        {"SST",         "SST49LF016C",          SST_ID,         SST_49LF016C,           2048,   4 * 1024,       probe_49lfxxxc,         erase_49lfxxxc,                 write_49lfxxxc},
+       {"SST",         "SST49LF020A",          SST_ID,         SST_49LF020A,           256,    16 * 1024,      probe_jedec,            erase_49lf040,                  write_49lf040},
+       {"SST",         "SST49LF040",           SST_ID,         SST_49LF040,            512,    4096,           probe_jedec,            erase_49lf040,                  write_49lf040},
+       {"SST",         "SST49LF040B",          SST_ID,         SST_49LF040B,           512,    64 * 1024,      probe_sst_fwhub,        erase_sst_fwhub,                write_sst_fwhub},
+       {"SST",         "SST49LF080A",          SST_ID,         SST_49LF080A,           1024,   4096,           probe_jedec,            erase_49lf040,                  write_49lf040},
        {"SST",         "SST49LF160C",          SST_ID,         SST_49LF160C,           2048,   4 * 1024,       probe_49lfxxxc,         erase_49lfxxxc,                 write_49lfxxxc},
-       {"PMC",         "Pm49FL002",            PMC_ID_NOPREFIX,PMC_49FL002,            256,    16 * 1024,      probe_jedec,            erase_chip_jedec,               write_49fl004},
-       {"PMC",         "Pm49FL004",            PMC_ID_NOPREFIX,PMC_49FL004,            512,    64 * 1024,      probe_jedec,            erase_chip_jedec,               write_49fl004},
-       {"PMC",         "Pm25LV512",            PMC_ID,         PMC_25LV512,            64,     256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"PMC",         "Pm25LV010",            PMC_ID,         PMC_25LV010,            128,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"PMC",         "Pm25LV020",            PMC_ID,         PMC_25LV020,            256,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"PMC",         "Pm25LV040",            PMC_ID,         PMC_25LV040,            512,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"PMC",         "Pm25LV080B",           PMC_ID,         PMC_25LV080B,           1024,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"PMC",         "Pm25LV016B",           PMC_ID,         PMC_25LV016B,           2048,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"Winbond",     "W29C011",              WINBOND_ID,     W_29C011,               128,    128,            probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"Winbond",     "W29C040P",             WINBOND_ID,     W_29C040P,              512,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"Winbond",     "W29C020C",             WINBOND_ID,     W_29C020C,              256,    128,            probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"Winbond",     "W29EE011",             WINBOND_ID,     W_29C011,               128,    128,            probe_w29ee011,         erase_chip_jedec,               write_jedec},
-       {"Winbond",     "W49F002U",             WINBOND_ID,     W_49F002U,              256,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
-       {"Winbond",     "W49V002A",             WINBOND_ID,     W_49V002A,              256,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
-       {"Winbond",     "W49V002FA",            WINBOND_ID,     W_49V002FA,             256,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
-       {"Winbond",     "W39V040FA",            WINBOND_ID,     W_39V040FA,             512,    64*1024,        probe_jedec,            erase_chip_jedec,               write_39sf020},
-       {"Winbond",     "W39V040A",             WINBOND_ID,     W_39V040A,              512,    64*1024,        probe_jedec,            erase_chip_jedec,               write_39sf020},
-       {"Winbond",     "W39V040B",             WINBOND_ID,     W_39V040B,              512,    64*1024,        probe_jedec,            erase_chip_jedec,               write_39sf020},
-       {"Winbond",     "W39V080A",             WINBOND_ID,     W_39V080A,              1024,   64*1024,        probe_jedec,            erase_chip_jedec,               write_39sf020},
-       {"Winbond/N.",  "W25x10",               WINBOND_NEX_ID, W_25X10,                128,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"Winbond/N.",  "W25x20",               WINBOND_NEX_ID, W_25X20,                256,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"Winbond/N.",  "W25x40",               WINBOND_NEX_ID, W_25X40,                512,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"Winbond/N.",  "W25x80",               WINBOND_NEX_ID, W_25X80,                1024,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"ST",          "M25P05-A",             ST_ID,          ST_M25P05A,             64,     256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"ST",          "M25P10-A",             ST_ID,          ST_M25P10A,             128,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"ST",          "M25P128",              ST_ID,          ST_M25P128,             16384,  256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"ST",          "M25P16",               ST_ID,          ST_M25P16,              2048,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"ST",          "M25P20",               ST_ID,          ST_M25P20,              256,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"ST",          "M25P32",               ST_ID,          ST_M25P32,              4096,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"ST",          "M25P40",               ST_ID,          ST_M25P40,              512,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"ST",          "M25P64",               ST_ID,          ST_M25P64,              8192,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"ST",          "M25P80",               ST_ID,          ST_M25P80,              1024,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
        {"ST",          "M29F002B",             ST_ID,          ST_M29F002B,            256,    64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"ST",          "M50FW040",             ST_ID,          ST_M50FW040,            512,    64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"ST",          "M29W040B",             ST_ID,          ST_M29W040B,            512,    64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
        {"ST",          "M29F002T/NT",          ST_ID,          ST_M29F002T,            256,    64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"ST",          "M29F040B",             ST_ID,          ST_M29F040B,            512,    64 * 1024,      probe_29f040b,          erase_29f040b,                  write_29f040b},
        {"ST",          "M29F400BT",            ST_ID,          ST_M29F400BT,           512,    64 * 1024,      probe_m29f400bt,        erase_m29f400bt,                write_coreboot_m29f400bt},
+       {"ST",          "M29W010B",             ST_ID,          ST_M29W010B,            128,    16 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"ST",          "M29W040B",             ST_ID,          ST_M29W040B,            512,    64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
        {"ST",          "M50FLW040A",           ST_ID,          ST_M50FLW040A,          512,    64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
        {"ST",          "M50FLW040B",           ST_ID,          ST_M50FLW040B,          512,    64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
        {"ST",          "M50FLW080A",           ST_ID,          ST_M50FLW080A,          1024,   64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
        {"ST",          "M50FLW080B",           ST_ID,          ST_M50FLW080B,          1024,   64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"ST",          "M50FW080",             ST_ID,          ST_M50FW080,            1024,   64 * 1024,      probe_82802ab,          erase_82802ab,                  write_82802ab},
        {"ST",          "M50FW016",             ST_ID,          ST_M50FW016,            2048,   64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"ST",          "M50FW040",             ST_ID,          ST_M50FW040,            512,    64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"ST",          "M50FW080",             ST_ID,          ST_M50FW080,            1024,   64 * 1024,      probe_82802ab,          erase_82802ab,                  write_82802ab},
        {"ST",          "M50LPW116",            ST_ID,          ST_M50LPW116,           2048,   64 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"ST",          "M29W010B",             ST_ID,          ST_M29W010B,            128,    16 * 1024,      probe_jedec,            erase_chip_jedec,               write_jedec},
-       {"ST",          "M29F040B",             ST_ID,          ST_M29F040B,            512,    64 * 1024,      probe_29f040b,          erase_29f040b,                  write_29f040b},
-       {"ST",          "M25P05-A",             ST_ID,          ST_M25P05A,             64,     256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"ST",          "M25P10-A",             ST_ID,          ST_M25P10A,             128,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"ST",          "M25P20",               ST_ID,          ST_M25P20,              256,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"ST",          "M25P40",               ST_ID,          ST_M25P40,              512,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"ST",          "M25P80",               ST_ID,          ST_M25P80,              1024,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"ST",          "M25P16",               ST_ID,          ST_M25P16,              2048,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"ST",          "M25P32",               ST_ID,          ST_M25P32,              4096,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"ST",          "M25P64",               ST_ID,          ST_M25P64,              8192,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"ST",          "M25P128",              ST_ID,          ST_M25P128,             16384,  256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
-       {"Intel",       "82802ab",              INTEL_ID,       173,                    512,    64 * 1024,      probe_82802ab,          erase_82802ab,                  write_82802ab},
-       {"Intel",       "82802ac",              INTEL_ID,       172,                    1024,   64 * 1024,      probe_82802ab,          erase_82802ab,                  write_82802ab},
-       {"EMST",        "F49B002UA",            EMST_ID,        EMST_F49B002UA,         256,    4096,           probe_jedec,            erase_chip_jedec,               write_49f002},
-#ifndef DISABLE_DOC
-       {"M-Systems",   "MD-2802",              MSYSTEMS_ID,    MSYSTEMS_MD2802,        8,      8 * 1024,       probe_md2802,           erase_md2802,                   write_md2802,           read_md2802},
-#endif
-       {"Sharp",       "LHF00L04",             SHARP_ID,       SHARP_LHF00L04,         1024,   64 * 1024,      probe_lhf00l04,         erase_lhf00l04,                 write_lhf00l04},
+       {"SyncMOS",     "S29C31004T",           SYNCMOS_ID,     S29C31004T,             512,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
        {"SyncMOS",     "S29C51001T",           SYNCMOS_ID,     S29C51001T,             128,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
        {"SyncMOS",     "S29C51002T",           SYNCMOS_ID,     S29C51002T,             256,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
        {"SyncMOS",     "S29C51004T",           SYNCMOS_ID,     S29C51004T,             512,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
-       {"SyncMOS",     "S29C31004T",           SYNCMOS_ID,     S29C31004T,             512,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
+       {"Winbond",     "W25x10",               WINBOND_NEX_ID, W_25X10,                128,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"Winbond",     "W25x20",               WINBOND_NEX_ID, W_25X20,                256,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"Winbond",     "W25x40",               WINBOND_NEX_ID, W_25X40,                512,    256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"Winbond",     "W25x80",               WINBOND_NEX_ID, W_25X80,                1024,   256,            probe_spi,              generic_spi_chip_erase_c7,      generic_spi_chip_write, generic_spi_chip_read},
+       {"Winbond",     "W29C011",              WINBOND_ID,     W_29C011,               128,    128,            probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"Winbond",     "W29C020C",             WINBOND_ID,     W_29C020C,              256,    128,            probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"Winbond",     "W29C040P",             WINBOND_ID,     W_29C040P,              512,    256,            probe_jedec,            erase_chip_jedec,               write_jedec},
+       {"Winbond",     "W29EE011",             WINBOND_ID,     W_29C011,               128,    128,            probe_w29ee011,         erase_chip_jedec,               write_jedec},
+       {"Winbond",     "W39V040A",             WINBOND_ID,     W_39V040A,              512,    64*1024,        probe_jedec,            erase_chip_jedec,               write_39sf020},
+       {"Winbond",     "W39V040B",             WINBOND_ID,     W_39V040B,              512,    64*1024,        probe_jedec,            erase_chip_jedec,               write_39sf020},
+       {"Winbond",     "W39V040FA",            WINBOND_ID,     W_39V040FA,             512,    64*1024,        probe_jedec,            erase_chip_jedec,               write_39sf020},
+       {"Winbond",     "W39V080A",             WINBOND_ID,     W_39V080A,              1024,   64*1024,        probe_jedec,            erase_chip_jedec,               write_39sf020},
+       {"Winbond",     "W49F002U",             WINBOND_ID,     W_49F002U,              256,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
+       {"Winbond",     "W49V002A",             WINBOND_ID,     W_49V002A,              256,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
+       {"Winbond",     "W49V002FA",            WINBOND_ID,     W_49V002FA,             256,    128,            probe_jedec,            erase_chip_jedec,               write_49f002},
+
        {"EON",         "unknown SPI chip",     EON_ID_NOPREFIX,GENERIC_DEVICE_ID,      0,      0,              probe_spi,              NULL,                           NULL},
        {"Macronix",    "unknown SPI chip",     MX_ID,          GENERIC_DEVICE_ID,      0,      0,              probe_spi,              NULL,                           NULL},
        {"PMC",         "unknown SPI chip",     PMC_ID,         GENERIC_DEVICE_ID,      0,      0,              probe_spi,              NULL,                           NULL},
        {"SST",         "unknown SPI chip",     SST_ID,         GENERIC_DEVICE_ID,      0,      0,              probe_spi,              NULL,                           NULL},
        {"ST",          "unknown SPI chip",     ST_ID,          GENERIC_DEVICE_ID,      0,      0,              probe_spi,              NULL,                           NULL},
+
        {NULL,}
 };