Add initial recognition for the EON EN29LV800(B)(C){B,T}.
The datasheet can be found at: http://www.essi.com.tw/upfile/p20097114268.pdf
I'm not yet clear what CHIP_BUSTYPE it uses. The chip is used on Sony Vaio VGN-FE41 and similar models but will require some board enable measures. --- flashchips.c | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ flashchips.h | 2 + 2 files changed, 66 insertions(+), 0 deletions(-)
diff --git a/flashchips.c b/flashchips.c index f66b95a..2953dd6 100644 --- a/flashchips.c +++ b/flashchips.c @@ -2165,6 +2165,70 @@ struct flashchip flashchips[] = {
{ .vendor = "EON", + .name = "EN29LV800(B)(C)B", + .bustype = CHIP_BUSTYPE_UNKNOWN, + .manufacture_id = EON_ID, + .model_id = EN_29LV800B, + .total_size = 1024, + .page_size = 1024, // TODO: check this + .feature_bits = FEATURE_ADDR_AAA | FEATURE_EITHER_RESET, + .tested = TEST_UNTESTED, + .probe = probe_jedec, + .probe_timing = TIMING_ZERO, /* TODO: check Datasheet has no timing info specified */ + .erase = NULL, + .block_erasers = + { + { + .eraseblocks = { + {16 * 1024, 1}, + {8 * 1024, 2}, + {32 * 1024, 1}, + {64 * 1024, 15}, + }, + .block_erase = erase_sector_jedec, + }, { + .eraseblocks = { {1024 * 1024, 1} }, + .block_erase = erase_chip_block_jedec, + }, + }, + .write = NULL, + .read = read_memmapped, + }, + + { + .vendor = "EON", + .name = "EN29LV800(B)(C)T", + .bustype = CHIP_BUSTYPE_UNKNOWN, + .manufacture_id = EON_ID, + .model_id = EN_29LV800T, + .total_size = 1024, + .page_size = 1024, // TODO: check this + .feature_bits = FEATURE_ADDR_AAA | FEATURE_EITHER_RESET, + .tested = TEST_UNTESTED, + .probe = probe_jedec, + .probe_timing = TIMING_ZERO, /* TODO: check Datasheet has no timing info specified */ + .erase = NULL, + .block_erasers = + { + { + .eraseblocks = { + {64 * 1024, 15}, + {32 * 1024, 1}, + {8 * 1024, 2}, + {16 * 1024, 1}, + }, + .block_erase = erase_sector_jedec, + }, { + .eraseblocks = { {1024 * 1024, 1} }, + .block_erase = erase_chip_block_jedec, + }, + }, + .write = NULL, + .read = read_memmapped, + }, + + { + .vendor = "EON", .name = "EN29F002(A)(N)B", .bustype = CHIP_BUSTYPE_PARALLEL, .manufacture_id = EON_ID, diff --git a/flashchips.h b/flashchips.h index e299852..8a72cb0 100644 --- a/flashchips.h +++ b/flashchips.h @@ -200,6 +200,8 @@ #define EN_29F040A 0x7F04 #define EN_29LV010 0x7F6E #define EN_29LV040A 0x7F4F /* EN_29LV040(A) */ +#define EN_29LV800B 0x7F5B /* EN29LV800/B/C */ +#define EN_29LV800T 0x7FDA #define EN_29F002T 0x7F92 /* Same as EN29F002A */ #define EN_29F002B 0x7F97 /* Same as EN29F002AN */