#
# Serial device configuration
#
# $Id: Config.in,v 1.15 2002/07/06 17:16:24 rmk Exp $
#

menu "Serial drivers"

#
# The new 8250/16550 serial drivers
config SERIAL_8250
	tristate "8250/16550 and compatible serial support (EXPERIMENTAL)"
	depends on EXPERIMENTAL
	---help---
	  This selects whether you want to include the driver for the standard
	  serial ports.  The standard answer is Y.  People who might say N
	  here are those that are setting up dedicated Ethernet WWW/FTP
	  servers, or users that have one of the various bus mice instead of a
	  serial mouse and don't intend to use their machine's standard serial
	  port for anything.  (Note that the Cyclades and Stallion multi
	  serial port drivers do not need this driver built in for them to
	  work.)

	  If you want to compile this driver as a module, say M here and read
	  <file:Documentation/modules.txt>.  The module will be called
	  serial.o.
	  [WARNING: Do not compile this driver as a module if you are using
	  non-standard serial ports, since the configuration information will
	  be lost when the driver is unloaded.  This limitation may be lifted
	  in the future.]

	  BTW1: If you have a mouseman serial mouse which is not recognized by
	  the X window system, try running gpm first.

	  BTW2: If you intend to use a software modem (also called Winmodem)
	  under Linux, forget it.  These modems are crippled and require
	  proprietary drivers which are only available under Windows.

	  Most people will say Y or M here, so that they can use serial mice,
	  modems and similar devices connecting to the standard serial ports.

config SERIAL_8250_CONSOLE
	bool "Console on 8250/16550 and compatible serial port (EXPERIMENTAL)"
	depends on SERIAL_8250=y
	---help---
	  If you say Y here, it will be possible to use a serial port as the
	  system console (the system console is the device which receives all
	  kernel messages and warnings and which allows logins in single user
	  mode). This could be useful if some terminal or printer is connected
	  to that serial port.

	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttyS1". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

	  If you don't have a VGA card installed and you say Y here, the
	  kernel will automatically use the first serial line, /dev/ttyS0, as
	  system console.

	  If unsure, say N.

config SERIAL_8250_CS
	tristate "8250/16550 PCMCIA device support"
	depends on PCMCIA && SERIAL_8250
	---help---
	  Say Y here to enable support for 16-bit PCMCIA serial devices,
	  including serial port cards, modems, and the modem functions of
	  multi-function Ethernet/modem cards. (PCMCIA- or PC-cards are
	  credit-card size devices often used with laptops.)

	  This driver is also available as a module ( = code which can be
	  inserted in and removed from the running kernel whenever you want).
	  The module will be called serial_cs.o.  If you want to compile it as
	  a module, say M here and read <file:Documentation/modules.txt>.
	  If unsure, say N.

config SERIAL_8250_EXTENDED
	bool "Extended 8250/16550 serial driver options"
	depends on SERIAL_8250
	help
	  If you wish to use any non-standard features of the standard "dumb"
	  driver, say Y here. This includes HUB6 support, shared serial
	  interrupts, special multiport support, support for more than the
	  four COM 1/2/3/4 boards, etc.

	  Note that the answer to this question won't directly affect the
	  kernel: saying N will just cause the configurator to skip all
	  the questions about serial driver options. If unsure, say N.

config SERIAL_8250_MANY_PORTS
	bool "Support more than 4 serial ports"
	depends on SERIAL_8250_EXTENDED
	help
	  Say Y here if you have dumb serial boards other than the four
	  standard COM 1/2/3/4 ports. This may happen if you have an AST
	  FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available
	  from <http://www.linuxdoc.org/docs.html#howto>), or other custom
	  serial port hardware which acts similar to standard serial port
	  hardware. If you only use the standard COM 1/2/3/4 ports, you can
	  say N here to save some memory. You can also say Y if you have an
	  "intelligent" multiport card such as Cyclades, Digiboards, etc.

config SERIAL_8250_SHARE_IRQ
	bool "Support for sharing serial interrupts"
	depends on SERIAL_8250_EXTENDED
	help
	  Some serial boards have hardware support which allows multiple dumb
	  serial ports on the same board to share a single IRQ. To enable
	  support for this in the serial driver, say Y here.

config SERIAL_8250_DETECT_IRQ
	bool "Autodetect IRQ on standard ports (unsafe)"
	depends on SERIAL_8250_EXTENDED
	help
	  Say Y here if you want the kernel to try to guess which IRQ
	  to use for your serial port.

	  This is considered unsafe; it is far better to configure the IRQ in
	  a boot script using the setserial command.

	  If unsure, say N.

config SERIAL_8250_MULTIPORT
	bool "Support special multiport boards"
	depends on SERIAL_8250_EXTENDED
	help
	  Some multiport serial ports have special ports which are used to
	  signal when there are any serial ports on the board which need
	  servicing. Say Y here to enable the serial driver to take advantage
	  of those special I/O ports.

config SERIAL_8250_RSA
	bool "Support RSA serial ports"
	depends on SERIAL_8250_EXTENDED
	help
	  ::: To be written :::

comment "Non-8250 serial port support"

config SERIAL_8250_ACORN
	tristate "Acorn expansion card serial port support"
	depends on ARM && ARCH_ACORN && SERIAL_8250
	help
	  If you have an Atomwide Serial card or Serial Port card for an Acorn
	  system, say Y to this option.  The driver can handle 1, 2, or 3 port
	  cards.  If unsure, say N.

config SERIAL_ANAKIN
	bool "Anakin serial port support"
	depends on ARM && ARCH_ANAKIN
	help
	  ::: To be written :::

config SERIAL_ANAKIN_CONSOLE
	bool "Console on Anakin serial port"
	depends on SERIAL_ANAKIN
	help
	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttyAN0". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

