mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-27 23:22:37 +02:00
Add chip definitions for the folowing chips
Bright BM29F040 Hyundai HY29F040A Macronix MX29F040 Also add chip IDs for Bright BM29F400T/B Datasheets: http://www.ezoflash.com/datasheets/flash/Winbond/BM29F040.pdf http://www.ezoflash.com/datasheets/flash/Hyundai/HY29F040A.pdf http://www.ezoflash.com/datasheets/flash/Macronix/MX29F040.pdf http://www.ezoflash.com/datasheets/flash/Winbond/BM29F400T_B.pdf Bright BM29F040 probe/read test report: http://www.flashrom.org/pipermail/flashrom/2010-September/004805.html Corresponding to flashrom svn r1176. Signed-off-by: Joshua Roys <roysjosh@gmail.com> Acked-by: Mattias Mattsson <vitplister@gmail.com>
This commit is contained in:
parent
6eabe282fe
commit
f1324e0063
78
flashchips.c
78
flashchips.c
@ -1961,6 +1961,32 @@ struct flashchip flashchips[] = {
|
||||
.read = read_memmapped,
|
||||
},
|
||||
|
||||
{
|
||||
.vendor = "Bright",
|
||||
.name = "BM29F040",
|
||||
.bustype = CHIP_BUSTYPE_PARALLEL,
|
||||
.manufacture_id = BRIGHT_ID,
|
||||
.model_id = BRIGHT_BM29F040,
|
||||
.total_size = 512,
|
||||
.page_size = 64 * 1024,
|
||||
.feature_bits = FEATURE_EITHER_RESET,
|
||||
.tested = TEST_OK_PR,
|
||||
.probe = probe_jedec,
|
||||
.probe_timing = TIMING_ZERO,
|
||||
.block_erasers =
|
||||
{
|
||||
{
|
||||
.eraseblocks = { {64 * 1024, 8} },
|
||||
.block_erase = erase_sector_jedec,
|
||||
}, {
|
||||
.eraseblocks = { {512 * 1024, 1} },
|
||||
.block_erase = erase_chip_block_jedec,
|
||||
},
|
||||
},
|
||||
.write = write_jedec_1,
|
||||
.read = read_memmapped,
|
||||
},
|
||||
|
||||
{
|
||||
.vendor = "EMST",
|
||||
.name = "F49B002UA",
|
||||
@ -3084,6 +3110,32 @@ struct flashchip flashchips[] = {
|
||||
.read = read_memmapped,
|
||||
},
|
||||
|
||||
{
|
||||
.vendor = "Hyundai",
|
||||
.name = "HY29F040A",
|
||||
.bustype = CHIP_BUSTYPE_PARALLEL,
|
||||
.manufacture_id = HYUNDAI_ID,
|
||||
.model_id = HYUNDAI_HY29F040A,
|
||||
.total_size = 512,
|
||||
.page_size = 64 * 1024,
|
||||
.feature_bits = FEATURE_ADDR_2AA | FEATURE_EITHER_RESET,
|
||||
.tested = TEST_UNTESTED,
|
||||
.probe = probe_jedec,
|
||||
.probe_timing = TIMING_ZERO,
|
||||
.block_erasers =
|
||||
{
|
||||
{
|
||||
.eraseblocks = { {64 * 1024, 8} },
|
||||
.block_erase = erase_sector_jedec,
|
||||
}, {
|
||||
.eraseblocks = { {512 * 1024, 1} },
|
||||
.block_erase = erase_chip_block_jedec,
|
||||
},
|
||||
},
|
||||
.write = write_jedec_1,
|
||||
.read = read_memmapped,
|
||||
},
|
||||
|
||||
{
|
||||
.vendor = "Intel",
|
||||
.name = "28F001BX-B",
|
||||
@ -3881,6 +3933,32 @@ struct flashchip flashchips[] = {
|
||||
.read = read_memmapped,
|
||||
},
|
||||
|
||||
{
|
||||
.vendor = "Macronix",
|
||||
.name = "MX29F040",
|
||||
.bustype = CHIP_BUSTYPE_PARALLEL,
|
||||
.manufacture_id = MACRONIX_ID,
|
||||
.model_id = MACRONIX_MX29F040,
|
||||
.total_size = 512,
|
||||
.page_size = 64 * 1024,
|
||||
.feature_bits = FEATURE_ADDR_2AA | FEATURE_SHORT_RESET,
|
||||
.tested = TEST_UNTESTED,
|
||||
.probe = probe_jedec,
|
||||
.probe_timing = TIMING_ZERO,
|
||||
.block_erasers =
|
||||
{
|
||||
{
|
||||
.eraseblocks = { {64 * 1024, 8} },
|
||||
.block_erase = erase_sector_jedec,
|
||||
}, {
|
||||
.eraseblocks = { {512 * 1024, 1} },
|
||||
.block_erase = erase_chip_block_jedec,
|
||||
},
|
||||
},
|
||||
.write = write_jedec_1,
|
||||
.read = read_memmapped,
|
||||
},
|
||||
|
||||
{
|
||||
.vendor = "Macronix",
|
||||
.name = "MX29LV040",
|
||||
|
@ -171,6 +171,12 @@
|
||||
#define ATMEL_AT49F002N 0x07 /* for AT49F002(N) */
|
||||
#define ATMEL_AT49F002NT 0x08 /* for AT49F002(N)T */
|
||||
|
||||
/* Bright Microelectronics has the same manufacturer ID as Hyundai... */
|
||||
#define BRIGHT_ID 0xAD /* Bright Microelectronics */
|
||||
#define BRIGHT_BM29F040 0x40
|
||||
#define BRIGHT_BM29F400B 0xAB
|
||||
#define BRIGHT_BM29F400T 0xAD
|
||||
|
||||
#define CATALYST_ID 0x31 /* Catalyst */
|
||||
|
||||
#define EMST_ID 0x8C /* EMST / EFST Elite Flash Storage */
|
||||
|
Loading…
x
Reference in New Issue
Block a user