Browse Source

soc: neorv32: Port to HWMv2

Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
pull/69687/head
Jamie McCrae 1 year ago committed by Carles Cufi
parent
commit
d1edcdd088
  1. 0
      soc/neorv32/CMakeLists.txt
  2. 15
      soc/neorv32/Kconfig
  3. 3
      soc/neorv32/Kconfig.defconfig
  4. 22
      soc/neorv32/Kconfig.soc
  5. 0
      soc/neorv32/linker.ld
  6. 0
      soc/neorv32/reset.S
  7. 0
      soc/neorv32/soc.c
  8. 0
      soc/neorv32/soc.h
  9. 2
      soc/neorv32/soc.yml
  10. 0
      soc/neorv32/soc_irq.S

0
soc/soc_legacy/riscv/neorv32/CMakeLists.txt → soc/neorv32/CMakeLists.txt

15
soc/soc_legacy/riscv/neorv32/Kconfig.soc → soc/neorv32/Kconfig

@ -2,7 +2,6 @@ @@ -2,7 +2,6 @@
# SPDX-License-Identifier: Apache-2.0
config SOC_NEORV32
bool "NEORV32 Processor"
select RISCV
select RISCV_ISA_RV32I
select RISCV_ISA_EXT_M
@ -10,20 +9,6 @@ config SOC_NEORV32 @@ -10,20 +9,6 @@ config SOC_NEORV32
select RISCV_ISA_EXT_ZICSR
select RISCV_ISA_EXT_ZIFENCEI
select RISCV_PRIVILEGED
help
Enable support for the NEORV32 Processor (SoC).
The NEORV32 CPU implementation must have the following RISC-V ISA
extensions enabled in order to support Zephyr:
- M (Integer Multiplication and Division)
- Zicsr (Control and Status Register (CSR) Instructions)
The following NEORV32 CPU ISA extensions are not currently supported
by Zephyr and can safely be disabled:
- A (Atomic Instructions)
- E (Embedded, only 16 integer registers)
- Zbb (Basic Bit Manipulation)
- Zfinx (Floating Point in Integer Registers)
if SOC_NEORV32

3
soc/soc_legacy/riscv/neorv32/Kconfig.defconfig → soc/neorv32/Kconfig.defconfig

@ -3,9 +3,6 @@ @@ -3,9 +3,6 @@
if SOC_NEORV32
config SOC
default "neorv32"
config SYS_CLOCK_HW_CYCLES_PER_SEC
default $(dt_node_int_prop_int,/cpus/cpu@0,clock-frequency) if RISCV_MACHINE_TIMER

22
soc/neorv32/Kconfig.soc

@ -0,0 +1,22 @@ @@ -0,0 +1,22 @@
# Copyright (c) 2021 Henrik Brix Andersen <henrik@brixandersen.dk>
# SPDX-License-Identifier: Apache-2.0
config SOC_NEORV32
bool
help
NEORV32 Processor (SoC).
The NEORV32 CPU implementation must have the following RISC-V ISA
extensions enabled in order to support Zephyr:
- M (Integer Multiplication and Division)
- Zicsr (Control and Status Register (CSR) Instructions)
The following NEORV32 CPU ISA extensions are not currently supported
by Zephyr and can safely be disabled:
- A (Atomic Instructions)
- E (Embedded, only 16 integer registers)
- Zbb (Basic Bit Manipulation)
- Zfinx (Floating Point in Integer Registers)
config SOC
default "neorv32" if SOC_NEORV32

0
soc/soc_legacy/riscv/neorv32/linker.ld → soc/neorv32/linker.ld

0
soc/soc_legacy/riscv/neorv32/reset.S → soc/neorv32/reset.S

0
soc/soc_legacy/riscv/neorv32/soc.c → soc/neorv32/soc.c

0
soc/soc_legacy/riscv/neorv32/soc.h → soc/neorv32/soc.h

2
soc/neorv32/soc.yml

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
socs:
- name: neorv32

0
soc/soc_legacy/riscv/neorv32/soc_irq.S → soc/neorv32/soc_irq.S

Loading…
Cancel
Save