# SPDX-License-Identifier: GPL-2.0-only 
 | 
config SND_SOC_TEGRA 
 | 
    tristate "SoC Audio for the Tegra System-on-Chip" 
 | 
    depends on (ARCH_TEGRA && TEGRA20_APB_DMA) || COMPILE_TEST 
 | 
    depends on COMMON_CLK 
 | 
    depends on RESET_CONTROLLER 
 | 
    select REGMAP_MMIO 
 | 
    select SND_SOC_GENERIC_DMAENGINE_PCM 
 | 
    help 
 | 
      Say Y or M here if you want support for SoC audio on Tegra. 
 | 
  
 | 
config SND_SOC_TEGRA20_AC97 
 | 
    tristate "Tegra20 AC97 interface" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    select SND_SOC_AC97_BUS 
 | 
    select SND_SOC_TEGRA20_DAS 
 | 
    help 
 | 
      Say Y or M if you want to add support for codecs attached to the 
 | 
      Tegra20 AC97 interface. You will also need to select the individual 
 | 
      machine drivers to support below. 
 | 
  
 | 
config SND_SOC_TEGRA20_DAS 
 | 
    tristate "Tegra20 DAS module" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    help 
 | 
      Say Y or M if you want to add support for the Tegra20 DAS module. 
 | 
      You will also need to select the individual machine drivers to 
 | 
      support below. 
 | 
  
 | 
config SND_SOC_TEGRA20_I2S 
 | 
    tristate "Tegra20 I2S interface" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    select SND_SOC_TEGRA20_DAS 
 | 
    help 
 | 
      Say Y or M if you want to add support for codecs attached to the 
 | 
      Tegra20 I2S interface. You will also need to select the individual 
 | 
      machine drivers to support below. 
 | 
  
 | 
config SND_SOC_TEGRA20_SPDIF 
 | 
    tristate "Tegra20 SPDIF interface" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    default m 
 | 
    help 
 | 
      Say Y or M if you want to add support for the Tegra20 SPDIF interface. 
 | 
      You will also need to select the individual machine drivers to support 
 | 
      below. 
 | 
  
 | 
config SND_SOC_TEGRA30_AHUB 
 | 
    tristate "Tegra30 AHUB module" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    help 
 | 
      Say Y or M if you want to add support for the Tegra30 AHUB module. 
 | 
      You will also need to select the individual machine drivers to 
 | 
      support below. 
 | 
  
 | 
config SND_SOC_TEGRA30_I2S 
 | 
    tristate "Tegra30 I2S interface" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    select SND_SOC_TEGRA30_AHUB 
 | 
    help 
 | 
      Say Y or M if you want to add support for codecs attached to the 
 | 
      Tegra30 I2S interface. You will also need to select the individual 
 | 
      machine drivers to support below. 
 | 
  
 | 
config SND_SOC_TEGRA210_AHUB 
 | 
    tristate "Tegra210 AHUB module" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    help 
 | 
      Config to enable Audio Hub (AHUB) module, which comprises of a 
 | 
      switch called Audio Crossbar (AXBAR) used to configure or modify 
 | 
      the audio routing path between various HW accelerators present in 
 | 
      AHUB. 
 | 
      Say Y or M if you want to add support for Tegra210 AHUB module. 
 | 
  
 | 
config SND_SOC_TEGRA210_DMIC 
 | 
    tristate "Tegra210 DMIC module" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    help 
 | 
      Config to enable the Digital MIC (DMIC) controller which is used 
 | 
      to interface with Pulse Density Modulation (PDM) input devices. 
 | 
      The DMIC controller implements a converter to convert PDM signals 
 | 
      to Pulse Code Modulation (PCM) signals. This can be viewed as a 
 | 
      PDM receiver. 
 | 
      Say Y or M if you want to add support for Tegra210 DMIC module. 
 | 
  
 | 
config SND_SOC_TEGRA210_I2S 
 | 
    tristate "Tegra210 I2S module" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    help 
 | 
      Config to enable the Inter-IC Sound (I2S) Controller which 
 | 
      implements full-duplex and bidirectional and single direction 
 | 
      point-to-point serial interfaces. It can interface with I2S 
 | 
      compatible devices. 
 | 
      Say Y or M if you want to add support for Tegra210 I2S module. 
 | 
  
 | 
config SND_SOC_TEGRA186_DSPK 
 | 
    tristate "Tegra186 DSPK module" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    help 
 | 
      Config to enable the Digital Speaker Controller (DSPK) which 
 | 
      converts the multi-bit Pulse Code Modulation (PCM) audio input to 
 | 
      oversampled 1-bit Pulse Density Modulation (PDM) output. From the 
 | 
      signal flow perspective DSPK can be viewed as a PDM transmitter 
 | 
      that up-samples the input to the desired sampling rate by 
 | 
      interpolation and then converts the oversampled PCM input to 
 | 
      the desired 1-bit output via Delta Sigma Modulation (DSM). 
 | 
      Say Y or M if you want to add support for Tegra186 DSPK module. 
 | 
  
 | 
