# SPDX-License-Identifier: Apache-2.0


config UART_ESP32
	bool "ESP32 UART driver"
	default y
	depends on DT_HAS_ESPRESSIF_ESP32_UART_ENABLED
	select SERIAL_HAS_DRIVER
	select SERIAL_SUPPORT_INTERRUPT
	select SERIAL_SUPPORT_ASYNC if (SOC_SERIES_ESP32C3 || SOC_SERIES_ESP32C6 || SOC_SERIES_ESP32S3)
	select GPIO_ESP32
	help
	  Enable the ESP32 UART.

config SERIAL_ESP32_USB
	bool "ESP32 built-in USB serial driver"
	default y
	depends on DT_HAS_ESPRESSIF_ESP32_USB_SERIAL_ENABLED
	select SERIAL_HAS_DRIVER
	select SERIAL_SUPPORT_INTERRUPT
	help
	  Enable the built-in USB serial interface present in some Espressif
	  MCUs like ESP32-Cx.

	  This driver uses the peripheral called USB Serial/JTAG Controller
	  (USB_SERIAL_JTAG), which acts as a CDC-ACM interface towards the
	  USB host. The USB stack is built into the chip and accessed
	  by the firmware through a simplified API similar to a "normal"
	  UART peripheral.
