xref: /linux/sound/soc/tegra/Kconfig (revision 202e2f7745437aa5b694de92cbd30bb43b23fbed)
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