arch/risc-v: Remove unneeded kconfigs

CONFIG_RV32IM_HW_MULDIV can be safely removed since this behavior is
controlled by M extension.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
This commit is contained in:
Huang Qi
2021-12-28 18:05:10 +08:00
committed by Xiang Xiao
parent 48311cc61f
commit d71cfc178a
11 changed files with 2 additions and 86 deletions
-4
View File
@@ -55,7 +55,6 @@ config ARCH_CHIP_ESP32C3
select ARCH_RV32
select ARCH_RV_ISA_M
select ARCH_RV_ISA_C
select RV32IM_HW_MULDIV
select ARCH_VECNOTIRQ
select ARCH_HAVE_RESET
select LIBC_ARCH_ATOMIC
@@ -207,9 +206,6 @@ source "arch/risc-v/src/common/Kconfig"
if ARCH_RV32
source "arch/risc-v/src/rv32im/Kconfig"
endif
if ARCH_RV64
source "arch/risc-v/src/rv64gc/Kconfig"
endif
if ARCH_CHIP_FE310
source "arch/risc-v/src/fe310/Kconfig"
endif
-12
View File
@@ -82,18 +82,6 @@ uint32_t up_gethartid(void);
* Public Function Prototypes
****************************************************************************/
#ifdef CONFIG_RV32IM_HW_MULDIV
uint32_t up_hard_mul(uint32_t a, uint32_t b);
uint32_t up_hard_mulh(uint32_t a, uint32_t b);
uint32_t up_hard_mulhsu(uint32_t a, uint32_t b);
uint32_t up_hard_mulhu(uint32_t a, uint32_t b);
uint32_t up_hard_div(uint32_t a, uint32_t b);
uint32_t up_hard_rem(uint32_t a, uint32_t b);
uint32_t up_hard_divu(uint32_t a, uint32_t b);
uint32_t up_hard_remu(uint32_t a, uint32_t b);
uint32_t time_hard_mul(uint32_t a, uint32_t b, uint32_t *t);
#endif
#ifdef __cplusplus
#define EXTERN extern "C"
extern "C"
-5
View File
@@ -117,11 +117,6 @@ ifeq ($(CONFIG_RISCV_TOOLCHAIN),GNU_RVG)
ARCHCPUFLAGS += -mabi=$(ARCHABITYPE)
endif
ifeq ($(CONFIG_RV32IM_HW_MULDIV),y)
ARCHCPUFLAGS += -mdiv
else
ARCHCPUFLAGS += -mno-div
endif
endif
# Default toolchain
-32
View File
@@ -5,38 +5,6 @@
comment "RV32IM Configuration Options"
choice
prompt "Toolchain Selection"
default RV32IM_TOOLCHAIN_GNU_RVGW if TOOLCHAIN_WINDOWS
default RV32IM_TOOLCHAIN_GNU_RVGL if !TOOLCHAIN_WINDOWS
config RV32IM_TOOLCHAIN_GNU_RVGL
bool "Generic GNU RVG toolchain under Linux (or other POSIX environment)"
select ARCH_TOOLCHAIN_GNU
---help---
This option should work for any modern GNU toolchain (GCC 5.2 or newer)
configured for riscv32-unknown-elf.
config RV32IM_TOOLCHAIN_GNU_RVGW
bool "Generic GNU RVG toolchain under Windows"
depends on TOOLCHAIN_WINDOWS
select CYGWIN_WINTOOL if WINDOWS_CYGWIN
select ARCH_TOOLCHAIN_GNU
---help---
This option should work for any modern GNU toolchain (GCC 5.2 or newer)
configured for riscv32-unknown-elf.
endchoice
config RV32IM_HW_MULDIV
bool "Supports Hardware MUL and DIV"
default n
---help---
Specifies if the architecture supports hardware multiply and
hardware division instructions. Selecting this will cause the
generated code to natively use mul / div instructions for any
math operations.
config RV32IM_SYSTEM_CSRRS_SUPPORT
bool "Supports RV core feature identification via CSRRS opcode"
default n
-29
View File
@@ -1,29 +0,0 @@
#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#
comment "RV64GC Configuration Options"
choice
prompt "Toolchain Selection"
default RV64GC_TOOLCHAIN_GNU_RVGW if TOOLCHAIN_WINDOWS
default RV64GC_TOOLCHAIN_GNU_RVGL if !TOOLCHAIN_WINDOWS
config RV64GC_TOOLCHAIN_GNU_RVGL
bool "Generic GNU RVG toolchain under Linux (or other POSIX environment)"
select ARCH_TOOLCHAIN_GNU
---help---
This option should work for any modern GNU toolchain (GCC 5.2 or newer)
configured for riscv64-unknown-elf.
config RV64GC_TOOLCHAIN_GNU_RVGW
bool "Generic GNU RVG toolchain under Windows"
depends on TOOLCHAIN_WINDOWS
select CYGWIN_WINTOOL if WINDOWS_CYGWIN
select ARCH_TOOLCHAIN_GNU
---help---
This option should work for any modern GNU toolchain (GCC 5.2 or newer)
configured for riscv64-unknown-elf.
endchoice
@@ -62,4 +62,5 @@ CONFIG_SYS_RESERVED=9
CONFIG_TASK_NAME_SIZE=20
CONFIG_TESTING_GETPRIME=y
CONFIG_TESTING_OSTEST=y
CONFIG_TESTING_OSTEST_FPUSIZE=264
CONFIG_UART0_SERIAL_CONSOLE=y
@@ -56,4 +56,5 @@ CONFIG_SYSTEM_NSH=y
CONFIG_TASK_NAME_SIZE=20
CONFIG_TESTING_GETPRIME=y
CONFIG_TESTING_OSTEST=y
CONFIG_TESTING_OSTEST_FPUSIZE=264
CONFIG_UART0_SERIAL_CONSOLE=y
@@ -56,7 +56,6 @@ CONFIG_PREALLOC_TIMERS=0
CONFIG_RAM_SIZE=33554432
CONFIG_RAM_START=0x80000000
CONFIG_RR_INTERVAL=200
CONFIG_RV32IM_HW_MULDIV=y
CONFIG_SCHED_WAITPID=y
CONFIG_SERIAL_UART_ARCH_MMIO=y
CONFIG_STACK_COLORATION=y
@@ -56,7 +56,6 @@ CONFIG_RAM_SIZE=196608
CONFIG_RAM_START=0x20000000
CONFIG_RAW_BINARY=y
CONFIG_RR_INTERVAL=200
CONFIG_RV32IM_HW_MULDIV=y
CONFIG_RV32M1_LPUART0=y
CONFIG_SCHED_WAITPID=y
CONFIG_STACK_COLORATION=y
@@ -44,7 +44,6 @@ CONFIG_RAM_SIZE=196608
CONFIG_RAM_START=0x20000000
CONFIG_RAW_BINARY=y
CONFIG_RR_INTERVAL=200
CONFIG_RV32IM_HW_MULDIV=y
CONFIG_RV32M1_ITCM=y
CONFIG_RV32M1_LPUART0=y
CONFIG_SCHED_WAITPID=y
@@ -44,7 +44,6 @@ CONFIG_RAM_SIZE=196608
CONFIG_RAM_START=0x20000000
CONFIG_RAW_BINARY=y
CONFIG_RR_INTERVAL=200
CONFIG_RV32IM_HW_MULDIV=y
CONFIG_RV32M1_LPUART0=y
CONFIG_SCHED_WAITPID=y
CONFIG_STACK_COLORATION=y