summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authoriabdalkader <i.abdalkader@gmail.com>2024-12-19 11:22:01 +0100
committerDamien George <damien@micropython.org>2025-01-16 15:26:14 +1100
commitb79ceeca8fc006c14fb1be5c9be3962f09269a85 (patch)
treee6d6e9c709214d44dfcb20ce247fc427390db233
parent5fa960c71912b0c5dace6ccd60a8dba48dc9e2da (diff)
downloadmicropython-b79ceeca8fc006c14fb1be5c9be3962f09269a85.tar.gz
micropython-b79ceeca8fc006c14fb1be5c9be3962f09269a85.zip
stm32/boards: Reserve SPI bus when it's used for external flash storage.
Reserve SPI flash bus used for storage or XIP. Signed-off-by: iabdalkader <i.abdalkader@gmail.com>
-rw-r--r--ports/stm32/boards/ADAFRUIT_F405_EXPRESS/mpconfigboard.h1
-rw-r--r--ports/stm32/boards/LEGO_HUB_NO6/mpconfigboard.h1
-rw-r--r--ports/stm32/boards/MIKROE_QUAIL/mpconfigboard.h1
-rw-r--r--ports/stm32/boards/WEACT_F411_BLACKPILL/mpconfigboard.h3
4 files changed, 6 insertions, 0 deletions
diff --git a/ports/stm32/boards/ADAFRUIT_F405_EXPRESS/mpconfigboard.h b/ports/stm32/boards/ADAFRUIT_F405_EXPRESS/mpconfigboard.h
index a7bfc37df2..c573f942a0 100644
--- a/ports/stm32/boards/ADAFRUIT_F405_EXPRESS/mpconfigboard.h
+++ b/ports/stm32/boards/ADAFRUIT_F405_EXPRESS/mpconfigboard.h
@@ -28,6 +28,7 @@
// External SPI Flash config
#if !MICROPY_HW_ENABLE_INTERNAL_FLASH_STORAGE
+#define MICROPY_HW_SPI_IS_RESERVED(id) (id == 1) // Reserve SPI flash bus.
#define MICROPY_HW_SPIFLASH_SIZE_BITS (16 * 1024 * 1024) // 16 Mbit (2 MByte)
#define MICROPY_HW_SPIFLASH_CS (MICROPY_HW_SPI1_NSS)
diff --git a/ports/stm32/boards/LEGO_HUB_NO6/mpconfigboard.h b/ports/stm32/boards/LEGO_HUB_NO6/mpconfigboard.h
index ffc53fa6fc..9878b1533e 100644
--- a/ports/stm32/boards/LEGO_HUB_NO6/mpconfigboard.h
+++ b/ports/stm32/boards/LEGO_HUB_NO6/mpconfigboard.h
@@ -65,6 +65,7 @@
#define MICROPY_HW_SPI2_SCK (pyb_pin_FLASH_SCK)
#define MICROPY_HW_SPI2_MISO (pyb_pin_FLASH_MISO)
#define MICROPY_HW_SPI2_MOSI (pyb_pin_FLASH_MOSI)
+#define MICROPY_HW_SPI_IS_RESERVED(id) (id == 2) // Reserve SPI flash bus.
// USB config
#define MICROPY_HW_USB_VBUS_DETECT_PIN (pyb_pin_USB_VBUS)
diff --git a/ports/stm32/boards/MIKROE_QUAIL/mpconfigboard.h b/ports/stm32/boards/MIKROE_QUAIL/mpconfigboard.h
index 4c3fbba052..d7b21d801f 100644
--- a/ports/stm32/boards/MIKROE_QUAIL/mpconfigboard.h
+++ b/ports/stm32/boards/MIKROE_QUAIL/mpconfigboard.h
@@ -71,6 +71,7 @@
// External SPI Flash config (Cypress S25FL164K)
#if !MICROPY_HW_ENABLE_INTERNAL_FLASH_STORAGE
+#define MICROPY_HW_SPI_IS_STATIC(id) (id == 3) // Shared with SPIFLASH.
#define MICROPY_HW_SPIFLASH_SIZE_BITS (64 * 1024 * 1024) // 64 Mbit (8 MByte)
#define MICROPY_HW_SPIFLASH_CS (pin_A13)
diff --git a/ports/stm32/boards/WEACT_F411_BLACKPILL/mpconfigboard.h b/ports/stm32/boards/WEACT_F411_BLACKPILL/mpconfigboard.h
index 561c1a9f15..98d6dc6a0b 100644
--- a/ports/stm32/boards/WEACT_F411_BLACKPILL/mpconfigboard.h
+++ b/ports/stm32/boards/WEACT_F411_BLACKPILL/mpconfigboard.h
@@ -86,6 +86,9 @@
#define MICROPY_HW_ENABLE_INTERNAL_FLASH_STORAGE (1)
#else
+// Reserve SPI flash bus.
+#define MICROPY_HW_SPI_IS_RESERVED(id) (id == 1)
+
// Disable internal filesystem to use spiflash.
#define MICROPY_HW_ENABLE_INTERNAL_FLASH_STORAGE (0)