summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--flashchips.c36
-rw-r--r--flashchips.h11
2 files changed, 26 insertions, 21 deletions
diff --git a/flashchips.c b/flashchips.c
index 1c86677..b976ee6 100644
--- a/flashchips.c
+++ b/flashchips.c
@@ -5068,12 +5068,13 @@ const struct flashchip flashchips[] = {
{
.vendor = "Macronix",
- .name = "MX25L512",
+ .name = "MX25L512(E)/MX25V512(C)",
.bustype = BUS_SPI,
.manufacture_id = MACRONIX_ID,
.model_id = MACRONIX_MX25L512,
.total_size = 64,
.page_size = 256,
+ /* MX25L512E supports SFDP */
.feature_bits = FEATURE_WRSR_WREN,
.tested = TEST_UNTESTED,
.probe = probe_spi_rdid,
@@ -5097,21 +5098,22 @@ const struct flashchip flashchips[] = {
.block_erase = spi_block_erase_c7,
},
},
- .printlock = spi_prettyprint_status_register_default_bp1, /* TODO: check */
+ .printlock = spi_prettyprint_status_register_default_bp1,
.unlock = spi_disable_blockprotect,
.write = spi_chip_write_256,
- .read = spi_chip_read,
- .voltage = {2700, 3600},
+ .read = spi_chip_read, /* Fast read (0x0B) supported, MX25L512E supports dual I/O */
+ .voltage = {2700, 3600}, /* 2.35-3.6V for MX25V512(C) */
},
{
.vendor = "Macronix",
- .name = "MX25L1005",
+ .name = "MX25L1005(C)/MX25L1006E",
.bustype = BUS_SPI,
.manufacture_id = MACRONIX_ID,
.model_id = MACRONIX_MX25L1005,
.total_size = 128,
.page_size = 256,
+ /* MX25L1006E supports SFDP */
.feature_bits = FEATURE_WRSR_WREN,
.tested = TEST_OK_PREW,
.probe = probe_spi_rdid,
@@ -5132,16 +5134,16 @@ const struct flashchip flashchips[] = {
.block_erase = spi_block_erase_c7,
},
},
- .printlock = spi_prettyprint_status_register_default_bp3, /* TODO: check */
+ .printlock = spi_prettyprint_status_register_default_bp1,
.unlock = spi_disable_blockprotect,
.write = spi_chip_write_256,
- .read = spi_chip_read,
+ .read = spi_chip_read, /* Fast read (0x0B) supported, MX25L1006E supports dual I/O */
.voltage = {2700, 3600},
},
{
.vendor = "Macronix",
- .name = "MX25L2005",
+ .name = "MX25L2005(C)",
.bustype = BUS_SPI,
.manufacture_id = MACRONIX_ID,
.model_id = MACRONIX_MX25L2005,
@@ -5170,16 +5172,16 @@ const struct flashchip flashchips[] = {
.block_erase = spi_block_erase_c7,
},
},
- .printlock = spi_prettyprint_status_register_default_bp3, /* TODO: check */
+ .printlock = spi_prettyprint_status_register_default_bp1,
.unlock = spi_disable_blockprotect,
.write = spi_chip_write_256,
- .read = spi_chip_read,
+ .read = spi_chip_read, /* Fast read (0x0B) supported */
.voltage = {2700, 3600},
},
{
.vendor = "Macronix",
- .name = "MX25L4005",
+ .name = "MX25L4005(A/C)",
.bustype = BUS_SPI,
.manufacture_id = MACRONIX_ID,
.model_id = MACRONIX_MX25L4005,
@@ -5208,16 +5210,16 @@ const struct flashchip flashchips[] = {
.block_erase = spi_block_erase_c7,
},
},
- .printlock = spi_prettyprint_status_register_default_bp3, /* TODO: check */
+ .printlock = spi_prettyprint_status_register_default_bp2,
.unlock = spi_disable_blockprotect,
.write = spi_chip_write_256,
- .read = spi_chip_read,
+ .read = spi_chip_read, /* Fast read (0x0B) supported */
.voltage = {2700, 3600},
},
{
.vendor = "Macronix",
- .name = "MX25L8005",
+ .name = "MX25L8005/MX25V8005",
.bustype = BUS_SPI,
.manufacture_id = MACRONIX_ID,
.model_id = MACRONIX_MX25L8005,
@@ -5246,11 +5248,11 @@ const struct flashchip flashchips[] = {
.block_erase = spi_block_erase_c7,
},
},
- .printlock = spi_prettyprint_status_register_default_bp3, /* TODO: check */
+ .printlock = spi_prettyprint_status_register_default_bp2,
.unlock = spi_disable_blockprotect,
.write = spi_chip_write_256,
- .read = spi_chip_read,
- .voltage = {2700, 3600},
+ .read = spi_chip_read, /* Fast read (0x0B) supported */
+ .voltage = {2700, 3600}, /* 2.35-3.6V for MX25V8005 */
},
{
diff --git a/flashchips.h b/flashchips.h
index 99e37d5..d123ab0 100644
--- a/flashchips.h
+++ b/flashchips.h
@@ -382,10 +382,10 @@
* and use the same set of IDs.
*/
#define MACRONIX_ID 0xC2 /* Macronix (MX) */
-#define MACRONIX_MX25L512 0x2010 /* Same as MX25V512 */
-#define MACRONIX_MX25L1005 0x2011
-#define MACRONIX_MX25L2005 0x2012
-#define MACRONIX_MX25L4005 0x2013 /* MX25L4005{,A} */
+#define MACRONIX_MX25L512 0x2010 /* Same as MX25L512E, MX25V512, MX25V512C */
+#define MACRONIX_MX25L1005 0x2011 /* Same as MX25L1005C, MX25L1006E */
+#define MACRONIX_MX25L2005 0x2012 /* Same as MX25L2005C */
+#define MACRONIX_MX25L4005 0x2013 /* Same as MX25L4005A, MX25L4005C */
#define MACRONIX_MX25L8005 0x2014 /* Same as MX25V8005 */
#define MACRONIX_MX25L1605 0x2015 /* MX25L1605{,A,D} */
#define MACRONIX_MX25L3205 0x2016 /* MX25L3205{,A} */
@@ -393,6 +393,9 @@
#define MACRONIX_MX25L12805 0x2018 /* MX25L12805 */
#define MACRONIX_MX25L1635D 0x2415
#define MACRONIX_MX25L1635E 0x2515 /* MX25L1635{E} */
+#define MACRONIX_MX25U1635E 0x2535
+#define MACRONIX_MX25U3235E 0x2536 /* Same as MX25U6435F */
+#define MACRONIX_MX25U6435E 0x2537 /* Same as MX25U6435F */
#define MACRONIX_MX25L3235D 0x5E16 /* MX25L3225D/MX25L3235D/MX25L3237D */
#define MACRONIX_MX29F001B 0x19
#define MACRONIX_MX29F001T 0x18
OpenPOWER on IntegriCloud