blob: c2a08636e6d4294a12e5148fd4a8dd8fe07dbe7d [file] [log] [blame]
Hollis Blanchardbbf45ba2008-04-16 23:28:09 -05001#
2# Makefile for Kernel-based Virtual Machine module
3#
4
Michael Ellermanba55bd72009-06-09 20:48:51 +00005subdir-ccflags-$(CONFIG_PPC_WERROR) := -Werror
6
matt mooney4108d9b2010-09-22 20:51:09 +00007ccflags-y := -Ivirt/kvm -Iarch/powerpc/kvm
Hollis Blanchardbbf45ba2008-04-16 23:28:09 -05008
Jerone Young12f67552008-07-14 14:00:02 +02009common-objs-y = $(addprefix ../../../virt/kvm/, kvm_main.o coalesced_mmio.o)
Hollis Blanchardbbf45ba2008-04-16 23:28:09 -050010
Marcelo Tosatti46f43c62009-06-18 11:47:27 -030011CFLAGS_44x_tlb.o := -I.
12CFLAGS_e500_tlb.o := -I.
13CFLAGS_emulate.o := -I.
14
Alexander Grafc4f9c772009-10-30 05:47:24 +000015common-objs-y += powerpc.o emulate.o
Hollis Blanchard73e75b42008-12-02 15:51:57 -060016obj-$(CONFIG_KVM_EXIT_TIMING) += timing.o
Alexander Grafc14dea02010-04-16 00:11:41 +020017obj-$(CONFIG_KVM_BOOK3S_HANDLER) += book3s_exports.o
Hollis Blanchardbbf45ba2008-04-16 23:28:09 -050018
19AFLAGS_booke_interrupts.o := -I$(obj)
20
Hollis Blanchard75f74f02008-11-05 09:36:16 -060021kvm-440-objs := \
Alexander Grafc4f9c772009-10-30 05:47:24 +000022 $(common-objs-y) \
Hollis Blanchard75f74f02008-11-05 09:36:16 -060023 booke.o \
Hollis Blanchardd0c7dc02009-01-03 16:23:06 -060024 booke_emulate.o \
Hollis Blanchard75f74f02008-11-05 09:36:16 -060025 booke_interrupts.o \
26 44x.o \
27 44x_tlb.o \
28 44x_emulate.o
Alexander Grafc4f9c772009-10-30 05:47:24 +000029kvm-objs-$(CONFIG_KVM_440) := $(kvm-440-objs)
Hollis Blanchardbc8080c2009-01-03 16:23:10 -060030
31kvm-e500-objs := \
Alexander Grafc4f9c772009-10-30 05:47:24 +000032 $(common-objs-y) \
Hollis Blanchardbc8080c2009-01-03 16:23:10 -060033 booke.o \
34 booke_emulate.o \
35 booke_interrupts.o \
36 e500.o \
37 e500_tlb.o \
38 e500_emulate.o
Alexander Grafbf7ca4b2012-02-15 23:40:00 +000039kvm-objs-$(CONFIG_KVM_E500V2) := $(kvm-e500-objs)
Alexander Grafc4f9c772009-10-30 05:47:24 +000040
Scott Wood73196cd2011-12-20 15:34:47 +000041kvm-e500mc-objs := \
42 $(common-objs-y) \
43 booke.o \
44 booke_emulate.o \
45 bookehv_interrupts.o \
46 e500mc.o \
47 e500_tlb.o \
48 e500_emulate.o
49kvm-objs-$(CONFIG_KVM_E500MC) := $(kvm-e500mc-objs)
50
Paul Mackerrasde56a942011-06-29 00:21:34 +000051kvm-book3s_64-objs-$(CONFIG_KVM_BOOK3S_64_PR) := \
52 ../../../virt/kvm/coalesced_mmio.o \
Alexander Graf963cf3d2010-02-19 11:00:40 +010053 fpu.o \
Alexander Graf831317b2010-02-19 11:00:44 +010054 book3s_paired_singles.o \
Paul Mackerrasf05ed4d2011-06-29 00:17:58 +000055 book3s_pr.o \
Alexander Graf0254f0742011-08-08 17:21:15 +020056 book3s_pr_papr.o \
Benjamin Herrenschmidtf31e65e2012-03-15 21:58:34 +000057 book3s_64_vio_hv.o \
Alexander Graf2191d652010-04-16 00:11:32 +020058 book3s_emulate.o \
59 book3s_interrupts.o \
Alexander Graffef093be2010-06-30 15:18:46 +020060 book3s_mmu_hpte.o \
Alexander Grafc4f9c772009-10-30 05:47:24 +000061 book3s_64_mmu_host.o \
62 book3s_64_mmu.o \
63 book3s_32_mmu.o
Paul Mackerras177339d2011-07-23 17:41:11 +100064kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_PR) := \
65 book3s_rmhandlers.o
Paul Mackerrasde56a942011-06-29 00:21:34 +000066
67kvm-book3s_64-objs-$(CONFIG_KVM_BOOK3S_64_HV) := \
68 book3s_hv.o \
69 book3s_hv_interrupts.o \
70 book3s_64_mmu_hv.o
Paul Mackerrasa8606e22011-06-29 00:22:05 +000071kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HV) := \
Paul Mackerras177339d2011-07-23 17:41:11 +100072 book3s_hv_rmhandlers.o \
David Gibson54738c02011-06-29 00:22:41 +000073 book3s_hv_rm_mmu.o \
Paul Mackerrasaa04b4c2011-06-29 00:25:44 +000074 book3s_64_vio_hv.o \
75 book3s_hv_builtin.o
Paul Mackerrasde56a942011-06-29 00:21:34 +000076
Paul Mackerrasa8606e22011-06-29 00:22:05 +000077kvm-book3s_64-module-objs := \
Paul Mackerrasde56a942011-06-29 00:21:34 +000078 ../../../virt/kvm/kvm_main.o \
79 powerpc.o \
80 emulate.o \
81 book3s.o \
Benjamin Herrenschmidtf31e65e2012-03-15 21:58:34 +000082 book3s_64_vio.o \
Paul Mackerrasde56a942011-06-29 00:21:34 +000083 $(kvm-book3s_64-objs-y)
Paul Mackerrasa8606e22011-06-29 00:22:05 +000084
85kvm-objs-$(CONFIG_KVM_BOOK3S_64) := $(kvm-book3s_64-module-objs)
Alexander Grafc4f9c772009-10-30 05:47:24 +000086
Alexander Graf4f841392010-04-16 00:11:58 +020087kvm-book3s_32-objs := \
88 $(common-objs-y) \
89 fpu.o \
90 book3s_paired_singles.o \
91 book3s.o \
Paul Mackerrasf05ed4d2011-06-29 00:17:58 +000092 book3s_pr.o \
Alexander Graf4f841392010-04-16 00:11:58 +020093 book3s_emulate.o \
94 book3s_interrupts.o \
Alexander Graffef093be2010-06-30 15:18:46 +020095 book3s_mmu_hpte.o \
Alexander Graf4f841392010-04-16 00:11:58 +020096 book3s_32_mmu_host.o \
97 book3s_32_mmu.o
98kvm-objs-$(CONFIG_KVM_BOOK3S_32) := $(kvm-book3s_32-objs)
99
Alexander Grafc4f9c772009-10-30 05:47:24 +0000100kvm-objs := $(kvm-objs-m) $(kvm-objs-y)
101
102obj-$(CONFIG_KVM_440) += kvm.o
Alexander Grafbf7ca4b2012-02-15 23:40:00 +0000103obj-$(CONFIG_KVM_E500V2) += kvm.o
Scott Wood73196cd2011-12-20 15:34:47 +0000104obj-$(CONFIG_KVM_E500MC) += kvm.o
Alexander Grafc4f9c772009-10-30 05:47:24 +0000105obj-$(CONFIG_KVM_BOOK3S_64) += kvm.o
Alexander Graf4f841392010-04-16 00:11:58 +0200106obj-$(CONFIG_KVM_BOOK3S_32) += kvm.o
Alexander Grafc4f9c772009-10-30 05:47:24 +0000107
Paul Mackerrasa8606e22011-06-29 00:22:05 +0000108obj-y += $(kvm-book3s_64-builtin-objs-y)