# Kconfig.beetle - ARM CMSDK APB SoC UART configuration options
#
#
# Copyright (c) 2016 Linaro Limited
#
# SPDX-License-Identifier: Apache-2.0
#

menuconfig UART_CMSDK_APB
	bool "ARM CMSDK APB UART driver"
	select SERIAL_HAS_DRIVER
	select SERIAL_SUPPORT_INTERRUPT
	depends on SOC_FAMILY_ARM
	help
	  This option enables the UART driver for ARM CMSDK APB UART.

if UART_CMSDK_APB

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

config UART_CMSDK_APB_PORT0
	bool "Enable driver for UART 0"
	help
	  Build the driver to utilize UART controller Port 0.

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

config UART_CMSDK_APB_PORT1
	bool "Enable driver for UART 1"
	help
	  Build the driver to utilize UART controller Port 1.

# ---------- Port 2 ----------

config UART_CMSDK_APB_PORT2
	bool "Enable driver for UART 2"
	help
	  Build the driver to utilize UART controller Port 2.

# ---------- Port 3 ----------

config UART_CMSDK_APB_PORT3
	bool "Enable driver for UART 3"
	help
	  Build the driver to utilize UART controller Port 3.

# ---------- Port 4 ----------

config UART_CMSDK_APB_PORT4
	bool "Enable driver for UART 4"
	help
	  Build the driver to utilize UART controller Port 4.

endif # UART_CMSDK_APB
