summaryrefslogtreecommitdiff
path: root/supervisor
diff options
context:
space:
mode:
authorDan Halbert <halbert@halwitz.org>2018-12-06 12:41:38 -0500
committerDan Halbert <halbert@halwitz.org>2018-12-06 12:41:38 -0500
commit125901e4e20cfbdef8b8a0a71b424d1545b203b1 (patch)
treea0d60257438fa32aa4bdbbd59254fb83ece85c79 /supervisor
parent3164b16196e437c544d03059f2475bfed0a15f30 (diff)
parentca3c9920375909245f4efed1de4b2c192dbbad3a (diff)
Merge remote-tracking branch 'adafruit/master' into bleio-rev
Diffstat (limited to 'supervisor')
-rw-r--r--supervisor/shared/external_flash/devices.h45
1 files changed, 40 insertions, 5 deletions
diff --git a/supervisor/shared/external_flash/devices.h b/supervisor/shared/external_flash/devices.h
index 06fc178cb..b535016a3 100644
--- a/supervisor/shared/external_flash/devices.h
+++ b/supervisor/shared/external_flash/devices.h
@@ -86,7 +86,7 @@ typedef struct {
}
// Settings for the Gigadevice GD25Q16C 2MiB SPI flash.
-// Datasheet: http://www.gigadevice.com/wp-content/uploads/2017/12/DS-00086-GD25Q16C-Rev2.6.pdf
+// Datasheet: http://www.gigadevice.com/datasheet/gd25q16c/
#define GD25Q16C {\
.total_size = (1 << 21), /* 2 MiB */ \
.start_up_time_us = 5000, \
@@ -220,10 +220,10 @@ typedef struct {
.memory_type = 0x70, \
.capacity = 0x15, \
.max_clock_speed_mhz = 133, \
+ .quad_enable_bit_mask = 0x02, \
.has_sector_protection = false, \
.supports_fast_read = true, \
.supports_qspi = true, \
- .has_quad_enable = true, \
.supports_qspi_writes = true, \
.write_status_register_split = false, \
}
@@ -254,10 +254,10 @@ typedef struct {
.memory_type = 0x70, \
.capacity = 0x16, \
.max_clock_speed_mhz = 133, \
+ .quad_enable_bit_mask = 0x02, \
.has_sector_protection = false, \
.supports_fast_read = true, \
.supports_qspi = true, \
- .has_quad_enable = true, \
.supports_qspi_writes = true, \
.write_status_register_split = false, \
}
@@ -275,7 +275,6 @@ typedef struct {
.has_sector_protection = false, \
.supports_fast_read = true, \
.supports_qspi = true, \
- .has_quad_enable = true, \
.supports_qspi_writes = true, \
.write_status_register_split = false, \
.single_status_byte = false, \
@@ -336,6 +335,42 @@ typedef struct {
.single_status_byte = false, \
}
+// Settings for the Macronix MX25L1606 2MiB SPI flash.
+// Datasheet:
+#define MX25L1606 {\
+ .total_size = (1 << 21), /* 2 MiB */ \
+ .start_up_time_us = 5000, \
+ .manufacturer_id = 0xc2, \
+ .memory_type = 0x20, \
+ .capacity = 0x15, \
+ .max_clock_speed_mhz = 8, \
+ .quad_enable_bit_mask = 0x40, \
+ .has_sector_protection = false, \
+ .supports_fast_read = true, \
+ .supports_qspi = true, \
+ .supports_qspi_writes = true, \
+ .write_status_register_split = false, \
+ .single_status_byte = true, \
+}
+
+// Settings for the Macronix MX25L3233F 4MiB SPI flash.
+// Datasheet: http://www.macronix.com/Lists/Datasheet/Attachments/7426/MX25L3233F,%203V,%2032Mb,%20v1.6.pdf
+#define MX25L3233F {\
+ .total_size = (1 << 22), /* 4 MiB */ \
+ .start_up_time_us = 5000, \
+ .manufacturer_id = 0xc2, \
+ .memory_type = 0x20, \
+ .capacity = 0x16, \
+ .max_clock_speed_mhz = 133, \
+ .quad_enable_bit_mask = 0x40, \
+ .has_sector_protection = false, \
+ .supports_fast_read = true, \
+ .supports_qspi = true, \
+ .supports_qspi_writes = true, \
+ .write_status_register_split = false, \
+ .single_status_byte = true, \
+}
+
// Settings for the Macronix MX25R6435F 8MiB SPI flash.
// Datasheet: http://www.macronix.com/Lists/Datasheet/Attachments/7428/MX25R6435F,%20Wide%20Range,%2064Mb,%20v1.4.pdf
// By default its in lower power mode which can only do 8mhz. In high power mode it can do 80mhz.
@@ -364,10 +399,10 @@ typedef struct {
.memory_type = 0x70, \
.capacity = 0x18, \
.max_clock_speed_mhz = 133, \
+ .quad_enable_bit_mask = 0x02, \
.has_sector_protection = false, \
.supports_fast_read = true, \
.supports_qspi = true, \
- .has_quad_enable = true, \
.supports_qspi_writes = true, \
.write_status_register_split = false, \
}