xref: /linux/arch/powerpc/kvm/Makefile (revision 2ba9f0d8875073a2ed802fca0c25c9bfc4338439)
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 \
11535cf7b3SMarc Zyngier		$(KVM)/eventfd.o
12bbf45ba5SHollis Blanchard
1346f43c6eSMarcelo TosattiCFLAGS_44x_tlb.o  := -I.
14b71c9e2fSAlexander GrafCFLAGS_e500_mmu.o := -I.
15b71c9e2fSAlexander GrafCFLAGS_e500_mmu_host.o := -I.
1646f43c6eSMarcelo TosattiCFLAGS_emulate.o  := -I.
1746f43c6eSMarcelo Tosatti
18c4f9c779SAlexander Grafcommon-objs-y += powerpc.o emulate.o
1973e75b41SHollis Blanchardobj-$(CONFIG_KVM_EXIT_TIMING) += timing.o
20c14dea04SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_HANDLER) += book3s_exports.o
21bbf45ba5SHollis Blanchard
22bbf45ba5SHollis BlanchardAFLAGS_booke_interrupts.o := -I$(obj)
23bbf45ba5SHollis Blanchard
2475f74f0dSHollis Blanchardkvm-440-objs := \
25c4f9c779SAlexander Graf	$(common-objs-y) \
2675f74f0dSHollis Blanchard	booke.o \
27d0c7dc03SHollis Blanchard	booke_emulate.o \
2875f74f0dSHollis Blanchard	booke_interrupts.o \
2975f74f0dSHollis Blanchard	44x.o \
3075f74f0dSHollis Blanchard	44x_tlb.o \
3175f74f0dSHollis Blanchard	44x_emulate.o
32c4f9c779SAlexander Grafkvm-objs-$(CONFIG_KVM_440) := $(kvm-440-objs)
33bc8080cbSHollis Blanchard
34bc8080cbSHollis Blanchardkvm-e500-objs := \
35c4f9c779SAlexander Graf	$(common-objs-y) \
36bc8080cbSHollis Blanchard	booke.o \
37bc8080cbSHollis Blanchard	booke_emulate.o \
38bc8080cbSHollis Blanchard	booke_interrupts.o \
39bc8080cbSHollis Blanchard	e500.o \
40b71c9e2fSAlexander Graf	e500_mmu.o \
41b71c9e2fSAlexander Graf	e500_mmu_host.o \
42bc8080cbSHollis Blanchard	e500_emulate.o
43bf7ca4bdSAlexander Grafkvm-objs-$(CONFIG_KVM_E500V2) := $(kvm-e500-objs)
44c4f9c779SAlexander Graf
4573196cd3SScott Woodkvm-e500mc-objs := \
4673196cd3SScott Wood	$(common-objs-y) \
4773196cd3SScott Wood	booke.o \
4873196cd3SScott Wood	booke_emulate.o \
4973196cd3SScott Wood	bookehv_interrupts.o \
5073196cd3SScott Wood	e500mc.o \
51b71c9e2fSAlexander Graf	e500_mmu.o \
52b71c9e2fSAlexander Graf	e500_mmu_host.o \
5373196cd3SScott Wood	e500_emulate.o
5473196cd3SScott Woodkvm-objs-$(CONFIG_KVM_E500MC) := $(kvm-e500mc-objs)
5573196cd3SScott Wood
56066212e0SPaul Mackerraskvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) := \
57066212e0SPaul Mackerras	book3s_64_vio_hv.o
58066212e0SPaul Mackerras
59*2ba9f0d8SAneesh Kumar K.Vkvm-pr-y := \
60963cf3dcSAlexander Graf	fpu.o \
61831317b6SAlexander Graf	book3s_paired_singles.o \
62f05ed4d5SPaul Mackerras	book3s_pr.o \
630254f074SAlexander Graf	book3s_pr_papr.o \
642191d657SAlexander Graf	book3s_emulate.o \
652191d657SAlexander Graf	book3s_interrupts.o \
66fef093beSAlexander Graf	book3s_mmu_hpte.o \
67c4f9c779SAlexander Graf	book3s_64_mmu_host.o \
68c4f9c779SAlexander Graf	book3s_64_mmu.o \
69c4f9c779SAlexander Graf	book3s_32_mmu.o
70066212e0SPaul Mackerras
719975f5e3SAneesh Kumar K.Vifdef CONFIG_KVM_BOOK3S_PR_POSSIBLE
729975f5e3SAneesh Kumar K.Vkvm-book3s_64-module-objs := \
739975f5e3SAneesh Kumar K.V	$(KVM)/coalesced_mmio.o
74de56a948SPaul Mackerras
759975f5e3SAneesh Kumar K.Vkvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \
769975f5e3SAneesh Kumar K.V	book3s_rmhandlers.o
779975f5e3SAneesh Kumar K.Vendif
789975f5e3SAneesh Kumar K.V
79*2ba9f0d8SAneesh Kumar K.Vkvm-hv-y += \
80de56a948SPaul Mackerras	book3s_hv.o \
81de56a948SPaul Mackerras	book3s_hv_interrupts.o \
82de56a948SPaul Mackerras	book3s_64_mmu_hv.o
83066212e0SPaul Mackerras
84e7d26f28SBenjamin Herrenschmidtkvm-book3s_64-builtin-xics-objs-$(CONFIG_KVM_XICS) := \
85e7d26f28SBenjamin Herrenschmidt	book3s_hv_rm_xics.o
86066212e0SPaul Mackerras
87*2ba9f0d8SAneesh Kumar K.Vifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE
88*2ba9f0d8SAneesh Kumar K.Vkvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \
89177339d7SPaul Mackerras	book3s_hv_rmhandlers.o \
9054738c09SDavid Gibson	book3s_hv_rm_mmu.o \
91b4072df4SPaul Mackerras	book3s_hv_ras.o \
92e7d26f28SBenjamin Herrenschmidt	book3s_hv_builtin.o \
93fa61a4e3SAneesh Kumar K.V	book3s_hv_cma.o \
94e7d26f28SBenjamin Herrenschmidt	$(kvm-book3s_64-builtin-xics-objs-y)
95*2ba9f0d8SAneesh Kumar K.Vendif
96de56a948SPaul Mackerras
97bc5ad3f3SBenjamin Herrenschmidtkvm-book3s_64-objs-$(CONFIG_KVM_XICS) += \
98bc5ad3f3SBenjamin Herrenschmidt	book3s_xics.o
99bc5ad3f3SBenjamin Herrenschmidt
1009975f5e3SAneesh Kumar K.Vkvm-book3s_64-module-objs += \
101535cf7b3SMarc Zyngier	$(KVM)/kvm_main.o \
102535cf7b3SMarc Zyngier	$(KVM)/eventfd.o \
103de56a948SPaul Mackerras	powerpc.o \
104de56a948SPaul Mackerras	emulate.o \
105de56a948SPaul Mackerras	book3s.o \
106f31e65e1SBenjamin Herrenschmidt	book3s_64_vio.o \
1078e591cb7SMichael Ellerman	book3s_rtas.o \
108de56a948SPaul Mackerras	$(kvm-book3s_64-objs-y)
109a8606e20SPaul Mackerras
110a8606e20SPaul Mackerraskvm-objs-$(CONFIG_KVM_BOOK3S_64) := $(kvm-book3s_64-module-objs)
111c4f9c779SAlexander Graf
1124f841390SAlexander Grafkvm-book3s_32-objs := \
1134f841390SAlexander Graf	$(common-objs-y) \
1144f841390SAlexander Graf	fpu.o \
1154f841390SAlexander Graf	book3s_paired_singles.o \
1164f841390SAlexander Graf	book3s.o \
117f05ed4d5SPaul Mackerras	book3s_pr.o \
1184f841390SAlexander Graf	book3s_emulate.o \
1194f841390SAlexander Graf	book3s_interrupts.o \
120fef093beSAlexander Graf	book3s_mmu_hpte.o \
1214f841390SAlexander Graf	book3s_32_mmu_host.o \
1224f841390SAlexander Graf	book3s_32_mmu.o
1234f841390SAlexander Grafkvm-objs-$(CONFIG_KVM_BOOK3S_32) := $(kvm-book3s_32-objs)
1244f841390SAlexander Graf
1255df554adSScott Woodkvm-objs-$(CONFIG_KVM_MPIC) += mpic.o
126535cf7b3SMarc Zyngierkvm-objs-$(CONFIG_HAVE_KVM_IRQ_ROUTING) += $(KVM)/irqchip.o
1275df554adSScott Wood
128c4f9c779SAlexander Grafkvm-objs := $(kvm-objs-m) $(kvm-objs-y)
129c4f9c779SAlexander Graf
130c4f9c779SAlexander Grafobj-$(CONFIG_KVM_440) += kvm.o
131bf7ca4bdSAlexander Grafobj-$(CONFIG_KVM_E500V2) += kvm.o
13273196cd3SScott Woodobj-$(CONFIG_KVM_E500MC) += kvm.o
133c4f9c779SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_64) += kvm.o
1344f841390SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_32) += kvm.o
135c4f9c779SAlexander Graf
136*2ba9f0d8SAneesh Kumar K.Vobj-$(CONFIG_KVM_BOOK3S_64_PR) += kvm-pr.o
137*2ba9f0d8SAneesh Kumar K.Vobj-$(CONFIG_KVM_BOOK3S_64_HV) += kvm-hv.o
138*2ba9f0d8SAneesh Kumar K.V
139a8606e20SPaul Mackerrasobj-y += $(kvm-book3s_64-builtin-objs-y)
140