1256694Snp# SPDX-License-Identifier: GPL-2.0 2256694Snp 3256694Snpconfig HVC_DRIVER 4256694Snp bool 5256694Snp help 6256694Snp Generic "hypervisor virtual console" infrastructure for various 7256694Snp hypervisors (pSeries, iSeries, Xen). 8256694Snp It will automatically be selected if one of the back-end console drivers 9256694Snp is selected. 10256694Snp 11256694Snpconfig HVC_IRQ 12256694Snp bool 13256694Snp 14256694Snpconfig HVC_CONSOLE 15256694Snp bool "pSeries Hypervisor Virtual Console support" 16256694Snp depends on PPC_PSERIES 17256694Snp select HVC_DRIVER 18256694Snp select HVC_IRQ 19256694Snp help 20256694Snp pSeries machines when partitioned support a hypervisor virtual 21256694Snp console. This driver allows each pSeries partition to have a console 22256694Snp which is accessed via the HMC. 23256694Snp 24256694Snpconfig HVC_OLD_HVSI 25256694Snp bool "Old driver for pSeries serial port (/dev/hvsi*)" 26256694Snp depends on HVC_CONSOLE 27256694Snp 28256694Snpconfig HVC_OPAL 29256694Snp bool "OPAL Console support" 30256694Snp depends on PPC_POWERNV 31256694Snp select HVC_DRIVER 32256694Snp select HVC_IRQ 33256694Snp default y 34256694Snp help 35256694Snp PowerNV machines running under OPAL need that driver to get a console 36256694Snp 37256694Snpconfig HVC_RTAS 38256694Snp bool "IBM RTAS Console support" 39256694Snp depends on PPC_RTAS 40256694Snp select HVC_DRIVER 41256694Snp help 42256694Snp IBM Console device driver which makes use of RTAS 43256694Snp 44256694Snpconfig HVC_IUCV 45256694Snp bool "z/VM IUCV Hypervisor console support (VM only)" 46256694Snp depends on S390 && NET 47256694Snp select HVC_DRIVER 48256694Snp select IUCV 49256694Snp default y 50256694Snp help 51256694Snp This driver provides a Hypervisor console (HVC) back-end to access 52256694Snp a Linux (console) terminal via a z/VM IUCV communication path. 53256694Snp 54256694Snpconfig HVC_XEN 55256694Snp bool "Xen Hypervisor Console support" 56256694Snp depends on XEN 57256694Snp select HVC_DRIVER 58256694Snp select HVC_IRQ 59256694Snp default y 60256694Snp help 61256694Snp Xen virtual console device driver 62256694Snp 63256694Snpconfig HVC_XEN_FRONTEND 64256694Snp bool "Xen Hypervisor Multiple Consoles support" 65256694Snp depends on HVC_XEN 66256694Snp select XEN_XENBUS_FRONTEND 67256694Snp default y 68256694Snp help 69256694Snp Xen driver for secondary virtual consoles 70256694Snp 71256694Snpconfig HVC_UDBG 72256694Snp bool "udbg based fake hypervisor console" 73256694Snp depends on PPC 74256694Snp select HVC_DRIVER 75256694Snp help 76256694Snp This is meant to be used during HW bring up or debugging when 77256694Snp no other console mechanism exist but udbg, to get you a quick 78256694Snp console for userspace. Do NOT enable in production kernels. 79256694Snp 80256694Snpconfig HVC_DCC 81256694Snp bool "ARM JTAG DCC console" 82256694Snp depends on ARM || ARM64 83256694Snp select HVC_DRIVER 84256694Snp select SERIAL_CORE_CONSOLE 85256694Snp help 86256694Snp This console uses the JTAG DCC on ARM to create a console under the HVC 87256694Snp driver. This console is used through a JTAG only on ARM. If you don't have 88256694Snp a JTAG then you probably don't want this option. 89256694Snp 90256694Snpconfig HVC_DCC_SERIALIZE_SMP 91256694Snp bool "Use DCC only on CPU core 0" 92256694Snp depends on SMP && HVC_DCC 93256694Snp help 94256694Snp This is a DEBUG option to serialize all console input and output to CPU 0. 95256694Snp Some external debuggers, do not handle reads/writes from/to DCC on more 96256694Snp than one CPU core. Each core has its own DCC device registers, so when a 97256694Snp CPU core reads or writes from/to DCC, it only accesses its own DCC device. 98256694Snp Since kernel code can run on any CPU core, every time the kernel wants to 99256694Snp write to the console, it might write to a different DCC. 100256694Snp 101256694Snp In SMP mode, external debuggers create multiple windows, and each window 102256694Snp shows the DCC output only from that core's DCC. The result is that 103256694Snp console output is either lost or scattered across windows. 104256694Snp 105256694Snp Enable this option only if you are sure that you do not need features like 106256694Snp CPU hotplug to work. For example, during early chipset bringups without 107256694Snp debug serial console support. If unsure, say N. 108256694Snp 109256694Snpconfig HVC_RISCV_SBI 110256694Snp bool "RISC-V SBI console support" 111256694Snp depends on RISCV_SBI && NONPORTABLE 112256694Snp select HVC_DRIVER 113256694Snp help 114256694Snp This enables support for console output via RISC-V SBI calls, which 115256694Snp is normally used only during boot to output printk. This driver 116256694Snp conflicts with real console drivers and should not be enabled on 117256694Snp systems that directly access the console. 118256694Snp 119256694Snp If you don't know what do to here, say N. 120256694Snp 121256694Snpconfig HVCS 122256694Snp tristate "IBM Hypervisor Virtual Console Server support" 123256694Snp depends on PPC_PSERIES && HVC_CONSOLE 124256694Snp help 125256694Snp Partitionable IBM Power5 ppc64 machines allow hosting of 126256694Snp firmware virtual consoles from one Linux partition by 127256694Snp another Linux partition. This driver allows console data 128256694Snp from Linux partitions to be accessed through TTY device 129256694Snp interfaces in the device tree of a Linux partition running 130256694Snp this driver. 131256694Snp 132256694Snp To compile this driver as a module, choose M here: the 133256694Snp module will be called hvcs. Additionally, this module 134256694Snp will depend on arch specific APIs exported from hvcserver.ko 135256694Snp which will also be compiled when this driver is built as a 136256694Snp module. 137256694Snp