summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ports/stm32f4/boards/stm32f412zg_discovery/mpconfigboard.h3
-rw-r--r--ports/stm32f4/boards/stm32f412zg_discovery/mpconfigboard.mk5
-rw-r--r--supervisor/shared/external_flash/devices.h19
3 files changed, 26 insertions, 1 deletions
diff --git a/ports/stm32f4/boards/stm32f412zg_discovery/mpconfigboard.h b/ports/stm32f4/boards/stm32f412zg_discovery/mpconfigboard.h
index 0a89d9646..ebee98f89 100644
--- a/ports/stm32f4/boards/stm32f412zg_discovery/mpconfigboard.h
+++ b/ports/stm32f4/boards/stm32f412zg_discovery/mpconfigboard.h
@@ -34,4 +34,5 @@
#define FLASH_PAGE_SIZE (0x4000)
#define AUTORESET_DELAY_MS 500
-#define BOARD_FLASH_SIZE (FLASH_SIZE - 0x4000) \ No newline at end of file
+#define BOARD_FLASH_SIZE (FLASH_SIZE - 0x4000)
+
diff --git a/ports/stm32f4/boards/stm32f412zg_discovery/mpconfigboard.mk b/ports/stm32f4/boards/stm32f412zg_discovery/mpconfigboard.mk
index 21af63735..509a24410 100644
--- a/ports/stm32f4/boards/stm32f412zg_discovery/mpconfigboard.mk
+++ b/ports/stm32f4/boards/stm32f412zg_discovery/mpconfigboard.mk
@@ -6,6 +6,11 @@ USB_MANUFACTURER = "STMicroelectronics"
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
+# QSPI_FLASH_FILESYSTEM = 1
+# EXTERNAL_FLASH_DEVICE_COUNT = 1
+# EXTERNAL_FLASH_DEVICES = N25Q128A
+# LONGINT_IMPL = MPZ
+
MCU_SERIES = m4
MCU_VARIANT = stm32f4
MCU_SUB_VARIANT = stm32f412zx
diff --git a/supervisor/shared/external_flash/devices.h b/supervisor/shared/external_flash/devices.h
index e787ba739..001e8efef 100644
--- a/supervisor/shared/external_flash/devices.h
+++ b/supervisor/shared/external_flash/devices.h
@@ -442,4 +442,23 @@ typedef struct {
.write_status_register_split = false, \
.single_status_byte = false, \
}
+
+// Settings for the Micron N25Q128A 16MiB SPI flash.
+// Datasheet: https://www.micron.com/-/media/client/global/documents/products/data-sheet/nor-flash/serial-nor/n25q/n25q_128mb_3v_65nm.pdf
+#define N25Q128A {\
+ .total_size = (1 << 24), /* 16 MiB */ \
+ .start_up_time_us = 5000, \
+ .manufacturer_id = 0x20, \
+ .memory_type = 0xBA, \
+ .capacity = 0x18, \
+ .max_clock_speed_mhz = 108, \
+ .quad_enable_bit_mask = 0x00, \
+ .has_sector_protection = false, \ /*maybe?*/
+ .supports_fast_read = true, \
+ .supports_qspi = true, \
+ .supports_qspi_writes = true, \
+ .write_status_register_split = false, \
+ .single_status_byte = false, \
+}
+
#endif // MICROPY_INCLUDED_ATMEL_SAMD_EXTERNAL_FLASH_DEVICES_H