xref: /linux/arch/powerpc/kvm/Makefile (revision 535cf7b3b13c7faed3dfabafb6598417de1129ca)
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
8*535cf7b3SMarc ZyngierKVM := ../../../virt/kvm
9bbf45ba5SHollis Blanchard
10*535cf7b3SMarc Zyngiercommon-objs-y = $(KVM)/kvm_main.o $(KVM)/coalesced_mmio.o \
11*535cf7b3SMarc 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
56de56a948SPaul Mackerraskvm-book3s_64-objs-$(CONFIG_KVM_BOOK3S_64_PR) := \
57*535cf7b3SMarc Zyngier	$(KVM)/coalesced_mmio.o \
58963cf3dcSAlexander Graf	fpu.o \
59831317b6SAlexander Graf	book3s_paired_singles.o \
60f05ed4d5SPaul Mackerras	book3s_pr.o \
610254f074SAlexander Graf	book3s_pr_papr.o \
62f31e65e1SBenjamin Herrenschmidt	book3s_64_vio_hv.o \
632191d657SAlexander Graf	book3s_emulate.o \
642191d657SAlexander Graf	book3s_interrupts.o \
65fef093beSAlexander Graf	book3s_mmu_hpte.o \
66c4f9c779SAlexander Graf	book3s_64_mmu_host.o \
67c4f9c779SAlexander Graf	book3s_64_mmu.o \
68c4f9c779SAlexander Graf	book3s_32_mmu.o
69177339d7SPaul Mackerraskvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_PR) := \
70177339d7SPaul Mackerras	book3s_rmhandlers.o
71de56a948SPaul Mackerras
72de56a948SPaul Mackerraskvm-book3s_64-objs-$(CONFIG_KVM_BOOK3S_64_HV) := \
73de56a948SPaul Mackerras	book3s_hv.o \
74de56a948SPaul Mackerras	book3s_hv_interrupts.o \
75de56a948SPaul Mackerras	book3s_64_mmu_hv.o
76e7d26f28SBenjamin Herrenschmidtkvm-book3s_64-builtin-xics-objs-$(CONFIG_KVM_XICS) := \
77e7d26f28SBenjamin Herrenschmidt	book3s_hv_rm_xics.o
78a8606e20SPaul Mackerraskvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HV) := \
79177339d7SPaul Mackerras	book3s_hv_rmhandlers.o \
8054738c09SDavid Gibson	book3s_hv_rm_mmu.o \
81aa04b4ccSPaul Mackerras	book3s_64_vio_hv.o \
82b4072df4SPaul Mackerras	book3s_hv_ras.o \
83e7d26f28SBenjamin Herrenschmidt	book3s_hv_builtin.o \
84e7d26f28SBenjamin Herrenschmidt	$(kvm-book3s_64-builtin-xics-objs-y)
85de56a948SPaul Mackerras
86bc5ad3f3SBenjamin Herrenschmidtkvm-book3s_64-objs-$(CONFIG_KVM_XICS) += \
87bc5ad3f3SBenjamin Herrenschmidt	book3s_xics.o
88bc5ad3f3SBenjamin Herrenschmidt
89a8606e20SPaul Mackerraskvm-book3s_64-module-objs := \
90*535cf7b3SMarc Zyngier	$(KVM)/kvm_main.o \
91*535cf7b3SMarc Zyngier	$(KVM)/eventfd.o \
92de56a948SPaul Mackerras	powerpc.o \
93de56a948SPaul Mackerras	emulate.o \
94de56a948SPaul Mackerras	book3s.o \
95f31e65e1SBenjamin Herrenschmidt	book3s_64_vio.o \
968e591cb7SMichael Ellerman	book3s_rtas.o \
97de56a948SPaul Mackerras	$(kvm-book3s_64-objs-y)
98a8606e20SPaul Mackerras
99a8606e20SPaul Mackerraskvm-objs-$(CONFIG_KVM_BOOK3S_64) := $(kvm-book3s_64-module-objs)
100c4f9c779SAlexander Graf
1014f841390SAlexander Grafkvm-book3s_32-objs := \
1024f841390SAlexander Graf	$(common-objs-y) \
1034f841390SAlexander Graf	fpu.o \
1044f841390SAlexander Graf	book3s_paired_singles.o \
1054f841390SAlexander Graf	book3s.o \
106f05ed4d5SPaul Mackerras	book3s_pr.o \
1074f841390SAlexander Graf	book3s_emulate.o \
1084f841390SAlexander Graf	book3s_interrupts.o \
109fef093beSAlexander Graf	book3s_mmu_hpte.o \
1104f841390SAlexander Graf	book3s_32_mmu_host.o \
1114f841390SAlexander Graf	book3s_32_mmu.o
1124f841390SAlexander Grafkvm-objs-$(CONFIG_KVM_BOOK3S_32) := $(kvm-book3s_32-objs)
1134f841390SAlexander Graf
1145df554adSScott Woodkvm-objs-$(CONFIG_KVM_MPIC) += mpic.o
115*535cf7b3SMarc Zyngierkvm-objs-$(CONFIG_HAVE_KVM_IRQ_ROUTING) += $(KVM)/irqchip.o
1165df554adSScott Wood
117c4f9c779SAlexander Grafkvm-objs := $(kvm-objs-m) $(kvm-objs-y)
118c4f9c779SAlexander Graf
119c4f9c779SAlexander Grafobj-$(CONFIG_KVM_440) += kvm.o
120bf7ca4bdSAlexander Grafobj-$(CONFIG_KVM_E500V2) += kvm.o
12173196cd3SScott Woodobj-$(CONFIG_KVM_E500MC) += kvm.o
122c4f9c779SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_64) += kvm.o
1234f841390SAlexander Grafobj-$(CONFIG_KVM_BOOK3S_32) += kvm.o
124c4f9c779SAlexander Graf
125a8606e20SPaul Mackerrasobj-y += $(kvm-book3s_64-builtin-objs-y)
126