diff options
author | Radim Krčmář <rkrcmar@redhat.com> | 2016-12-06 08:49:05 -0500 |
---|---|---|
committer | Radim Krčmář <rkrcmar@redhat.com> | 2016-12-06 08:49:05 -0500 |
commit | 57d1da871b85c3a79e070d5cfc5ccb554ed839c4 (patch) | |
tree | a697ed84ef44a6fe97abf4376ee56d03ae3d2e67 | |
parent | ffcb09f27f46ea21305c7846de1fd3b76e4e6a6f (diff) | |
parent | e34af7849014f1d80899b811cf9021588cb8dd88 (diff) |
Merge branch 'kvm-ppc-next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Eliminate merge conflict between 9e5f68842276 and ebe4535fbe7a.
-rw-r--r-- | arch/powerpc/include/asm/asm-prototypes.h | 44 | ||||
-rw-r--r-- | arch/powerpc/include/asm/kvm_ppc.h | 42 | ||||
-rw-r--r-- | arch/powerpc/kvm/book3s_64_vio_hv.c | 1 | ||||
-rw-r--r-- | arch/powerpc/kvm/book3s_hv_builtin.c | 1 | ||||
-rw-r--r-- | arch/powerpc/kvm/book3s_hv_ras.c | 2 | ||||
-rw-r--r-- | arch/powerpc/kvm/book3s_hv_rm_mmu.c | 1 | ||||
-rw-r--r-- | arch/powerpc/kvm/book3s_hv_rm_xics.c | 1 |
7 files changed, 43 insertions, 49 deletions
diff --git a/arch/powerpc/include/asm/asm-prototypes.h b/arch/powerpc/include/asm/asm-prototypes.h index 6c853bcd11fa..d1492736d852 100644 --- a/arch/powerpc/include/asm/asm-prototypes.h +++ b/arch/powerpc/include/asm/asm-prototypes.h | |||
@@ -14,9 +14,6 @@ | |||
14 | 14 | ||
15 | #include <linux/threads.h> | 15 | #include <linux/threads.h> |
16 | #include <linux/kprobes.h> | 16 | #include <linux/kprobes.h> |
17 | #ifdef CONFIG_KVM | ||
18 | #include <linux/kvm_host.h> | ||
19 | #endif | ||
20 | 17 | ||
21 | #include <uapi/asm/ucontext.h> | 18 | #include <uapi/asm/ucontext.h> |
22 | 19 | ||
@@ -112,45 +109,4 @@ void early_setup_secondary(void); | |||
112 | /* time */ | 109 | /* time */ |
113 | void accumulate_stolen_time(void); | 110 | void accumulate_stolen_time(void); |
114 | 111 | ||
115 | /* kvm */ | ||
116 | #ifdef CONFIG_KVM | ||
117 | long kvmppc_rm_h_put_tce(struct kvm_vcpu *vcpu, unsigned long liobn, | ||
118 | unsigned long ioba, unsigned long tce); | ||
119 | long kvmppc_rm_h_put_tce_indirect(struct kvm_vcpu *vcpu, | ||
120 | unsigned long liobn, unsigned long ioba, | ||
121 | unsigned long tce_list, unsigned long npages); | ||
122 | long kvmppc_rm_h_stuff_tce(struct kvm_vcpu *vcpu, | ||
123 | unsigned long liobn, unsigned long ioba, | ||
124 | unsigned long tce_value, unsigned long npages); | ||
125 | long int kvmppc_rm_h_confer(struct kvm_vcpu *vcpu, int target, | ||
126 | unsigned int yield_count); | ||
127 | long kvmppc_h_random(struct kvm_vcpu *vcpu); | ||
128 | void kvmhv_commence_exit(int trap); | ||
129 | long kvmppc_realmode_machine_check(struct kvm_vcpu *vcpu); | ||
130 | void kvmppc_subcore_enter_guest(void); | ||
131 | void kvmppc_subcore_exit_guest(void); | ||
132 | long kvmppc_realmode_hmi_handler(void); | ||
133 | long kvmppc_h_enter(struct kvm_vcpu *vcpu, unsigned long flags, | ||
134 | long pte_index, unsigned long pteh, unsigned long ptel); | ||
135 | long kvmppc_h_remove(struct kvm_vcpu *vcpu, unsigned long flags, | ||
136 | unsigned long pte_index, unsigned long avpn); | ||
137 | long kvmppc_h_bulk_remove(struct kvm_vcpu *vcpu); | ||
138 | long kvmppc_h_protect(struct kvm_vcpu *vcpu, unsigned long flags, | ||
139 | unsigned long pte_index, unsigned long avpn, | ||
140 | unsigned long va); | ||
141 | long kvmppc_h_read(struct kvm_vcpu *vcpu, unsigned long flags, | ||
142 | unsigned long pte_index); | ||
143 | long kvmppc_h_clear_ref(struct kvm_vcpu *vcpu, unsigned long flags, | ||
144 | unsigned long pte_index); | ||
145 | long kvmppc_h_clear_mod(struct kvm_vcpu *vcpu, unsigned long flags, | ||
146 | unsigned long pte_index); | ||
147 | long kvmppc_hpte_hv_fault(struct kvm_vcpu *vcpu, unsigned long addr, | ||
148 | unsigned long slb_v, unsigned int status, bool data); | ||
149 | unsigned long kvmppc_rm_h_xirr(struct kvm_vcpu *vcpu); | ||
150 | int kvmppc_rm_h_ipi(struct kvm_vcpu *vcpu, unsigned long server, | ||
151 | unsigned long mfrr); | ||
152 | int kvmppc_rm_h_cppr(struct kvm_vcpu *vcpu, unsigned long cppr); | ||
153 | int kvmppc_rm_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr); | ||
154 | #endif | ||
155 | |||
156 | #endif /* _ASM_POWERPC_ASM_PROTOTYPES_H */ | 112 | #endif /* _ASM_POWERPC_ASM_PROTOTYPES_H */ |
diff --git a/arch/powerpc/include/asm/kvm_ppc.h b/arch/powerpc/include/asm/kvm_ppc.h index a5b94bed1423..2da67bf1f2ec 100644 --- a/arch/powerpc/include/asm/kvm_ppc.h +++ b/arch/powerpc/include/asm/kvm_ppc.h | |||
@@ -511,6 +511,48 @@ static inline int kvmppc_xics_hcall(struct kvm_vcpu *vcpu, u32 cmd) | |||
511 | #endif | 511 | #endif |
512 | 512 | ||
513 | /* | 513 | /* |
514 | * Prototypes for functions called only from assembler code. | ||
515 | * Having prototypes reduces sparse errors. | ||
516 | */ | ||
517 | long kvmppc_rm_h_put_tce(struct kvm_vcpu *vcpu, unsigned long liobn, | ||
518 | unsigned long ioba, unsigned long tce); | ||
519 | long kvmppc_rm_h_put_tce_indirect(struct kvm_vcpu *vcpu, | ||
520 | unsigned long liobn, unsigned long ioba, | ||
521 | unsigned long tce_list, unsigned long npages); | ||
522 | long kvmppc_rm_h_stuff_tce(struct kvm_vcpu *vcpu, | ||
523 | unsigned long liobn, unsigned long ioba, | ||
524 | unsigned long tce_value, unsigned long npages); | ||
525 | long int kvmppc_rm_h_confer(struct kvm_vcpu *vcpu, int target, | ||
526 | unsigned int yield_count); | ||
527 | long kvmppc_h_random(struct kvm_vcpu *vcpu); | ||
528 | void kvmhv_commence_exit(int trap); | ||
529 | long kvmppc_realmode_machine_check(struct kvm_vcpu *vcpu); | ||
530 | void kvmppc_subcore_enter_guest(void); | ||
531 | void kvmppc_subcore_exit_guest(void); | ||
532 | long kvmppc_realmode_hmi_handler(void); | ||
533 | long kvmppc_h_enter(struct kvm_vcpu *vcpu, unsigned long flags, | ||
534 | long pte_index, unsigned long pteh, unsigned long ptel); | ||
535 | long kvmppc_h_remove(struct kvm_vcpu *vcpu, unsigned long flags, | ||
536 | unsigned long pte_index, unsigned long avpn); | ||
537 | long kvmppc_h_bulk_remove(struct kvm_vcpu *vcpu); | ||
538 | long kvmppc_h_protect(struct kvm_vcpu *vcpu, unsigned long flags, | ||
539 | unsigned long pte_index, unsigned long avpn, | ||
540 | unsigned long va); | ||
541 | long kvmppc_h_read(struct kvm_vcpu *vcpu, unsigned long flags, | ||
542 | unsigned long pte_index); | ||
543 | long kvmppc_h_clear_ref(struct kvm_vcpu *vcpu, unsigned long flags, | ||
544 | unsigned long pte_index); | ||
545 | long kvmppc_h_clear_mod(struct kvm_vcpu *vcpu, unsigned long flags, | ||
546 | unsigned long pte_index); | ||
547 | long kvmppc_hpte_hv_fault(struct kvm_vcpu *vcpu, unsigned long addr, | ||
548 | unsigned long slb_v, unsigned int status, bool data); | ||
549 | unsigned long kvmppc_rm_h_xirr(struct kvm_vcpu *vcpu); | ||
550 | int kvmppc_rm_h_ipi(struct kvm_vcpu *vcpu, unsigned long server, | ||
551 | unsigned long mfrr); | ||
552 | int kvmppc_rm_h_cppr(struct kvm_vcpu *vcpu, unsigned long cppr); | ||
553 | int kvmppc_rm_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr); | ||
554 | |||
555 | /* | ||
514 | * Host-side operations we want to set up while running in real | 556 | * Host-side operations we want to set up while running in real |
515 | * mode in the guest operating on the xics. | 557 | * mode in the guest operating on the xics. |
516 | * Currently only VCPU wakeup is supported. | 558 | * Currently only VCPU wakeup is supported. |
diff --git a/arch/powerpc/kvm/book3s_64_vio_hv.c b/arch/powerpc/kvm/book3s_64_vio_hv.c index 66e98276d93e..e4c4ea973e57 100644 --- a/arch/powerpc/kvm/book3s_64_vio_hv.c +++ b/arch/powerpc/kvm/book3s_64_vio_hv.c | |||
@@ -39,7 +39,6 @@ | |||
39 | #include <asm/udbg.h> | 39 | #include <asm/udbg.h> |
40 | #include <asm/iommu.h> | 40 | #include <asm/iommu.h> |
41 | #include <asm/tce.h> | 41 | #include <asm/tce.h> |
42 | #include <asm/asm-prototypes.h> | ||
43 | 42 | ||
44 | #define TCES_PER_PAGE (PAGE_SIZE / sizeof(u64)) | 43 | #define TCES_PER_PAGE (PAGE_SIZE / sizeof(u64)) |
45 | 44 | ||
diff --git a/arch/powerpc/kvm/book3s_hv_builtin.c b/arch/powerpc/kvm/book3s_hv_builtin.c index 11561f0ef83a..5bb24be0b346 100644 --- a/arch/powerpc/kvm/book3s_hv_builtin.c +++ b/arch/powerpc/kvm/book3s_hv_builtin.c | |||
@@ -26,7 +26,6 @@ | |||
26 | #include <asm/dbell.h> | 26 | #include <asm/dbell.h> |
27 | #include <asm/cputhreads.h> | 27 | #include <asm/cputhreads.h> |
28 | #include <asm/io.h> | 28 | #include <asm/io.h> |
29 | #include <asm/asm-prototypes.h> | ||
30 | #include <asm/opal.h> | 29 | #include <asm/opal.h> |
31 | #include <asm/smp.h> | 30 | #include <asm/smp.h> |
32 | 31 | ||
diff --git a/arch/powerpc/kvm/book3s_hv_ras.c b/arch/powerpc/kvm/book3s_hv_ras.c index be1cee5dc032..7ef0993214f3 100644 --- a/arch/powerpc/kvm/book3s_hv_ras.c +++ b/arch/powerpc/kvm/book3s_hv_ras.c | |||
@@ -16,7 +16,7 @@ | |||
16 | #include <asm/machdep.h> | 16 | #include <asm/machdep.h> |
17 | #include <asm/cputhreads.h> | 17 | #include <asm/cputhreads.h> |
18 | #include <asm/hmi.h> | 18 | #include <asm/hmi.h> |
19 | #include <asm/asm-prototypes.h> | 19 | #include <asm/kvm_ppc.h> |
20 | 20 | ||
21 | /* SRR1 bits for machine check on POWER7 */ | 21 | /* SRR1 bits for machine check on POWER7 */ |
22 | #define SRR1_MC_LDSTERR (1ul << (63-42)) | 22 | #define SRR1_MC_LDSTERR (1ul << (63-42)) |
diff --git a/arch/powerpc/kvm/book3s_hv_rm_mmu.c b/arch/powerpc/kvm/book3s_hv_rm_mmu.c index 378b962bcf2e..9ef3c4be952f 100644 --- a/arch/powerpc/kvm/book3s_hv_rm_mmu.c +++ b/arch/powerpc/kvm/book3s_hv_rm_mmu.c | |||
@@ -21,7 +21,6 @@ | |||
21 | #include <asm/hvcall.h> | 21 | #include <asm/hvcall.h> |
22 | #include <asm/synch.h> | 22 | #include <asm/synch.h> |
23 | #include <asm/ppc-opcode.h> | 23 | #include <asm/ppc-opcode.h> |
24 | #include <asm/asm-prototypes.h> | ||
25 | 24 | ||
26 | /* Translate address of a vmalloc'd thing to a linear map address */ | 25 | /* Translate address of a vmalloc'd thing to a linear map address */ |
27 | static void *real_vmalloc_addr(void *x) | 26 | static void *real_vmalloc_addr(void *x) |
diff --git a/arch/powerpc/kvm/book3s_hv_rm_xics.c b/arch/powerpc/kvm/book3s_hv_rm_xics.c index 6a4c4d758a9e..06edc4366639 100644 --- a/arch/powerpc/kvm/book3s_hv_rm_xics.c +++ b/arch/powerpc/kvm/book3s_hv_rm_xics.c | |||
@@ -24,7 +24,6 @@ | |||
24 | #include <asm/pnv-pci.h> | 24 | #include <asm/pnv-pci.h> |
25 | #include <asm/opal.h> | 25 | #include <asm/opal.h> |
26 | #include <asm/smp.h> | 26 | #include <asm/smp.h> |
27 | #include <asm/asm-prototypes.h> | ||
28 | 27 | ||
29 | #include "book3s_xics.h" | 28 | #include "book3s_xics.h" |
30 | 29 | ||