# Serial driver configuration options

# Copyright (c) 2014-2015 Wind River Systems, Inc.
# SPDX-License-Identifier: Apache-2.0

menuconfig SERIAL
	bool "Serial Drivers"
	help
	  Enable options for serial drivers.

if SERIAL

comment "Capabilities"

config SERIAL_HAS_DRIVER
	bool
	help
	  This is an option to be enabled by individual serial driver
	  to signal that there is a serial driver. This is being used
	  by other drivers which are dependent on serial.

config SERIAL_SUPPORT_ASYNC
	bool
	help
	  This is an option to be enabled by individual serial driver
	  to signal that the driver and hardware supports async operation.

config SERIAL_SUPPORT_INTERRUPT
	bool
	help
	  This is an option to be enabled by individual serial driver
	  to signal that the driver and hardware supports interrupts.

config UART_USE_RUNTIME_CONFIGURE
	bool "Enable runtime configuration for UART controllers"
	default y
	help
	  Enable runtime configuration of UART controllers.
	  This allows applications to call uart_configure() to
	  configure the UART controllers at runtime, and calling
	  uart_config_get() to retrieve configuration. If this is
	  disabled, UART controllers rely on UART driver's
	  initialization function to properly configure
	  the controller.

	  Say y if unsure. Disable this to reduce footprint for
	  applications that do not require runtime UART configuration.

config UART_ASYNC_API
	bool "Enable new asynchronous UART API [EXPERIMENTAL]"
	depends on SERIAL_SUPPORT_ASYNC
	help
	  This option enables new asynchronous UART API.

config UART_INTERRUPT_DRIVEN
	bool "Enable UART Interrupt support"
	depends on SERIAL_SUPPORT_INTERRUPT
	help
	  This option enables interrupt support for UART allowing console
	  input and other UART based drivers.

config UART_LINE_CTRL
	bool "Enable Serial Line Control API"
	help
	  This enables the API for apps to control the serial line,
	  such as baud rate, CTS and RTS.

	  Implementation is up to individual driver.

	  Says no if not sure.

config UART_DRV_CMD
	bool "Enable driver commands API"
	help
	  This enables the API to send extra commands to drivers.
	  This allows drivers to expose hardware specific functions.

	  Says no if not sure.

comment "Serial Drivers"

source "drivers/serial/Kconfig.acts"

source "drivers/serial/Kconfig.rtt"

endif # SERIAL