rjw | 1f88458 | 2022-01-06 17:20:42 +0800 | [diff] [blame^] | 1 | # SPDX-License-Identifier: GPL-2.0 |
| 2 | # |
| 3 | # Makefile for Kernel-based Virtual Machine module |
| 4 | # |
| 5 | |
| 6 | plus_virt := $(call as-instr,.arch_extension virt,+virt) |
| 7 | ifeq ($(plus_virt),+virt) |
| 8 | plus_virt_def := -DREQUIRES_VIRT=1 |
| 9 | endif |
| 10 | |
| 11 | ccflags-y += -Iarch/arm/kvm -Ivirt/kvm/arm/vgic |
| 12 | CFLAGS_arm.o := -I. $(plus_virt_def) |
| 13 | CFLAGS_mmu.o := -I. |
| 14 | |
| 15 | AFLAGS_init.o := -Wa,-march=armv7-a$(plus_virt) |
| 16 | AFLAGS_interrupts.o := -Wa,-march=armv7-a$(plus_virt) |
| 17 | |
| 18 | KVM := ../../../virt/kvm |
| 19 | kvm-arm-y = $(KVM)/kvm_main.o $(KVM)/coalesced_mmio.o $(KVM)/eventfd.o $(KVM)/vfio.o |
| 20 | |
| 21 | obj-$(CONFIG_KVM_ARM_HOST) += hyp/ |
| 22 | |
| 23 | obj-y += kvm-arm.o init.o interrupts.o |
| 24 | obj-y += handle_exit.o guest.o emulate.o reset.o |
| 25 | obj-y += coproc.o coproc_a15.o coproc_a7.o vgic-v3-coproc.o |
| 26 | obj-y += $(KVM)/arm/arm.o $(KVM)/arm/mmu.o $(KVM)/arm/mmio.o |
| 27 | obj-y += $(KVM)/arm/psci.o $(KVM)/arm/perf.o |
| 28 | obj-y += $(KVM)/arm/aarch32.o |
| 29 | |
| 30 | obj-y += $(KVM)/arm/vgic/vgic.o |
| 31 | obj-y += $(KVM)/arm/vgic/vgic-init.o |
| 32 | obj-y += $(KVM)/arm/vgic/vgic-irqfd.o |
| 33 | obj-y += $(KVM)/arm/vgic/vgic-v2.o |
| 34 | obj-y += $(KVM)/arm/vgic/vgic-v3.o |
| 35 | obj-y += $(KVM)/arm/vgic/vgic-mmio.o |
| 36 | obj-y += $(KVM)/arm/vgic/vgic-mmio-v2.o |
| 37 | obj-y += $(KVM)/arm/vgic/vgic-mmio-v3.o |
| 38 | obj-y += $(KVM)/arm/vgic/vgic-kvm-device.o |
| 39 | obj-y += $(KVM)/arm/vgic/vgic-its.o |
| 40 | obj-y += $(KVM)/arm/vgic/vgic-debug.o |
| 41 | obj-y += $(KVM)/irqchip.o |
| 42 | obj-y += $(KVM)/arm/arch_timer.o |