From 4f5115070822559bef925fbd533888d50f19dfdd Mon Sep 17 00:00:00 2001 From: Jason2866 <24528715+Jason2866@users.noreply.github.com> Date: Mon, 26 Sep 2022 11:11:48 +0200 Subject: [PATCH] Take into account "memory_type" option to properly select boot mode (#913) Use correct bootloader `opi` when `"boot": "opi"` is not set for Arduino framework Resolves #837, enhances #904 --- builder/main.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/builder/main.py b/builder/main.py index dc12116..4d2396e 100644 --- a/builder/main.py +++ b/builder/main.py @@ -59,7 +59,11 @@ def _get_board_flash_mode(env): def _get_board_boot_mode(env): - return env.BoardConfig().get("build.boot", "$BOARD_FLASH_MODE") + memory_type = env.BoardConfig().get("build.arduino.memory_type", "") + build_boot = env.BoardConfig().get("build.boot", "$BOARD_FLASH_MODE") + if ["arduino"] == env.get("PIOFRAMEWORK") and memory_type in ("opi_opi", "opi_qspi"): + build_boot = "opi" + return build_boot def _parse_size(value):