# Xilinx UART configuration

# Copyright (c) 2018 Xilinx Inc.
# SPDX-License-Identifier: Apache-2.0

config UART_XLNX_PS
	bool "Xilinx Zynq 7000/ZynqMP serial driver"
	depends on SOC_XILINX_ZYNQMP || SOC_FAMILY_XILINX_ZYNQ7000
	select SERIAL_HAS_DRIVER
	select SERIAL_SUPPORT_INTERRUPT
	help
	  This option enables the UART driver for Xilinx MPSoC platforms.

config UART_XLNX_UARTLITE
	bool "Xilinx UART Lite"
	select SERIAL_HAS_DRIVER
	select SERIAL_SUPPORT_INTERRUPT
	help
	  This option enables the UART driver for Xilinx UART Lite IP.
