s390: add z13 code generation support
[firefly-linux-kernel-4.4.55.git] / arch / s390 / Kconfig
1 config MMU
2         def_bool y
3
4 config ZONE_DMA
5         def_bool y
6
7 config LOCKDEP_SUPPORT
8         def_bool y
9
10 config STACKTRACE_SUPPORT
11         def_bool y
12
13 config HAVE_LATENCYTOP_SUPPORT
14         def_bool y
15
16 config RWSEM_GENERIC_SPINLOCK
17         bool
18
19 config RWSEM_XCHGADD_ALGORITHM
20         def_bool y
21
22 config ARCH_HAS_ILOG2_U32
23         def_bool n
24
25 config ARCH_HAS_ILOG2_U64
26         def_bool n
27
28 config GENERIC_HWEIGHT
29         def_bool y
30
31 config GENERIC_BUG
32         def_bool y if BUG
33
34 config GENERIC_BUG_RELATIVE_POINTERS
35         def_bool y
36
37 config ARCH_DMA_ADDR_T_64BIT
38         def_bool 64BIT
39
40 config GENERIC_LOCKBREAK
41         def_bool y if SMP && PREEMPT
42
43 config PGSTE
44         def_bool y if KVM
45
46 config ARCH_SUPPORTS_DEBUG_PAGEALLOC
47         def_bool y
48
49 config KEXEC
50         def_bool y
51
52 config AUDIT_ARCH
53         def_bool y
54
55 config NO_IOPORT_MAP
56         def_bool y
57
58 config PCI_QUIRKS
59         def_bool n
60
61 config ARCH_SUPPORTS_UPROBES
62         def_bool 64BIT
63
64 config S390
65         def_bool y
66         select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
67         select ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
68         select ARCH_HAS_GCOV_PROFILE_ALL
69         select ARCH_HAS_SG_CHAIN
70         select ARCH_HAVE_NMI_SAFE_CMPXCHG
71         select ARCH_INLINE_READ_LOCK
72         select ARCH_INLINE_READ_LOCK_BH
73         select ARCH_INLINE_READ_LOCK_IRQ
74         select ARCH_INLINE_READ_LOCK_IRQSAVE
75         select ARCH_INLINE_READ_TRYLOCK
76         select ARCH_INLINE_READ_UNLOCK
77         select ARCH_INLINE_READ_UNLOCK_BH
78         select ARCH_INLINE_READ_UNLOCK_IRQ
79         select ARCH_INLINE_READ_UNLOCK_IRQRESTORE
80         select ARCH_INLINE_SPIN_LOCK
81         select ARCH_INLINE_SPIN_LOCK_BH
82         select ARCH_INLINE_SPIN_LOCK_IRQ
83         select ARCH_INLINE_SPIN_LOCK_IRQSAVE
84         select ARCH_INLINE_SPIN_TRYLOCK
85         select ARCH_INLINE_SPIN_TRYLOCK_BH
86         select ARCH_INLINE_SPIN_UNLOCK
87         select ARCH_INLINE_SPIN_UNLOCK_BH
88         select ARCH_INLINE_SPIN_UNLOCK_IRQ
89         select ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
90         select ARCH_INLINE_WRITE_LOCK
91         select ARCH_INLINE_WRITE_LOCK_BH
92         select ARCH_INLINE_WRITE_LOCK_IRQ
93         select ARCH_INLINE_WRITE_LOCK_IRQSAVE
94         select ARCH_INLINE_WRITE_TRYLOCK
95         select ARCH_INLINE_WRITE_UNLOCK
96         select ARCH_INLINE_WRITE_UNLOCK_BH
97         select ARCH_INLINE_WRITE_UNLOCK_IRQ
98         select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
99         select ARCH_SAVE_PAGE_KEYS if HIBERNATION
100         select ARCH_SUPPORTS_ATOMIC_RMW
101         select ARCH_USE_CMPXCHG_LOCKREF
102         select ARCH_WANT_IPC_PARSE_VERSION
103         select BUILDTIME_EXTABLE_SORT
104         select CLONE_BACKWARDS2
105         select DYNAMIC_FTRACE if FUNCTION_TRACER
106         select GENERIC_CLOCKEVENTS
107         select GENERIC_CPU_DEVICES if !SMP
108         select GENERIC_FIND_FIRST_BIT
109         select GENERIC_SMP_IDLE_THREAD
110         select GENERIC_TIME_VSYSCALL
111         select HAVE_ALIGNED_STRUCT_PAGE if SLUB
112         select HAVE_ARCH_AUDITSYSCALL
113         select HAVE_ARCH_JUMP_LABEL if !MARCH_G5
114         select HAVE_ARCH_SECCOMP_FILTER
115         select HAVE_ARCH_TRACEHOOK
116         select HAVE_ARCH_TRANSPARENT_HUGEPAGE if 64BIT
117         select HAVE_BPF_JIT if 64BIT && PACK_STACK
118         select HAVE_CMPXCHG_DOUBLE
119         select HAVE_CMPXCHG_LOCAL
120         select HAVE_C_RECORDMCOUNT
121         select HAVE_DEBUG_KMEMLEAK
122         select HAVE_DYNAMIC_FTRACE if 64BIT
123         select HAVE_DYNAMIC_FTRACE_WITH_REGS if 64BIT
124         select HAVE_FTRACE_MCOUNT_RECORD
125         select HAVE_FUNCTION_GRAPH_TRACER if 64BIT
126         select HAVE_FUNCTION_TRACER if 64BIT
127         select HAVE_FUTEX_CMPXCHG if FUTEX
128         select HAVE_KERNEL_BZIP2
129         select HAVE_KERNEL_GZIP
130         select HAVE_KERNEL_LZ4
131         select HAVE_KERNEL_LZMA
132         select HAVE_KERNEL_LZO
133         select HAVE_KERNEL_XZ
134         select HAVE_KPROBES
135         select HAVE_KRETPROBES
136         select HAVE_KVM if 64BIT
137         select HAVE_MEMBLOCK
138         select HAVE_MEMBLOCK_NODE_MAP
139         select HAVE_MEMBLOCK_PHYS_MAP
140         select HAVE_MOD_ARCH_SPECIFIC
141         select HAVE_OPROFILE
142         select HAVE_PERF_EVENTS
143         select HAVE_REGS_AND_STACK_ACCESS_API
144         select HAVE_SYSCALL_TRACEPOINTS
145         select HAVE_UID16 if 32BIT
146         select HAVE_VIRT_CPU_ACCOUNTING
147         select MODULES_USE_ELF_RELA
148         select NO_BOOTMEM
149         select OLD_SIGACTION
150         select OLD_SIGSUSPEND3
151         select SYSCTL_EXCEPTION_TRACE
152         select TTY
153         select VIRT_CPU_ACCOUNTING
154         select VIRT_TO_BUS
155
156 config SCHED_OMIT_FRAME_POINTER
157         def_bool y
158
159 source "init/Kconfig"
160
161 source "kernel/Kconfig.freezer"
162
163 menu "Processor type and features"
164
165 config HAVE_MARCH_Z900_FEATURES
166         def_bool n
167
168 config HAVE_MARCH_Z990_FEATURES
169         def_bool n
170         select HAVE_MARCH_Z900_FEATURES
171
172 config HAVE_MARCH_Z9_109_FEATURES
173         def_bool n
174         select HAVE_MARCH_Z990_FEATURES
175
176 config HAVE_MARCH_Z10_FEATURES
177         def_bool n
178         select HAVE_MARCH_Z9_109_FEATURES
179
180 config HAVE_MARCH_Z196_FEATURES
181         def_bool n
182         select HAVE_MARCH_Z10_FEATURES
183
184 config HAVE_MARCH_ZEC12_FEATURES
185         def_bool n
186         select HAVE_MARCH_Z196_FEATURES
187
188 config HAVE_MARCH_Z13_FEATURES
189         def_bool n
190         select HAVE_MARCH_ZEC12_FEATURES
191
192 choice
193         prompt "Processor type"
194         default MARCH_G5
195
196 config MARCH_G5
197         bool "System/390 model G5 and G6"
198         depends on !64BIT
199         help
200           Select this to build a 31 bit kernel that works
201           on all ESA/390 and z/Architecture machines.
202
203 config MARCH_Z900
204         bool "IBM zSeries model z800 and z900"
205         select HAVE_MARCH_Z900_FEATURES if 64BIT
206         help
207           Select this to enable optimizations for model z800/z900 (2064 and
208           2066 series). This will enable some optimizations that are not
209           available on older ESA/390 (31 Bit) only CPUs.
210
211 config MARCH_Z990
212         bool "IBM zSeries model z890 and z990"
213         select HAVE_MARCH_Z990_FEATURES if 64BIT
214         help
215           Select this to enable optimizations for model z890/z990 (2084 and
216           2086 series). The kernel will be slightly faster but will not work
217           on older machines.
218
219 config MARCH_Z9_109
220         bool "IBM System z9"
221         select HAVE_MARCH_Z9_109_FEATURES if 64BIT
222         help
223           Select this to enable optimizations for IBM System z9 (2094 and
224           2096 series). The kernel will be slightly faster but will not work
225           on older machines.
226
227 config MARCH_Z10
228         bool "IBM System z10"
229         select HAVE_MARCH_Z10_FEATURES if 64BIT
230         help
231           Select this to enable optimizations for IBM System z10 (2097 and
232           2098 series). The kernel will be slightly faster but will not work
233           on older machines.
234
235 config MARCH_Z196
236         bool "IBM zEnterprise 114 and 196"
237         select HAVE_MARCH_Z196_FEATURES if 64BIT
238         help
239           Select this to enable optimizations for IBM zEnterprise 114 and 196
240           (2818 and 2817 series). The kernel will be slightly faster but will
241           not work on older machines.
242
243 config MARCH_ZEC12
244         bool "IBM zBC12 and zEC12"
245         select HAVE_MARCH_ZEC12_FEATURES if 64BIT
246         help
247           Select this to enable optimizations for IBM zBC12 and zEC12 (2828 and
248           2827 series). The kernel will be slightly faster but will not work on
249           older machines.
250
251 config MARCH_Z13
252         bool "IBM z13"
253         select HAVE_MARCH_Z13_FEATURES if 64BIT
254         help
255           Select this to enable optimizations for IBM z13 (2964 series).
256           The kernel will be slightly faster but will not work on older
257           machines.
258
259 endchoice
260
261 config MARCH_G5_TUNE
262         def_bool TUNE_G5 || MARCH_G5 && TUNE_DEFAULT
263
264 config MARCH_Z900_TUNE
265         def_bool TUNE_Z900 || MARCH_Z900 && TUNE_DEFAULT
266
267 config MARCH_Z990_TUNE
268         def_bool TUNE_Z990 || MARCH_Z990 && TUNE_DEFAULT
269
270 config MARCH_Z9_109_TUNE
271         def_bool TUNE_Z9_109 || MARCH_Z9_109 && TUNE_DEFAULT
272
273 config MARCH_Z10_TUNE
274         def_bool TUNE_Z10 || MARCH_Z10 && TUNE_DEFAULT
275
276 config MARCH_Z196_TUNE
277         def_bool TUNE_Z196 || MARCH_Z196 && TUNE_DEFAULT
278
279 config MARCH_ZEC12_TUNE
280         def_bool TUNE_ZEC12 || MARCH_ZEC12 && TUNE_DEFAULT
281
282 config MARCH_Z13_TUNE
283         def_bool TUNE_Z13 || MARCH_Z13 && TUNE_DEFAULT
284
285 choice
286         prompt "Tune code generation"
287         default TUNE_DEFAULT
288         help
289           Cause the compiler to tune (-mtune) the generated code for a machine.
290           This will make the code run faster on the selected machine but
291           somewhat slower on other machines.
292           This option only changes how the compiler emits instructions, not the
293           selection of instructions itself, so the resulting kernel will run on
294           all other machines.
295
296 config TUNE_DEFAULT
297         bool "Default"
298         help
299           Tune the generated code for the target processor for which the kernel
300           will be compiled.
301
302 config TUNE_G5
303         bool "System/390 model G5 and G6"
304
305 config TUNE_Z900
306         bool "IBM zSeries model z800 and z900"
307
308 config TUNE_Z990
309         bool "IBM zSeries model z890 and z990"
310
311 config TUNE_Z9_109
312         bool "IBM System z9"
313
314 config TUNE_Z10
315         bool "IBM System z10"
316
317 config TUNE_Z196
318         bool "IBM zEnterprise 114 and 196"
319
320 config TUNE_ZEC12
321         bool "IBM zBC12 and zEC12"
322
323 config TUNE_Z13
324         bool "IBM z13"
325
326 endchoice
327
328 config 64BIT
329         def_bool y
330         prompt "64 bit kernel"
331         help
332           Select this option if you have an IBM z/Architecture machine
333           and want to use the 64 bit addressing mode.
334
335 config 32BIT
336         def_bool y if !64BIT
337
338 config COMPAT
339         def_bool y
340         prompt "Kernel support for 31 bit emulation"
341         depends on 64BIT
342         select COMPAT_BINFMT_ELF if BINFMT_ELF
343         select ARCH_WANT_OLD_COMPAT_IPC
344         select COMPAT_OLD_SIGACTION
345         help
346           Select this option if you want to enable your system kernel to
347           handle system-calls from ELF binaries for 31 bit ESA.  This option
348           (and some other stuff like libraries and such) is needed for
349           executing 31 bit applications.  It is safe to say "Y".
350
351 config SYSVIPC_COMPAT
352         def_bool y if COMPAT && SYSVIPC
353
354 config KEYS_COMPAT
355         def_bool y if COMPAT && KEYS
356
357 config SMP
358         def_bool y
359         prompt "Symmetric multi-processing support"
360         ---help---
361           This enables support for systems with more than one CPU. If you have
362           a system with only one CPU, like most personal computers, say N. If
363           you have a system with more than one CPU, say Y.
364
365           If you say N here, the kernel will run on uni- and multiprocessor
366           machines, but will use only one CPU of a multiprocessor machine. If
367           you say Y here, the kernel will run on many, but not all,
368           uniprocessor machines. On a uniprocessor machine, the kernel
369           will run faster if you say N here.
370
371           See also the SMP-HOWTO available at
372           <http://www.tldp.org/docs.html#howto>.
373
374           Even if you don't know what to do here, say Y.
375
376 config NR_CPUS
377         int "Maximum number of CPUs (2-256)"
378         range 2 256
379         depends on SMP
380         default "32" if !64BIT
381         default "64" if 64BIT
382         help
383           This allows you to specify the maximum number of CPUs which this
384           kernel will support. The maximum supported value is 256 and the
385           minimum value which makes sense is 2.
386
387           This is purely to save memory - each supported CPU adds
388           approximately sixteen kilobytes to the kernel image.
389
390 config HOTPLUG_CPU
391         def_bool y
392         prompt "Support for hot-pluggable CPUs"
393         depends on SMP
394         help
395           Say Y here to be able to turn CPUs off and on. CPUs
396           can be controlled through /sys/devices/system/cpu/cpu#.
397           Say N if you want to disable CPU hotplug.
398
399 config SCHED_MC
400         def_bool n
401
402 config SCHED_BOOK
403         def_bool y
404         prompt "Book scheduler support"
405         depends on SMP
406         select SCHED_MC
407         help
408           Book scheduler support improves the CPU scheduler's decision making
409           when dealing with machines that have several books.
410
411 source kernel/Kconfig.preempt
412
413 config MATHEMU
414         def_bool y
415         prompt "IEEE FPU emulation"
416         depends on MARCH_G5
417         help
418           This option is required for IEEE compliant floating point arithmetic
419           on older ESA/390 machines. Say Y unless you know your machine doesn't
420           need this.
421
422 source kernel/Kconfig.hz
423
424 endmenu
425
426 menu "Memory setup"
427
428 config ARCH_SPARSEMEM_ENABLE
429         def_bool y
430         select SPARSEMEM_VMEMMAP_ENABLE
431         select SPARSEMEM_VMEMMAP
432         select SPARSEMEM_STATIC if !64BIT
433
434 config ARCH_SPARSEMEM_DEFAULT
435         def_bool y
436
437 config ARCH_SELECT_MEMORY_MODEL
438         def_bool y
439
440 config ARCH_ENABLE_MEMORY_HOTPLUG
441         def_bool y if SPARSEMEM
442
443 config ARCH_ENABLE_MEMORY_HOTREMOVE
444         def_bool y
445
446 config ARCH_ENABLE_SPLIT_PMD_PTLOCK
447         def_bool y
448         depends on 64BIT
449
450 config FORCE_MAX_ZONEORDER
451         int
452         default "9"
453
454 source "mm/Kconfig"
455
456 config PACK_STACK
457         def_bool y
458         prompt "Pack kernel stack"
459         help
460           This option enables the compiler option -mkernel-backchain if it
461           is available. If the option is available the compiler supports
462           the new stack layout which dramatically reduces the minimum stack
463           frame size. With an old compiler a non-leaf function needs a
464           minimum of 96 bytes on 31 bit and 160 bytes on 64 bit. With
465           -mkernel-backchain the minimum size drops to 16 byte on 31 bit
466           and 24 byte on 64 bit.
467
468           Say Y if you are unsure.
469
470 config CHECK_STACK
471         def_bool y
472         prompt "Detect kernel stack overflow"
473         help
474           This option enables the compiler option -mstack-guard and
475           -mstack-size if they are available. If the compiler supports them
476           it will emit additional code to each function prolog to trigger
477           an illegal operation if the kernel stack is about to overflow.
478
479           Say N if you are unsure.
480
481 config STACK_GUARD
482         int "Size of the guard area (128-1024)"
483         range 128 1024
484         depends on CHECK_STACK
485         default "256"
486         help
487           This allows you to specify the size of the guard area at the lower
488           end of the kernel stack. If the kernel stack points into the guard
489           area on function entry an illegal operation is triggered. The size
490           needs to be a power of 2. Please keep in mind that the size of an
491           interrupt frame is 184 bytes for 31 bit and 328 bytes on 64 bit.
492           The minimum size for the stack guard should be 256 for 31 bit and
493           512 for 64 bit.
494
495 config WARN_DYNAMIC_STACK
496         def_bool n
497         prompt "Emit compiler warnings for function with dynamic stack usage"
498         help
499           This option enables the compiler option -mwarn-dynamicstack. If the
500           compiler supports this options generates warnings for functions
501           that dynamically allocate stack space using alloca.
502
503           Say N if you are unsure.
504
505 endmenu
506
507 menu "I/O subsystem"
508
509 config QDIO
510         def_tristate y
511         prompt "QDIO support"
512         ---help---
513           This driver provides the Queued Direct I/O base support for
514           IBM System z.
515
516           To compile this driver as a module, choose M here: the
517           module will be called qdio.
518
519           If unsure, say Y.
520
521 menuconfig PCI
522         bool "PCI support"
523         depends on 64BIT
524         select HAVE_DMA_ATTRS
525         select PCI_MSI
526         help
527           Enable PCI support.
528
529 if PCI
530
531 config PCI_NR_FUNCTIONS
532         int "Maximum number of PCI functions (1-4096)"
533         range 1 4096
534         default "64"
535         help
536           This allows you to specify the maximum number of PCI functions which
537           this kernel will support.
538
539 config PCI_NR_MSI
540         int "Maximum number of MSI interrupts (64-32768)"
541         range 64 32768
542         default "256"
543         help
544           This defines the number of virtual interrupts the kernel will
545           provide for MSI interrupts. If you configure your system to have
546           too few drivers will fail to allocate MSI interrupts for all
547           PCI devices.
548
549 source "drivers/pci/Kconfig"
550 source "drivers/pci/pcie/Kconfig"
551 source "drivers/pci/hotplug/Kconfig"
552
553 endif   # PCI
554
555 config PCI_DOMAINS
556         def_bool PCI
557
558 config HAS_IOMEM
559         def_bool PCI
560
561 config IOMMU_HELPER
562         def_bool PCI
563
564 config HAS_DMA
565         def_bool PCI
566         select HAVE_DMA_API_DEBUG
567
568 config NEED_SG_DMA_LENGTH
569         def_bool PCI
570
571 config NEED_DMA_MAP_STATE
572         def_bool PCI
573
574 config CHSC_SCH
575         def_tristate m
576         prompt "Support for CHSC subchannels"
577         help
578           This driver allows usage of CHSC subchannels. A CHSC subchannel
579           is usually present on LPAR only.
580           The driver creates a device /dev/chsc, which may be used to
581           obtain I/O configuration information about the machine and
582           to issue asynchronous chsc commands (DANGEROUS).
583           You will usually only want to use this interface on a special
584           LPAR designated for system management.
585
586           To compile this driver as a module, choose M here: the
587           module will be called chsc_sch.
588
589           If unsure, say N.
590
591 config SCM_BUS
592         def_bool y
593         depends on 64BIT
594         prompt "SCM bus driver"
595         help
596           Bus driver for Storage Class Memory.
597
598 config EADM_SCH
599         def_tristate m
600         prompt "Support for EADM subchannels"
601         depends on SCM_BUS
602         help
603           This driver allows usage of EADM subchannels. EADM subchannels act
604           as a communication vehicle for SCM increments.
605
606           To compile this driver as a module, choose M here: the
607           module will be called eadm_sch.
608
609 endmenu
610
611 menu "Dump support"
612
613 config CRASH_DUMP
614         bool "kernel crash dumps"
615         depends on 64BIT && SMP
616         select KEXEC
617         help
618           Generate crash dump after being started by kexec.
619           Crash dump kernels are loaded in the main kernel with kexec-tools
620           into a specially reserved region and then later executed after
621           a crash by kdump/kexec.
622           Refer to <file:Documentation/s390/zfcpdump.txt> for more details on this.
623           This option also enables s390 zfcpdump.
624           See also <file:Documentation/s390/zfcpdump.txt>
625
626 endmenu
627
628 menu "Executable file formats / Emulations"
629
630 source "fs/Kconfig.binfmt"
631
632 config SECCOMP
633         def_bool y
634         prompt "Enable seccomp to safely compute untrusted bytecode"
635         depends on PROC_FS
636         help
637           This kernel feature is useful for number crunching applications
638           that may need to compute untrusted bytecode during their
639           execution. By using pipes or other transports made available to
640           the process as file descriptors supporting the read/write
641           syscalls, it's possible to isolate those applications in
642           their own address space using seccomp. Once seccomp is
643           enabled via /proc/<pid>/seccomp, it cannot be disabled
644           and the task is only allowed to execute a few safe syscalls
645           defined by each seccomp mode.
646
647           If unsure, say Y.
648
649 endmenu
650
651 menu "Power Management"
652
653 config ARCH_HIBERNATION_POSSIBLE
654         def_bool y if 64BIT
655
656 source "kernel/power/Kconfig"
657
658 endmenu
659
660 source "net/Kconfig"
661
662 config PCMCIA
663         def_bool n
664
665 config CCW
666         def_bool y
667
668 source "drivers/Kconfig"
669
670 source "fs/Kconfig"
671
672 source "arch/s390/Kconfig.debug"
673
674 source "security/Kconfig"
675
676 source "crypto/Kconfig"
677
678 source "lib/Kconfig"
679
680 menu "Virtualization"
681
682 config PFAULT
683         def_bool y
684         prompt "Pseudo page fault support"
685         help
686           Select this option, if you want to use PFAULT pseudo page fault
687           handling under VM. If running native or in LPAR, this option
688           has no effect. If your VM does not support PFAULT, PAGEEX
689           pseudo page fault handling will be used.
690           Note that VM 4.2 supports PFAULT but has a bug in its
691           implementation that causes some problems.
692           Everybody who wants to run Linux under VM != VM4.2 should select
693           this option.
694
695 config SHARED_KERNEL
696         bool "VM shared kernel support"
697         depends on !JUMP_LABEL
698         help
699           Select this option, if you want to share the text segment of the
700           Linux kernel between different VM guests. This reduces memory
701           usage with lots of guests but greatly increases kernel size.
702           Also if a kernel was IPL'ed from a shared segment the kexec system
703           call will not work.
704           You should only select this option if you know what you are
705           doing and want to exploit this feature.
706
707 config CMM
708         def_tristate n
709         prompt "Cooperative memory management"
710         help
711           Select this option, if you want to enable the kernel interface
712           to reduce the memory size of the system. This is accomplished
713           by allocating pages of memory and put them "on hold". This only
714           makes sense for a system running under VM where the unused pages
715           will be reused by VM for other guest systems. The interface
716           allows an external monitor to balance memory of many systems.
717           Everybody who wants to run Linux under VM should select this
718           option.
719
720 config CMM_IUCV
721         def_bool y
722         prompt "IUCV special message interface to cooperative memory management"
723         depends on CMM && (SMSGIUCV=y || CMM=SMSGIUCV)
724         help
725           Select this option to enable the special message interface to
726           the cooperative memory management.
727
728 config APPLDATA_BASE
729         def_bool n
730         prompt "Linux - VM Monitor Stream, base infrastructure"
731         depends on PROC_FS
732         help
733           This provides a kernel interface for creating and updating z/VM APPLDATA
734           monitor records. The monitor records are updated at certain time
735           intervals, once the timer is started.
736           Writing 1 or 0 to /proc/appldata/timer starts(1) or stops(0) the timer,
737           i.e. enables or disables monitoring on the Linux side.
738           A custom interval value (in seconds) can be written to
739           /proc/appldata/interval.
740
741           Defaults are 60 seconds interval and timer off.
742           The /proc entries can also be read from, showing the current settings.
743
744 config APPLDATA_MEM
745         def_tristate m
746         prompt "Monitor memory management statistics"
747         depends on APPLDATA_BASE && VM_EVENT_COUNTERS
748         help
749           This provides memory management related data to the Linux - VM Monitor
750           Stream, like paging/swapping rate, memory utilisation, etc.
751           Writing 1 or 0 to /proc/appldata/memory creates(1) or removes(0) a z/VM
752           APPLDATA monitor record, i.e. enables or disables monitoring this record
753           on the z/VM side.
754
755           Default is disabled.
756           The /proc entry can also be read from, showing the current settings.
757
758           This can also be compiled as a module, which will be called
759           appldata_mem.o.
760
761 config APPLDATA_OS
762         def_tristate m
763         prompt "Monitor OS statistics"
764         depends on APPLDATA_BASE
765         help
766           This provides OS related data to the Linux - VM Monitor Stream, like
767           CPU utilisation, etc.
768           Writing 1 or 0 to /proc/appldata/os creates(1) or removes(0) a z/VM
769           APPLDATA monitor record, i.e. enables or disables monitoring this record
770           on the z/VM side.
771
772           Default is disabled.
773           This can also be compiled as a module, which will be called
774           appldata_os.o.
775
776 config APPLDATA_NET_SUM
777         def_tristate m
778         prompt "Monitor overall network statistics"
779         depends on APPLDATA_BASE && NET
780         help
781           This provides network related data to the Linux - VM Monitor Stream,
782           currently there is only a total sum of network I/O statistics, no
783           per-interface data.
784           Writing 1 or 0 to /proc/appldata/net_sum creates(1) or removes(0) a z/VM
785           APPLDATA monitor record, i.e. enables or disables monitoring this record
786           on the z/VM side.
787
788           Default is disabled.
789           This can also be compiled as a module, which will be called
790           appldata_net_sum.o.
791
792 config S390_HYPFS_FS
793         def_bool y
794         prompt "s390 hypervisor file system support"
795         select SYS_HYPERVISOR
796         help
797           This is a virtual file system intended to provide accounting
798           information in an s390 hypervisor environment.
799
800 source "arch/s390/kvm/Kconfig"
801
802 config S390_GUEST
803         def_bool y
804         prompt "s390 support for virtio devices"
805         depends on 64BIT
806         select TTY
807         select VIRTUALIZATION
808         select VIRTIO
809         select VIRTIO_CONSOLE
810         help
811           Enabling this option adds support for virtio based paravirtual device
812           drivers on s390.
813
814           Select this option if you want to run the kernel as a guest under
815           the KVM hypervisor.
816
817 endmenu