Skip to content

Commit

Permalink
soc/sifive/sifive_freedom: add SiFive Freedom U540 SoC
Browse files Browse the repository at this point in the history
This commit adds support for the SiFive Freedom U540 SoC for the Zephyr
Hardware Model v2.

Signed-off-by: Filip Kokosinski <[email protected]>
  • Loading branch information
fkokosinski authored and nordicjm committed Feb 23, 2024
1 parent 77006a7 commit 813cee2
Show file tree
Hide file tree
Showing 10 changed files with 32 additions and 36 deletions.
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# SPDX-License-Identifier: Apache-2.0

zephyr_sources(clock.c)
zephyr_include_directories(.)

set(SOC_LINKER_SCRIPT ${ZEPHYR_BASE}/include/zephyr/arch/riscv/common/linker.ld CACHE INTERNAL "")
Original file line number Diff line number Diff line change
@@ -1,22 +1,20 @@
# RISCV_SIFIVE_FREEDOM SOC configuration options

# Copyright (c) 2017 Jean-Paul Etienne <[email protected]>
# Copyright (c) 2024 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

choice
prompt "SiFive Freedom SOC implementation"
depends on SOC_SERIES_SIFIVE_FREEDOM_U500
config SOC_SERIES_SIFIVE_FREEDOM_FU500
bool

config SOC_SIFIVE_FREEDOM_U540
bool "SiFive Freedom U540 SOC implementation"
select ATOMIC_OPERATIONS_C
select INCLUDE_RESET_VECTOR
select 64BIT
# RISC-V options
select RISCV
select RISCV_PRIVILEGED
select RISCV_HAS_PLIC
select RISCV_ISA_RV64I
select RISCV_ISA_EXT_M
select RISCV_ISA_EXT_A
select RISCV_ISA_EXT_C
select RISCV_ISA_EXT_ZICSR
select RISCV_ISA_EXT_ZIFENCEI

endchoice
select 64BIT
select INCLUDE_RESET_VECTOR
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
# Copyright (c) 2017 Jean-Paul Etienne <[email protected]>
# Copyright (c) 2024 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

if SOC_SERIES_SIFIVE_FREEDOM_U500

config SOC_SERIES
default "u500"
if SOC_SERIES_SIFIVE_FREEDOM_FU500

config SYS_CLOCK_HW_CYCLES_PER_SEC
default 32768
Expand All @@ -27,6 +25,4 @@ config MAX_IRQ_PER_AGGREGATOR
config NUM_IRQS
default 64

source "soc/soc_legacy/riscv/sifive_freedom/u500/Kconfig.defconfig.u*"

endif # SOC_SERIES_SIFIVE_FREEDOM_U500
endif # SOC_SERIES_SIFIVE_FREEDOM_FU500
16 changes: 16 additions & 0 deletions soc/sifive/sifive_freedom/fu500/Kconfig.soc
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Copyright (c) 2024 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_SIFIVE_FREEDOM_FU500
bool
select SOC_FAMILY_SIFIVE_FREEDOM

config SOC_SERIES
default "fu500" if SOC_SERIES_SIFIVE_FREEDOM_FU500

config SOC_SIFIVE_FREEDOM_FU540
bool
select SOC_SERIES_SIFIVE_FREEDOM_FU500

config SOC
default "fu540" if SOC_SIFIVE_FREEDOM_FU540
File renamed without changes.
File renamed without changes.
File renamed without changes.
3 changes: 3 additions & 0 deletions soc/sifive/sifive_freedom/soc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,6 @@ family:
- name: fe300
socs:
- name: fe310
- name: fu500
socs:
- name: fu540

This file was deleted.

13 changes: 0 additions & 13 deletions soc/soc_legacy/riscv/sifive_freedom/u500/Kconfig.series

This file was deleted.

0 comments on commit 813cee2

Please sign in to comment.