summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--examples/build_system/make/toolchain/riscv_gcc.mk2
-rw-r--r--hw/bsp/family_support.mk17
2 files changed, 16 insertions, 3 deletions
diff --git a/examples/build_system/make/toolchain/riscv_gcc.mk b/examples/build_system/make/toolchain/riscv_gcc.mk
index 843aff38c..b5de12a83 100644
--- a/examples/build_system/make/toolchain/riscv_gcc.mk
+++ b/examples/build_system/make/toolchain/riscv_gcc.mk
@@ -1,7 +1,7 @@
# makefile for arm gcc toolchain
# Can be set by family, default to ARM GCC
-CROSS_COMPILE ?= riscv-none-embed-
+CROSS_COMPILE ?= riscv-none-elf-
CC = $(CROSS_COMPILE)gcc
CXX = $(CROSS_COMPILE)g++
diff --git a/hw/bsp/family_support.mk b/hw/bsp/family_support.mk
index db410a657..7122a7764 100644
--- a/hw/bsp/family_support.mk
+++ b/hw/bsp/family_support.mk
@@ -131,8 +131,21 @@ ifdef CPU_CORE
include ${TOP}/examples/build_system/make/cpu/$(CPU_CORE).mk
endif
-# toolchain specific
-include ${TOP}/examples/build_system/make/toolchain/arm_$(TOOLCHAIN).mk
+# toolchain specific - select based on CPU architecture
+ifdef CPU_CORE
+ ifneq (,$(filter cortex% arm%,$(CPU_CORE)))
+ # ARM/Cortex architecture
+ include ${TOP}/examples/build_system/make/toolchain/arm_$(TOOLCHAIN).mk
+ else ifneq (,$(filter rv%,$(CPU_CORE)))
+ # RISC-V architecture
+ include ${TOP}/examples/build_system/make/toolchain/riscv_$(TOOLCHAIN).mk
+ else
+ $(error Unsupported CPU_CORE architecture: $(CPU_CORE). Must start with cortex, arm, or rv)
+ endif
+else
+ # Default to ARM if CPU_CORE not specified
+ include ${TOP}/examples/build_system/make/toolchain/arm_$(TOOLCHAIN).mk
+endif
#---------------------- FreeRTOS -----------------------
FREERTOS_SRC = lib/FreeRTOS-Kernel