config SND_SOC_TEGRA210_ADMAIF 
 | 
    tristate "Tegra210 ADMAIF module" 
 | 
    depends on SND_SOC_TEGRA 
 | 
    help 
 | 
      Config to enable ADMAIF which is the interface between ADMA and 
 | 
      Audio Hub (AHUB). Each ADMA channel that sends/receives data to/ 
 | 
      from AHUB must interface through an ADMAIF channel. ADMA channel 
 | 
      sending data to AHUB pairs with an ADMAIF Tx channel, where as 
 | 
      ADMA channel receiving data from AHUB pairs with an ADMAIF Rx 
 | 
      channel. Buffer size is configurable for each ADMAIIF channel. 
 | 
      Say Y or M if you want to add support for Tegra210 ADMAIF module. 
 | 
  
 | 
config SND_SOC_TEGRA_RT5640 
 | 
    tristate "SoC Audio support for Tegra boards using an RT5640 codec" 
 | 
    depends on SND_SOC_TEGRA && I2C && GPIOLIB 
 | 
    select SND_SOC_RT5640 
 | 
    help 
 | 
      Say Y or M here if you want to add support for SoC audio on Tegra 
 | 
      boards using the RT5640 codec, such as Dalmore. 
 | 
  
 | 
config SND_SOC_TEGRA_WM8753 
 | 
    tristate "SoC Audio support for Tegra boards using a WM8753 codec" 
 | 
    depends on SND_SOC_TEGRA && I2C && GPIOLIB 
 | 
    select SND_SOC_WM8753 
 | 
    help 
 | 
      Say Y or M here if you want to add support for SoC audio on Tegra 
 | 
      boards using the WM8753 codec, such as Whistler. 
 | 
  
 | 
config SND_SOC_TEGRA_WM8903 
 | 
    tristate "SoC Audio support for Tegra boards using a WM8903 codec" 
 | 
    depends on SND_SOC_TEGRA && I2C && GPIOLIB 
 | 
    select SND_SOC_WM8903 
 | 
    help 
 | 
      Say Y or M here if you want to add support for SoC audio on Tegra 
 | 
      boards using the WM8093 codec. Currently, the supported boards are 
 | 
      Harmony, Ventana, Seaboard, Kaen, and Aebl. 
 | 
  
 | 
config SND_SOC_TEGRA_WM9712 
 | 
    tristate "SoC Audio support for Tegra boards using a WM9712 codec" 
 | 
    depends on SND_SOC_TEGRA && GPIOLIB 
 | 
    select SND_SOC_TEGRA20_AC97 
 | 
    select SND_SOC_WM9712 
 | 
    help 
 | 
      Say Y or M here if you want to add support for SoC audio on Tegra 
 | 
      boards using the WM9712 (or compatible) codec. 
 | 
  
 | 
config SND_SOC_TEGRA_TRIMSLICE 
 | 
    tristate "SoC Audio support for TrimSlice board" 
 | 
    depends on SND_SOC_TEGRA && I2C 
 | 
    select SND_SOC_TLV320AIC23_I2C 
 | 
    help 
 | 
      Say Y or M here if you want to add support for SoC audio on the 
 | 
      TrimSlice platform. 
 | 
  
 | 
config SND_SOC_TEGRA_ALC5632 
 | 
    tristate "SoC Audio support for Tegra boards using an ALC5632 codec" 
 | 
    depends on SND_SOC_TEGRA && I2C && GPIOLIB 
 | 
    select SND_SOC_ALC5632 
 | 
    help 
 | 
      Say Y or M here if you want to add support for SoC audio on the 
 | 
      Toshiba AC100 netbook. 
 | 
  
 | 
config SND_SOC_TEGRA_MAX98090 
 | 
    tristate "SoC Audio support for Tegra boards using a MAX98090 codec" 
 | 
    depends on SND_SOC_TEGRA && I2C && GPIOLIB 
 | 
    select SND_SOC_MAX98090 
 | 
    help 
 | 
      Say Y or M here if you want to add support for SoC audio on Tegra 
 | 
      boards using the MAX98090 codec, such as Venice2. 
 | 
  
 | 
config SND_SOC_TEGRA_RT5677 
 | 
    tristate "SoC Audio support for Tegra boards using a RT5677 codec" 
 | 
    depends on SND_SOC_TEGRA && I2C && GPIOLIB 
 | 
    select SND_SOC_RT5677 
 | 
    help 
 | 
      Say Y or M here if you want to add support for SoC audio on Tegra 
 | 
      boards using the RT5677 codec, such as Ryu. 
 | 
  
 | 
config SND_SOC_TEGRA_SGTL5000 
 | 
    tristate "SoC Audio support for Tegra boards using a SGTL5000 codec" 
 | 
    depends on SND_SOC_TEGRA && I2C && GPIOLIB 
 | 
    select SND_SOC_SGTL5000 
 | 
    help 
 | 
      Say Y or M here if you want to add support for SoC audio on Tegra 
 | 
      boards using the SGTL5000 codec, such as Apalis T30, Apalis TK1 or 
 | 
      Colibri T30. 
 |