1# Copyright 2021 The Hafnium Authors. 2# 3# Use of this source code is governed by a BSD-style 4# license that can be found in the LICENSE file or at 5# https://opensource.org/licenses/BSD-3-Clause. 6 7import("//build/toolchain/platform.gni") 8 9source_set("absent") { 10 public_configs = [ "//src/arch/${plat_arch}:config" ] 11 sources = [ "absent.c" ] 12} 13 14config("hypervisor_config") { 15 include_dirs = [ "inc" ] 16} 17 18source_set("hypervisor") { 19 public_configs = [ 20 "//src/arch/${plat_arch}:config", 21 "//src/arch/${plat_arch}:arch_config", 22 ":hypervisor_config", 23 ] 24 deps = [ "//vmlib/${plat_arch}:smc_call" ] 25 sources = [ 26 "hypervisor/cpu_cycles.c", 27 "hypervisor/direct_messaging.c", 28 "hypervisor/ffa_memory.c", 29 "hypervisor/indirect_messaging.c", 30 "hypervisor/init.c", 31 "hypervisor/interrupts.c", 32 "hypervisor/notifications.c", 33 "hypervisor/setup_and_discovery.c", 34 "hypervisor/vm.c", 35 ] 36} 37 38source_set("spmc") { 39 public_configs = [ 40 "//src/arch/${plat_arch}:config", 41 "//src/arch/${plat_arch}:arch_config", 42 ] 43 44 deps = [ "//vmlib/${plat_arch}:smc_call" ] 45 46 sources = [ 47 "//src/arch/aarch64/hypervisor/simd.c", 48 "spmc/cpu_cycles.c", 49 "spmc/direct_messaging.c", 50 "spmc/ffa_memory.c", 51 "spmc/indirect_messaging.c", 52 "spmc/init.c", 53 "spmc/interrupts.c", 54 "spmc/notifications.c", 55 "spmc/setup_and_discovery.c", 56 "spmc/vm.c", 57 ] 58} 59