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