config ANAKIN_DEFAULT_BAUDRATE
	int "Default Anakin serial baudrate"
	depends on SERIAL_ANAKIN
	default "9600"
	help
	  ::: To be written :::

config SERIAL_AMBA
	tristate "ARM AMBA serial port support"
	depends on ARM && ARCH_INTEGRATOR
	help
	  This selects the ARM(R) AMBA(R) PrimeCell UART.  If you have an
	  Integrator platform, say Y or M here.

	  If unsure, say N.

config SERIAL_AMBA_CONSOLE
	bool "Support for console on AMBA serial port"
	depends on SERIAL_AMBA=y
	---help---
	  Say Y here if you wish to use an AMBA PrimeCell UART as the system
	  console (the system console is the device which receives all kernel
	  messages and warnings and which allows logins in single user mode).

	  Even if you say Y here, the currently visible framebuffer console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttyAM0". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

config SERIAL_INTEGRATOR
	bool
	depends on SERIAL_AMBA=y
	default y

config SERIAL_CLPS711X
	tristate "CLPS711X serial port support"
	depends on ARM && ARCH_CLPS711X
	help
	  ::: To be written :::

config SERIAL_CLPS711X_CONSOLE
	bool "Support for console on CLPS711X serial port"
	depends on SERIAL_CLPS711X=y
	help
	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttyCL1". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

config SERIAL_CLPS711X_OLD_NAME
	bool "Use the old 2.4 names for CLPS711X serial port"
	depends on SERIAL_CLPS711X=y
	help
	  ::: To be written :::

config SERIAL_21285
	tristate "DC21285 serial port support"
	depends on ARM && FOOTBRIDGE
	help
	  If you have a machine based on a 21285 (Footbridge) StrongARM(R)/
	  PCI bridge you can enable its onboard serial port by enabling this
	  option.

config SERIAL_21285_OLD
	bool "Use /dev/ttyS0 device (OBSOLETE)"
	depends on SERIAL_21285=y && OBSOLETE
	help
	  Use the old /dev/ttyS name, major 4 minor 64.  This is obsolete
	  and will be removed during later 2.5 development.

config SERIAL_21285_CONSOLE
	bool "Console on DC21285 serial port"
	depends on SERIAL_21285=y
	help
	  If you have enabled the serial port on the 21285 footbridge you can
	  make it the console by answering Y to this option.

	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttyFB". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

config SERIAL_UART00
	bool "Excalibur serial port (uart00) support"
	depends on ARM && ARCH_CAMELOT
	help
	  Say Y here if you want to use the hard logic uart on Excalibur. This
	  driver also supports soft logic implentations of this uart core.

config SERIAL_UART00_CONSOLE
	bool "Support for console on Excalibur serial port"
	depends on SERIAL_UART00
	help
	  Say Y here if you want to support a serial console on an Excalibur
	  hard logic uart or uart00 IP core.

	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttyS1". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

config SERIAL_SA1100
	bool "SA1100 serial port support"
	depends on ARM && ARCH_SA1100
	help
	  If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you
	  can enable its onboard serial port by enabling this option.
	  Please read <file:Documentation/arm/SA1100/serial_UART> for further
	  info.

config SERIAL_SA1100_CONSOLE
	bool "Console on SA1100 serial port"
	depends on SERIAL_SA1100
	help
	  If you have enabled the serial port on the SA1100/SA1110 StrongARM
	  CPU you can make it the console by answering Y to this option.

	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttySA0". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

config SERIAL_SUNCORE
	bool
	depends on SPARC32 || SPARC64
	default y

config SERIAL_SUNZILOG
	tristate "Sun Zilog8530 serial support"
	depends on SPARC32 || SPARC64
	help
	  This driver supports the Zilog8530 serial ports found on many Sparc
	  systems.  Say Y or M if you want to be able to these serial ports.

config SERIAL_SUNSU
	tristate "Sun SU serial support"
	depends on (SPARC32 || SPARC64) && PCI
	help
	  This driver supports the 8250 serial ports that run the keyboard and
	  mouse on (PCI) UltraSPARC systems.  Say Y or M if you want to be able
	  to these serial ports.

config SERIAL_SUNSAB
	tristate "Sun Siemens SAB82532 serial support"
	depends on (SPARC32 || SPARC64) && PCI
	help
	  This driver supports the Siemens SAB82532 DUSCC serial ports on newer
	  (PCI) UltraSPARC systems.  Say Y or M if you want to be able to these
	  serial ports.

config SERIAL_CORE
	tristate
	default m if SERIAL_AMBA!=y && SERIAL_CLPS711X!=y && SERIAL_21285!=y && !SERIAL_SA1100 && !SERIAL_ANAKIN && !SERIAL_UART00 && SERIAL_8250!=y && !SERIAL_ROCKETPORT && !SERIAL_SUNCORE && (SERIAL_AMBA=m || SERIAL_CLPS711X=m || SERIAL_21285=m || SERIAL_8250=m)
	default y if SERIAL_AMBA=y || SERIAL_CLPS711X=y || SERIAL_21285=y || SERIAL_SA1100 || SERIAL_ANAKIN || SERIAL_UART00 || SERIAL_8250=y || SERIAL_ROCKETPORT || SERIAL_SUNCORE

config SERIAL_CORE_CONSOLE
	bool
	depends on SERIAL_AMBA_CONSOLE || SERIAL_CLPS711X_CONSOLE || SERIAL_21285_CONSOLE || SERIAL_SA1100_CONSOLE || SERIAL_ANAKIN_CONSOLE || SERIAL_UART00_CONSOLE || SERIAL_8250_CONSOLE || SERIAL_SUNCORE
	default y

endmenu

