Loading...
1# SPDX-License-Identifier: GPL-2.0
2
3config HVC_DRIVER
4 bool
5 help
6 Generic "hypervisor virtual console" infrastructure for various
7 hypervisors (pSeries, iSeries, Xen).
8 It will automatically be selected if one of the back-end console drivers
9 is selected.
10
11config HVC_IRQ
12 bool
13
14config HVC_CONSOLE
15 bool "pSeries Hypervisor Virtual Console support"
16 depends on PPC_PSERIES
17 select HVC_DRIVER
18 select HVC_IRQ
19 help
20 pSeries machines when partitioned support a hypervisor virtual
21 console. This driver allows each pSeries partition to have a console
22 which is accessed via the HMC.
23
24config HVC_OLD_HVSI
25 bool "Old driver for pSeries serial port (/dev/hvsi*)"
26 depends on HVC_CONSOLE
27
28config HVC_OPAL
29 bool "OPAL Console support"
30 depends on PPC_POWERNV
31 select HVC_DRIVER
32 select HVC_IRQ
33 default y
34 help
35 PowerNV machines running under OPAL need that driver to get a console
36
37config HVC_RTAS
38 bool "IBM RTAS Console support"
39 depends on PPC_RTAS
40 select HVC_DRIVER
41 help
42 IBM Console device driver which makes use of RTAS
43
44config HVC_IUCV
45 bool "z/VM IUCV Hypervisor console support (VM only)"
46 depends on S390 && NET
47 select HVC_DRIVER
48 select IUCV
49 default y
50 help
51 This driver provides a Hypervisor console (HVC) back-end to access
52 a Linux (console) terminal via a z/VM IUCV communication path.
53
54config HVC_XEN
55 bool "Xen Hypervisor Console support"
56 depends on XEN
57 select HVC_DRIVER
58 select HVC_IRQ
59 default y
60 help
61 Xen virtual console device driver
62
63config HVC_XEN_FRONTEND
64 bool "Xen Hypervisor Multiple Consoles support"
65 depends on HVC_XEN
66 select XEN_XENBUS_FRONTEND
67 default y
68 help
69 Xen driver for secondary virtual consoles
70
71config HVC_UDBG
72 bool "udbg based fake hypervisor console"
73 depends on PPC
74 select HVC_DRIVER
75 help
76 This is meant to be used during HW bring up or debugging when
77 no other console mechanism exist but udbg, to get you a quick
78 console for userspace. Do NOT enable in production kernels.
79
80config HVC_DCC
81 bool "ARM JTAG DCC console"
82 depends on ARM || ARM64
83 select HVC_DRIVER
84 help
85 This console uses the JTAG DCC on ARM to create a console under the HVC
86 driver. This console is used through a JTAG only on ARM. If you don't have
87 a JTAG then you probably don't want this option.
88
89config HVC_RISCV_SBI
90 bool "RISC-V SBI console support"
91 depends on RISCV_SBI_V01
92 select HVC_DRIVER
93 help
94 This enables support for console output via RISC-V SBI calls, which
95 is normally used only during boot to output printk.
96
97 If you don't know what do to here, say Y.
98
99config HVCS
100 tristate "IBM Hypervisor Virtual Console Server support"
101 depends on PPC_PSERIES && HVC_CONSOLE
102 help
103 Partitionable IBM Power5 ppc64 machines allow hosting of
104 firmware virtual consoles from one Linux partition by
105 another Linux partition. This driver allows console data
106 from Linux partitions to be accessed through TTY device
107 interfaces in the device tree of a Linux partition running
108 this driver.
109
110 To compile this driver as a module, choose M here: the
111 module will be called hvcs. Additionally, this module
112 will depend on arch specific APIs exported from hvcserver.ko
113 which will also be compiled when this driver is built as a
114 module.
1# SPDX-License-Identifier: GPL-2.0
2
3config HVC_DRIVER
4 bool
5 help
6 Generic "hypervisor virtual console" infrastructure for various
7 hypervisors (pSeries, iSeries, Xen).
8 It will automatically be selected if one of the back-end console drivers
9 is selected.
10
11config HVC_IRQ
12 bool
13
14config HVC_CONSOLE
15 bool "pSeries Hypervisor Virtual Console support"
16 depends on PPC_PSERIES
17 select HVC_DRIVER
18 select HVC_IRQ
19 help
20 pSeries machines when partitioned support a hypervisor virtual
21 console. This driver allows each pSeries partition to have a console
22 which is accessed via the HMC.
23
24config HVC_OLD_HVSI
25 bool "Old driver for pSeries serial port (/dev/hvsi*)"
26 depends on HVC_CONSOLE
27
28config HVC_OPAL
29 bool "OPAL Console support"
30 depends on PPC_POWERNV
31 select HVC_DRIVER
32 select HVC_IRQ
33 default y
34 help
35 PowerNV machines running under OPAL need that driver to get a console
36
37config HVC_RTAS
38 bool "IBM RTAS Console support"
39 depends on PPC_RTAS
40 select HVC_DRIVER
41 help
42 IBM Console device driver which makes use of RTAS
43
44config HVC_IUCV
45 bool "z/VM IUCV Hypervisor console support (VM only)"
46 depends on S390 && NET
47 select HVC_DRIVER
48 select IUCV
49 default y
50 help
51 This driver provides a Hypervisor console (HVC) back-end to access
52 a Linux (console) terminal via a z/VM IUCV communication path.
53
54config HVC_XEN
55 bool "Xen Hypervisor Console support"
56 depends on XEN
57 select HVC_DRIVER
58 select HVC_IRQ
59 default y
60 help
61 Xen virtual console device driver
62
63config HVC_XEN_FRONTEND
64 bool "Xen Hypervisor Multiple Consoles support"
65 depends on HVC_XEN
66 select XEN_XENBUS_FRONTEND
67 default y
68 help
69 Xen driver for secondary virtual consoles
70
71config HVC_UDBG
72 bool "udbg based fake hypervisor console"
73 depends on PPC
74 select HVC_DRIVER
75 help
76 This is meant to be used during HW bring up or debugging when
77 no other console mechanism exist but udbg, to get you a quick
78 console for userspace. Do NOT enable in production kernels.
79
80config HVC_DCC
81 bool "ARM JTAG DCC console"
82 depends on ARM || ARM64
83 select HVC_DRIVER
84 select SERIAL_CORE_CONSOLE
85 help
86 This console uses the JTAG DCC on ARM to create a console under the HVC
87 driver. This console is used through a JTAG only on ARM. If you don't have
88 a JTAG then you probably don't want this option.
89
90config HVC_DCC_SERIALIZE_SMP
91 bool "Use DCC only on CPU core 0"
92 depends on SMP && HVC_DCC
93 help
94 This is a DEBUG option to serialize all console input and output to CPU 0.
95 Some external debuggers, do not handle reads/writes from/to DCC on more
96 than one CPU core. Each core has its own DCC device registers, so when a
97 CPU core reads or writes from/to DCC, it only accesses its own DCC device.
98 Since kernel code can run on any CPU core, every time the kernel wants to
99 write to the console, it might write to a different DCC.
100
101 In SMP mode, external debuggers create multiple windows, and each window
102 shows the DCC output only from that core's DCC. The result is that
103 console output is either lost or scattered across windows.
104
105 Enable this option only if you are sure that you do not need features like
106 CPU hotplug to work. For example, during early chipset bringups without
107 debug serial console support. If unsure, say N.
108
109config HVC_RISCV_SBI
110 bool "RISC-V SBI console support"
111 depends on RISCV_SBI && NONPORTABLE
112 select HVC_DRIVER
113 help
114 This enables support for console output via RISC-V SBI calls, which
115 is normally used only during boot to output printk. This driver
116 conflicts with real console drivers and should not be enabled on
117 systems that directly access the console.
118
119 If you don't know what do to here, say N.
120
121config HVCS
122 tristate "IBM Hypervisor Virtual Console Server support"
123 depends on PPC_PSERIES && HVC_CONSOLE
124 help
125 Partitionable IBM Power5 ppc64 machines allow hosting of
126 firmware virtual consoles from one Linux partition by
127 another Linux partition. This driver allows console data
128 from Linux partitions to be accessed through TTY device
129 interfaces in the device tree of a Linux partition running
130 this driver.
131
132 To compile this driver as a module, choose M here: the
133 module will be called hvcs. Additionally, this module
134 will depend on arch specific APIs exported from hvcserver.ko
135 which will also be compiled when this driver is built as a
136 module.