# Copyright (c) 2024 EXALT Technologies.
#
# SPDX-License-Identifier: Apache-2.0

module = I3C_STM32
module-str = i3c_stm32

source "subsys/logging/Kconfig.template.log_config"
config I3C_STM32
	bool "STM32 I3C driver support"
	depends on DT_HAS_ST_STM32_I3C_ENABLED
	select I3C_IBI_WORKQUEUE if I3C_USE_IBI
	select PINCTRL
	default y
	help
	  Enable support for I3C on STM32 microcontrollers.

if I3C_STM32

config I3C_STM32_DMA
	bool "STM32 I3C DMA driver support"
	select DMA
	help
	  Enables support for I3C DMA mode on STM32 microcontrollers.

config I3C_STM32_DMA_FIFO_HEAP_SIZE
	int "Status FIFO and control FIFO heap"
	depends on I3C_STM32_DMA
	default 2048
	help
	  Configures the heap size for dynamically allocating the regions for
	  storing status FIFO and control FIFO words which will be used by the DMA.
	  This value depends on the maximum number of messages that will be sent
	  during a single transfer. 2KB guarantees enough heap size for sending 256
	  messages on a single transfer.

endif # I3C_STM32
