Convert chips to block_erasers:
SyncMOS S29C31004T
SyncMOS S29C51001T
SyncMOS S29C51002T
SyncMOS S29C51004T
TI TMS29F002RT
TI TMS29F002RB
SyncMOS chips have Uniform sector; boot blocks on chips are made up of
uniform sectors but have locking.
Signed-off-by: Sean Nelson <[email protected]>
diff --git a/flashchips.c b/flashchips.c
index 0803dd0..83f108c 100644
--- a/flashchips.c
+++ b/flashchips.c
@@ -4627,99 +4627,169 @@ struct flashchip flashchips[] = {
.name = "S29C31004T",
.bustype = CHIP_BUSTYPE_PARALLEL,
.manufacture_id = SYNCMOS_ID,
.model_id = S29C31004T,
.total_size = 512,
.page_size = 128,
.tested = TEST_UNTESTED,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO, /* Datasheet has no timing info
specified */
- .erase = erase_chip_jedec,
+ .erase = NULL,
+ .block_erasers =
+ {
+ {
+ .eraseblocks = { {1 * 1024, 512} },
+ .block_erase = erase_sector_jedec,
+ }, {
+ .eraseblocks = { {512 * 1024, 1} },
+ .block_erase = erase_chip_block_jedec,
+ },
+ },
.write = write_49f002,
.read = read_memmapped,
},
{
.vendor = "SyncMOS",
.name = "S29C51001T",
.bustype = CHIP_BUSTYPE_PARALLEL,
.manufacture_id = SYNCMOS_ID,
.model_id = S29C51001T,
.total_size = 128,
.page_size = 128,
.tested = TEST_UNTESTED,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO, /* Datasheet has no timing info
specified */
- .erase = erase_chip_jedec,
+ .erase = NULL,
+ .block_erasers =
+ {
+ {
+ .eraseblocks = { {512, 256} },
+ .block_erase = erase_sector_jedec,
+ }, {
+ .eraseblocks = { {128 * 1024, 1} },
+ .block_erase = erase_chip_block_jedec,
+ },
+ },
.write = write_49f002,
.read = read_memmapped,
},
{
.vendor = "SyncMOS",
.name = "S29C51002T",
.bustype = CHIP_BUSTYPE_PARALLEL,
.manufacture_id = SYNCMOS_ID,
.model_id = S29C51002T,
.total_size = 256,
.page_size = 128,
- .tested = TEST_OK_PREW,
+ .tested = TEST_OK_PRW,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO, /* Datasheet has no timing info
specified */
- .erase = erase_chip_jedec,
+ .erase = NULL,
+ .block_erasers =
+ {
+ {
+ .eraseblocks = { {512, 512} },
+ .block_erase = erase_sector_jedec,
+ }, {
+ .eraseblocks = { {256 * 1024, 1} },
+ .block_erase = erase_chip_block_jedec,
+ },
+ },
.write = write_49f002,
.read = read_memmapped,
},
{
.vendor = "SyncMOS",
.name = "S29C51004T",
.bustype = CHIP_BUSTYPE_PARALLEL,
.manufacture_id = SYNCMOS_ID,
.model_id = S29C51004T,
.total_size = 512,
.page_size = 128,
.tested = TEST_UNTESTED,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO,
- .erase = erase_chip_jedec,
+ .erase = NULL,
+ .block_erasers =
+ {
+ {
+ .eraseblocks = { {1 * 1024, 496} },
+ .block_erase = erase_sector_jedec,
+ }, {
+ .eraseblocks = { {512 * 1024, 1} },
+ .block_erase = erase_chip_block_jedec,
+ },
+ },
.write = write_49f002,
.read = read_memmapped,
},
{
.vendor = "TI",
.name = "TMS29F002RB",
.bustype = CHIP_BUSTYPE_PARALLEL,
.manufacture_id = TI_OLD_ID,
.model_id = TI_TMS29F002RB,
.total_size = 256,
.page_size = 16384, /* Non-uniform sectors */
.tested = TEST_UNTESTED,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO, /* Datasheet has no timing info
specified */
.erase = NULL,
+ .block_erasers =
+ {
+ {
+ .eraseblocks = {
+ {16 * 1024, 1},
+ {8 * 1024, 2},
+ {32 * 1024, 1},
+ {64 * 1024, 3},
+ },
+ .block_erase = erase_sector_jedec,
+ }, {
+ .eraseblocks = { {256 * 1024, 1} },
+ .block_erase = erase_chip_block_jedec,
+ },
+ },
.write = NULL,
.read = read_memmapped,
},
{
.vendor = "TI",
.name = "TMS29F002RT",
.bustype = CHIP_BUSTYPE_PARALLEL,
.manufacture_id = TI_OLD_ID,
.model_id = TI_TMS29F002RT,
.total_size = 256,
.page_size = 16384, /* Non-uniform sectors */
.tested = TEST_UNTESTED,
.probe = probe_jedec,
.probe_timing = TIMING_ZERO, /* Datasheet has no timing info
specified */
.erase = NULL,
+ .block_erasers =
+ {
+ {
+ .eraseblocks = {
+ {64 * 1024, 3},
+ {32 * 1024, 1},
+ {8 * 1024, 2},
+ {16 * 1024, 1},
+ },
+ .block_erase = erase_sector_jedec,
+ }, {
+ .eraseblocks = { {256 * 1024, 1} },
+ .block_erase = erase_chip_block_jedec,
+ },
+ },
.write = NULL,
.read = read_memmapped,
},
{
.vendor = "Winbond",
.name = "W25x10",
.bustype = CHIP_BUSTYPE_SPI,
.manufacture_id = WINBOND_NEX_ID,
_______________________________________________
flashrom mailing list
[email protected]
http://www.flashrom.org/mailman/listinfo/flashrom