1# 2# Copyright 2020, DornerWorks 3# Copyright 2020, Data61, CSIRO (ABN 41 687 119 230) 4# Copyright 2021, HENSOLDT Cyber 5# 6# SPDX-License-Identifier: GPL-2.0-only 7# 8 9cmake_minimum_required(VERSION 3.7.2) 10 11declare_platform(spike KernelPlatformSpike PLAT_SPIKE KernelArchRiscV) 12 13if(KernelPlatformSpike) 14 if("${KernelSel4Arch}" STREQUAL riscv32) 15 declare_seL4_arch(riscv32) 16 elseif("${KernelSel4Arch}" STREQUAL riscv64) 17 declare_seL4_arch(riscv64) 18 else() 19 fallback_declare_seL4_arch_default(riscv64) 20 endif() 21 config_set(KernelRiscVPlatform RISCV_PLAT "spike") 22 config_set(KernelPlatformFirstHartID FIRST_HART_ID 0) 23 config_set(KernelOpenSBIPlatform OPENSBI_PLATFORM "generic") 24 if(KernelSel4ArchRiscV32) 25 list(APPEND KernelDTSList "tools/dts/spike32.dts") 26 else() 27 list(APPEND KernelDTSList "tools/dts/spike.dts") 28 endif() 29 declare_default_headers( 30 TIMER_FREQUENCY 10000000 PLIC_MAX_NUM_INT 0 31 INTERRUPT_CONTROLLER drivers/irq/riscv_plic_dummy.h 32 ) 33else() 34 unset(KernelPlatformFirstHartID CACHE) 35endif() 36