]> Pileus Git - ~andy/linux/blob - arch/powerpc/kvm/Makefile
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
[~andy/linux] / arch / powerpc / kvm / Makefile
1 #
2 # Makefile for Kernel-based Virtual Machine module
3 #
4
5 subdir-ccflags-$(CONFIG_PPC_WERROR) := -Werror
6
7 ccflags-y := -Ivirt/kvm -Iarch/powerpc/kvm
8 KVM := ../../../virt/kvm
9
10 common-objs-y = $(KVM)/kvm_main.o $(KVM)/coalesced_mmio.o \
11                 $(KVM)/eventfd.o
12
13 CFLAGS_44x_tlb.o  := -I.
14 CFLAGS_e500_mmu.o := -I.
15 CFLAGS_e500_mmu_host.o := -I.
16 CFLAGS_emulate.o  := -I.
17
18 common-objs-y += powerpc.o emulate.o
19 obj-$(CONFIG_KVM_EXIT_TIMING) += timing.o
20 obj-$(CONFIG_KVM_BOOK3S_HANDLER) += book3s_exports.o
21
22 AFLAGS_booke_interrupts.o := -I$(obj)
23
24 kvm-440-objs := \
25         $(common-objs-y) \
26         booke.o \
27         booke_emulate.o \
28         booke_interrupts.o \
29         44x.o \
30         44x_tlb.o \
31         44x_emulate.o
32 kvm-objs-$(CONFIG_KVM_440) := $(kvm-440-objs)
33
34 kvm-e500-objs := \
35         $(common-objs-y) \
36         booke.o \
37         booke_emulate.o \
38         booke_interrupts.o \
39         e500.o \
40         e500_mmu.o \
41         e500_mmu_host.o \
42         e500_emulate.o
43 kvm-objs-$(CONFIG_KVM_E500V2) := $(kvm-e500-objs)
44
45 kvm-e500mc-objs := \
46         $(common-objs-y) \
47         booke.o \
48         booke_emulate.o \
49         bookehv_interrupts.o \
50         e500mc.o \
51         e500_mmu.o \
52         e500_mmu_host.o \
53         e500_emulate.o
54 kvm-objs-$(CONFIG_KVM_E500MC) := $(kvm-e500mc-objs)
55
56 kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) := \
57         book3s_64_vio_hv.o
58
59 kvm-pr-y := \
60         fpu.o \
61         book3s_paired_singles.o \
62         book3s_pr.o \
63         book3s_pr_papr.o \
64         book3s_emulate.o \
65         book3s_interrupts.o \
66         book3s_mmu_hpte.o \
67         book3s_64_mmu_host.o \
68         book3s_64_mmu.o \
69         book3s_32_mmu.o
70
71 ifdef CONFIG_KVM_BOOK3S_PR_POSSIBLE
72 kvm-book3s_64-module-objs := \
73         $(KVM)/coalesced_mmio.o
74
75 kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \
76         book3s_rmhandlers.o
77 endif
78
79 kvm-hv-y += \
80         book3s_hv.o \
81         book3s_hv_interrupts.o \
82         book3s_64_mmu_hv.o
83
84 kvm-book3s_64-builtin-xics-objs-$(CONFIG_KVM_XICS) := \
85         book3s_hv_rm_xics.o
86
87 ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE
88 kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \
89         book3s_hv_rmhandlers.o \
90         book3s_hv_rm_mmu.o \
91         book3s_hv_ras.o \
92         book3s_hv_builtin.o \
93         book3s_hv_cma.o \
94         $(kvm-book3s_64-builtin-xics-objs-y)
95 endif
96
97 kvm-book3s_64-objs-$(CONFIG_KVM_XICS) += \
98         book3s_xics.o
99
100 kvm-book3s_64-module-objs += \
101         $(KVM)/kvm_main.o \
102         $(KVM)/eventfd.o \
103         powerpc.o \
104         emulate.o \
105         book3s.o \
106         book3s_64_vio.o \
107         book3s_rtas.o \
108         $(kvm-book3s_64-objs-y)
109
110 kvm-objs-$(CONFIG_KVM_BOOK3S_64) := $(kvm-book3s_64-module-objs)
111
112 kvm-book3s_32-objs := \
113         $(common-objs-y) \
114         fpu.o \
115         book3s_paired_singles.o \
116         book3s.o \
117         book3s_pr.o \
118         book3s_emulate.o \
119         book3s_interrupts.o \
120         book3s_mmu_hpte.o \
121         book3s_32_mmu_host.o \
122         book3s_32_mmu.o
123 kvm-objs-$(CONFIG_KVM_BOOK3S_32) := $(kvm-book3s_32-objs)
124
125 kvm-objs-$(CONFIG_KVM_MPIC) += mpic.o
126 kvm-objs-$(CONFIG_HAVE_KVM_IRQ_ROUTING) += $(KVM)/irqchip.o
127
128 kvm-objs := $(kvm-objs-m) $(kvm-objs-y)
129
130 obj-$(CONFIG_KVM_440) += kvm.o
131 obj-$(CONFIG_KVM_E500V2) += kvm.o
132 obj-$(CONFIG_KVM_E500MC) += kvm.o
133 obj-$(CONFIG_KVM_BOOK3S_64) += kvm.o
134 obj-$(CONFIG_KVM_BOOK3S_32) += kvm.o
135
136 obj-$(CONFIG_KVM_BOOK3S_64_PR) += kvm-pr.o
137 obj-$(CONFIG_KVM_BOOK3S_64_HV) += kvm-hv.o
138
139 obj-y += $(kvm-book3s_64-builtin-objs-y)