Commit | Line | Data |
---|---|---|
bbf45ba5 HB |
1 | # |
2 | # Makefile for Kernel-based Virtual Machine module | |
3 | # | |
4 | ||
ba55bd74 ME |
5 | subdir-ccflags-$(CONFIG_PPC_WERROR) := -Werror |
6 | ||
4108d9ba | 7 | ccflags-y := -Ivirt/kvm -Iarch/powerpc/kvm |
535cf7b3 | 8 | KVM := ../../../virt/kvm |
bbf45ba5 | 9 | |
535cf7b3 | 10 | common-objs-y = $(KVM)/kvm_main.o $(KVM)/coalesced_mmio.o \ |
0af574be PB |
11 | $(KVM)/eventfd.o |
12 | common-objs-$(CONFIG_KVM_VFIO) += $(KVM)/vfio.o | |
bbf45ba5 | 13 | |
b71c9e2f AG |
14 | CFLAGS_e500_mmu.o := -I. |
15 | CFLAGS_e500_mmu_host.o := -I. | |
46f43c6e | 16 | CFLAGS_emulate.o := -I. |
d69614a2 | 17 | CFLAGS_emulate_loadstore.o := -I. |
46f43c6e | 18 | |
d69614a2 | 19 | common-objs-y += powerpc.o emulate.o emulate_loadstore.o |
73e75b41 | 20 | obj-$(CONFIG_KVM_EXIT_TIMING) += timing.o |
c14dea04 | 21 | obj-$(CONFIG_KVM_BOOK3S_HANDLER) += book3s_exports.o |
bbf45ba5 | 22 | |
58ab5e0c | 23 | AFLAGS_booke_interrupts.o := -I$(objtree)/$(obj) |
bbf45ba5 | 24 | |
bc8080cb | 25 | kvm-e500-objs := \ |
c4f9c779 | 26 | $(common-objs-y) \ |
bc8080cb HB |
27 | booke.o \ |
28 | booke_emulate.o \ | |
29 | booke_interrupts.o \ | |
30 | e500.o \ | |
b71c9e2f AG |
31 | e500_mmu.o \ |
32 | e500_mmu_host.o \ | |
bc8080cb | 33 | e500_emulate.o |
bf7ca4bd | 34 | kvm-objs-$(CONFIG_KVM_E500V2) := $(kvm-e500-objs) |
c4f9c779 | 35 | |
73196cd3 SW |
36 | kvm-e500mc-objs := \ |
37 | $(common-objs-y) \ | |
38 | booke.o \ | |
39 | booke_emulate.o \ | |
40 | bookehv_interrupts.o \ | |
41 | e500mc.o \ | |
b71c9e2f AG |
42 | e500_mmu.o \ |
43 | e500_mmu_host.o \ | |
73196cd3 SW |
44 | e500_emulate.o |
45 | kvm-objs-$(CONFIG_KVM_E500MC) := $(kvm-e500mc-objs) | |
46 | ||
066212e0 PM |
47 | kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) := \ |
48 | book3s_64_vio_hv.o | |
49 | ||
2ba9f0d8 | 50 | kvm-pr-y := \ |
963cf3dc | 51 | fpu.o \ |
29577fc0 | 52 | emulate.o \ |
831317b6 | 53 | book3s_paired_singles.o \ |
f05ed4d5 | 54 | book3s_pr.o \ |
0254f074 | 55 | book3s_pr_papr.o \ |
2191d657 AG |
56 | book3s_emulate.o \ |
57 | book3s_interrupts.o \ | |
fef093be | 58 | book3s_mmu_hpte.o \ |
c4f9c779 AG |
59 | book3s_64_mmu_host.o \ |
60 | book3s_64_mmu.o \ | |
61 | book3s_32_mmu.o | |
066212e0 | 62 | |
9975f5e3 AK |
63 | ifdef CONFIG_KVM_BOOK3S_PR_POSSIBLE |
64 | kvm-book3s_64-module-objs := \ | |
65 | $(KVM)/coalesced_mmio.o | |
66 | ||
67 | kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \ | |
177339d7 | 68 | book3s_rmhandlers.o |
9975f5e3 | 69 | endif |
de56a948 | 70 | |
2ba9f0d8 | 71 | kvm-hv-y += \ |
de56a948 PM |
72 | book3s_hv.o \ |
73 | book3s_hv_interrupts.o \ | |
74 | book3s_64_mmu_hv.o | |
066212e0 | 75 | |
e7d26f28 BH |
76 | kvm-book3s_64-builtin-xics-objs-$(CONFIG_KVM_XICS) := \ |
77 | book3s_hv_rm_xics.o | |
066212e0 | 78 | |
2ba9f0d8 AK |
79 | ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE |
80 | kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \ | |
177339d7 | 81 | book3s_hv_rmhandlers.o \ |
54738c09 | 82 | book3s_hv_rm_mmu.o \ |
b4072df4 | 83 | book3s_hv_ras.o \ |
e7d26f28 BH |
84 | book3s_hv_builtin.o \ |
85 | $(kvm-book3s_64-builtin-xics-objs-y) | |
2ba9f0d8 | 86 | endif |
de56a948 | 87 | |
bc5ad3f3 BH |
88 | kvm-book3s_64-objs-$(CONFIG_KVM_XICS) += \ |
89 | book3s_xics.o | |
90 | ||
9975f5e3 | 91 | kvm-book3s_64-module-objs += \ |
535cf7b3 MZ |
92 | $(KVM)/kvm_main.o \ |
93 | $(KVM)/eventfd.o \ | |
de56a948 | 94 | powerpc.o \ |
d69614a2 | 95 | emulate_loadstore.o \ |
de56a948 | 96 | book3s.o \ |
f31e65e1 | 97 | book3s_64_vio.o \ |
8e591cb7 | 98 | book3s_rtas.o \ |
de56a948 | 99 | $(kvm-book3s_64-objs-y) |
a8606e20 PM |
100 | |
101 | kvm-objs-$(CONFIG_KVM_BOOK3S_64) := $(kvm-book3s_64-module-objs) | |
c4f9c779 | 102 | |
4f841390 AG |
103 | kvm-book3s_32-objs := \ |
104 | $(common-objs-y) \ | |
105 | fpu.o \ | |
106 | book3s_paired_singles.o \ | |
107 | book3s.o \ | |
f05ed4d5 | 108 | book3s_pr.o \ |
4f841390 AG |
109 | book3s_emulate.o \ |
110 | book3s_interrupts.o \ | |
fef093be | 111 | book3s_mmu_hpte.o \ |
4f841390 AG |
112 | book3s_32_mmu_host.o \ |
113 | book3s_32_mmu.o | |
114 | kvm-objs-$(CONFIG_KVM_BOOK3S_32) := $(kvm-book3s_32-objs) | |
115 | ||
5df554ad | 116 | kvm-objs-$(CONFIG_KVM_MPIC) += mpic.o |
535cf7b3 | 117 | kvm-objs-$(CONFIG_HAVE_KVM_IRQ_ROUTING) += $(KVM)/irqchip.o |
5df554ad | 118 | |
c4f9c779 AG |
119 | kvm-objs := $(kvm-objs-m) $(kvm-objs-y) |
120 | ||
bf7ca4bd | 121 | obj-$(CONFIG_KVM_E500V2) += kvm.o |
73196cd3 | 122 | obj-$(CONFIG_KVM_E500MC) += kvm.o |
c4f9c779 | 123 | obj-$(CONFIG_KVM_BOOK3S_64) += kvm.o |
4f841390 | 124 | obj-$(CONFIG_KVM_BOOK3S_32) += kvm.o |
c4f9c779 | 125 | |
2ba9f0d8 AK |
126 | obj-$(CONFIG_KVM_BOOK3S_64_PR) += kvm-pr.o |
127 | obj-$(CONFIG_KVM_BOOK3S_64_HV) += kvm-hv.o | |
128 | ||
a8606e20 | 129 | obj-y += $(kvm-book3s_64-builtin-objs-y) |