2 * CPU features/facilities for s390
4 * Copyright 2016 IBM Corp.
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
,
84 S390_FEAT_INSTRUCTION_EXEC_PROT
,
85 S390_FEAT_SIDE_EFFECT_ACCESS_ESOP2
,
86 S390_FEAT_GUARDED_STORAGE
,
87 S390_FEAT_VECTOR_PACKED_DECIMAL
,
89 S390_FEAT_MULTIPLE_EPOCH
,
90 S390_FEAT_TEST_PENDING_EXT_INTERRUPTION
,
91 S390_FEAT_INSERT_REFERENCE_BITS_MULT
,
101 /* Sclp Conf Char Ext */
102 S390_FEAT_SIE_64BSCAO
,
112 S390_FEAT_SIE_SIGPIF
,
135 S390_FEAT_PLO_CSSTGR
,
138 S390_FEAT_PLO_CSDSTG
,
139 S390_FEAT_PLO_CSDSTGR
,
140 S390_FEAT_PLO_CSDSTX
,
142 S390_FEAT_PLO_CSTSTG
,
143 S390_FEAT_PLO_CSTSTGR
,
144 S390_FEAT_PLO_CSTSTX
,
157 S390_FEAT_KMAC_TDEA_128
,
158 S390_FEAT_KMAC_TDEA_192
,
160 S390_FEAT_KMAC_ETDEA_128
,
161 S390_FEAT_KMAC_ETDEA_192
,
162 S390_FEAT_KMAC_AES_128
,
163 S390_FEAT_KMAC_AES_192
,
164 S390_FEAT_KMAC_AES_256
,
165 S390_FEAT_KMAC_EAES_128
,
166 S390_FEAT_KMAC_EAES_192
,
167 S390_FEAT_KMAC_EAES_256
,
171 S390_FEAT_KMC_TDEA_128
,
172 S390_FEAT_KMC_TDEA_192
,
174 S390_FEAT_KMC_ETDEA_128
,
175 S390_FEAT_KMC_ETDEA_192
,
176 S390_FEAT_KMC_AES_128
,
177 S390_FEAT_KMC_AES_192
,
178 S390_FEAT_KMC_AES_256
,
179 S390_FEAT_KMC_EAES_128
,
180 S390_FEAT_KMC_EAES_192
,
181 S390_FEAT_KMC_EAES_256
,
186 S390_FEAT_KM_TDEA_128
,
187 S390_FEAT_KM_TDEA_192
,
189 S390_FEAT_KM_ETDEA_128
,
190 S390_FEAT_KM_ETDEA_192
,
191 S390_FEAT_KM_AES_128
,
192 S390_FEAT_KM_AES_192
,
193 S390_FEAT_KM_AES_256
,
194 S390_FEAT_KM_EAES_128
,
195 S390_FEAT_KM_EAES_192
,
196 S390_FEAT_KM_EAES_256
,
197 S390_FEAT_KM_XTS_AES_128
,
198 S390_FEAT_KM_XTS_AES_256
,
199 S390_FEAT_KM_XTS_EAES_128
,
200 S390_FEAT_KM_XTS_EAES_256
,
203 S390_FEAT_KIMD_SHA_1
,
204 S390_FEAT_KIMD_SHA_256
,
205 S390_FEAT_KIMD_SHA_512
,
206 S390_FEAT_KIMD_SHA3_224
,
207 S390_FEAT_KIMD_SHA3_256
,
208 S390_FEAT_KIMD_SHA3_384
,
209 S390_FEAT_KIMD_SHA3_512
,
210 S390_FEAT_KIMD_SHAKE_128
,
211 S390_FEAT_KIMD_SHAKE_256
,
212 S390_FEAT_KIMD_GHASH
,
215 S390_FEAT_KLMD_SHA_1
,
216 S390_FEAT_KLMD_SHA_256
,
217 S390_FEAT_KLMD_SHA_512
,
218 S390_FEAT_KLMD_SHA3_224
,
219 S390_FEAT_KLMD_SHA3_256
,
220 S390_FEAT_KLMD_SHA3_384
,
221 S390_FEAT_KLMD_SHA3_512
,
222 S390_FEAT_KLMD_SHAKE_128
,
223 S390_FEAT_KLMD_SHAKE_256
,
226 S390_FEAT_PCKMO_EDEA
,
227 S390_FEAT_PCKMO_ETDEA_128
,
228 S390_FEAT_PCKMO_ETDEA_256
,
229 S390_FEAT_PCKMO_AES_128
,
230 S390_FEAT_PCKMO_AES_192
,
231 S390_FEAT_PCKMO_AES_256
,
235 S390_FEAT_KMCTR_TDEA_128
,
236 S390_FEAT_KMCTR_TDEA_192
,
237 S390_FEAT_KMCTR_EDEA
,
238 S390_FEAT_KMCTR_ETDEA_128
,
239 S390_FEAT_KMCTR_ETDEA_192
,
240 S390_FEAT_KMCTR_AES_128
,
241 S390_FEAT_KMCTR_AES_192
,
242 S390_FEAT_KMCTR_AES_256
,
243 S390_FEAT_KMCTR_EAES_128
,
244 S390_FEAT_KMCTR_EAES_192
,
245 S390_FEAT_KMCTR_EAES_256
,
249 S390_FEAT_KMF_TDEA_128
,
250 S390_FEAT_KMF_TDEA_192
,
252 S390_FEAT_KMF_ETDEA_128
,
253 S390_FEAT_KMF_ETDEA_192
,
254 S390_FEAT_KMF_AES_128
,
255 S390_FEAT_KMF_AES_192
,
256 S390_FEAT_KMF_AES_256
,
257 S390_FEAT_KMF_EAES_128
,
258 S390_FEAT_KMF_EAES_192
,
259 S390_FEAT_KMF_EAES_256
,
263 S390_FEAT_KMO_TDEA_128
,
264 S390_FEAT_KMO_TDEA_192
,
266 S390_FEAT_KMO_ETDEA_128
,
267 S390_FEAT_KMO_ETDEA_192
,
268 S390_FEAT_KMO_AES_128
,
269 S390_FEAT_KMO_AES_192
,
270 S390_FEAT_KMO_AES_256
,
271 S390_FEAT_KMO_EAES_128
,
272 S390_FEAT_KMO_EAES_192
,
273 S390_FEAT_KMO_EAES_256
,
276 S390_FEAT_PCC_CMAC_DEA
,
277 S390_FEAT_PCC_CMAC_TDEA_128
,
278 S390_FEAT_PCC_CMAC_TDEA_192
,
279 S390_FEAT_PCC_CMAC_ETDEA_128
,
280 S390_FEAT_PCC_CMAC_ETDEA_192
,
281 S390_FEAT_PCC_CMAC_TDEA
,
282 S390_FEAT_PCC_CMAC_AES_128
,
283 S390_FEAT_PCC_CMAC_AES_192
,
284 S390_FEAT_PCC_CMAC_AES_256
,
285 S390_FEAT_PCC_CMAC_EAES_128
,
286 S390_FEAT_PCC_CMAC_EAES_192
,
287 S390_FEAT_PCC_CMAC_EAES_256
,
288 S390_FEAT_PCC_XTS_AES_128
,
289 S390_FEAT_PCC_XTS_AES_256
,
290 S390_FEAT_PCC_XTS_EAES_128
,
291 S390_FEAT_PCC_XTS_EAES_256
,
294 S390_FEAT_PPNO_SHA_512_DRNG
,
295 S390_FEAT_PRNO_TRNG_QRTCR
,
299 S390_FEAT_KMA_GCM_AES_128
,
300 S390_FEAT_KMA_GCM_AES_192
,
301 S390_FEAT_KMA_GCM_AES_256
,
302 S390_FEAT_KMA_GCM_EAES_128
,
303 S390_FEAT_KMA_GCM_EAES_192
,
304 S390_FEAT_KMA_GCM_EAES_256
,
308 #endif /* TARGET_S390X_CPU_FEATURES_DEF_H */