menuconfig UART_NS16550
	bool "NS16550 serial driver"
	default n
	select SERIAL_HAS_DRIVER
	help
	  This option enables the NS16550 serial driver.
	  This driver can be used for the serial hardware
	  available on x86 boards.

config UART_NS16550_PCI
	bool "Enable PCI Support"
	default n
	depends on PCI && UART_NS16550
	help
	  This enables NS16550 to probe for PCI-based serial devices.

	  This option enables the driver to auto-detect the device
	  configuration required to access those ports.

config UART_NS16550_DLF
	bool "Enable Divisor Latch Fraction (DLF) support"
	default n
	depends on UART_NS16550
	help
	  This enables support for divisor latch fraction (DLF).
	  It is used to limit frequency error.

	  Says n if you are not sure if hardware supports this.

config UART_NS16550_LINE_CTRL
	bool "Enable Serial Line Control for Apps"
	default n
	depends on UART_LINE_CTRL && UART_NS16550
	help
	  This enables the API for apps to control the serial line,
	  such as CTS and RTS.

	  Says n if not sure.

config UART_NS16550_DRV_CMD
	bool "Enable Driver Commands"
	default n
	depends on UART_DRV_CMD && UART_NS16550
	help
	  This enables the API for apps to send commands to driver.

	  Says n if not sure.

config UART_NS16750
	bool "Enable 64-bytes FIFO for UART 16750"
	default n
	depends on UART_NS16550
	help
	  This enables support for 64-bytes FIFO if UART controller is 16750.

# ---------- Port 0 ----------

menuconfig UART_NS16550_PORT_0
	bool "Enable NS16550 Port 0"
	default n
	depends on UART_NS16550
	help
	  This tells the driver to configure the UART port at boot, depending on
	  the additional configure options below.

config UART_NS16550_PORT_0_NAME
	string "Port 0 Device Name"
	default "UART_0"
	depends on UART_NS16550_PORT_0
	help
	  This is the device name for UART, and is included in the device
	  struct.

config UART_NS16550_PORT_0_IRQ_PRI
	int "Port 0 Interrupt Priority"
	default 0
	depends on UART_NS16550_PORT_0
	help
	  The interrupt priority for UART port.

config UART_NS16550_PORT_0_BAUD_RATE
	int "Port 0 Baud Rate"
	default 0
	depends on UART_NS16550_PORT_0
	help
	  The baud rate for UART port to be set to at boot.

	  Leave at 0 to skip initialization.

config UART_NS16550_PORT_0_OPTIONS
	int "Port 0 Options"
	default 0
	depends on UART_NS16550_PORT_0
	help
	  Options used for port initialization.

config UART_NS16550_PORT_0_DLF
	hex "Port 0 DLF value"
	default 0x0
	depends on UART_NS16550_PORT_0 && UART_NS16550_DLF
	help
	  Value for DLF register.

config UART_NS16550_PORT_0_PCI
	bool "Port 0 is PCI-based"
	default n
	depends on UART_NS16550_PCI && UART_NS16550_PORT_0
	help
	  Obtain port information from PCI.

# ---------- Port 1 ----------

menuconfig UART_NS16550_PORT_1
	bool "Enable NS16550 Port 1"
	default n
	depends on UART_NS16550
	help
	  This tells the driver to configure the UART port at boot, depending on
	  the additional configure options below.

config UART_NS16550_PORT_1_NAME
	string "Port 1 Device Name"
	default "UART_1"
	depends on UART_NS16550_PORT_1
	help
	  This is the device name for UART, and is included in the device
	  struct.

config UART_NS16550_PORT_1_IRQ_PRI
	int "Port 1 Interrupt Priority"
	default 0
	depends on UART_NS16550_PORT_1
	help
	  The interrupt priority for UART port.

config UART_NS16550_PORT_1_BAUD_RATE
	int "Port 1 Baud Rate"
	default 0
	depends on UART_NS16550_PORT_1
	help
	  The baud rate for UART port to be set to at boot.

	  Leave at 0 to skip initialization.

config UART_NS16550_PORT_1_OPTIONS
	int "Port 1 Options"
	default 0
	depends on UART_NS16550_PORT_1
	help
	  Options used for port initialization.

config UART_NS16550_PORT_1_DLF
	hex "Port 1 DLF value"
	default 0x0
	depends on UART_NS16550_PORT_1 && UART_NS16550_DLF
	help
	  Value for DLF register.
