137 lines · plain
1# SPDX-License-Identifier: GPL-2.02 3config HVC_DRIVER4 bool5 help6 Generic "hypervisor virtual console" infrastructure for various7 hypervisors (pSeries, iSeries, Xen).8 It will automatically be selected if one of the back-end console drivers9 is selected.10 11config HVC_IRQ12 bool13 14config HVC_CONSOLE15 bool "pSeries Hypervisor Virtual Console support"16 depends on PPC_PSERIES17 select HVC_DRIVER18 select HVC_IRQ19 help20 pSeries machines when partitioned support a hypervisor virtual21 console. This driver allows each pSeries partition to have a console22 which is accessed via the HMC.23 24config HVC_OLD_HVSI25 bool "Old driver for pSeries serial port (/dev/hvsi*)"26 depends on HVC_CONSOLE27 28config HVC_OPAL29 bool "OPAL Console support"30 depends on PPC_POWERNV31 select HVC_DRIVER32 select HVC_IRQ33 default y34 help35 PowerNV machines running under OPAL need that driver to get a console36 37config HVC_RTAS38 bool "IBM RTAS Console support"39 depends on PPC_RTAS40 select HVC_DRIVER41 help42 IBM Console device driver which makes use of RTAS43 44config HVC_IUCV45 bool "z/VM IUCV Hypervisor console support (VM only)"46 depends on S390 && NET47 select HVC_DRIVER48 select IUCV49 default y50 help51 This driver provides a Hypervisor console (HVC) back-end to access52 a Linux (console) terminal via a z/VM IUCV communication path.53 54config HVC_XEN55 bool "Xen Hypervisor Console support"56 depends on XEN57 select HVC_DRIVER58 select HVC_IRQ59 default y60 help61 Xen virtual console device driver62 63config HVC_XEN_FRONTEND64 bool "Xen Hypervisor Multiple Consoles support"65 depends on HVC_XEN66 select XEN_XENBUS_FRONTEND67 default y68 help69 Xen driver for secondary virtual consoles70 71config HVC_UDBG72 bool "udbg based fake hypervisor console"73 depends on PPC74 select HVC_DRIVER75 help76 This is meant to be used during HW bring up or debugging when77 no other console mechanism exist but udbg, to get you a quick78 console for userspace. Do NOT enable in production kernels.79 80config HVC_DCC81 bool "ARM JTAG DCC console"82 depends on ARM || ARM6483 select HVC_DRIVER84 select SERIAL_CORE_CONSOLE85 help86 This console uses the JTAG DCC on ARM to create a console under the HVC87 driver. This console is used through a JTAG only on ARM. If you don't have88 a JTAG then you probably don't want this option.89 90config HVC_DCC_SERIALIZE_SMP91 bool "Use DCC only on CPU core 0"92 depends on SMP && HVC_DCC93 help94 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 more96 than one CPU core. Each core has its own DCC device registers, so when a97 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 to99 write to the console, it might write to a different DCC.100 101 In SMP mode, external debuggers create multiple windows, and each window102 shows the DCC output only from that core's DCC. The result is that103 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 like106 CPU hotplug to work. For example, during early chipset bringups without107 debug serial console support. If unsure, say N.108 109config HVC_RISCV_SBI110 bool "RISC-V SBI console support"111 depends on RISCV_SBI && NONPORTABLE112 select HVC_DRIVER113 help114 This enables support for console output via RISC-V SBI calls, which115 is normally used only during boot to output printk. This driver116 conflicts with real console drivers and should not be enabled on117 systems that directly access the console.118 119 If you don't know what do to here, say N.120 121config HVCS122 tristate "IBM Hypervisor Virtual Console Server support"123 depends on PPC_PSERIES && HVC_CONSOLE124 help125 Partitionable IBM Power5 ppc64 machines allow hosting of126 firmware virtual consoles from one Linux partition by127 another Linux partition. This driver allows console data128 from Linux partitions to be accessed through TTY device129 interfaces in the device tree of a Linux partition running130 this driver.131 132 To compile this driver as a module, choose M here: the133 module will be called hvcs. Additionally, this module134 will depend on arch specific APIs exported from hvcserver.ko135 which will also be compiled when this driver is built as a136 module.137