Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/*
2 * Copyright IBM Corp. 2015
3 */
4
5#ifndef S390_GEN_FACILITIES_C
6#error "This file can only be included by gen_facilities.c"
7#endif
8
9#include <linux/kconfig.h>
10
11struct facility_def {
12 char *name;
13 int *bits;
14};
15
16static struct facility_def facility_defs[] = {
17 {
18 /*
19 * FACILITIES_ALS contains the list of facilities that are
20 * required to run a kernel that is compiled e.g. with
21 * -march=<machine>.
22 */
23 .name = "FACILITIES_ALS",
24 .bits = (int[]){
25#ifdef CONFIG_HAVE_MARCH_Z900_FEATURES
26 0, /* N3 instructions */
27 1, /* z/Arch mode installed */
28#endif
29#ifdef CONFIG_HAVE_MARCH_Z990_FEATURES
30 18, /* long displacement facility */
31#endif
32#ifdef CONFIG_HAVE_MARCH_Z9_109_FEATURES
33 7, /* stfle */
34 17, /* message security assist */
35 21, /* extended-immediate facility */
36 25, /* store clock fast */
37#endif
38#ifdef CONFIG_HAVE_MARCH_Z10_FEATURES
39 27, /* mvcos */
40 32, /* compare and swap and store */
41 33, /* compare and swap and store 2 */
42 34, /* general extension facility */
43 35, /* execute extensions */
44#endif
45#ifdef CONFIG_HAVE_MARCH_Z196_FEATURES
46 45, /* fast-BCR, etc. */
47#endif
48#ifdef CONFIG_HAVE_MARCH_ZEC12_FEATURES
49 49, /* misc-instruction-extensions */
50 52, /* interlocked facility 2 */
51#endif
52#ifdef CONFIG_HAVE_MARCH_Z13_FEATURES
53 53, /* load-and-zero-rightmost-byte, etc. */
54#endif
55 -1 /* END */
56 }
57 },
58};