sound/soc/cirrus/Kconfig

Source file repositories/reference/linux-study-clean/sound/soc/cirrus/Kconfig

File Facts

System
Linux kernel
Corpus path
sound/soc/cirrus/Kconfig
Extension
[no extension]
Size
1129 bytes
Lines
37
Domain
Driver Families
Bucket
sound/soc
Inferred role
Driver Families: build/configuration rule
Status
atlas-only

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: GPL-2.0-only
menu "Cirrus Logic"

config SND_EP93XX_SOC
	tristate "SoC Audio support for the Cirrus Logic EP93xx series"
	depends on ARCH_EP93XX || COMPILE_TEST
	select SND_SOC_GENERIC_DMAENGINE_PCM
	help
	  Say Y or M if you want to add support for codecs attached to
	  the EP93xx I2S or AC97 interfaces.

config SND_EP93XX_SOC_I2S
	tristate "I2S controller support for the Cirrus Logic EP93xx series"
	depends on SND_EP93XX_SOC
	help
	  Say Y or M if you want to add support for codecs attached to
	  the EP93xx I2S interface.

if SND_EP93XX_SOC_I2S

config SND_EP93XX_SOC_I2S_WATCHDOG
	bool "IRQ based underflow watchdog workaround"
	default y
	help
	  I2S controller on EP93xx seems to have undocumented HW issue.
	  Underflow of internal I2S controller FIFO could confuse the
	  state machine and the whole stream can be shifted by one byte
	  until I2S is disabled. This option enables IRQ based watchdog
	  which disables and re-enables I2S in case of underflow and
	  fills FIFO with zeroes.

	  If you are unsure how to answer this question, answer Y.

endif # if SND_EP93XX_SOC_I2S

endmenu

Annotation

Implementation Notes