aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2017-04-27 01:29:40 -0400
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2017-04-27 01:34:07 -0400
commitd0790fb6e5bc5a6bb923de9c2be7fc210d6b689b (patch)
tree06e5eda704d2aee3c15c47d8a8f095ba8beac0bc
parent284c43e6af415515865d2900d18d1382979c777c (diff)
parent152c1c8d60ebedce8cc912c12f9be9ceca6c6671 (diff)
Merge branch 's390forkvm' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into features
Pull cpacf changes for KVM from Jason Herne: Add query support for the KMA instruction.
-rw-r--r--arch/s390/include/asm/cpacf.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/s390/include/asm/cpacf.h b/arch/s390/include/asm/cpacf.h
index 7707a35176c4..e06f2556b316 100644
--- a/arch/s390/include/asm/cpacf.h
+++ b/arch/s390/include/asm/cpacf.h
@@ -26,6 +26,7 @@
26#define CPACF_PCC 0xb92c /* MSA4 */ 26#define CPACF_PCC 0xb92c /* MSA4 */
27#define CPACF_KMCTR 0xb92d /* MSA4 */ 27#define CPACF_KMCTR 0xb92d /* MSA4 */
28#define CPACF_PRNO 0xb93c /* MSA5 */ 28#define CPACF_PRNO 0xb93c /* MSA5 */
29#define CPACF_KMA 0xb929 /* MSA8 */
29 30
30/* 31/*
31 * En/decryption modifier bits 32 * En/decryption modifier bits
@@ -151,8 +152,8 @@ static inline void __cpacf_query(unsigned int opcode, cpacf_mask_t *mask)
151 152
152 asm volatile( 153 asm volatile(
153 " spm 0\n" /* pckmo doesn't change the cc */ 154 " spm 0\n" /* pckmo doesn't change the cc */
154 /* Parameter registers are ignored, but may not be 0 */ 155 /* Parameter regs are ignored, but must be nonzero and unique */
155 "0: .insn rrf,%[opc] << 16,2,2,2,0\n" 156 "0: .insn rrf,%[opc] << 16,2,4,6,0\n"
156 " brc 1,0b\n" /* handle partial completion */ 157 " brc 1,0b\n" /* handle partial completion */
157 : "=m" (*mask) 158 : "=m" (*mask)
158 : [fc] "d" (r0), [pba] "a" (r1), [opc] "i" (opcode) 159 : [fc] "d" (r0), [pba] "a" (r1), [opc] "i" (opcode)