698d7bc84dcf062c496f33df2d6d42c6d4e8c8ca
[linux-2.6-microblaze.git] / sound / soc / ti / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "Audio support for Texas Instruments SoCs"
3 depends on DMA_OMAP || TI_EDMA || TI_K3_UDMA || COMPILE_TEST
4
5 config SND_SOC_TI_EDMA_PCM
6         tristate
7         select SND_SOC_GENERIC_DMAENGINE_PCM
8
9 config SND_SOC_TI_SDMA_PCM
10         tristate
11         select SND_SOC_GENERIC_DMAENGINE_PCM
12
13 config SND_SOC_TI_UDMA_PCM
14         tristate
15         select SND_SOC_GENERIC_DMAENGINE_PCM
16
17 comment "Texas Instruments DAI support for:"
18 config SND_SOC_DAVINCI_ASP
19         tristate "daVinci Audio Serial Port (ASP) or McBSP support"
20         depends on ARCH_DAVINCI || COMPILE_TEST
21         select SND_SOC_TI_EDMA_PCM
22         help
23           Say Y or M here if you want audio support via daVinci ASP or McBSP.
24           The driver only implements the ASP support which is a subset of
25           daVinci McBSP (w/o the multichannel support).
26
27 config SND_SOC_DAVINCI_MCASP
28         tristate "Multichannel Audio Serial Port (McASP) support"
29         depends on COMMON_CLK
30         select SND_SOC_TI_EDMA_PCM
31         select SND_SOC_TI_SDMA_PCM
32         select SND_SOC_TI_UDMA_PCM
33         help
34           Say Y or M here if you want to have support for McASP IP found in
35           various Texas Instruments SoCs like:
36           - daVinci devices
37           - Sitara line of SoCs (AM335x, AM438x, etc)
38           - DRA7x devices
39           - Keystone devices
40           - K3 devices (am654, j721e)
41
42 config SND_SOC_DAVINCI_VCIF
43         tristate "daVinci Voice Interface (VCIF) support"
44         depends on ARCH_DAVINCI || COMPILE_TEST
45         select SND_SOC_TI_EDMA_PCM
46         help
47           Say Y or M here if you want audio support via daVinci VCIF.
48
49 config SND_SOC_OMAP_DMIC
50         tristate "Digital Microphone Module (DMIC) support"
51         depends on ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST && COMMON_CLK
52         select SND_SOC_TI_SDMA_PCM
53         help
54           Say Y or M here if you want to have support for DMIC IP found in
55           OMAP4 and OMAP5.
56
57 config SND_SOC_OMAP_MCBSP
58         tristate "Multichannel Buffered Serial Port (McBSP) support"
59         depends on ARCH_OMAP || ARCH_OMAP1 || COMPILE_TEST && COMMON_CLK
60         select SND_SOC_TI_SDMA_PCM
61         help
62           Say Y or M here if you want to have support for McBSP IP found in
63           Texas Instruments OMAP1/2/3/4/5 SoCs.
64
65 config SND_SOC_OMAP_MCPDM
66         tristate "Multichannel PDM Controller (McPDM) support"
67         depends on ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
68         select SND_SOC_TI_SDMA_PCM
69         help
70           Say Y or M here if you want to have support for McPDM IP found in
71           OMAP4 and OMAP5.
72
73 comment "Audio support for boards with Texas Instruments SoCs"
74 config SND_SOC_NOKIA_N810
75         tristate "SoC Audio support for Nokia N810"
76         depends on MACH_NOKIA_N810 && I2C
77         select SND_SOC_OMAP_MCBSP
78         select SND_SOC_TLV320AIC3X
79         help
80           Say Y or M if you want to add support for SoC audio on Nokia N810.
81
82 config SND_SOC_NOKIA_RX51
83         tristate "SoC Audio support for Nokia RX-51"
84         depends on ARCH_OMAP3 && I2C && GPIOLIB
85         select SND_SOC_OMAP_MCBSP
86         select SND_SOC_TLV320AIC3X
87         select SND_SOC_TPA6130A2
88         help
89           Say Y or M if you want to add support for SoC audio on Nokia RX-51
90           hardware. This is also known as Nokia N900 product.
91
92 config SND_SOC_OMAP3_PANDORA
93         tristate "SoC Audio support for OMAP3 Pandora"
94         depends on ARCH_OMAP3
95         depends on TWL4030_CORE
96         select SND_SOC_OMAP_MCBSP
97         select SND_SOC_TWL4030
98         help
99           Say Y or M if you want to add support for SoC audio on the OMAP3 Pandora.
100
101 config SND_SOC_OMAP3_TWL4030
102         tristate "SoC Audio support for OMAP3 based boards with twl4030 codec"
103         depends on ARCH_OMAP3 || COMPILE_TEST && COMMON_CLK
104         depends on TWL4030_CORE
105         select SND_SOC_OMAP_MCBSP
106         select SND_SOC_TWL4030
107         help
108           Say Y or M if you want to add support for SoC audio on OMAP3 based
109           boards using twl4030 as codec. This driver currently supports:
110           - Beagleboard or Devkit8000
111           - Gumstix Overo or CompuLab CM-T35/CM-T3730
112           - IGEP v2
113           - OMAP3EVM
114           - SDP3430
115           - Zoom2
116
117 config SND_SOC_OMAP_ABE_TWL6040
118         tristate "SoC Audio support for OMAP boards using ABE and twl6040 codec"
119         depends on TWL6040_CORE && COMMON_CLK
120         depends on ARCH_OMAP4 || (SOC_OMAP5 && MFD_PALMAS) || COMPILE_TEST
121         select SND_SOC_OMAP_DMIC
122         select SND_SOC_OMAP_MCPDM
123         select SND_SOC_TWL6040
124         help
125           Say Y or M if you want to add support for SoC audio on OMAP boards
126           using ABE and twl6040 codec. This driver currently supports:
127           - SDP4430/Blaze boards
128           - PandaBoard (4430)
129           - PandaBoardES (4460)
130           - OMAP5 uEVM
131
132 config SND_SOC_OMAP_AMS_DELTA
133         tristate "SoC Audio support for Amstrad E3 (Delta) videophone"
134         depends on MACH_AMS_DELTA && TTY
135         select SND_SOC_OMAP_MCBSP
136         select SND_SOC_CX20442
137         help
138           Say Y  or M if you want to add support  for SoC audio device
139           connected to a handset and a speakerphone found on Amstrad E3 (Delta)
140           videophone.
141
142           Note that in order to get those devices fully supported,  you have to
143           build  the kernel  with  standard  serial port  driver  included  and
144           configured for at least 4 ports.  Then, from userspace, you must load
145           a line discipline #19 on the modem (ttyS3) serial line.  The simplest
146           way to achieve this is to install util-linux-ng  and use the included
147           ldattach  utility.  This  can be  started  automatically  from  udev,
148           a simple rule like this one should do the trick (it does for me):
149                 ACTION=="add", KERNEL=="controlC0", \
150                                 RUN+="/usr/sbin/ldattach 19 /dev/ttyS3"
151
152 config SND_SOC_OMAP_HDMI
153         tristate "OMAP4/5 HDMI audio support"
154         depends on OMAP4_DSS_HDMI || OMAP5_DSS_HDMI || COMPILE_TEST
155         select SND_SOC_TI_SDMA_PCM
156         help
157           For HDMI audio to work OMAPDSS HDMI support should be
158           enabled.
159           The hdmi audio driver implements cpu-dai component using the
160           callbacks provided by OMAPDSS and registers the component
161           under DSS HDMI device. Omap-pcm is registered for platform
162           component also under DSS HDMI device. Dummy codec is used as
163           as codec component. The hdmi audio driver implements also
164           the card and registers it under its own platform device.
165           The device for the driver is registered by OMAPDSS hdmi
166           driver.
167
168 config SND_SOC_OMAP_OSK5912
169         tristate "SoC Audio support for omap osk5912"
170         depends on MACH_OMAP_OSK && I2C
171         select SND_SOC_OMAP_MCBSP
172         select SND_SOC_TLV320AIC23_I2C
173         help
174           Say Y or M if you want to add support for SoC audio on osk5912.
175
176 config SND_SOC_DAVINCI_EVM
177         tristate "SoC Audio support for DaVinci EVMs"
178         depends on ARCH_DAVINCI && I2C
179         select SND_SOC_DAVINCI_ASP if MACH_DAVINCI_DM355_EVM
180         select SND_SOC_DAVINCI_ASP if SND_SOC_DM365_AIC3X_CODEC
181         select SND_SOC_DAVINCI_VCIF if SND_SOC_DM365_VOICE_CODEC
182         select SND_SOC_DAVINCI_ASP if MACH_DAVINCI_EVM # DM6446
183         select SND_SOC_DAVINCI_MCASP if MACH_DAVINCI_DM6467_EVM
184         select SND_SOC_SPDIF if MACH_DAVINCI_DM6467_EVM
185         select SND_SOC_DAVINCI_MCASP if MACH_DAVINCI_DA830_EVM
186         select SND_SOC_DAVINCI_MCASP if MACH_DAVINCI_DA850_EVM
187         select SND_SOC_TLV320AIC3X
188         help
189           Say Y if you want to add support for SoC audio on the following TI
190           DaVinci EVM platforms:
191           - DM355
192           - DM365
193           - DM6446
194           - DM6447
195           - DM830
196           - DM850
197
198 choice
199         prompt "DM365 codec select"
200         depends on SND_SOC_DAVINCI_EVM
201         depends on MACH_DAVINCI_DM365_EVM
202
203 config SND_SOC_DM365_AIC3X_CODEC
204         bool "Audio Codec - AIC3101"
205         help
206           Say Y if you want to add support for AIC3101 audio codec
207
208 config SND_SOC_DM365_VOICE_CODEC
209         bool "Voice Codec - CQ93VC"
210         help
211           Say Y if you want to add support for SoC On-chip voice codec
212 endchoice
213
214 config SND_SOC_DM365_VOICE_CODEC_MODULE
215         def_tristate y
216         depends on SND_SOC_DM365_VOICE_CODEC && SND_SOC
217         select MFD_DAVINCI_VOICECODEC
218         select SND_SOC_CQ0093VC
219         help
220           The is an internal symbol needed to ensure that the codec
221           and MFD driver can be built as loadable modules if necessary.
222
223 config SND_SOC_J721E_EVM
224         tristate "SoC Audio support for j721e EVM"
225         depends on ARCH_K3 || COMPILE_TEST && COMMON_CLK
226         depends on I2C
227         select SND_SOC_PCM3168A_I2C
228         select SND_SOC_DAVINCI_MCASP
229         help
230           Say Y if you want to add support for SoC audio on j721e Common
231           Processor Board and Infotainment expansion board.
232 endmenu
233