# SPDX-License-Identifier: GPL-2.0-only
config SND_SOC_STARFIVE
	tristate "Audio support for Starfive"
	depends on COMPILE_TEST || SOC_STARFIVE
	help
	  Say Y or M if you want to add support for codecs attached to
	  the Starfive SoCs' Audio interfaces. You will also need to
	  select the audio interfaces to support below.

config SND_SOC_STARFIVE_PWMDAC
	tristate "Starfive PWMDAC module"
	depends on HAVE_CLK && SND_SOC_STARFIVE
	select SND_SOC_GENERIC_DMAENGINE_PCM
	help
	 Say Y or M if you want to add support for sf pwmdac driver.

config SND_SOC_STARFIVE_PWMDAC_TRANSMITTER
        tristate "Starfive PWMDAC transmitter dit codecs"
        depends on SND_SOC_STARFIVE_PWMDAC
        default SND_SOC_STARFIVE_PWMDAC
        help
         Say Y or M if you want to add support for sf pwmdac transmitter dit driver.

config SND_SOC_STARFIVE_PWMDAC_PCM
	bool "PCM PIO extension for PWMDAC"
	depends on SND_SOC_STARFIVE_PWMDAC
	help
	 Say Y or N if you want to add a custom ALSA extension that registers
	 a PCM and uses PIO to transfer data.
	 
config SND_SOC_STARFIVE_I2S
	tristate "Starfive I2S module"
	depends on HAVE_CLK && SND_SOC_STARFIVE
	select SND_SOC_GENERIC_DMAENGINE_PCM
	help
	  Say 'Y' or 'M' here if you are building for StarFive SoCs
	  platforms that contain i2s controller core like i2stx_4ch0
	  and i2srx_master.

config SND_SOC_STARFIVE_PDM
	tristate "Starfive PDM module"
	depends on HAVE_CLK && SND_SOC_STARFIVE
	select SND_SOC_STARFIVE_I2S
	select REGMAP_MMIO
	help
	 Say Y or M if you want to add support for sf pdm driver.
	 
config SND_SOC_STARFIVE_TDM
	tristate "Starfive TDM module"
	depends on HAVE_CLK && SND_SOC_STARFIVE
	select SND_SOC_GENERIC_DMAENGINE_PCM
	help
	 Say Y or M if you want to add support for sf tdm driver.

config SND_SOC_STARFIVE_SPDIF
	tristate "Starfive SPDIF module"
	depends on HAVE_CLK && SND_SOC_STARFIVE
	select SND_SOC_GENERIC_DMAENGINE_PCM
	select REGMAP_MMIO
	help
	  Say Y or M if you want to add support for codecs attached to the
	  I2S interface on VIC vic_starlight board. You will also need to select
	  the drivers for the rest of VIC audio subsystem.
	  
config SND_SOC_STARFIVE_SPDIF_PCM
	bool "PCM PIO extension for SPDIF"
	depends on SND_SOC_STARFIVE_SPDIF
	help
	 Say Y or N if you want to add a custom ALSA extension that registers
	 a PCM and uses PIO to transfer data. 

config SND_SOC_STARFIVE_SOF_TDM_DAI
	tristate "Generic STARFIVE TDM DAI support for Sound Open Firmware"
	depends on HAVE_CLK && SND_SOC_STARFIVE
	help
	  Say Y if you want to enable generic STARFIVE TDM DAI support to be used
	  with Sound Open Firmware. This module takes care of enabling
	  clocks, pinctrl for TDM DAIs. The rest of DAI
	  control is taken care of by SOF firmware.