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