# SPDX-License-Identifier: Apache-2.0
#
# Copyright (c) 2020 Linumiz
# Author: Parthiban Nallathambi <parthiban@linumiz.com>

config HAS_XMCLIB
	bool
	select HAS_CMSIS_CORE
	depends on SOC_FAMILY_INFINEON_XMC

if HAS_XMCLIB

config HAS_XMCLIB_UART
	bool
	help
	  Enable XMCLIB Universal asynchronous receiver transmitter (UART)

config HAS_XMCLIB_FLASH
	bool
	help
	  Enable XMCLIB Flash

config HAS_XMCLIB_ERU
	bool
	help
	  Enable XMCLIB Event Request Unit (ERU) for GPIO interrupt support

config HAS_XMCLIB_VADC
	bool
	help
	  Enable XMCLIB VADC

config HAS_XMCLIB_DMA
	bool
	help
	  Enable XMCLIB DMA

config HAS_XMCLIB_SPI
	bool
	help
	  Enable XMCLIB SPI

config HAS_XMCLIB_I2C
	bool
	help
	  Enable XMCLIB I2C

config HAS_XMCLIB_CCU
	bool
	help
	  Enable XMCLIB CCU4/CCU8

config HAS_XMCLIB_WDT
	bool
	help
	  Enable XMCLIB WDT

config HAS_XMCLIB_ETH
	bool
	help
	  Enable XMCLIB Ethernet MAC

config HAS_XMCLIB_CAN
	bool
	help
	  Enable XMCLIB CAN

endif # HAS_XMCLIB
