1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-04-27 23:22:37 +02:00

Add W39L040

Corresponding to flashrom svn r1268.

Signed-off-by: Michael Karcher <flashrom@mkarcher.dialup.fu-berlin.de>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
This commit is contained in:
Michael Karcher 2011-03-06 17:58:05 +00:00
parent 8262e82d1c
commit 19e0aacd63
3 changed files with 47 additions and 0 deletions

View File

@ -110,6 +110,7 @@ int printlock_sst_fwhub(struct flashchip *flash);
int unlock_sst_fwhub(struct flashchip *flash);
/* w39.c */
int printlock_w39l040(struct flashchip * flash);
int printlock_w39v040a(struct flashchip *flash);
int printlock_w39v040b(struct flashchip *flash);
int printlock_w39v040c(struct flashchip *flash);

View File

@ -7818,6 +7818,36 @@ struct flashchip flashchips[] = {
.read = read_memmapped,
},
{
.vendor = "Winbond",
.name = "W39L040",
.bustype = CHIP_BUSTYPE_PARALLEL,
.manufacture_id = WINBOND_ID,
.model_id = WINBOND_W39L040,
.total_size = 512,
.page_size = 64 * 1024,
.feature_bits = FEATURE_EITHER_RESET,
.tested = TEST_OK_PR,
.probe = probe_jedec,
.probe_timing = 10,
.block_erasers =
{
{
.eraseblocks = { {4 * 1024, 128} },
.block_erase = erase_block_jedec,
}, {
.eraseblocks = { {64 * 1024, 8} },
.block_erase = erase_sector_jedec,
}, {
.eraseblocks = { {512 * 1024, 1} },
.block_erase = erase_chip_block_jedec,
}
},
.printlock = printlock_w39l040,
.write = write_jedec_1,
.read = read_memmapped,
},
{
.vendor = "Winbond",
.name = "W39V040A",

16
w39.c
View File

@ -161,6 +161,22 @@ static int unlock_w39_fwh(struct flashchip *flash)
return 0;
}
int printlock_w39l040(struct flashchip * flash)
{
uint8_t lock;
int ret;
lock = w39_idmode_readb(flash, 0x00002);
msg_cdbg("Bottom boot block:\n");
ret = printlock_w39_bootblock_64k16k(lock);
lock = w39_idmode_readb(flash, 0x7fff2);
msg_cdbg("Top boot block:\n");
ret |= printlock_w39_bootblock_64k16k(lock);
return ret;
}
int printlock_w39v040a(struct flashchip *flash)
{
uint8_t lock;