Merge tag 'u-boot-rockchip-20200531' of https://gitlab.denx.de/u-boot/custodians...
[oweals/u-boot.git] / arch / riscv / Makefile
index 084888ad8bf05141af49cb12e9d7d92db6917184..0b80eb8d864582fb67babd325dc793fe164eed68 100644 (file)
@@ -3,7 +3,35 @@
 # Copyright (C) 2017 Andes Technology Corporation.
 # Rick Chen, Andes Technology Corporation <rick@andestech.com>
 
-head-y := arch/riscv/cpu/$(CPU)/start.o
+ifeq ($(CONFIG_ARCH_RV64I),y)
+       ARCH_BASE = rv64im
+       ABI = lp64
+endif
+ifeq ($(CONFIG_ARCH_RV32I),y)
+       ARCH_BASE = rv32im
+       ABI = ilp32
+endif
+ifeq ($(CONFIG_RISCV_ISA_A),y)
+       ARCH_A = a
+endif
+ifeq ($(CONFIG_RISCV_ISA_C),y)
+       ARCH_C = c
+endif
+ifeq ($(CONFIG_CMODEL_MEDLOW),y)
+       CMODEL = medlow
+endif
+ifeq ($(CONFIG_CMODEL_MEDANY),y)
+       CMODEL = medany
+endif
 
+ARCH_FLAGS = -march=$(ARCH_BASE)$(ARCH_A)$(ARCH_C) -mabi=$(ABI) \
+            -mcmodel=$(CMODEL)
+
+PLATFORM_CPPFLAGS      += $(ARCH_FLAGS)
+CFLAGS_EFI             += $(ARCH_FLAGS)
+
+head-y := arch/riscv/cpu/start.o
+
+libs-y += arch/riscv/cpu/
 libs-y += arch/riscv/cpu/$(CPU)/
 libs-y += arch/riscv/lib/