blob: 4f9264d005c06d55e5853bf9b12e329907648ca3 [file] [log] [blame]
Greg Kroah-Hartman38c91d12019-04-02 16:07:07 +02001# SPDX-License-Identifier: GPL-2.0
Joe Millenbach4f73bc42013-01-17 22:44:22 -08002
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -08003config HVC_DRIVER
4 bool
5 help
6 Generic "hypervisor virtual console" infrastructure for various
Juergen Grossecda85e2017-08-16 19:31:57 +02007 hypervisors (pSeries, iSeries, Xen).
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -08008 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
Benjamin Herrenschmidt4d2bb3f2011-05-12 13:46:38 +100024config HVC_OLD_HVSI
25 bool "Old driver for pSeries serial port (/dev/hvsi*)"
26 depends on HVC_CONSOLE
Benjamin Herrenschmidt4d2bb3f2011-05-12 13:46:38 +100027
Benjamin Herrenschmidtdaea1172011-09-19 17:44:59 +000028config 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
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -080037config 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
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -080044config HVC_IUCV
45 bool "z/VM IUCV Hypervisor console support (VM only)"
Heiko Carstens20d58cb2017-05-08 08:03:32 +020046 depends on S390 && NET
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -080047 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
Stefano Stabellinicf8e0192012-02-21 11:30:42 +000063config 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
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -080071config HVC_UDBG
Krzysztof Kozlowskida88ac02019-11-21 21:28:47 +080072 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.
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -080079
80config HVC_DCC
Krzysztof Kozlowskida88ac02019-11-21 21:28:47 +080081 bool "ARM JTAG DCC console"
82 depends on ARM || ARM64
83 select HVC_DRIVER
Yang Yingliang75fc6502020-09-19 14:35:35 +080084 select SERIAL_CORE_CONSOLE
Krzysztof Kozlowskida88ac02019-11-21 21:28:47 +080085 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.
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -080089
Shanker Donthineni4419da52022-04-28 14:38:58 +053090config 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
Palmer Dabbeltafa6b1c2018-03-08 14:27:34 -0800109config HVC_RISCV_SBI
110 bool "RISC-V SBI console support"
Kefeng Wangf9d89c92020-04-17 20:12:21 +0800111 depends on RISCV_SBI_V01
Palmer Dabbeltafa6b1c2018-03-08 14:27:34 -0800112 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.
116
117 If you don't know what do to here, say Y.
118
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -0800119config HVCS
120 tristate "IBM Hypervisor Virtual Console Server support"
121 depends on PPC_PSERIES && HVC_CONSOLE
122 help
123 Partitionable IBM Power5 ppc64 machines allow hosting of
124 firmware virtual consoles from one Linux partition by
125 another Linux partition. This driver allows console data
126 from Linux partitions to be accessed through TTY device
127 interfaces in the device tree of a Linux partition running
128 this driver.
129
130 To compile this driver as a module, choose M here: the
131 module will be called hvcs. Additionally, this module
132 will depend on arch specific APIs exported from hvcserver.ko
133 which will also be compiled when this driver is built as a
134 module.