mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-27 07:02:34 +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:
parent
8262e82d1c
commit
19e0aacd63
@ -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);
|
||||
|
30
flashchips.c
30
flashchips.c
@ -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
16
w39.c
@ -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;
|
||||
|
Loading…
x
Reference in New Issue
Block a user