aboutsummaryrefslogtreecommitdiff
path: root/ports/stm32/boards/STM32F769DISC/mpconfigboard.mk
diff options
context:
space:
mode:
Diffstat (limited to 'ports/stm32/boards/STM32F769DISC/mpconfigboard.mk')
-rw-r--r--ports/stm32/boards/STM32F769DISC/mpconfigboard.mk22
1 files changed, 14 insertions, 8 deletions
diff --git a/ports/stm32/boards/STM32F769DISC/mpconfigboard.mk b/ports/stm32/boards/STM32F769DISC/mpconfigboard.mk
index 04f208c5b..81add8c88 100644
--- a/ports/stm32/boards/STM32F769DISC/mpconfigboard.mk
+++ b/ports/stm32/boards/STM32F769DISC/mpconfigboard.mk
@@ -1,9 +1,11 @@
# By default this board is configured to use mboot which must be deployed first
USE_MBOOT ?= 1
-# By default this board puts some code into external QSPI flash set in XIP mode
+# By default the filesystem is in external QSPI flash. But by setting the
+# following option this board puts some code into external flash set in XIP mode.
# USE_MBOOT must be enabled; see f769_qspi.ld for code that goes in QSPI flash
-USE_QSPI ?= 1
+USE_QSPI_XIP ?= 0
+CFLAGS += -DUSE_QSPI_XIP=$(USE_QSPI_XIP)
# MCU settings
MCU_SERIES = f7
@@ -12,9 +14,11 @@ MICROPY_FLOAT_IMPL = double
AF_FILE = boards/stm32f767_af.csv
ifeq ($(USE_MBOOT),1)
-ifeq ($(USE_QSPI),1)
+ifeq ($(USE_QSPI_XIP),1)
-# When using Mboot and QSPI the text is split between internal and external flash
+# When using Mboot and QSPI-XIP the text is split between internal and external
+# QSPI flash, and the filesystem is in internal flash between the bootloader and
+# the main program text.
LD_FILES = boards/STM32F769DISC/f769_qspi.ld
TEXT0_ADDR = 0x08020000
TEXT1_ADDR = 0x90000000
@@ -23,17 +27,19 @@ TEXT1_SECTIONS = .text_qspi
else
-# When using Mboot but not QSPI all the text goes together after the filesystem
+# When using Mboot but not QSPI-XIP all the text goes together after the bootloader
+# (at same location as when QSPI-XIP is enabled so the same Mboot can be used for
+# either configuration) and the filesystem is in external flash.
LD_FILES = boards/stm32f769.ld boards/common_blifs.ld
TEXT0_ADDR = 0x08020000
endif
else
-# When not using Mboot the ISR text goes first, then the rest after the filesystem
-LD_FILES = boards/stm32f769.ld boards/common_ifs.ld
+# When not using Mboot (and so no ability to load text into QSPI) all the text goes
+# together at the start of internal flash, and the filesystem is in external flash.
+LD_FILES = boards/stm32f769.ld boards/common_basic.ld
TEXT0_ADDR = 0x08000000
-TEXT1_ADDR = 0x08020000
endif