18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 28c2ecf20Sopenharmony_ciconfig TTY 38c2ecf20Sopenharmony_ci bool "Enable TTY" if EXPERT 48c2ecf20Sopenharmony_ci default y 58c2ecf20Sopenharmony_ci help 68c2ecf20Sopenharmony_ci Allows you to remove TTY support which can save space, and 78c2ecf20Sopenharmony_ci blocks features that require TTY from inclusion in the kernel. 88c2ecf20Sopenharmony_ci TTY is required for any text terminals or serial port 98c2ecf20Sopenharmony_ci communication. Most users should leave this enabled. 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ciif TTY 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciconfig VT 148c2ecf20Sopenharmony_ci bool "Virtual terminal" if EXPERT 158c2ecf20Sopenharmony_ci depends on !UML 168c2ecf20Sopenharmony_ci select INPUT 178c2ecf20Sopenharmony_ci default y 188c2ecf20Sopenharmony_ci help 198c2ecf20Sopenharmony_ci If you say Y here, you will get support for terminal devices with 208c2ecf20Sopenharmony_ci display and keyboard devices. These are called "virtual" because you 218c2ecf20Sopenharmony_ci can run several virtual terminals (also called virtual consoles) on 228c2ecf20Sopenharmony_ci one physical terminal. This is rather useful, for example one 238c2ecf20Sopenharmony_ci virtual terminal can collect system messages and warnings, another 248c2ecf20Sopenharmony_ci one can be used for a text-mode user session, and a third could run 258c2ecf20Sopenharmony_ci an X session, all in parallel. Switching between virtual terminals 268c2ecf20Sopenharmony_ci is done with certain key combinations, usually Alt-<function key>. 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci The setterm command ("man setterm") can be used to change the 298c2ecf20Sopenharmony_ci properties (such as colors or beeping) of a virtual terminal. The 308c2ecf20Sopenharmony_ci man page console_codes(4) ("man console_codes") contains the special 318c2ecf20Sopenharmony_ci character sequences that can be used to change those properties 328c2ecf20Sopenharmony_ci directly. The fonts used on virtual terminals can be changed with 338c2ecf20Sopenharmony_ci the setfont ("man setfont") command and the key bindings are defined 348c2ecf20Sopenharmony_ci with the loadkeys ("man loadkeys") command. 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci You need at least one virtual terminal device in order to make use 378c2ecf20Sopenharmony_ci of your keyboard and monitor. Therefore, only people configuring an 388c2ecf20Sopenharmony_ci embedded system would want to say N here in order to save some 398c2ecf20Sopenharmony_ci memory; the only way to log into such a system is then via a serial 408c2ecf20Sopenharmony_ci or network connection. 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ci If unsure, say Y, or else you won't be able to do much with your new 438c2ecf20Sopenharmony_ci shiny Linux system :-) 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ciconfig CONSOLE_TRANSLATIONS 468c2ecf20Sopenharmony_ci depends on VT 478c2ecf20Sopenharmony_ci default y 488c2ecf20Sopenharmony_ci bool "Enable character translations in console" if EXPERT 498c2ecf20Sopenharmony_ci help 508c2ecf20Sopenharmony_ci This enables support for font mapping and Unicode translation 518c2ecf20Sopenharmony_ci on virtual consoles. 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ciconfig VT_CONSOLE 548c2ecf20Sopenharmony_ci bool "Support for console on virtual terminal" if EXPERT 558c2ecf20Sopenharmony_ci depends on VT 568c2ecf20Sopenharmony_ci default y 578c2ecf20Sopenharmony_ci help 588c2ecf20Sopenharmony_ci The system console is the device which receives all kernel messages 598c2ecf20Sopenharmony_ci and warnings and which allows logins in single user mode. If you 608c2ecf20Sopenharmony_ci answer Y here, a virtual terminal (the device used to interact with 618c2ecf20Sopenharmony_ci a physical terminal) can be used as system console. This is the most 628c2ecf20Sopenharmony_ci common mode of operations, so you should say Y here unless you want 638c2ecf20Sopenharmony_ci the kernel messages be output only to a serial port (in which case 648c2ecf20Sopenharmony_ci you should say Y to "Console on serial port", below). 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_ci If you do say Y here, by default the currently visible virtual 678c2ecf20Sopenharmony_ci terminal (/dev/tty0) will be used as system console. You can change 688c2ecf20Sopenharmony_ci that with a kernel command line option such as "console=tty3" which 698c2ecf20Sopenharmony_ci would use the third virtual terminal as system console. (Try "man 708c2ecf20Sopenharmony_ci bootparam" or see the documentation of your boot loader (lilo or 718c2ecf20Sopenharmony_ci loadlin) about how to pass options to the kernel at boot time.) 728c2ecf20Sopenharmony_ci 738c2ecf20Sopenharmony_ci If unsure, say Y. 748c2ecf20Sopenharmony_ci 758c2ecf20Sopenharmony_ciconfig VT_CONSOLE_SLEEP 768c2ecf20Sopenharmony_ci def_bool y 778c2ecf20Sopenharmony_ci depends on VT_CONSOLE && PM_SLEEP 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ciconfig HW_CONSOLE 808c2ecf20Sopenharmony_ci bool 818c2ecf20Sopenharmony_ci depends on VT && !UML 828c2ecf20Sopenharmony_ci default y 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ciconfig VT_HW_CONSOLE_BINDING 858c2ecf20Sopenharmony_ci bool "Support for binding and unbinding console drivers" 868c2ecf20Sopenharmony_ci depends on HW_CONSOLE 878c2ecf20Sopenharmony_ci help 888c2ecf20Sopenharmony_ci The virtual terminal is the device that interacts with the physical 898c2ecf20Sopenharmony_ci terminal through console drivers. On these systems, at least one 908c2ecf20Sopenharmony_ci console driver is loaded. In other configurations, additional console 918c2ecf20Sopenharmony_ci drivers may be enabled, such as the framebuffer console. If more than 928c2ecf20Sopenharmony_ci 1 console driver is enabled, setting this to 'y' will allow you to 938c2ecf20Sopenharmony_ci select the console driver that will serve as the backend for the 948c2ecf20Sopenharmony_ci virtual terminals. 958c2ecf20Sopenharmony_ci 968c2ecf20Sopenharmony_ci See <file:Documentation/driver-api/console.rst> for more 978c2ecf20Sopenharmony_ci information. For framebuffer console users, please refer to 988c2ecf20Sopenharmony_ci <file:Documentation/fb/fbcon.rst>. 998c2ecf20Sopenharmony_ci 1008c2ecf20Sopenharmony_ciconfig UNIX98_PTYS 1018c2ecf20Sopenharmony_ci bool "Unix98 PTY support" if EXPERT 1028c2ecf20Sopenharmony_ci default y 1038c2ecf20Sopenharmony_ci help 1048c2ecf20Sopenharmony_ci A pseudo terminal (PTY) is a software device consisting of two 1058c2ecf20Sopenharmony_ci halves: a master and a slave. The slave device behaves identical to 1068c2ecf20Sopenharmony_ci a physical terminal; the master device is used by a process to 1078c2ecf20Sopenharmony_ci read data from and write data to the slave, thereby emulating a 1088c2ecf20Sopenharmony_ci terminal. Typical programs for the master side are telnet servers 1098c2ecf20Sopenharmony_ci and xterms. 1108c2ecf20Sopenharmony_ci 1118c2ecf20Sopenharmony_ci Linux has traditionally used the BSD-like names /dev/ptyxx for 1128c2ecf20Sopenharmony_ci masters and /dev/ttyxx for slaves of pseudo terminals. This scheme 1138c2ecf20Sopenharmony_ci has a number of problems. The GNU C library glibc 2.1 and later, 1148c2ecf20Sopenharmony_ci however, supports the Unix98 naming standard: in order to acquire a 1158c2ecf20Sopenharmony_ci pseudo terminal, a process opens /dev/ptmx; the number of the pseudo 1168c2ecf20Sopenharmony_ci terminal is then made available to the process and the pseudo 1178c2ecf20Sopenharmony_ci terminal slave can be accessed as /dev/pts/<number>. What was 1188c2ecf20Sopenharmony_ci traditionally /dev/ttyp2 will then be /dev/pts/2, for example. 1198c2ecf20Sopenharmony_ci 1208c2ecf20Sopenharmony_ci All modern Linux systems use the Unix98 ptys. Say Y unless 1218c2ecf20Sopenharmony_ci you're on an embedded system and want to conserve memory. 1228c2ecf20Sopenharmony_ci 1238c2ecf20Sopenharmony_ciconfig LEGACY_PTYS 1248c2ecf20Sopenharmony_ci bool "Legacy (BSD) PTY support" 1258c2ecf20Sopenharmony_ci default y 1268c2ecf20Sopenharmony_ci help 1278c2ecf20Sopenharmony_ci A pseudo terminal (PTY) is a software device consisting of two 1288c2ecf20Sopenharmony_ci halves: a master and a slave. The slave device behaves identical to 1298c2ecf20Sopenharmony_ci a physical terminal; the master device is used by a process to 1308c2ecf20Sopenharmony_ci read data from and write data to the slave, thereby emulating a 1318c2ecf20Sopenharmony_ci terminal. Typical programs for the master side are telnet servers 1328c2ecf20Sopenharmony_ci and xterms. 1338c2ecf20Sopenharmony_ci 1348c2ecf20Sopenharmony_ci Linux has traditionally used the BSD-like names /dev/ptyxx 1358c2ecf20Sopenharmony_ci for masters and /dev/ttyxx for slaves of pseudo 1368c2ecf20Sopenharmony_ci terminals. This scheme has a number of problems, including 1378c2ecf20Sopenharmony_ci security. This option enables these legacy devices; on most 1388c2ecf20Sopenharmony_ci systems, it is safe to say N. 1398c2ecf20Sopenharmony_ci 1408c2ecf20Sopenharmony_ciconfig LEGACY_PTY_COUNT 1418c2ecf20Sopenharmony_ci int "Maximum number of legacy PTY in use" 1428c2ecf20Sopenharmony_ci depends on LEGACY_PTYS 1438c2ecf20Sopenharmony_ci range 0 256 1448c2ecf20Sopenharmony_ci default "256" 1458c2ecf20Sopenharmony_ci help 1468c2ecf20Sopenharmony_ci The maximum number of legacy PTYs that can be used at any one time. 1478c2ecf20Sopenharmony_ci The default is 256, and should be more than enough. Embedded 1488c2ecf20Sopenharmony_ci systems may want to reduce this to save memory. 1498c2ecf20Sopenharmony_ci 1508c2ecf20Sopenharmony_ci When not in use, each legacy PTY occupies 12 bytes on 32-bit 1518c2ecf20Sopenharmony_ci architectures and 24 bytes on 64-bit architectures. 1528c2ecf20Sopenharmony_ci 1538c2ecf20Sopenharmony_ciconfig LDISC_AUTOLOAD 1548c2ecf20Sopenharmony_ci bool "Automatically load TTY Line Disciplines" 1558c2ecf20Sopenharmony_ci default y 1568c2ecf20Sopenharmony_ci help 1578c2ecf20Sopenharmony_ci Historically the kernel has always automatically loaded any 1588c2ecf20Sopenharmony_ci line discipline that is in a kernel module when a user asks 1598c2ecf20Sopenharmony_ci for it to be loaded with the TIOCSETD ioctl, or through other 1608c2ecf20Sopenharmony_ci means. This is not always the best thing to do on systems 1618c2ecf20Sopenharmony_ci where you know you will not be using some of the more 1628c2ecf20Sopenharmony_ci "ancient" line disciplines, so prevent the kernel from doing 1638c2ecf20Sopenharmony_ci this unless the request is coming from a process with the 1648c2ecf20Sopenharmony_ci CAP_SYS_MODULE permissions. 1658c2ecf20Sopenharmony_ci 1668c2ecf20Sopenharmony_ci Say 'Y' here if you trust your userspace users to do the right 1678c2ecf20Sopenharmony_ci thing, or if you have only provided the line disciplines that 1688c2ecf20Sopenharmony_ci you know you will be using, or if you wish to continue to use 1698c2ecf20Sopenharmony_ci the traditional method of on-demand loading of these modules 1708c2ecf20Sopenharmony_ci by any user. 1718c2ecf20Sopenharmony_ci 1728c2ecf20Sopenharmony_ci This functionality can be changed at runtime with the 1738c2ecf20Sopenharmony_ci dev.tty.ldisc_autoload sysctl, this configuration option will 1748c2ecf20Sopenharmony_ci only set the default value of this functionality. 1758c2ecf20Sopenharmony_ci 1768c2ecf20Sopenharmony_cisource "drivers/tty/serial/Kconfig" 1778c2ecf20Sopenharmony_ci 1788c2ecf20Sopenharmony_ciconfig SERIAL_NONSTANDARD 1798c2ecf20Sopenharmony_ci bool "Non-standard serial port support" 1808c2ecf20Sopenharmony_ci depends on HAS_IOMEM 1818c2ecf20Sopenharmony_ci help 1828c2ecf20Sopenharmony_ci Say Y here if you have any non-standard serial boards -- boards 1838c2ecf20Sopenharmony_ci which aren't supported using the standard "dumb" serial driver. 1848c2ecf20Sopenharmony_ci This includes intelligent serial boards such as Cyclades, 1858c2ecf20Sopenharmony_ci Digiboards, etc. These are usually used for systems that need many 1868c2ecf20Sopenharmony_ci serial ports because they serve many terminals or dial-in 1878c2ecf20Sopenharmony_ci connections. 1888c2ecf20Sopenharmony_ci 1898c2ecf20Sopenharmony_ci Note that the answer to this question won't directly affect the 1908c2ecf20Sopenharmony_ci kernel: saying N will just cause the configurator to skip all 1918c2ecf20Sopenharmony_ci the questions about non-standard serial boards. 1928c2ecf20Sopenharmony_ci 1938c2ecf20Sopenharmony_ci Most people can say N here. 1948c2ecf20Sopenharmony_ci 1958c2ecf20Sopenharmony_ciconfig ROCKETPORT 1968c2ecf20Sopenharmony_ci tristate "Comtrol RocketPort support" 1978c2ecf20Sopenharmony_ci depends on SERIAL_NONSTANDARD && (ISA || EISA || PCI) 1988c2ecf20Sopenharmony_ci help 1998c2ecf20Sopenharmony_ci This driver supports Comtrol RocketPort and RocketModem PCI boards. 2008c2ecf20Sopenharmony_ci These boards provide 2, 4, 8, 16, or 32 high-speed serial ports or 2018c2ecf20Sopenharmony_ci modems. For information about the RocketPort/RocketModem boards 2028c2ecf20Sopenharmony_ci and this driver read <file:Documentation/driver-api/serial/rocket.rst>. 2038c2ecf20Sopenharmony_ci 2048c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 2058c2ecf20Sopenharmony_ci module will be called rocket. 2068c2ecf20Sopenharmony_ci 2078c2ecf20Sopenharmony_ci If you want to compile this driver into the kernel, say Y here. If 2088c2ecf20Sopenharmony_ci you don't have a Comtrol RocketPort/RocketModem card installed, say N. 2098c2ecf20Sopenharmony_ci 2108c2ecf20Sopenharmony_ciconfig CYCLADES 2118c2ecf20Sopenharmony_ci tristate "Cyclades async mux support" 2128c2ecf20Sopenharmony_ci depends on SERIAL_NONSTANDARD && (PCI || ISA) 2138c2ecf20Sopenharmony_ci select FW_LOADER 2148c2ecf20Sopenharmony_ci help 2158c2ecf20Sopenharmony_ci This driver supports Cyclades Z and Y multiserial boards. 2168c2ecf20Sopenharmony_ci You would need something like this to connect more than two modems to 2178c2ecf20Sopenharmony_ci your Linux box, for instance in order to become a dial-in server. 2188c2ecf20Sopenharmony_ci 2198c2ecf20Sopenharmony_ci For information about the Cyclades-Z card, read 2208c2ecf20Sopenharmony_ci <file:Documentation/driver-api/serial/cyclades_z.rst>. 2218c2ecf20Sopenharmony_ci 2228c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 2238c2ecf20Sopenharmony_ci module will be called cyclades. 2248c2ecf20Sopenharmony_ci 2258c2ecf20Sopenharmony_ci If you haven't heard about it, it's safe to say N. 2268c2ecf20Sopenharmony_ci 2278c2ecf20Sopenharmony_ciconfig CYZ_INTR 2288c2ecf20Sopenharmony_ci bool "Cyclades-Z interrupt mode operation" 2298c2ecf20Sopenharmony_ci depends on CYCLADES && PCI 2308c2ecf20Sopenharmony_ci help 2318c2ecf20Sopenharmony_ci The Cyclades-Z family of multiport cards allows 2 (two) driver op 2328c2ecf20Sopenharmony_ci modes: polling and interrupt. In polling mode, the driver will check 2338c2ecf20Sopenharmony_ci the status of the Cyclades-Z ports every certain amount of time 2348c2ecf20Sopenharmony_ci (which is called polling cycle and is configurable). In interrupt 2358c2ecf20Sopenharmony_ci mode, it will use an interrupt line (IRQ) in order to check the 2368c2ecf20Sopenharmony_ci status of the Cyclades-Z ports. The default op mode is polling. If 2378c2ecf20Sopenharmony_ci unsure, say N. 2388c2ecf20Sopenharmony_ci 2398c2ecf20Sopenharmony_ciconfig MOXA_INTELLIO 2408c2ecf20Sopenharmony_ci tristate "Moxa Intellio support" 2418c2ecf20Sopenharmony_ci depends on SERIAL_NONSTANDARD && (ISA || EISA || PCI) 2428c2ecf20Sopenharmony_ci select FW_LOADER 2438c2ecf20Sopenharmony_ci help 2448c2ecf20Sopenharmony_ci Say Y here if you have a Moxa Intellio multiport serial card. 2458c2ecf20Sopenharmony_ci 2468c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 2478c2ecf20Sopenharmony_ci module will be called moxa. 2488c2ecf20Sopenharmony_ci 2498c2ecf20Sopenharmony_ciconfig MOXA_SMARTIO 2508c2ecf20Sopenharmony_ci tristate "Moxa SmartIO support v. 2.0" 2518c2ecf20Sopenharmony_ci depends on SERIAL_NONSTANDARD && (PCI || EISA || ISA) 2528c2ecf20Sopenharmony_ci help 2538c2ecf20Sopenharmony_ci Say Y here if you have a Moxa SmartIO multiport serial card and/or 2548c2ecf20Sopenharmony_ci want to help develop a new version of this driver. 2558c2ecf20Sopenharmony_ci 2568c2ecf20Sopenharmony_ci This is upgraded (1.9.1) driver from original Moxa drivers with 2578c2ecf20Sopenharmony_ci changes finally resulting in PCI probing. 2588c2ecf20Sopenharmony_ci 2598c2ecf20Sopenharmony_ci This driver can also be built as a module. The module will be called 2608c2ecf20Sopenharmony_ci mxser. If you want to do that, say M here. 2618c2ecf20Sopenharmony_ci 2628c2ecf20Sopenharmony_ciconfig SYNCLINK 2638c2ecf20Sopenharmony_ci tristate "Microgate SyncLink card support" 2648c2ecf20Sopenharmony_ci depends on SERIAL_NONSTANDARD && PCI && ISA_DMA_API 2658c2ecf20Sopenharmony_ci help 2668c2ecf20Sopenharmony_ci Provides support for the SyncLink ISA and PCI multiprotocol serial 2678c2ecf20Sopenharmony_ci adapters. These adapters support asynchronous and HDLC bit 2688c2ecf20Sopenharmony_ci synchronous communication up to 10Mbps (PCI adapter). 2698c2ecf20Sopenharmony_ci 2708c2ecf20Sopenharmony_ci This driver can only be built as a module ( = code which can be 2718c2ecf20Sopenharmony_ci inserted in and removed from the running kernel whenever you want). 2728c2ecf20Sopenharmony_ci The module will be called synclink. If you want to do that, say M 2738c2ecf20Sopenharmony_ci here. 2748c2ecf20Sopenharmony_ci 2758c2ecf20Sopenharmony_ciconfig SYNCLINKMP 2768c2ecf20Sopenharmony_ci tristate "SyncLink Multiport support" 2778c2ecf20Sopenharmony_ci depends on SERIAL_NONSTANDARD && PCI 2788c2ecf20Sopenharmony_ci help 2798c2ecf20Sopenharmony_ci Enable support for the SyncLink Multiport (2 or 4 ports) 2808c2ecf20Sopenharmony_ci serial adapter, running asynchronous and HDLC communications up 2818c2ecf20Sopenharmony_ci to 2.048Mbps. Each ports is independently selectable for 2828c2ecf20Sopenharmony_ci RS-232, V.35, RS-449, RS-530, and X.21 2838c2ecf20Sopenharmony_ci 2848c2ecf20Sopenharmony_ci This driver may be built as a module ( = code which can be 2858c2ecf20Sopenharmony_ci inserted in and removed from the running kernel whenever you want). 2868c2ecf20Sopenharmony_ci The module will be called synclinkmp. If you want to do that, say M 2878c2ecf20Sopenharmony_ci here. 2888c2ecf20Sopenharmony_ci 2898c2ecf20Sopenharmony_ciconfig SYNCLINK_GT 2908c2ecf20Sopenharmony_ci tristate "SyncLink GT/AC support" 2918c2ecf20Sopenharmony_ci depends on SERIAL_NONSTANDARD && PCI 2928c2ecf20Sopenharmony_ci help 2938c2ecf20Sopenharmony_ci Support for SyncLink GT and SyncLink AC families of 2948c2ecf20Sopenharmony_ci synchronous and asynchronous serial adapters 2958c2ecf20Sopenharmony_ci manufactured by Microgate Systems, Ltd. (www.microgate.com) 2968c2ecf20Sopenharmony_ci 2978c2ecf20Sopenharmony_ciconfig ISI 2988c2ecf20Sopenharmony_ci tristate "Multi-Tech multiport card support" 2998c2ecf20Sopenharmony_ci depends on SERIAL_NONSTANDARD && PCI 3008c2ecf20Sopenharmony_ci select FW_LOADER 3018c2ecf20Sopenharmony_ci help 3028c2ecf20Sopenharmony_ci This is a driver for the Multi-Tech cards which provide several 3038c2ecf20Sopenharmony_ci serial ports. The driver is experimental and can currently only be 3048c2ecf20Sopenharmony_ci built as a module. The module will be called isicom. 3058c2ecf20Sopenharmony_ci If you want to do that, choose M here. 3068c2ecf20Sopenharmony_ci 3078c2ecf20Sopenharmony_ciconfig N_HDLC 3088c2ecf20Sopenharmony_ci tristate "HDLC line discipline support" 3098c2ecf20Sopenharmony_ci depends on SERIAL_NONSTANDARD 3108c2ecf20Sopenharmony_ci help 3118c2ecf20Sopenharmony_ci Allows synchronous HDLC communications with tty device drivers that 3128c2ecf20Sopenharmony_ci support synchronous HDLC such as the Microgate SyncLink adapter. 3138c2ecf20Sopenharmony_ci 3148c2ecf20Sopenharmony_ci This driver can be built as a module ( = code which can be 3158c2ecf20Sopenharmony_ci inserted in and removed from the running kernel whenever you want). 3168c2ecf20Sopenharmony_ci The module will be called n_hdlc. If you want to do that, say M 3178c2ecf20Sopenharmony_ci here. 3188c2ecf20Sopenharmony_ci 3198c2ecf20Sopenharmony_ciconfig PPC_EPAPR_HV_BYTECHAN 3208c2ecf20Sopenharmony_ci bool "ePAPR hypervisor byte channel driver" 3218c2ecf20Sopenharmony_ci depends on PPC 3228c2ecf20Sopenharmony_ci select EPAPR_PARAVIRT 3238c2ecf20Sopenharmony_ci help 3248c2ecf20Sopenharmony_ci This driver creates /dev entries for each ePAPR hypervisor byte 3258c2ecf20Sopenharmony_ci channel, thereby allowing applications to communicate with byte 3268c2ecf20Sopenharmony_ci channels as if they were serial ports. 3278c2ecf20Sopenharmony_ci 3288c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_EHV_BC 3298c2ecf20Sopenharmony_ci bool "Early console (udbg) support for ePAPR hypervisors" 3308c2ecf20Sopenharmony_ci depends on PPC_EPAPR_HV_BYTECHAN=y 3318c2ecf20Sopenharmony_ci help 3328c2ecf20Sopenharmony_ci Select this option to enable early console (a.k.a. "udbg") support 3338c2ecf20Sopenharmony_ci via an ePAPR byte channel. You also need to choose the byte channel 3348c2ecf20Sopenharmony_ci handle below. 3358c2ecf20Sopenharmony_ci 3368c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_EHV_BC_HANDLE 3378c2ecf20Sopenharmony_ci int "Byte channel handle for early console (udbg)" 3388c2ecf20Sopenharmony_ci depends on PPC_EARLY_DEBUG_EHV_BC 3398c2ecf20Sopenharmony_ci default 0 3408c2ecf20Sopenharmony_ci help 3418c2ecf20Sopenharmony_ci If you want early console (udbg) output through a byte channel, 3428c2ecf20Sopenharmony_ci specify the handle of the byte channel to use. 3438c2ecf20Sopenharmony_ci 3448c2ecf20Sopenharmony_ci For this to work, the byte channel driver must be compiled 3458c2ecf20Sopenharmony_ci in-kernel, not as a module. 3468c2ecf20Sopenharmony_ci 3478c2ecf20Sopenharmony_ci Note that only one early console driver can be enabled, so don't 3488c2ecf20Sopenharmony_ci enable any others if you enable this one. 3498c2ecf20Sopenharmony_ci 3508c2ecf20Sopenharmony_ci If the number you specify is not a valid byte channel handle, then 3518c2ecf20Sopenharmony_ci there simply will be no early console output. This is true also 3528c2ecf20Sopenharmony_ci if you don't boot under a hypervisor at all. 3538c2ecf20Sopenharmony_ci 3548c2ecf20Sopenharmony_ciconfig GOLDFISH_TTY 3558c2ecf20Sopenharmony_ci tristate "Goldfish TTY Driver" 3568c2ecf20Sopenharmony_ci depends on GOLDFISH 3578c2ecf20Sopenharmony_ci select SERIAL_CORE 3588c2ecf20Sopenharmony_ci select SERIAL_CORE_CONSOLE 3598c2ecf20Sopenharmony_ci help 3608c2ecf20Sopenharmony_ci Console and system TTY driver for the Goldfish virtual platform. 3618c2ecf20Sopenharmony_ci 3628c2ecf20Sopenharmony_ciconfig GOLDFISH_TTY_EARLY_CONSOLE 3638c2ecf20Sopenharmony_ci bool 3648c2ecf20Sopenharmony_ci default y if GOLDFISH_TTY=y 3658c2ecf20Sopenharmony_ci select SERIAL_EARLYCON 3668c2ecf20Sopenharmony_ci 3678c2ecf20Sopenharmony_ciconfig N_GSM 3688c2ecf20Sopenharmony_ci tristate "GSM MUX line discipline support (EXPERIMENTAL)" 3698c2ecf20Sopenharmony_ci depends on NET 3708c2ecf20Sopenharmony_ci help 3718c2ecf20Sopenharmony_ci This line discipline provides support for the GSM MUX protocol and 3728c2ecf20Sopenharmony_ci presents the mux as a set of 61 individual tty devices. 3738c2ecf20Sopenharmony_ci 3748c2ecf20Sopenharmony_ciconfig NOZOMI 3758c2ecf20Sopenharmony_ci tristate "HSDPA Broadband Wireless Data Card - Globe Trotter" 3768c2ecf20Sopenharmony_ci depends on PCI 3778c2ecf20Sopenharmony_ci help 3788c2ecf20Sopenharmony_ci If you have a HSDPA driver Broadband Wireless Data Card - 3798c2ecf20Sopenharmony_ci Globe Trotter PCMCIA card, say Y here. 3808c2ecf20Sopenharmony_ci 3818c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here, the module 3828c2ecf20Sopenharmony_ci will be called nozomi. 3838c2ecf20Sopenharmony_ci 3848c2ecf20Sopenharmony_ciconfig MIPS_EJTAG_FDC_TTY 3858c2ecf20Sopenharmony_ci bool "MIPS EJTAG Fast Debug Channel TTY" 3868c2ecf20Sopenharmony_ci depends on MIPS_CDMM 3878c2ecf20Sopenharmony_ci help 3888c2ecf20Sopenharmony_ci This enables a TTY and console on the MIPS EJTAG Fast Debug Channels, 3898c2ecf20Sopenharmony_ci if they are present. This can be useful when working with an EJTAG 3908c2ecf20Sopenharmony_ci probe which supports it, to get console output and a login prompt via 3918c2ecf20Sopenharmony_ci EJTAG without needing to connect a serial cable. 3928c2ecf20Sopenharmony_ci 3938c2ecf20Sopenharmony_ci TTY devices are named e.g. ttyFDC3c2 (for FDC channel 2 of the FDC on 3948c2ecf20Sopenharmony_ci CPU3). 3958c2ecf20Sopenharmony_ci 3968c2ecf20Sopenharmony_ci The console can be enabled with console=fdc1 (for FDC channel 1 on all 3978c2ecf20Sopenharmony_ci CPUs). Do not use the console unless there is a debug probe attached 3988c2ecf20Sopenharmony_ci to drain the FDC TX FIFO. 3998c2ecf20Sopenharmony_ci 4008c2ecf20Sopenharmony_ci If unsure, say N. 4018c2ecf20Sopenharmony_ci 4028c2ecf20Sopenharmony_ciconfig MIPS_EJTAG_FDC_EARLYCON 4038c2ecf20Sopenharmony_ci bool "Early FDC console" 4048c2ecf20Sopenharmony_ci depends on MIPS_EJTAG_FDC_TTY 4058c2ecf20Sopenharmony_ci help 4068c2ecf20Sopenharmony_ci This registers a console on FDC channel 1 very early during boot (from 4078c2ecf20Sopenharmony_ci MIPS arch code). This is useful for bring-up and debugging early boot 4088c2ecf20Sopenharmony_ci issues. 4098c2ecf20Sopenharmony_ci 4108c2ecf20Sopenharmony_ci Do not enable unless there is a debug probe attached to drain the FDC 4118c2ecf20Sopenharmony_ci TX FIFO. 4128c2ecf20Sopenharmony_ci 4138c2ecf20Sopenharmony_ci If unsure, say N. 4148c2ecf20Sopenharmony_ci 4158c2ecf20Sopenharmony_ciconfig MIPS_EJTAG_FDC_KGDB 4168c2ecf20Sopenharmony_ci bool "Use KGDB over an FDC channel" 4178c2ecf20Sopenharmony_ci depends on MIPS_EJTAG_FDC_TTY && KGDB 4188c2ecf20Sopenharmony_ci default y 4198c2ecf20Sopenharmony_ci help 4208c2ecf20Sopenharmony_ci This enables the use of KGDB over an FDC channel, allowing KGDB to be 4218c2ecf20Sopenharmony_ci used remotely or when a serial port isn't available. 4228c2ecf20Sopenharmony_ci 4238c2ecf20Sopenharmony_ciconfig MIPS_EJTAG_FDC_KGDB_CHAN 4248c2ecf20Sopenharmony_ci int "KGDB FDC channel" 4258c2ecf20Sopenharmony_ci depends on MIPS_EJTAG_FDC_KGDB 4268c2ecf20Sopenharmony_ci range 2 15 4278c2ecf20Sopenharmony_ci default 3 4288c2ecf20Sopenharmony_ci help 4298c2ecf20Sopenharmony_ci FDC channel number to use for KGDB. 4308c2ecf20Sopenharmony_ci 4318c2ecf20Sopenharmony_ciconfig NULL_TTY 4328c2ecf20Sopenharmony_ci tristate "NULL TTY driver" 4338c2ecf20Sopenharmony_ci help 4348c2ecf20Sopenharmony_ci Say Y here if you want a NULL TTY which simply discards messages. 4358c2ecf20Sopenharmony_ci 4368c2ecf20Sopenharmony_ci This is useful to allow userspace applications which expect a console 4378c2ecf20Sopenharmony_ci device to work without modifications even when no console is 4388c2ecf20Sopenharmony_ci available or desired. 4398c2ecf20Sopenharmony_ci 4408c2ecf20Sopenharmony_ci In order to use this driver, you should redirect the console to this 4418c2ecf20Sopenharmony_ci TTY, or boot the kernel with console=ttynull. 4428c2ecf20Sopenharmony_ci 4438c2ecf20Sopenharmony_ci If unsure, say N. 4448c2ecf20Sopenharmony_ci 4458c2ecf20Sopenharmony_ciconfig TRACE_ROUTER 4468c2ecf20Sopenharmony_ci tristate "Trace data router for MIPI P1149.7 cJTAG standard" 4478c2ecf20Sopenharmony_ci depends on TRACE_SINK 4488c2ecf20Sopenharmony_ci help 4498c2ecf20Sopenharmony_ci The trace router uses the Linux tty line discipline framework to 4508c2ecf20Sopenharmony_ci route trace data coming from a tty port (say UART for example) to 4518c2ecf20Sopenharmony_ci the trace sink line discipline driver and to another tty port (say 4528c2ecf20Sopenharmony_ci USB). This is part of a solution for the MIPI P1149.7, compact JTAG, 4538c2ecf20Sopenharmony_ci standard, which is for debugging mobile devices. The PTI driver in 4548c2ecf20Sopenharmony_ci drivers/misc/pti.c defines the majority of this MIPI solution. 4558c2ecf20Sopenharmony_ci 4568c2ecf20Sopenharmony_ci You should select this driver if the target kernel is meant for 4578c2ecf20Sopenharmony_ci a mobile device containing a modem. Then you will need to select 4588c2ecf20Sopenharmony_ci "Trace data sink for MIPI P1149.7 cJTAG standard" line discipline 4598c2ecf20Sopenharmony_ci driver. 4608c2ecf20Sopenharmony_ci 4618c2ecf20Sopenharmony_ciconfig TRACE_SINK 4628c2ecf20Sopenharmony_ci tristate "Trace data sink for MIPI P1149.7 cJTAG standard" 4638c2ecf20Sopenharmony_ci help 4648c2ecf20Sopenharmony_ci The trace sink uses the Linux line discipline framework to receive 4658c2ecf20Sopenharmony_ci trace data coming from the trace router line discipline driver 4668c2ecf20Sopenharmony_ci to a user-defined tty port target, like USB. 4678c2ecf20Sopenharmony_ci This is to provide a way to extract modem trace data on 4688c2ecf20Sopenharmony_ci devices that do not have a PTI HW module, or just need modem 4698c2ecf20Sopenharmony_ci trace data to come out of a different HW output port. 4708c2ecf20Sopenharmony_ci This is part of a solution for the P1149.7, compact JTAG, standard. 4718c2ecf20Sopenharmony_ci 4728c2ecf20Sopenharmony_ci If you select this option, you need to select 4738c2ecf20Sopenharmony_ci "Trace data router for MIPI P1149.7 cJTAG standard". 4748c2ecf20Sopenharmony_ci 4758c2ecf20Sopenharmony_ciconfig VCC 4768c2ecf20Sopenharmony_ci tristate "Sun Virtual Console Concentrator" 4778c2ecf20Sopenharmony_ci depends on SUN_LDOMS 4788c2ecf20Sopenharmony_ci help 4798c2ecf20Sopenharmony_ci Support for Sun logical domain consoles. 4808c2ecf20Sopenharmony_ci 4818c2ecf20Sopenharmony_cisource "drivers/tty/hvc/Kconfig" 4828c2ecf20Sopenharmony_ci 4838c2ecf20Sopenharmony_ciendif # TTY 4848c2ecf20Sopenharmony_ci 4858c2ecf20Sopenharmony_cisource "drivers/tty/serdev/Kconfig" 486