1#
2# Copyright 2020, Data61, CSIRO (ABN 41 687 119 230)
3#
4# SPDX-License-Identifier: GPL-2.0-only
5#
6
7cmake_minimum_required(VERSION 3.7.2)
8
9declare_platform(apq8064 KernelPlatformAPQ8064 PLAT_APQ8064 KernelSel4ArchAarch32)
10
11if(KernelPlatformAPQ8064)
12    declare_seL4_arch(aarch32)
13
14    # MCS is not supported on apq8064. It requires a timer driver that
15    # implements the tickless programming requirements.
16    set(KernelPlatformSupportsMCS OFF)
17
18    set(KernelArmCortexA15 ON)
19    set(KernelArchArmV7a ON)
20    set(KernelArchArmV7ve ON)
21    config_set(KernelARMPlatform ARM_PLAT apq8064)
22    list(APPEND KernelDTSList "tools/dts/apq8064.dts")
23    list(APPEND KernelDTSList "src/plat/apq8064/overlay-apq8064.dts")
24
25    declare_default_headers(
26        TIMER_FREQUENCY 7000000
27        MAX_IRQ 283
28        NUM_PPI 32
29        TIMER drivers/timer/arm_generic.h
30        INTERRUPT_CONTROLLER arch/machine/gic_v2.h
31    )
32endif()
33
34add_sources(
35    DEP "KernelPlatformAPQ8064"
36    CFILES src/arch/arm/machine/gic_v2.c src/arch/arm/machine/l2c_nop.c
37)
38