Makefile 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. # SPDX-License-Identifier: GPL-2.0
  2. #
  3. # Makefile for Kernel-based Virtual Machine module
  4. #
  5. ccflags-y += -I $(srctree)/$(src)
  6. include $(srctree)/virt/kvm/Makefile.kvm
  7. obj-$(CONFIG_KVM) += kvm.o
  8. obj-$(CONFIG_KVM) += hyp/
  9. kvm-y += arm.o mmu.o mmio.o psci.o hypercalls.o pvtime.o \
  10. inject_fault.o va_layout.o handle_exit.o \
  11. guest.o debug.o reset.o sys_regs.o stacktrace.o \
  12. vgic-sys-reg-v3.o fpsimd.o pkvm.o \
  13. arch_timer.o trng.o vmid.o iommu.o \
  14. vgic/vgic.o vgic/vgic-init.o \
  15. vgic/vgic-irqfd.o vgic/vgic-v2.o \
  16. vgic/vgic-v3.o vgic/vgic-v4.o \
  17. vgic/vgic-mmio.o vgic/vgic-mmio-v2.o \
  18. vgic/vgic-mmio-v3.o vgic/vgic-kvm-device.o \
  19. vgic/vgic-its.o vgic/vgic-debug.o
  20. kvm-$(CONFIG_HW_PERF_EVENTS) += pmu-emul.o pmu.o
  21. kvm-$(CONFIG_ANDROID_ARM64_WORKAROUND_DMA_BEYOND_POC) += android_erratum_pgtable.o
  22. kvm-$(CONFIG_TRACING) += hyp_events.o hyp_trace.o
  23. always-y := hyp_constants.h hyp-constants.s
  24. define rule_gen_hyp_constants
  25. $(call filechk,offsets,__HYP_CONSTANTS_H__)
  26. endef
  27. CFLAGS_hyp-constants.o = -I $(srctree)/$(src)/hyp/include
  28. $(obj)/hyp-constants.s: $(src)/hyp/hyp-constants.c FORCE
  29. $(call if_changed_dep,cc_s_c)
  30. $(obj)/hyp_constants.h: $(obj)/hyp-constants.s FORCE
  31. $(call if_changed_rule,gen_hyp_constants)
  32. obj-kvm := $(addprefix $(obj)/, $(kvm-y))
  33. $(obj-kvm): $(obj)/hyp_constants.h