1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 22ba9471bSStephen Warrenconfig SND_SOC_TEGRA 38b75d714SStephen Warren tristate "SoC Audio for the Tegra System-on-Chip" 422abf843SMark Brown depends on (ARCH_TEGRA && TEGRA20_APB_DMA) || COMPILE_TEST 55185e0acSStephen Warren depends on COMMON_CLK 65185e0acSStephen Warren depends on RESET_CONTROLLER 7d19e779bSStephen Warren select REGMAP_MMIO 82086d078SMark Brown select SND_SOC_GENERIC_DMAENGINE_PCM 98b75d714SStephen Warren help 108b75d714SStephen Warren Say Y or M here if you want support for SoC audio on Tegra. 118b75d714SStephen Warren 12609dad9bSLucas Stachconfig SND_SOC_TEGRA20_AC97 133bcfe80fSPaul Kocialkowski tristate "Tegra20 AC97 interface" 143bcfe80fSPaul Kocialkowski depends on SND_SOC_TEGRA 15609dad9bSLucas Stach select SND_SOC_AC97_BUS 16609dad9bSLucas Stach select SND_SOC_TEGRA20_DAS 17609dad9bSLucas Stach help 18609dad9bSLucas Stach Say Y or M if you want to add support for codecs attached to the 19609dad9bSLucas Stach Tegra20 AC97 interface. You will also need to select the individual 20609dad9bSLucas Stach machine drivers to support below. 21609dad9bSLucas Stach 22896637acSStephen Warrenconfig SND_SOC_TEGRA20_DAS 233bcfe80fSPaul Kocialkowski tristate "Tegra20 DAS module" 243bcfe80fSPaul Kocialkowski depends on SND_SOC_TEGRA 25d9bba496SStephen Warren help 26896637acSStephen Warren Say Y or M if you want to add support for the Tegra20 DAS module. 27d9bba496SStephen Warren You will also need to select the individual machine drivers to 28d9bba496SStephen Warren support below. 29d9bba496SStephen Warren 30896637acSStephen Warrenconfig SND_SOC_TEGRA20_I2S 313bcfe80fSPaul Kocialkowski tristate "Tegra20 I2S interface" 323bcfe80fSPaul Kocialkowski depends on SND_SOC_TEGRA 33896637acSStephen Warren select SND_SOC_TEGRA20_DAS 348b75d714SStephen Warren help 358b75d714SStephen Warren Say Y or M if you want to add support for codecs attached to the 36896637acSStephen Warren Tegra20 I2S interface. You will also need to select the individual 378b75d714SStephen Warren machine drivers to support below. 388b75d714SStephen Warren 39896637acSStephen Warrenconfig SND_SOC_TEGRA20_SPDIF 403bcfe80fSPaul Kocialkowski tristate "Tegra20 SPDIF interface" 413bcfe80fSPaul Kocialkowski depends on SND_SOC_TEGRA 42774fec33SStephen Warren help 43896637acSStephen Warren Say Y or M if you want to add support for the Tegra20 SPDIF interface. 44774fec33SStephen Warren You will also need to select the individual machine drivers to support 45774fec33SStephen Warren below. 46774fec33SStephen Warren 47cdc04fd1SStephen Warrenconfig SND_SOC_TEGRA30_AHUB 483bcfe80fSPaul Kocialkowski tristate "Tegra30 AHUB module" 493bcfe80fSPaul Kocialkowski depends on SND_SOC_TEGRA 50cdc04fd1SStephen Warren help 513bcfe80fSPaul Kocialkowski Say Y or M if you want to add support for the Tegra30 AHUB module. 52cdc04fd1SStephen Warren You will also need to select the individual machine drivers to 53cdc04fd1SStephen Warren support below. 54cdc04fd1SStephen Warren 55cdc04fd1SStephen Warrenconfig SND_SOC_TEGRA30_I2S 563bcfe80fSPaul Kocialkowski tristate "Tegra30 I2S interface" 573bcfe80fSPaul Kocialkowski depends on SND_SOC_TEGRA 58cdc04fd1SStephen Warren select SND_SOC_TEGRA30_AHUB 59cdc04fd1SStephen Warren help 60cdc04fd1SStephen Warren Say Y or M if you want to add support for codecs attached to the 61cdc04fd1SStephen Warren Tegra30 I2S interface. You will also need to select the individual 62cdc04fd1SStephen Warren machine drivers to support below. 63cdc04fd1SStephen Warren 6416e1bcc2SSameer Pujarconfig SND_SOC_TEGRA210_AHUB 6516e1bcc2SSameer Pujar tristate "Tegra210 AHUB module" 6616e1bcc2SSameer Pujar depends on SND_SOC_TEGRA 6716e1bcc2SSameer Pujar help 6816e1bcc2SSameer Pujar Config to enable Audio Hub (AHUB) module, which comprises of a 6916e1bcc2SSameer Pujar switch called Audio Crossbar (AXBAR) used to configure or modify 7016e1bcc2SSameer Pujar the audio routing path between various HW accelerators present in 7116e1bcc2SSameer Pujar AHUB. 7216e1bcc2SSameer Pujar Say Y or M if you want to add support for Tegra210 AHUB module. 7316e1bcc2SSameer Pujar 748c8ff982SSameer Pujarconfig SND_SOC_TEGRA210_DMIC 758c8ff982SSameer Pujar tristate "Tegra210 DMIC module" 768c8ff982SSameer Pujar depends on SND_SOC_TEGRA 778c8ff982SSameer Pujar help 788c8ff982SSameer Pujar Config to enable the Digital MIC (DMIC) controller which is used 798c8ff982SSameer Pujar to interface with Pulse Density Modulation (PDM) input devices. 808c8ff982SSameer Pujar The DMIC controller implements a converter to convert PDM signals 818c8ff982SSameer Pujar to Pulse Code Modulation (PCM) signals. This can be viewed as a 828c8ff982SSameer Pujar PDM receiver. 838c8ff982SSameer Pujar Say Y or M if you want to add support for Tegra210 DMIC module. 848c8ff982SSameer Pujar 85c0bfa983SSameer Pujarconfig SND_SOC_TEGRA210_I2S 86c0bfa983SSameer Pujar tristate "Tegra210 I2S module" 87c0bfa983SSameer Pujar depends on SND_SOC_TEGRA 88c0bfa983SSameer Pujar help 89c0bfa983SSameer Pujar Config to enable the Inter-IC Sound (I2S) Controller which 90c0bfa983SSameer Pujar implements full-duplex and bidirectional and single direction 91c0bfa983SSameer Pujar point-to-point serial interfaces. It can interface with I2S 92c0bfa983SSameer Pujar compatible devices. 93c0bfa983SSameer Pujar Say Y or M if you want to add support for Tegra210 I2S module. 94c0bfa983SSameer Pujar 95327ef647SSameer Pujarconfig SND_SOC_TEGRA186_DSPK 96327ef647SSameer Pujar tristate "Tegra186 DSPK module" 97327ef647SSameer Pujar depends on SND_SOC_TEGRA 98327ef647SSameer Pujar help 99327ef647SSameer Pujar Config to enable the Digital Speaker Controller (DSPK) which 100327ef647SSameer Pujar converts the multi-bit Pulse Code Modulation (PCM) audio input to 101327ef647SSameer Pujar oversampled 1-bit Pulse Density Modulation (PDM) output. From the 102327ef647SSameer Pujar signal flow perspective DSPK can be viewed as a PDM transmitter 103327ef647SSameer Pujar that up-samples the input to the desired sampling rate by 104327ef647SSameer Pujar interpolation and then converts the oversampled PCM input to 105327ef647SSameer Pujar the desired 1-bit output via Delta Sigma Modulation (DSM). 106327ef647SSameer Pujar Say Y or M if you want to add support for Tegra186 DSPK module. 107327ef647SSameer Pujar 108f74028e1SSameer Pujarconfig SND_SOC_TEGRA210_ADMAIF 109f74028e1SSameer Pujar tristate "Tegra210 ADMAIF module" 110f74028e1SSameer Pujar depends on SND_SOC_TEGRA 111f74028e1SSameer Pujar help 112f74028e1SSameer Pujar Config to enable ADMAIF which is the interface between ADMA and 113f74028e1SSameer Pujar Audio Hub (AHUB). Each ADMA channel that sends/receives data to/ 114f74028e1SSameer Pujar from AHUB must interface through an ADMAIF channel. ADMA channel 115f74028e1SSameer Pujar sending data to AHUB pairs with an ADMAIF Tx channel, where as 116f74028e1SSameer Pujar ADMA channel receiving data from AHUB pairs with an ADMAIF Rx 117f74028e1SSameer Pujar channel. Buffer size is configurable for each ADMAIIF channel. 118f74028e1SSameer Pujar Say Y or M if you want to add support for Tegra210 ADMAIF module. 119f74028e1SSameer Pujar 120*202e2f77SSameer Pujarconfig SND_SOC_TEGRA_AUDIO_GRAPH_CARD 121*202e2f77SSameer Pujar tristate "Audio Graph Card based Tegra driver" 122*202e2f77SSameer Pujar depends on SND_AUDIO_GRAPH_CARD 123*202e2f77SSameer Pujar help 124*202e2f77SSameer Pujar Config to enable Tegra audio machine driver based on generic 125*202e2f77SSameer Pujar audio graph driver. It is a thin driver written to customize 126*202e2f77SSameer Pujar few things for Tegra audio. Most of the code is re-used from 127*202e2f77SSameer Pujar audio graph driver and the same DT bindings are used. 128*202e2f77SSameer Pujar 129040a62cfSStephen Warrenconfig SND_SOC_TEGRA_RT5640 130040a62cfSStephen Warren tristate "SoC Audio support for Tegra boards using an RT5640 codec" 1312fa1b900SMark Brown depends on SND_SOC_TEGRA && I2C && GPIOLIB 132040a62cfSStephen Warren select SND_SOC_RT5640 133040a62cfSStephen Warren help 134040a62cfSStephen Warren Say Y or M here if you want to add support for SoC audio on Tegra 135040a62cfSStephen Warren boards using the RT5640 codec, such as Dalmore. 136040a62cfSStephen Warren 137d8259ca5SStephen Warrenconfig SND_SOC_TEGRA_WM8753 138d8259ca5SStephen Warren tristate "SoC Audio support for Tegra boards using a WM8753 codec" 1392fa1b900SMark Brown depends on SND_SOC_TEGRA && I2C && GPIOLIB 140d8259ca5SStephen Warren select SND_SOC_WM8753 141d8259ca5SStephen Warren help 142d8259ca5SStephen Warren Say Y or M here if you want to add support for SoC audio on Tegra 143d8259ca5SStephen Warren boards using the WM8753 codec, such as Whistler. 144d8259ca5SStephen Warren 1452ba9471bSStephen Warrenconfig SND_SOC_TEGRA_WM8903 146dc0a50afSStephen Warren tristate "SoC Audio support for Tegra boards using a WM8903 codec" 1472fa1b900SMark Brown depends on SND_SOC_TEGRA && I2C && GPIOLIB 1488b75d714SStephen Warren select SND_SOC_WM8903 1498b75d714SStephen Warren help 150dc0a50afSStephen Warren Say Y or M here if you want to add support for SoC audio on Tegra 151773b1d3dSStephen Warren boards using the WM8093 codec. Currently, the supported boards are 152773b1d3dSStephen Warren Harmony, Ventana, Seaboard, Kaen, and Aebl. 1538b75d714SStephen Warren 1546995b8cbSLucas Stachconfig SND_SOC_TEGRA_WM9712 1556995b8cbSLucas Stach tristate "SoC Audio support for Tegra boards using a WM9712 codec" 1563bcfe80fSPaul Kocialkowski depends on SND_SOC_TEGRA && GPIOLIB 1576995b8cbSLucas Stach select SND_SOC_TEGRA20_AC97 1586995b8cbSLucas Stach select SND_SOC_WM9712 1596995b8cbSLucas Stach help 1606995b8cbSLucas Stach Say Y or M here if you want to add support for SoC audio on Tegra 1616995b8cbSLucas Stach boards using the WM9712 (or compatible) codec. 1626995b8cbSLucas Stach 1631307394aSMike Rapoportconfig SND_SOC_TEGRA_TRIMSLICE 1641307394aSMike Rapoport tristate "SoC Audio support for TrimSlice board" 1650336553eSStephen Warren depends on SND_SOC_TEGRA && I2C 166cc1bc54aSMax Filippov select SND_SOC_TLV320AIC23_I2C 1671307394aSMike Rapoport help 1681307394aSMike Rapoport Say Y or M here if you want to add support for SoC audio on the 1691307394aSMike Rapoport TrimSlice platform. 17058783fafSLeon Romanovsky 17158783fafSLeon Romanovskyconfig SND_SOC_TEGRA_ALC5632 17258783fafSLeon Romanovsky tristate "SoC Audio support for Tegra boards using an ALC5632 codec" 1732fa1b900SMark Brown depends on SND_SOC_TEGRA && I2C && GPIOLIB 17458783fafSLeon Romanovsky select SND_SOC_ALC5632 17558783fafSLeon Romanovsky help 17658783fafSLeon Romanovsky Say Y or M here if you want to add support for SoC audio on the 17758783fafSLeon Romanovsky Toshiba AC100 netbook. 1787637af2eSStephen Warren 1797637af2eSStephen Warrenconfig SND_SOC_TEGRA_MAX98090 1807637af2eSStephen Warren tristate "SoC Audio support for Tegra boards using a MAX98090 codec" 1817637af2eSStephen Warren depends on SND_SOC_TEGRA && I2C && GPIOLIB 1827637af2eSStephen Warren select SND_SOC_MAX98090 1837637af2eSStephen Warren help 1847637af2eSStephen Warren Say Y or M here if you want to add support for SoC audio on Tegra 1857637af2eSStephen Warren boards using the MAX98090 codec, such as Venice2. 186a37f1b8fSAnatol Pomozov 187a37f1b8fSAnatol Pomozovconfig SND_SOC_TEGRA_RT5677 188a37f1b8fSAnatol Pomozov tristate "SoC Audio support for Tegra boards using a RT5677 codec" 189a37f1b8fSAnatol Pomozov depends on SND_SOC_TEGRA && I2C && GPIOLIB 190a37f1b8fSAnatol Pomozov select SND_SOC_RT5677 191a37f1b8fSAnatol Pomozov help 192a37f1b8fSAnatol Pomozov Say Y or M here if you want to add support for SoC audio on Tegra 193a37f1b8fSAnatol Pomozov boards using the RT5677 codec, such as Ryu. 19404445681SMarcel Ziswiler 19504445681SMarcel Ziswilerconfig SND_SOC_TEGRA_SGTL5000 19604445681SMarcel Ziswiler tristate "SoC Audio support for Tegra boards using a SGTL5000 codec" 19704445681SMarcel Ziswiler depends on SND_SOC_TEGRA && I2C && GPIOLIB 19804445681SMarcel Ziswiler select SND_SOC_SGTL5000 19904445681SMarcel Ziswiler help 20004445681SMarcel Ziswiler Say Y or M here if you want to add support for SoC audio on Tegra 20104445681SMarcel Ziswiler boards using the SGTL5000 codec, such as Apalis T30, Apalis TK1 or 20204445681SMarcel Ziswiler Colibri T30. 203