# Copyright 2023 NXP
# SPDX-License-Identifier: Apache-2.0

config DAI_NXP_SAI
	bool "NXP Synchronous Audio Interface (SAI) driver"
	default y
	depends on DT_HAS_NXP_DAI_SAI_ENABLED
	select PINCTRL
	help
		Select this to enable NXP SAI driver.

if DAI_NXP_SAI

config SAI_HAS_MCLK_CONFIG_OPTION
	bool "Set if SAI has MCLK configuration options"
	default n
	help
		Select this if the SAI IP allows configuration
		of the master clock. Master clock configuration
		refers to enabling/disabling the master clock,
		setting the signal as input or output or dividing
		the master clock output.

config SAI_FIFO_WORD_SIZE
	int "Size (in bytes) of a FIFO word"
	default 4
	help
		Use this to set the size (in bytes) of a SAI
		FIFO word.

config SAI_IMX93_ERRATA_051421
	bool "Set if your SAI IP version is affected by i.MX93's ERRATA 051421"
	default n
	help
		Select this if your SAI ip version is affected by
		i.MX93's ERRATA 051421. The errata states that if
		the SAI is FSYNC/BCLK master, one of the directions
		is SYNC with the other, and the ASYNC direction has
		the BYP bit toggled, the SYNC direction's BCLK won't
		be generated properly.

endif # DAI_NXP_SAI
