2 * CPU features/facilities for s390
4 * Copyright IBM Corp. 2016, 2018
6 * Author(s): Michael Mueller <mimu@linux.vnet.ibm.com>
7 * David Hildenbrand <dahi@linux.vnet.ibm.com>
9 * This work is licensed under the terms of the GNU GPL, version 2 or (at
10 * your option) any later version. See the COPYING file in the top-level
14 #ifndef TARGET_S390X_CPU_FEATURES_DEF_H
15 #define TARGET_S390X_CPU_FEATURES_DEF_H
22 S390_FEAT_IDTE_SEGMENT
,
23 S390_FEAT_IDTE_REGION
,
24 S390_FEAT_ASN_LX_REUSE
,
27 S390_FEAT_SENSE_RUNNING_STATUS
,
28 S390_FEAT_CONDITIONAL_SSKE
,
29 S390_FEAT_CONFIGURATION_TOPOLOGY
,
31 S390_FEAT_NONQ_KEY_SETTING
,
32 S390_FEAT_EXTENDED_TRANSLATION_2
,
34 S390_FEAT_LONG_DISPLACEMENT
,
35 S390_FEAT_LONG_DISPLACEMENT_FAST
,
36 S390_FEAT_HFP_MADDSUB
,
37 S390_FEAT_EXTENDED_IMMEDIATE
,
38 S390_FEAT_EXTENDED_TRANSLATION_3
,
39 S390_FEAT_HFP_UNNORMALIZED_EXT
,
41 S390_FEAT_STORE_CLOCK_FAST
,
42 S390_FEAT_PARSING_ENH
,
43 S390_FEAT_MOVE_WITH_OPTIONAL_SPEC
,
44 S390_FEAT_TOD_CLOCK_STEERING
,
46 S390_FEAT_EXTRACT_CPU_TIME
,
47 S390_FEAT_COMPARE_AND_SWAP_AND_STORE
,
48 S390_FEAT_COMPARE_AND_SWAP_AND_STORE_2
,
49 S390_FEAT_GENERAL_INSTRUCTIONS_EXT
,
50 S390_FEAT_EXECUTE_EXT
,
51 S390_FEAT_ENHANCED_MONITOR
,
52 S390_FEAT_FLOATING_POINT_EXT
,
53 S390_FEAT_ORDER_PRESERVING_COMPRESSION
,
54 S390_FEAT_SET_PROGRAM_PARAMETERS
,
55 S390_FEAT_FLOATING_POINT_SUPPPORT_ENH
,
61 S390_FEAT_DFP_ZONED_CONVERSION
,
63 S390_FEAT_CONSTRAINT_TRANSACTIONAL_EXE
,
64 S390_FEAT_LOCAL_TLB_CLEARING
,
65 S390_FEAT_INTERLOCKED_ACCESS_2
,
67 S390_FEAT_ENTROPY_ENC_COMP
,
69 S390_FEAT_MISC_INSTRUCTION_EXT
,
70 S390_FEAT_SEMAPHORE_ASSIST
,
71 S390_FEAT_TIME_SLICE_INSTRUMENTATION
,
72 S390_FEAT_RUNTIME_INSTRUMENTATION
,
74 S390_FEAT_ADAPTER_EVENT_NOTIFICATION
,
75 S390_FEAT_ADAPTER_INT_SUPPRESSION
,
76 S390_FEAT_TRANSACTIONAL_EXE
,
77 S390_FEAT_STORE_HYPERVISOR_INFO
,
78 S390_FEAT_ACCESS_EXCEPTION_FS_INDICATION
,
82 S390_FEAT_DFP_PACKED_CONVERSION
,
86 S390_FEAT_INSTRUCTION_EXEC_PROT
,
87 S390_FEAT_SIDE_EFFECT_ACCESS_ESOP2
,
88 S390_FEAT_GUARDED_STORAGE
,
89 S390_FEAT_VECTOR_PACKED_DECIMAL
,
91 S390_FEAT_MULTIPLE_EPOCH
,
92 S390_FEAT_TEST_PENDING_EXT_INTERRUPTION
,
93 S390_FEAT_INSERT_REFERENCE_BITS_MULT
,
104 /* Sclp Conf Char Ext */
105 S390_FEAT_SIE_64BSCAO
,
115 S390_FEAT_SIE_SIGPIF
,
138 S390_FEAT_PLO_CSSTGR
,
141 S390_FEAT_PLO_CSDSTG
,
142 S390_FEAT_PLO_CSDSTGR
,
143 S390_FEAT_PLO_CSDSTX
,
145 S390_FEAT_PLO_CSTSTG
,
146 S390_FEAT_PLO_CSTSTGR
,
147 S390_FEAT_PLO_CSTSTX
,
156 S390_FEAT_PTFF_QTOUE
,
160 S390_FEAT_PTFF_STOUE
,
164 S390_FEAT_KMAC_TDEA_128
,
165 S390_FEAT_KMAC_TDEA_192
,
167 S390_FEAT_KMAC_ETDEA_128
,
168 S390_FEAT_KMAC_ETDEA_192
,
169 S390_FEAT_KMAC_AES_128
,
170 S390_FEAT_KMAC_AES_192
,
171 S390_FEAT_KMAC_AES_256
,
172 S390_FEAT_KMAC_EAES_128
,
173 S390_FEAT_KMAC_EAES_192
,
174 S390_FEAT_KMAC_EAES_256
,
178 S390_FEAT_KMC_TDEA_128
,
179 S390_FEAT_KMC_TDEA_192
,
181 S390_FEAT_KMC_ETDEA_128
,
182 S390_FEAT_KMC_ETDEA_192
,
183 S390_FEAT_KMC_AES_128
,
184 S390_FEAT_KMC_AES_192
,
185 S390_FEAT_KMC_AES_256
,
186 S390_FEAT_KMC_EAES_128
,
187 S390_FEAT_KMC_EAES_192
,
188 S390_FEAT_KMC_EAES_256
,
193 S390_FEAT_KM_TDEA_128
,
194 S390_FEAT_KM_TDEA_192
,
196 S390_FEAT_KM_ETDEA_128
,
197 S390_FEAT_KM_ETDEA_192
,
198 S390_FEAT_KM_AES_128
,
199 S390_FEAT_KM_AES_192
,
200 S390_FEAT_KM_AES_256
,
201 S390_FEAT_KM_EAES_128
,
202 S390_FEAT_KM_EAES_192
,
203 S390_FEAT_KM_EAES_256
,
204 S390_FEAT_KM_XTS_AES_128
,
205 S390_FEAT_KM_XTS_AES_256
,
206 S390_FEAT_KM_XTS_EAES_128
,
207 S390_FEAT_KM_XTS_EAES_256
,
210 S390_FEAT_KIMD_SHA_1
,
211 S390_FEAT_KIMD_SHA_256
,
212 S390_FEAT_KIMD_SHA_512
,
213 S390_FEAT_KIMD_SHA3_224
,
214 S390_FEAT_KIMD_SHA3_256
,
215 S390_FEAT_KIMD_SHA3_384
,
216 S390_FEAT_KIMD_SHA3_512
,
217 S390_FEAT_KIMD_SHAKE_128
,
218 S390_FEAT_KIMD_SHAKE_256
,
219 S390_FEAT_KIMD_GHASH
,
222 S390_FEAT_KLMD_SHA_1
,
223 S390_FEAT_KLMD_SHA_256
,
224 S390_FEAT_KLMD_SHA_512
,
225 S390_FEAT_KLMD_SHA3_224
,
226 S390_FEAT_KLMD_SHA3_256
,
227 S390_FEAT_KLMD_SHA3_384
,
228 S390_FEAT_KLMD_SHA3_512
,
229 S390_FEAT_KLMD_SHAKE_128
,
230 S390_FEAT_KLMD_SHAKE_256
,
233 S390_FEAT_PCKMO_EDEA
,
234 S390_FEAT_PCKMO_ETDEA_128
,
235 S390_FEAT_PCKMO_ETDEA_256
,
236 S390_FEAT_PCKMO_AES_128
,
237 S390_FEAT_PCKMO_AES_192
,
238 S390_FEAT_PCKMO_AES_256
,
242 S390_FEAT_KMCTR_TDEA_128
,
243 S390_FEAT_KMCTR_TDEA_192
,
244 S390_FEAT_KMCTR_EDEA
,
245 S390_FEAT_KMCTR_ETDEA_128
,
246 S390_FEAT_KMCTR_ETDEA_192
,
247 S390_FEAT_KMCTR_AES_128
,
248 S390_FEAT_KMCTR_AES_192
,
249 S390_FEAT_KMCTR_AES_256
,
250 S390_FEAT_KMCTR_EAES_128
,
251 S390_FEAT_KMCTR_EAES_192
,
252 S390_FEAT_KMCTR_EAES_256
,
256 S390_FEAT_KMF_TDEA_128
,
257 S390_FEAT_KMF_TDEA_192
,
259 S390_FEAT_KMF_ETDEA_128
,
260 S390_FEAT_KMF_ETDEA_192
,
261 S390_FEAT_KMF_AES_128
,
262 S390_FEAT_KMF_AES_192
,
263 S390_FEAT_KMF_AES_256
,
264 S390_FEAT_KMF_EAES_128
,
265 S390_FEAT_KMF_EAES_192
,
266 S390_FEAT_KMF_EAES_256
,
270 S390_FEAT_KMO_TDEA_128
,
271 S390_FEAT_KMO_TDEA_192
,
273 S390_FEAT_KMO_ETDEA_128
,
274 S390_FEAT_KMO_ETDEA_192
,
275 S390_FEAT_KMO_AES_128
,
276 S390_FEAT_KMO_AES_192
,
277 S390_FEAT_KMO_AES_256
,
278 S390_FEAT_KMO_EAES_128
,
279 S390_FEAT_KMO_EAES_192
,
280 S390_FEAT_KMO_EAES_256
,
283 S390_FEAT_PCC_CMAC_DEA
,
284 S390_FEAT_PCC_CMAC_TDEA_128
,
285 S390_FEAT_PCC_CMAC_TDEA_192
,
286 S390_FEAT_PCC_CMAC_ETDEA_128
,
287 S390_FEAT_PCC_CMAC_ETDEA_192
,
288 S390_FEAT_PCC_CMAC_TDEA
,
289 S390_FEAT_PCC_CMAC_AES_128
,
290 S390_FEAT_PCC_CMAC_AES_192
,
291 S390_FEAT_PCC_CMAC_AES_256
,
292 S390_FEAT_PCC_CMAC_EAES_128
,
293 S390_FEAT_PCC_CMAC_EAES_192
,
294 S390_FEAT_PCC_CMAC_EAES_256
,
295 S390_FEAT_PCC_XTS_AES_128
,
296 S390_FEAT_PCC_XTS_AES_256
,
297 S390_FEAT_PCC_XTS_EAES_128
,
298 S390_FEAT_PCC_XTS_EAES_256
,
301 S390_FEAT_PPNO_SHA_512_DRNG
,
302 S390_FEAT_PRNO_TRNG_QRTCR
,
306 S390_FEAT_KMA_GCM_AES_128
,
307 S390_FEAT_KMA_GCM_AES_192
,
308 S390_FEAT_KMA_GCM_AES_256
,
309 S390_FEAT_KMA_GCM_EAES_128
,
310 S390_FEAT_KMA_GCM_EAES_192
,
311 S390_FEAT_KMA_GCM_EAES_256
,
315 #endif /* TARGET_S390X_CPU_FEATURES_DEF_H */