1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 2bbf45ba5SHollis Blanchard# 3bbf45ba5SHollis Blanchard# Makefile for Kernel-based Virtual Machine module 4bbf45ba5SHollis Blanchard# 5bbf45ba5SHollis Blanchard 64108d9baSmatt mooneyccflags-y := -Ivirt/kvm -Iarch/powerpc/kvm 7535cf7b3SMarc ZyngierKVM := ../../../virt/kvm 8bbf45ba5SHollis Blanchard 94b3d173dSPaul Mackerrascommon-objs-y = $(KVM)/kvm_main.o $(KVM)/eventfd.o 100af574beSPaolo Bonzinicommon-objs-$(CONFIG_KVM_VFIO) += $(KVM)/vfio.o 114b3d173dSPaul Mackerrascommon-objs-$(CONFIG_KVM_MMIO) += $(KVM)/coalesced_mmio.o 12bbf45ba5SHollis Blanchard 134b3d173dSPaul Mackerrascommon-objs-y += powerpc.o emulate_loadstore.o 1473e75b41SHollis Blanchardobj-$(CONFIG_KVM_EXIT_TIMING) += timing.o 15c14dea04SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_HANDLER) += book3s_exports.o 16bbf45ba5SHollis Blanchard 1758ab5e0cSArnd BergmannAFLAGS_booke_interrupts.o := -I$(objtree)/$(obj) 18bbf45ba5SHollis Blanchard 19bc8080cbSHollis Blanchardkvm-e500-objs := \ 20c4f9c779SAlexander Graf $(common-objs-y) \ 214b3d173dSPaul Mackerras emulate.o \ 22bc8080cbSHollis Blanchard booke.o \ 23bc8080cbSHollis Blanchard booke_emulate.o \ 24bc8080cbSHollis Blanchard booke_interrupts.o \ 25bc8080cbSHollis Blanchard e500.o \ 26b71c9e2fSAlexander Graf e500_mmu.o \ 27b71c9e2fSAlexander Graf e500_mmu_host.o \ 28bc8080cbSHollis Blanchard e500_emulate.o 29bf7ca4bdSAlexander Grafkvm-objs-$(CONFIG_KVM_E500V2) := $(kvm-e500-objs) 30c4f9c779SAlexander Graf 3173196cd3SScott Woodkvm-e500mc-objs := \ 3273196cd3SScott Wood $(common-objs-y) \ 334b3d173dSPaul Mackerras emulate.o \ 3473196cd3SScott Wood booke.o \ 3573196cd3SScott Wood booke_emulate.o \ 3673196cd3SScott Wood bookehv_interrupts.o \ 3773196cd3SScott Wood e500mc.o \ 38b71c9e2fSAlexander Graf e500_mmu.o \ 39b71c9e2fSAlexander Graf e500_mmu_host.o \ 4073196cd3SScott Wood e500_emulate.o 4173196cd3SScott Woodkvm-objs-$(CONFIG_KVM_E500MC) := $(kvm-e500mc-objs) 4273196cd3SScott Wood 4376d837a4SPaul Mackerraskvm-book3s_64-builtin-objs-$(CONFIG_SPAPR_TCE_IOMMU) := \ 44066212e0SPaul Mackerras book3s_64_vio_hv.o 45066212e0SPaul Mackerras 462ba9f0d8SAneesh Kumar K.Vkvm-pr-y := \ 47963cf3dcSAlexander Graf fpu.o \ 4829577fc0SAlexander Graf emulate.o \ 49831317b6SAlexander Graf book3s_paired_singles.o \ 50f05ed4d5SPaul Mackerras book3s_pr.o \ 510254f074SAlexander Graf book3s_pr_papr.o \ 522191d657SAlexander Graf book3s_emulate.o \ 532191d657SAlexander Graf book3s_interrupts.o \ 54fef093beSAlexander Graf book3s_mmu_hpte.o \ 55c4f9c779SAlexander Graf book3s_64_mmu_host.o \ 56c4f9c779SAlexander Graf book3s_64_mmu.o \ 57c4f9c779SAlexander Graf book3s_32_mmu.o 58066212e0SPaul Mackerras 59009c872aSSimon Guokvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \ 60f3601156SNicholas Piggin book3s_64_entry.o \ 61009c872aSSimon Guo tm.o 62009c872aSSimon Guo 639975f5e3SAneesh Kumar K.Vifdef CONFIG_KVM_BOOK3S_PR_POSSIBLE 649975f5e3SAneesh Kumar K.Vkvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \ 659975f5e3SAneesh Kumar K.V book3s_rmhandlers.o 669975f5e3SAneesh Kumar K.Vendif 679975f5e3SAneesh Kumar K.V 682ba9f0d8SAneesh Kumar K.Vkvm-hv-y += \ 69de56a948SPaul Mackerras book3s_hv.o \ 70de56a948SPaul Mackerras book3s_hv_interrupts.o \ 719e04ba69SPaul Mackerras book3s_64_mmu_hv.o \ 728e3f5fc1SPaul Mackerras book3s_64_mmu_radix.o \ 738e3f5fc1SPaul Mackerras book3s_hv_nested.o 74066212e0SPaul Mackerras 75ca9f4942SBharata B Raokvm-hv-$(CONFIG_PPC_UV) += \ 76ca9f4942SBharata B Rao book3s_hv_uvmem.o 77ca9f4942SBharata B Rao 784bb3c7a0SPaul Mackerraskvm-hv-$(CONFIG_PPC_TRANSACTIONAL_MEM) += \ 794bb3c7a0SPaul Mackerras book3s_hv_tm.o 804bb3c7a0SPaul Mackerras 81e7d26f28SBenjamin Herrenschmidtkvm-book3s_64-builtin-xics-objs-$(CONFIG_KVM_XICS) := \ 825af50993SBenjamin Herrenschmidt book3s_hv_rm_xics.o book3s_hv_rm_xive.o 83066212e0SPaul Mackerras 844bb3c7a0SPaul Mackerraskvm-book3s_64-builtin-tm-objs-$(CONFIG_PPC_TRANSACTIONAL_MEM) += \ 854bb3c7a0SPaul Mackerras book3s_hv_tm_builtin.o 864bb3c7a0SPaul Mackerras 872ba9f0d8SAneesh Kumar K.Vifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE 882ba9f0d8SAneesh Kumar K.Vkvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \ 893f257774SPaolo Bonzini book3s_hv_hmi.o \ 90*89d35b23SNicholas Piggin book3s_hv_p9_entry.o \ 91177339d7SPaul Mackerras book3s_hv_rmhandlers.o \ 9254738c09SDavid Gibson book3s_hv_rm_mmu.o \ 93b4072df4SPaul Mackerras book3s_hv_ras.o \ 94e7d26f28SBenjamin Herrenschmidt book3s_hv_builtin.o \ 954bb3c7a0SPaul Mackerras $(kvm-book3s_64-builtin-tm-objs-y) \ 96e7d26f28SBenjamin Herrenschmidt $(kvm-book3s_64-builtin-xics-objs-y) 972ba9f0d8SAneesh Kumar K.Vendif 98de56a948SPaul Mackerras 99bc5ad3f3SBenjamin Herrenschmidtkvm-book3s_64-objs-$(CONFIG_KVM_XICS) += \ 100bc5ad3f3SBenjamin Herrenschmidt book3s_xics.o 101bc5ad3f3SBenjamin Herrenschmidt 10290c73795SCédric Le Goaterkvm-book3s_64-objs-$(CONFIG_KVM_XIVE) += book3s_xive.o book3s_xive_native.o 10376d837a4SPaul Mackerraskvm-book3s_64-objs-$(CONFIG_SPAPR_TCE_IOMMU) += book3s_64_vio.o 1045af50993SBenjamin Herrenschmidt 1054b3d173dSPaul Mackerraskvm-book3s_64-module-objs := \ 1064b3d173dSPaul Mackerras $(common-objs-y) \ 107de56a948SPaul Mackerras book3s.o \ 1088e591cb7SMichael Ellerman book3s_rtas.o \ 109de56a948SPaul Mackerras $(kvm-book3s_64-objs-y) 110a8606e20SPaul Mackerras 111a8606e20SPaul Mackerraskvm-objs-$(CONFIG_KVM_BOOK3S_64) := $(kvm-book3s_64-module-objs) 112c4f9c779SAlexander Graf 1134f841390SAlexander Grafkvm-book3s_32-objs := \ 1144f841390SAlexander Graf $(common-objs-y) \ 1154b3d173dSPaul Mackerras emulate.o \ 1164f841390SAlexander Graf fpu.o \ 1174f841390SAlexander Graf book3s_paired_singles.o \ 1184f841390SAlexander Graf book3s.o \ 119f05ed4d5SPaul Mackerras book3s_pr.o \ 1204f841390SAlexander Graf book3s_emulate.o \ 1214f841390SAlexander Graf book3s_interrupts.o \ 122fef093beSAlexander Graf book3s_mmu_hpte.o \ 1234f841390SAlexander Graf book3s_32_mmu_host.o \ 1244f841390SAlexander Graf book3s_32_mmu.o 1254f841390SAlexander Grafkvm-objs-$(CONFIG_KVM_BOOK3S_32) := $(kvm-book3s_32-objs) 1264f841390SAlexander Graf 1275df554adSScott Woodkvm-objs-$(CONFIG_KVM_MPIC) += mpic.o 128535cf7b3SMarc Zyngierkvm-objs-$(CONFIG_HAVE_KVM_IRQ_ROUTING) += $(KVM)/irqchip.o 1295df554adSScott Wood 130c4f9c779SAlexander Grafkvm-objs := $(kvm-objs-m) $(kvm-objs-y) 131c4f9c779SAlexander Graf 132bf7ca4bdSAlexander Grafobj-$(CONFIG_KVM_E500V2) += kvm.o 13373196cd3SScott Woodobj-$(CONFIG_KVM_E500MC) += kvm.o 134c4f9c779SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_64) += kvm.o 1354f841390SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_32) += kvm.o 136c4f9c779SAlexander Graf 1372ba9f0d8SAneesh Kumar K.Vobj-$(CONFIG_KVM_BOOK3S_64_PR) += kvm-pr.o 1382ba9f0d8SAneesh Kumar K.Vobj-$(CONFIG_KVM_BOOK3S_64_HV) += kvm-hv.o 1392ba9f0d8SAneesh Kumar K.V 140a8606e20SPaul Mackerrasobj-y += $(kvm-book3s_64-builtin-objs-y) 141