Changeset 3431

Show
Ignore:
Timestamp:
07/21/08 19:48:40 (3 months ago)
Author:
stuge
Message:

flashrom: Winbond W39V040C and MSI K8T Neo2-F

W39V040C does standard JEDEC commands except chip erase so add a small driver.
probe_w39v040c() prints the block lock pin status when a chip is found.

The Neo2 board enable matches on 8237-internal IDE and onboard NIC PCI IDs.

Many thanks to Daniel McLellan? for testing all of this on hardware!
Build tested by Uwe.

Signed-off-by: Peter Stuge <peter@…>
Acked-by: Uwe Hermann <uwe@…>

Location:
trunk/util/flashrom
Files:
1 added
4 modified

Legend:

Unmodified
Added
Removed
  • trunk/util/flashrom/Makefile

    r3404 r3431  
    3030        sst49lfxxxc.o sst_fwhub.o layout.o cbtable.o flashchips.o \ 
    3131        flashrom.o w39v080fa.o sharplhf00l04.o w29ee011.o spi.o it87spi.o \ 
    32         ichspi.o 
     32        ichspi.o w39v040c.o 
    3333 
    3434all: pciutils dep $(PROGRAM) 
  • trunk/util/flashrom/board_enable.c

    r3413 r3431  
    115115 * 
    116116 * Suited for: 
     117 *  - MSI K8T Neo2-F 
    117118 *  - MSI K8N-NEO3 
    118119 */ 
     
    140141 
    141142        return 0; 
     143} 
     144 
     145static int w83627thf_gpio4_4_raise_2e(const char *name) 
     146{ 
     147        return w83627thf_gpio4_4_raise(0x2e, name); 
    142148} 
    143149 
     
    618624        {0x1106, 0x3227, 0x1458, 0x5001, 0x10ec, 0x8139, 0x1458, 0xe000, 
    619625         NULL, NULL, "GIGABYTE GA-7VT600", board_biostar_p4m80_m4}, 
     626        {0x1106, 0x3149, 0x1462, 0x7094, 0x10ec, 0x8167, 0x1462, 0x094c, 
     627         NULL, NULL, "MSI K8T Neo2", w83627thf_gpio4_4_raise_2e}, 
    620628        {0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL}    /* Keep this */ 
    621629}; 
  • trunk/util/flashrom/flash.h

    r3418 r3431  
    518518int write_sst_fwhub(struct flashchip *flash, uint8_t *buf); 
    519519 
     520/* w39v040c.c */ 
     521int probe_w39v040c(struct flashchip *flash); 
     522int erase_w39v040c(struct flashchip *flash); 
     523int write_w39v040c(struct flashchip *flash, uint8_t *buf); 
     524 
    520525/* w39V080fa.c */ 
    521526int probe_winbond_fwhub(struct flashchip *flash); 
  • trunk/util/flashrom/flashchips.c

    r3416 r3431  
    133133        {"Winbond",     "W39V040A",             WINBOND_ID,     W_39V040A,              512,    64*1024,        TEST_UNTESTED,  probe_jedec,            erase_chip_jedec,               write_39sf020}, 
    134134        {"Winbond",     "W39V040B",             WINBOND_ID,     W_39V040B,              512,    64*1024,        TEST_OK_PREW,   probe_jedec,            erase_chip_jedec,               write_39sf020}, 
     135        {"Winbond",     "W39V040C",             0xda,           0x50,                   512,    64*1024,        TEST_OK_PREW,   probe_w39v040c,         erase_w39v040c,                 write_w39v040c}, 
    135136        {"Winbond",     "W39V040FA",            WINBOND_ID,     W_39V040FA,             512,    64*1024,        TEST_OK_PR,     probe_jedec,            erase_chip_jedec,               write_39sf020}, 
    136137        {"Winbond",     "W39V080A",             WINBOND_ID,     W_39V080A,              1024,   64*1024,        TEST_OK_PREW,   probe_jedec,            erase_chip_jedec,               write_39sf020},