riscv: Add Kconfig to support RISC-V

Add Kconfig and makefile for RISC-V
Also modify MAINTAINERS for it.

Signed-off-by: Rick Chen <rick@andestech.com>
Signed-off-by: Rick Chen <rickchen36@gmail.com>
Signed-off-by: Greentime Hu <green.hu@gmail.com>
Cc: Padmarao Begari <Padmarao.Begari@microsemi.com>
master
Rick Chen 6 years ago committed by Tom Rini
parent 6020faf62c
commit f94c44e51e
  1. 7
      MAINTAINERS
  2. 42
      arch/riscv/Kconfig
  3. 11
      arch/riscv/Makefile
  4. 33
      arch/riscv/config.mk

@ -423,6 +423,13 @@ S: Orphaned (Since 2017-01)
T: git git://git.denx.de/u-boot-onenand.git
F: drivers/mtd/onenand/
RISC-V
M: Rick Chen <rick@andestech.com>
S: Maintained
T: git git://git.denx.de/u-boot-riscv.git
F: arch/riscv/
F: tools/prelink-riscv.c
SANDBOX
M: Simon Glass <sjg@chromium.org>
S: Maintained

@ -0,0 +1,42 @@
menu "RISCV architecture"
depends on RISCV
config SYS_ARCH
default "riscv"
choice
prompt "Target select"
optional
config TARGET_NX25_AE250
bool "Support nx25-ae250"
endchoice
source "board/AndesTech/nx25-ae250/Kconfig"
choice
prompt "CPU selection"
default CPU_RISCV_32
config CPU_RISCV_32
bool "RISCV 32 bit"
select 32BIT
help
Choose this option to build an U-Boot for RISCV32 architecture.
config CPU_RISCV_64
bool "RISCV 64 bit"
select 64BIT
help
Choose this option to build an U-Boot for RISCV64 architecture.
endchoice
config 32BIT
bool
config 64BIT
bool
endmenu

@ -0,0 +1,11 @@
#
# Copyright (C) 2017 Andes Technology Corporation.
# Rick Chen, Andes Technology Corporation <rick@andestech.com>
#
# SPDX-License-Identifier: GPL-2.0+
#
head-y := arch/riscv/cpu/$(CPU)/start.o
libs-y += arch/riscv/cpu/$(CPU)/
libs-y += arch/riscv/lib/

@ -0,0 +1,33 @@
#
# (C) Copyright 2000-2002
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
#
# Copyright (c) 2017 Microsemi Corporation.
# Padmarao Begari, Microsemi Corporation <padmarao.begari@microsemi.com>
#
# Copyright (C) 2017 Andes Technology Corporation
# Rick Chen, Andes Technology Corporation <rick@andestech.com>
#
# SPDX-License-Identifier: GPL-2.0+
ifeq ($(CROSS_COMPILE),)
CROSS_COMPILE := riscv32-unknown-linux-gnu-
endif
32bit-emul := elf32lriscv
64bit-emul := elf64lriscv
ifdef CONFIG_32BIT
PLATFORM_LDFLAGS += -m $(32bit-emul)
endif
ifdef CONFIG_64BIT
PLATFORM_LDFLAGS += -m $(64bit-emul)
endif
CONFIG_STANDALONE_LOAD_ADDR = 0x00000000 \
-T $(srctree)/examples/standalone/riscv.lds
PLATFORM_CPPFLAGS += -ffixed-gp -fpic
PLATFORM_RELFLAGS += -fno-strict-aliasing -fno-common -gdwarf-2
LDFLAGS_u-boot += --gc-sections -static -pie
Loading…
Cancel
Save