| .. | .. |
|---|
| 1 | | -if TTY |
|---|
| 1 | +# SPDX-License-Identifier: GPL-2.0 |
|---|
| 2 | 2 | |
|---|
| 3 | 3 | config HVC_DRIVER |
|---|
| 4 | 4 | bool |
|---|
| .. | .. |
|---|
| 24 | 24 | config HVC_OLD_HVSI |
|---|
| 25 | 25 | bool "Old driver for pSeries serial port (/dev/hvsi*)" |
|---|
| 26 | 26 | depends on HVC_CONSOLE |
|---|
| 27 | | - default n |
|---|
| 28 | 27 | |
|---|
| 29 | 28 | config HVC_OPAL |
|---|
| 30 | 29 | bool "OPAL Console support" |
|---|
| .. | .. |
|---|
| 70 | 69 | Xen driver for secondary virtual consoles |
|---|
| 71 | 70 | |
|---|
| 72 | 71 | config HVC_UDBG |
|---|
| 73 | | - bool "udbg based fake hypervisor console" |
|---|
| 74 | | - depends on PPC |
|---|
| 75 | | - select HVC_DRIVER |
|---|
| 76 | | - default n |
|---|
| 77 | | - help |
|---|
| 78 | | - This is meant to be used during HW bring up or debugging when |
|---|
| 79 | | - no other console mechanism exist but udbg, to get you a quick |
|---|
| 80 | | - console for userspace. Do NOT enable in production kernels. |
|---|
| 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. |
|---|
| 81 | 79 | |
|---|
| 82 | 80 | config HVC_DCC |
|---|
| 83 | | - bool "ARM JTAG DCC console" |
|---|
| 84 | | - depends on ARM || ARM64 |
|---|
| 85 | | - select HVC_DRIVER |
|---|
| 86 | | - help |
|---|
| 87 | | - This console uses the JTAG DCC on ARM to create a console under the HVC |
|---|
| 88 | | - driver. This console is used through a JTAG only on ARM. If you don't have |
|---|
| 89 | | - a JTAG then you probably don't want this option. |
|---|
| 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 | + |
|---|
| 90 | +config HVC_DCC_SERIALIZE_SMP |
|---|
| 91 | + bool "Use DCC only on core 0" |
|---|
| 92 | + depends on SMP && HVC_DCC |
|---|
| 93 | + help |
|---|
| 94 | + Some debuggers, such as Trace32 from Lauterbach GmbH, do not handle |
|---|
| 95 | + reads/writes from/to DCC on more than one core. Each core has its |
|---|
| 96 | + own DCC device registers, so when a core reads or writes from/to DCC, |
|---|
| 97 | + it only accesses its own DCC device. Since kernel code can run on |
|---|
| 98 | + any core, every time the kernel wants to write to the console, it |
|---|
| 99 | + might write to a different DCC. |
|---|
| 100 | + |
|---|
| 101 | + In SMP mode, Trace32 only uses the DCC on core 0. In AMP mode, it |
|---|
| 102 | + creates multiple windows, and each window shows the DCC output |
|---|
| 103 | + only from that core's DCC. The result is that console output is |
|---|
| 104 | + either lost or scattered across windows. |
|---|
| 105 | + |
|---|
| 106 | + Selecting this option will enable code that serializes all console |
|---|
| 107 | + input and output to core 0. The DCC driver will create input and |
|---|
| 108 | + output FIFOs that all cores will use. Reads and writes from/to DCC |
|---|
| 109 | + are handled by a workqueue that runs only core 0. |
|---|
| 90 | 110 | |
|---|
| 91 | 111 | config HVC_RISCV_SBI |
|---|
| 92 | 112 | bool "RISC-V SBI console support" |
|---|
| 93 | | - depends on RISCV |
|---|
| 113 | + depends on RISCV_SBI_V01 |
|---|
| 94 | 114 | select HVC_DRIVER |
|---|
| 95 | 115 | help |
|---|
| 96 | 116 | This enables support for console output via RISC-V SBI calls, which |
|---|
| .. | .. |
|---|
| 114 | 134 | will depend on arch specific APIs exported from hvcserver.ko |
|---|
| 115 | 135 | which will also be compiled when this driver is built as a |
|---|
| 116 | 136 | module. |
|---|
| 117 | | - |
|---|
| 118 | | -endif # TTY |
|---|