| # Copyright (c) 2021 Andes Technology Corporation |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| choice |
| prompt "Andes V5 SoC Selection" |
| depends on SOC_SERIES_RISCV_ANDES_V5 |
| |
| config SOC_RISCV_ANDES_AE350 |
| bool "Andes AE350 SoC implementation" |
| select ATOMIC_OPERATIONS_BUILTIN |
| select INCLUDE_RESET_VECTOR |
| select RISCV_ISA_EXT_M |
| select RISCV_ISA_EXT_A |
| |
| endchoice |
| |
| if SOC_SERIES_RISCV_ANDES_V5 |
| |
| choice |
| prompt "Base CPU ISA options" |
| default RV32I_CPU |
| |
| config RV32I_CPU |
| bool "RISCV32 CPU ISA" |
| select RISCV_ISA_RV32I |
| select RISCV_ISA_EXT_ZICSR |
| select RISCV_ISA_EXT_ZIFENCEI |
| |
| config RV64I_CPU |
| bool "RISCV64 CPU ISA" |
| select RISCV_ISA_RV64I |
| select RISCV_ISA_EXT_ZICSR |
| select RISCV_ISA_EXT_ZIFENCEI |
| select 64BIT |
| |
| endchoice |
| |
| choice |
| prompt "FPU options" |
| default NO_FPU |
| |
| config NO_FPU |
| bool "No FPU" |
| |
| config SINGLE_PRECISION_FPU |
| bool "Single precision FPU" |
| select CPU_HAS_FPU |
| |
| config DOUBLE_PRECISION_FPU |
| bool "Double precision FPU" |
| select CPU_HAS_FPU_DOUBLE_PRECISION |
| |
| endchoice |
| |
| config CACHE_ENABLE |
| bool "Cache" |
| default n |
| |
| config SOC_ANDES_V5_HWDSP |
| bool "AndeStar V5 DSP ISA" |
| select RISCV_SOC_CONTEXT_SAVE |
| depends on !RISCV_GENERIC_TOOLCHAIN |
| help |
| This option enables the AndeStar v5 hardware DSP, in order to |
| support using the DSP instructions. |
| |
| config SOC_ANDES_V5_PFT |
| bool "Andes V5 PowerBrake extension" |
| default y |
| select RISCV_SOC_CONTEXT_SAVE |
| help |
| The PowerBrake extension throttles performance by reducing instruction |
| executing rate. |
| |
| config SOC_ANDES_V5_PMA |
| bool "Andes V5 Physical Memory Attribute (PMA)" |
| select ARCH_HAS_NOCACHE_MEMORY_SUPPORT |
| help |
| This option enables the Andes V5 PMA, in order to support SW to |
| configure physical memory attribute by PMA CSRs. The address |
| matching of Andes V5 PMA is like RISC-V PMP NAPOT mode |
| (power-of-two alignment). |
| |
| config SOC_ANDES_V5_PMA_REGION_MIN_ALIGN_AND_SIZE |
| int |
| depends on SOC_ANDES_V5_PMA |
| default 4096 |
| help |
| Minimum size (and alignment) of an PMA region. Use this symbol |
| to guarantee minimum size and alignment of PMA regions. |
| |
| endif # SOC_SERIES_RISCV_ANDES_V5 |