^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) config TTY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) bool "Enable TTY" if EXPERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) Allows you to remove TTY support which can save space, and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) blocks features that require TTY from inclusion in the kernel.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) TTY is required for any text terminals or serial port
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) communication. Most users should leave this enabled.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) if TTY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) config VT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) bool "Virtual terminal" if EXPERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) depends on !UML
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) select INPUT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) If you say Y here, you will get support for terminal devices with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) display and keyboard devices. These are called "virtual" because you
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) can run several virtual terminals (also called virtual consoles) on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) one physical terminal. This is rather useful, for example one
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) virtual terminal can collect system messages and warnings, another
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) one can be used for a text-mode user session, and a third could run
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) an X session, all in parallel. Switching between virtual terminals
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) is done with certain key combinations, usually Alt-<function key>.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) The setterm command ("man setterm") can be used to change the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) properties (such as colors or beeping) of a virtual terminal. The
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) man page console_codes(4) ("man console_codes") contains the special
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) character sequences that can be used to change those properties
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) directly. The fonts used on virtual terminals can be changed with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) the setfont ("man setfont") command and the key bindings are defined
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) with the loadkeys ("man loadkeys") command.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) You need at least one virtual terminal device in order to make use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) of your keyboard and monitor. Therefore, only people configuring an
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) embedded system would want to say N here in order to save some
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) memory; the only way to log into such a system is then via a serial
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) or network connection.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) If unsure, say Y, or else you won't be able to do much with your new
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) shiny Linux system :-)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) config CONSOLE_TRANSLATIONS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) depends on VT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) bool "Enable character translations in console" if EXPERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) This enables support for font mapping and Unicode translation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) on virtual consoles.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) config VT_CONSOLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) bool "Support for console on virtual terminal" if EXPERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) depends on VT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) The system console is the device which receives all kernel messages
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) and warnings and which allows logins in single user mode. If you
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) answer Y here, a virtual terminal (the device used to interact with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) a physical terminal) can be used as system console. This is the most
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) common mode of operations, so you should say Y here unless you want
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) the kernel messages be output only to a serial port (in which case
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) you should say Y to "Console on serial port", below).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) If you do say Y here, by default the currently visible virtual
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) terminal (/dev/tty0) will be used as system console. You can change
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) that with a kernel command line option such as "console=tty3" which
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) would use the third virtual terminal as system console. (Try "man
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) bootparam" or see the documentation of your boot loader (lilo or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) loadlin) about how to pass options to the kernel at boot time.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) If unsure, say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) config VT_CONSOLE_SLEEP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) depends on VT_CONSOLE && PM_SLEEP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) config HW_CONSOLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) depends on VT && !UML
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) config VT_HW_CONSOLE_BINDING
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) bool "Support for binding and unbinding console drivers"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) depends on HW_CONSOLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) The virtual terminal is the device that interacts with the physical
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) terminal through console drivers. On these systems, at least one
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) console driver is loaded. In other configurations, additional console
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) drivers may be enabled, such as the framebuffer console. If more than
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) 1 console driver is enabled, setting this to 'y' will allow you to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) select the console driver that will serve as the backend for the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) virtual terminals.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) See <file:Documentation/driver-api/console.rst> for more
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) information. For framebuffer console users, please refer to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) <file:Documentation/fb/fbcon.rst>.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) config UNIX98_PTYS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) bool "Unix98 PTY support" if EXPERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) A pseudo terminal (PTY) is a software device consisting of two
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) halves: a master and a slave. The slave device behaves identical to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) a physical terminal; the master device is used by a process to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) read data from and write data to the slave, thereby emulating a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) terminal. Typical programs for the master side are telnet servers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) and xterms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) Linux has traditionally used the BSD-like names /dev/ptyxx for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) has a number of problems. The GNU C library glibc 2.1 and later,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) however, supports the Unix98 naming standard: in order to acquire a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) terminal is then made available to the process and the pseudo
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) terminal slave can be accessed as /dev/pts/<number>. What was
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) All modern Linux systems use the Unix98 ptys. Say Y unless
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) you're on an embedded system and want to conserve memory.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) config LEGACY_PTYS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) bool "Legacy (BSD) PTY support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) A pseudo terminal (PTY) is a software device consisting of two
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) halves: a master and a slave. The slave device behaves identical to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) a physical terminal; the master device is used by a process to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) read data from and write data to the slave, thereby emulating a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) terminal. Typical programs for the master side are telnet servers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) and xterms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) Linux has traditionally used the BSD-like names /dev/ptyxx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) for masters and /dev/ttyxx for slaves of pseudo
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) terminals. This scheme has a number of problems, including
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) security. This option enables these legacy devices; on most
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) systems, it is safe to say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) config LEGACY_PTY_COUNT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) int "Maximum number of legacy PTY in use"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) depends on LEGACY_PTYS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) range 0 256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) default "256"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) The maximum number of legacy PTYs that can be used at any one time.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) The default is 256, and should be more than enough. Embedded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) systems may want to reduce this to save memory.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) When not in use, each legacy PTY occupies 12 bytes on 32-bit
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) architectures and 24 bytes on 64-bit architectures.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) config LDISC_AUTOLOAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) bool "Automatically load TTY Line Disciplines"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) Historically the kernel has always automatically loaded any
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) line discipline that is in a kernel module when a user asks
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) for it to be loaded with the TIOCSETD ioctl, or through other
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) means. This is not always the best thing to do on systems
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) where you know you will not be using some of the more
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) "ancient" line disciplines, so prevent the kernel from doing
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) this unless the request is coming from a process with the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) CAP_SYS_MODULE permissions.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) Say 'Y' here if you trust your userspace users to do the right
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) thing, or if you have only provided the line disciplines that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) you know you will be using, or if you wish to continue to use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) the traditional method of on-demand loading of these modules
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) by any user.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) This functionality can be changed at runtime with the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) dev.tty.ldisc_autoload sysctl, this configuration option will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) only set the default value of this functionality.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) source "drivers/tty/serial/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) config SERIAL_NONSTANDARD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) bool "Non-standard serial port support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) Say Y here if you have any non-standard serial boards -- boards
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) which aren't supported using the standard "dumb" serial driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) This includes intelligent serial boards such as Cyclades,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) Digiboards, etc. These are usually used for systems that need many
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) serial ports because they serve many terminals or dial-in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) connections.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) Note that the answer to this question won't directly affect the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) kernel: saying N will just cause the configurator to skip all
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) the questions about non-standard serial boards.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) Most people can say N here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) config ROCKETPORT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) tristate "Comtrol RocketPort support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) depends on SERIAL_NONSTANDARD && (ISA || EISA || PCI)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) This driver supports Comtrol RocketPort and RocketModem PCI boards.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) These boards provide 2, 4, 8, 16, or 32 high-speed serial ports or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) modems. For information about the RocketPort/RocketModem boards
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) and this driver read <file:Documentation/driver-api/serial/rocket.rst>.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) module will be called rocket.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) If you want to compile this driver into the kernel, say Y here. If
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) you don't have a Comtrol RocketPort/RocketModem card installed, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) config CYCLADES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) tristate "Cyclades async mux support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) depends on SERIAL_NONSTANDARD && (PCI || ISA)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) select FW_LOADER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) This driver supports Cyclades Z and Y multiserial boards.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) You would need something like this to connect more than two modems to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) your Linux box, for instance in order to become a dial-in server.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) For information about the Cyclades-Z card, read
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) <file:Documentation/driver-api/serial/cyclades_z.rst>.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) module will be called cyclades.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) If you haven't heard about it, it's safe to say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) config CYZ_INTR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) bool "Cyclades-Z interrupt mode operation"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) depends on CYCLADES && PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) The Cyclades-Z family of multiport cards allows 2 (two) driver op
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) modes: polling and interrupt. In polling mode, the driver will check
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) the status of the Cyclades-Z ports every certain amount of time
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) (which is called polling cycle and is configurable). In interrupt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) mode, it will use an interrupt line (IRQ) in order to check the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) status of the Cyclades-Z ports. The default op mode is polling. If
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) config MOXA_INTELLIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) tristate "Moxa Intellio support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) depends on SERIAL_NONSTANDARD && (ISA || EISA || PCI)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) select FW_LOADER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) Say Y here if you have a Moxa Intellio multiport serial card.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) module will be called moxa.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) config MOXA_SMARTIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) tristate "Moxa SmartIO support v. 2.0"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) depends on SERIAL_NONSTANDARD && (PCI || EISA || ISA)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) Say Y here if you have a Moxa SmartIO multiport serial card and/or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) want to help develop a new version of this driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) This is upgraded (1.9.1) driver from original Moxa drivers with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) changes finally resulting in PCI probing.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) This driver can also be built as a module. The module will be called
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) mxser. If you want to do that, say M here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) config SYNCLINK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) tristate "Microgate SyncLink card support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) depends on SERIAL_NONSTANDARD && PCI && ISA_DMA_API
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) Provides support for the SyncLink ISA and PCI multiprotocol serial
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) adapters. These adapters support asynchronous and HDLC bit
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) synchronous communication up to 10Mbps (PCI adapter).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) This driver can only be built as a module ( = code which can be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) inserted in and removed from the running kernel whenever you want).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) The module will be called synclink. If you want to do that, say M
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) config SYNCLINKMP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) tristate "SyncLink Multiport support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) depends on SERIAL_NONSTANDARD && PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) Enable support for the SyncLink Multiport (2 or 4 ports)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) serial adapter, running asynchronous and HDLC communications up
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) to 2.048Mbps. Each ports is independently selectable for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) RS-232, V.35, RS-449, RS-530, and X.21
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) This driver may be built as a module ( = code which can be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) inserted in and removed from the running kernel whenever you want).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) The module will be called synclinkmp. If you want to do that, say M
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) config SYNCLINK_GT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) tristate "SyncLink GT/AC support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) depends on SERIAL_NONSTANDARD && PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) Support for SyncLink GT and SyncLink AC families of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) synchronous and asynchronous serial adapters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) manufactured by Microgate Systems, Ltd. (www.microgate.com)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) config ISI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) tristate "Multi-Tech multiport card support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) depends on SERIAL_NONSTANDARD && PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) select FW_LOADER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) This is a driver for the Multi-Tech cards which provide several
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) serial ports. The driver is experimental and can currently only be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) built as a module. The module will be called isicom.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305) If you want to do that, choose M here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) config N_HDLC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) tristate "HDLC line discipline support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) depends on SERIAL_NONSTANDARD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) Allows synchronous HDLC communications with tty device drivers that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) support synchronous HDLC such as the Microgate SyncLink adapter.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) This driver can be built as a module ( = code which can be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) inserted in and removed from the running kernel whenever you want).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) The module will be called n_hdlc. If you want to do that, say M
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) config PPC_EPAPR_HV_BYTECHAN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) bool "ePAPR hypervisor byte channel driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) depends on PPC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) select EPAPR_PARAVIRT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) This driver creates /dev entries for each ePAPR hypervisor byte
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) channel, thereby allowing applications to communicate with byte
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) channels as if they were serial ports.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328) config PPC_EARLY_DEBUG_EHV_BC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) bool "Early console (udbg) support for ePAPR hypervisors"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) depends on PPC_EPAPR_HV_BYTECHAN=y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) Select this option to enable early console (a.k.a. "udbg") support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) via an ePAPR byte channel. You also need to choose the byte channel
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) handle below.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336) config PPC_EARLY_DEBUG_EHV_BC_HANDLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) int "Byte channel handle for early console (udbg)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) depends on PPC_EARLY_DEBUG_EHV_BC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) default 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) If you want early console (udbg) output through a byte channel,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) specify the handle of the byte channel to use.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) For this to work, the byte channel driver must be compiled
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345) in-kernel, not as a module.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347) Note that only one early console driver can be enabled, so don't
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348) enable any others if you enable this one.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350) If the number you specify is not a valid byte channel handle, then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) there simply will be no early console output. This is true also
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352) if you don't boot under a hypervisor at all.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 354) config GOLDFISH_TTY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 355) tristate "Goldfish TTY Driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 356) depends on GOLDFISH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 357) select SERIAL_CORE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 358) select SERIAL_CORE_CONSOLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 359) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 360) Console and system TTY driver for the Goldfish virtual platform.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 361)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 362) config GOLDFISH_TTY_EARLY_CONSOLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 363) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 364) default y if GOLDFISH_TTY=y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 365) select SERIAL_EARLYCON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 366)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 367) config N_GSM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 368) tristate "GSM MUX line discipline support (EXPERIMENTAL)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 369) depends on NET
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 370) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 371) This line discipline provides support for the GSM MUX protocol and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 372) presents the mux as a set of 61 individual tty devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 373)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 374) config NOZOMI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 375) tristate "HSDPA Broadband Wireless Data Card - Globe Trotter"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 376) depends on PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 377) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 378) If you have a HSDPA driver Broadband Wireless Data Card -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 379) Globe Trotter PCMCIA card, say Y here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 380)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 381) To compile this driver as a module, choose M here, the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 382) will be called nozomi.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 383)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 384) config MIPS_EJTAG_FDC_TTY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 385) bool "MIPS EJTAG Fast Debug Channel TTY"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 386) depends on MIPS_CDMM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 387) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 388) This enables a TTY and console on the MIPS EJTAG Fast Debug Channels,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 389) if they are present. This can be useful when working with an EJTAG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 390) probe which supports it, to get console output and a login prompt via
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 391) EJTAG without needing to connect a serial cable.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 392)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 393) TTY devices are named e.g. ttyFDC3c2 (for FDC channel 2 of the FDC on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 394) CPU3).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 395)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 396) The console can be enabled with console=fdc1 (for FDC channel 1 on all
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 397) CPUs). Do not use the console unless there is a debug probe attached
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 398) to drain the FDC TX FIFO.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 399)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 400) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 401)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 402) config MIPS_EJTAG_FDC_EARLYCON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 403) bool "Early FDC console"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 404) depends on MIPS_EJTAG_FDC_TTY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 405) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 406) This registers a console on FDC channel 1 very early during boot (from
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 407) MIPS arch code). This is useful for bring-up and debugging early boot
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 408) issues.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 409)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 410) Do not enable unless there is a debug probe attached to drain the FDC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 411) TX FIFO.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 412)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 413) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 414)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 415) config MIPS_EJTAG_FDC_KGDB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 416) bool "Use KGDB over an FDC channel"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 417) depends on MIPS_EJTAG_FDC_TTY && KGDB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 418) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 419) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 420) This enables the use of KGDB over an FDC channel, allowing KGDB to be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 421) used remotely or when a serial port isn't available.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 422)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 423) config MIPS_EJTAG_FDC_KGDB_CHAN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 424) int "KGDB FDC channel"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 425) depends on MIPS_EJTAG_FDC_KGDB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 426) range 2 15
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 427) default 3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 428) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 429) FDC channel number to use for KGDB.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 430)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 431) config NULL_TTY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 432) tristate "NULL TTY driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 433) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 434) Say Y here if you want a NULL TTY which simply discards messages.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 435)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 436) This is useful to allow userspace applications which expect a console
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 437) device to work without modifications even when no console is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 438) available or desired.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 439)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 440) In order to use this driver, you should redirect the console to this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 441) TTY, or boot the kernel with console=ttynull.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 442)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 443) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 444)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 445) config TRACE_ROUTER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 446) tristate "Trace data router for MIPI P1149.7 cJTAG standard"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 447) depends on TRACE_SINK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 448) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 449) The trace router uses the Linux tty line discipline framework to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 450) route trace data coming from a tty port (say UART for example) to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 451) the trace sink line discipline driver and to another tty port (say
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 452) USB). This is part of a solution for the MIPI P1149.7, compact JTAG,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 453) standard, which is for debugging mobile devices. The PTI driver in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 454) drivers/misc/pti.c defines the majority of this MIPI solution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 455)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 456) You should select this driver if the target kernel is meant for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 457) a mobile device containing a modem. Then you will need to select
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 458) "Trace data sink for MIPI P1149.7 cJTAG standard" line discipline
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 459) driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 460)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 461) config TRACE_SINK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 462) tristate "Trace data sink for MIPI P1149.7 cJTAG standard"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 463) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 464) The trace sink uses the Linux line discipline framework to receive
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 465) trace data coming from the trace router line discipline driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 466) to a user-defined tty port target, like USB.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 467) This is to provide a way to extract modem trace data on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 468) devices that do not have a PTI HW module, or just need modem
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 469) trace data to come out of a different HW output port.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 470) This is part of a solution for the P1149.7, compact JTAG, standard.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 471)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 472) If you select this option, you need to select
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 473) "Trace data router for MIPI P1149.7 cJTAG standard".
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 474)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 475) config VCC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 476) tristate "Sun Virtual Console Concentrator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 477) depends on SUN_LDOMS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 478) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 479) Support for Sun logical domain consoles.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 480)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 481) source "drivers/tty/hvc/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 482)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 483) endif # TTY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 484)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 485) source "drivers/tty/serdev/Kconfig"