xref: /linux/arch/powerpc/kvm/Makefile (revision 58ab5e0c2c40ec48e682179e8f2e4cda2ece201b)
1bbf45ba5SHollis Blanchard#
2bbf45ba5SHollis Blanchard# Makefile for Kernel-based Virtual Machine module
3bbf45ba5SHollis Blanchard#
4bbf45ba5SHollis Blanchard
5ba55bd74SMichael Ellermansubdir-ccflags-$(CONFIG_PPC_WERROR) := -Werror
6ba55bd74SMichael Ellerman
74108d9baSmatt mooneyccflags-y := -Ivirt/kvm -Iarch/powerpc/kvm
8535cf7b3SMarc ZyngierKVM := ../../../virt/kvm
9bbf45ba5SHollis Blanchard
10535cf7b3SMarc Zyngiercommon-objs-y = $(KVM)/kvm_main.o $(KVM)/coalesced_mmio.o \
110af574beSPaolo Bonzini		$(KVM)/eventfd.o
120af574beSPaolo Bonzinicommon-objs-$(CONFIG_KVM_VFIO) += $(KVM)/vfio.o
13bbf45ba5SHollis Blanchard
14b71c9e2fSAlexander GrafCFLAGS_e500_mmu.o := -I.
15b71c9e2fSAlexander GrafCFLAGS_e500_mmu_host.o := -I.
1646f43c6eSMarcelo TosattiCFLAGS_emulate.o  := -I.
17d69614a2SAlexander GrafCFLAGS_emulate_loadstore.o  := -I.
1846f43c6eSMarcelo Tosatti
19d69614a2SAlexander Grafcommon-objs-y += powerpc.o emulate.o emulate_loadstore.o
2073e75b41SHollis Blanchardobj-$(CONFIG_KVM_EXIT_TIMING) += timing.o
21c14dea04SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_HANDLER) += book3s_exports.o
22bbf45ba5SHollis Blanchard
23*58ab5e0cSArnd BergmannAFLAGS_booke_interrupts.o := -I$(objtree)/$(obj)
24bbf45ba5SHollis Blanchard
25bc8080cbSHollis Blanchardkvm-e500-objs := \
26c4f9c779SAlexander Graf	$(common-objs-y) \
27bc8080cbSHollis Blanchard	booke.o \
28bc8080cbSHollis Blanchard	booke_emulate.o \
29bc8080cbSHollis Blanchard	booke_interrupts.o \
30bc8080cbSHollis Blanchard	e500.o \
31b71c9e2fSAlexander Graf	e500_mmu.o \
32b71c9e2fSAlexander Graf	e500_mmu_host.o \
33bc8080cbSHollis Blanchard	e500_emulate.o
34bf7ca4bdSAlexander Grafkvm-objs-$(CONFIG_KVM_E500V2) := $(kvm-e500-objs)
35c4f9c779SAlexander Graf
3673196cd3SScott Woodkvm-e500mc-objs := \
3773196cd3SScott Wood	$(common-objs-y) \
3873196cd3SScott Wood	booke.o \
3973196cd3SScott Wood	booke_emulate.o \
4073196cd3SScott Wood	bookehv_interrupts.o \
4173196cd3SScott Wood	e500mc.o \
42b71c9e2fSAlexander Graf	e500_mmu.o \
43b71c9e2fSAlexander Graf	e500_mmu_host.o \
4473196cd3SScott Wood	e500_emulate.o
4573196cd3SScott Woodkvm-objs-$(CONFIG_KVM_E500MC) := $(kvm-e500mc-objs)
4673196cd3SScott Wood
47066212e0SPaul Mackerraskvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) := \
48066212e0SPaul Mackerras	book3s_64_vio_hv.o
49066212e0SPaul Mackerras
502ba9f0d8SAneesh Kumar K.Vkvm-pr-y := \
51963cf3dcSAlexander Graf	fpu.o \
5229577fc0SAlexander Graf	emulate.o \
53831317b6SAlexander Graf	book3s_paired_singles.o \
54f05ed4d5SPaul Mackerras	book3s_pr.o \
550254f074SAlexander Graf	book3s_pr_papr.o \
562191d657SAlexander Graf	book3s_emulate.o \
572191d657SAlexander Graf	book3s_interrupts.o \
58fef093beSAlexander Graf	book3s_mmu_hpte.o \
59c4f9c779SAlexander Graf	book3s_64_mmu_host.o \
60c4f9c779SAlexander Graf	book3s_64_mmu.o \
61c4f9c779SAlexander Graf	book3s_32_mmu.o
62066212e0SPaul Mackerras
639975f5e3SAneesh Kumar K.Vifdef CONFIG_KVM_BOOK3S_PR_POSSIBLE
649975f5e3SAneesh Kumar K.Vkvm-book3s_64-module-objs := \
659975f5e3SAneesh Kumar K.V	$(KVM)/coalesced_mmio.o
66de56a948SPaul Mackerras
679975f5e3SAneesh Kumar K.Vkvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \
689975f5e3SAneesh Kumar K.V	book3s_rmhandlers.o
699975f5e3SAneesh Kumar K.Vendif
709975f5e3SAneesh Kumar K.V
712ba9f0d8SAneesh Kumar K.Vkvm-hv-y += \
72de56a948SPaul Mackerras	book3s_hv.o \
73de56a948SPaul Mackerras	book3s_hv_interrupts.o \
74de56a948SPaul Mackerras	book3s_64_mmu_hv.o
75066212e0SPaul Mackerras
76e7d26f28SBenjamin Herrenschmidtkvm-book3s_64-builtin-xics-objs-$(CONFIG_KVM_XICS) := \
77e7d26f28SBenjamin Herrenschmidt	book3s_hv_rm_xics.o
78066212e0SPaul Mackerras
792ba9f0d8SAneesh Kumar K.Vifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE
802ba9f0d8SAneesh Kumar K.Vkvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \
81177339d7SPaul Mackerras	book3s_hv_rmhandlers.o \
8254738c09SDavid Gibson	book3s_hv_rm_mmu.o \
83b4072df4SPaul Mackerras	book3s_hv_ras.o \
84e7d26f28SBenjamin Herrenschmidt	book3s_hv_builtin.o \
85e7d26f28SBenjamin Herrenschmidt	$(kvm-book3s_64-builtin-xics-objs-y)
862ba9f0d8SAneesh Kumar K.Vendif
87de56a948SPaul Mackerras
88bc5ad3f3SBenjamin Herrenschmidtkvm-book3s_64-objs-$(CONFIG_KVM_XICS) += \
89bc5ad3f3SBenjamin Herrenschmidt	book3s_xics.o
90bc5ad3f3SBenjamin Herrenschmidt
919975f5e3SAneesh Kumar K.Vkvm-book3s_64-module-objs += \
92535cf7b3SMarc Zyngier	$(KVM)/kvm_main.o \
93535cf7b3SMarc Zyngier	$(KVM)/eventfd.o \
94de56a948SPaul Mackerras	powerpc.o \
95d69614a2SAlexander Graf	emulate_loadstore.o \
96de56a948SPaul Mackerras	book3s.o \
97f31e65e1SBenjamin Herrenschmidt	book3s_64_vio.o \
988e591cb7SMichael Ellerman	book3s_rtas.o \
99de56a948SPaul Mackerras	$(kvm-book3s_64-objs-y)
100a8606e20SPaul Mackerras
101a8606e20SPaul Mackerraskvm-objs-$(CONFIG_KVM_BOOK3S_64) := $(kvm-book3s_64-module-objs)
102c4f9c779SAlexander Graf
1034f841390SAlexander Grafkvm-book3s_32-objs := \
1044f841390SAlexander Graf	$(common-objs-y) \
1054f841390SAlexander Graf	fpu.o \
1064f841390SAlexander Graf	book3s_paired_singles.o \
1074f841390SAlexander Graf	book3s.o \
108f05ed4d5SPaul Mackerras	book3s_pr.o \
1094f841390SAlexander Graf	book3s_emulate.o \
1104f841390SAlexander Graf	book3s_interrupts.o \
111fef093beSAlexander Graf	book3s_mmu_hpte.o \
1124f841390SAlexander Graf	book3s_32_mmu_host.o \
1134f841390SAlexander Graf	book3s_32_mmu.o
1144f841390SAlexander Grafkvm-objs-$(CONFIG_KVM_BOOK3S_32) := $(kvm-book3s_32-objs)
1154f841390SAlexander Graf
1165df554adSScott Woodkvm-objs-$(CONFIG_KVM_MPIC) += mpic.o
117535cf7b3SMarc Zyngierkvm-objs-$(CONFIG_HAVE_KVM_IRQ_ROUTING) += $(KVM)/irqchip.o
1185df554adSScott Wood
119c4f9c779SAlexander Grafkvm-objs := $(kvm-objs-m) $(kvm-objs-y)
120c4f9c779SAlexander Graf
121bf7ca4bdSAlexander Grafobj-$(CONFIG_KVM_E500V2) += kvm.o
12273196cd3SScott Woodobj-$(CONFIG_KVM_E500MC) += kvm.o
123c4f9c779SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_64) += kvm.o
1244f841390SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_32) += kvm.o
125c4f9c779SAlexander Graf
1262ba9f0d8SAneesh Kumar K.Vobj-$(CONFIG_KVM_BOOK3S_64_PR) += kvm-pr.o
1272ba9f0d8SAneesh Kumar K.Vobj-$(CONFIG_KVM_BOOK3S_64_HV) += kvm-hv.o
1282ba9f0d8SAneesh Kumar K.V
129a8606e20SPaul Mackerrasobj-y += $(kvm-book3s_64-builtin-objs-y)
130