1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "Audio support for Texas Instruments SoCs"
3 depends on DMA_OMAP || TI_EDMA || COMPILE_TEST
5 config SND_SOC_TI_EDMA_PCM
7 select SND_SOC_GENERIC_DMAENGINE_PCM
9 config SND_SOC_TI_SDMA_PCM
11 select SND_SOC_GENERIC_DMAENGINE_PCM
13 comment "Texas Instruments DAI support for:"
14 config SND_SOC_DAVINCI_ASP
15 tristate "daVinci Audio Serial Port (ASP) or McBSP support"
16 depends on ARCH_DAVINCI || COMPILE_TEST
17 select SND_SOC_TI_EDMA_PCM
19 Say Y or M here if you want audio support via daVinci ASP or McBSP.
20 The driver only implements the ASP support which is a subset of
21 daVinci McBSP (w/o the multichannel support).
23 config SND_SOC_DAVINCI_MCASP
24 tristate "Multichannel Audio Serial Port (McASP) support"
25 select SND_SOC_TI_EDMA_PCM
26 select SND_SOC_TI_SDMA_PCM
28 Say Y or M here if you want to have support for McASP IP found in
29 various Texas Instruments SoCs like:
31 - Sitara line of SoCs (AM335x, AM438x, etc)
35 config SND_SOC_DAVINCI_VCIF
36 tristate "daVinci Voice Interface (VCIF) support"
37 depends on ARCH_DAVINCI || COMPILE_TEST
38 select SND_SOC_TI_EDMA_PCM
40 Say Y or M here if you want audio support via daVinci VCIF.
42 config SND_SOC_OMAP_DMIC
43 tristate "Digital Microphone Module (DMIC) support"
44 depends on ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
45 select SND_SOC_TI_SDMA_PCM
47 Say Y or M here if you want to have support for DMIC IP found in
50 config SND_SOC_OMAP_MCBSP
51 tristate "Multichannel Buffered Serial Port (McBSP) support"
52 depends on ARCH_OMAP || ARCH_OMAP1 || COMPILE_TEST
53 select SND_SOC_TI_SDMA_PCM
55 Say Y or M here if you want to have support for McBSP IP found in
56 Texas Instruments OMAP1/2/3/4/5 SoCs.
58 config SND_SOC_OMAP_MCPDM
59 tristate "Multichannel PDM Controller (McPDM) support"
60 depends on ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
61 select SND_SOC_TI_SDMA_PCM
63 Say Y or M here if you want to have support for McPDM IP found in
66 comment "Audio support for boards with Texas Instruments SoCs"
67 config SND_SOC_NOKIA_N810
68 tristate "SoC Audio support for Nokia N810"
69 depends on MACH_NOKIA_N810 && I2C
70 select SND_SOC_OMAP_MCBSP
71 select SND_SOC_TLV320AIC3X
73 Say Y or M if you want to add support for SoC audio on Nokia N810.
75 config SND_SOC_NOKIA_RX51
76 tristate "SoC Audio support for Nokia RX-51"
77 depends on ARCH_OMAP3 && I2C && GPIOLIB
78 select SND_SOC_OMAP_MCBSP
79 select SND_SOC_TLV320AIC3X
80 select SND_SOC_TPA6130A2
82 Say Y or M if you want to add support for SoC audio on Nokia RX-51
83 hardware. This is also known as Nokia N900 product.
85 config SND_SOC_OMAP3_PANDORA
86 tristate "SoC Audio support for OMAP3 Pandora"
88 depends on TWL4030_CORE
89 select SND_SOC_OMAP_MCBSP
90 select SND_SOC_TWL4030
92 Say Y or M if you want to add support for SoC audio on the OMAP3 Pandora.
94 config SND_SOC_OMAP3_TWL4030
95 tristate "SoC Audio support for OMAP3 based boards with twl4030 codec"
96 depends on ARCH_OMAP3 || COMPILE_TEST
97 depends on TWL4030_CORE
98 select SND_SOC_OMAP_MCBSP
99 select SND_SOC_TWL4030
101 Say Y or M if you want to add support for SoC audio on OMAP3 based
102 boards using twl4030 as codec. This driver currently supports:
103 - Beagleboard or Devkit8000
104 - Gumstix Overo or CompuLab CM-T35/CM-T3730
110 config SND_SOC_OMAP_ABE_TWL6040
111 tristate "SoC Audio support for OMAP boards using ABE and twl6040 codec"
112 depends on TWL6040_CORE && COMMON_CLK
113 depends on ARCH_OMAP4 || (SOC_OMAP5 && MFD_PALMAS) || COMPILE_TEST
114 select SND_SOC_OMAP_DMIC
115 select SND_SOC_OMAP_MCPDM
116 select SND_SOC_TWL6040
118 Say Y or M if you want to add support for SoC audio on OMAP boards
119 using ABE and twl6040 codec. This driver currently supports:
120 - SDP4430/Blaze boards
122 - PandaBoardES (4460)
125 config SND_SOC_OMAP_AMS_DELTA
126 tristate "SoC Audio support for Amstrad E3 (Delta) videophone"
127 depends on MACH_AMS_DELTA && TTY
128 select SND_SOC_OMAP_MCBSP
129 select SND_SOC_CX20442
131 Say Y or M if you want to add support for SoC audio device
132 connected to a handset and a speakerphone found on Amstrad E3 (Delta)
135 Note that in order to get those devices fully supported, you have to
136 build the kernel with standard serial port driver included and
137 configured for at least 4 ports. Then, from userspace, you must load
138 a line discipline #19 on the modem (ttyS3) serial line. The simplest
139 way to achieve this is to install util-linux-ng and use the included
140 ldattach utility. This can be started automatically from udev,
141 a simple rule like this one should do the trick (it does for me):
142 ACTION=="add", KERNEL=="controlC0", \
143 RUN+="/usr/sbin/ldattach 19 /dev/ttyS3"
145 config SND_SOC_OMAP_HDMI
146 tristate "OMAP4/5 HDMI audio support"
147 depends on OMAP4_DSS_HDMI || OMAP5_DSS_HDMI || COMPILE_TEST
148 select SND_SOC_TI_SDMA_PCM
150 For HDMI audio to work OMAPDSS HDMI support should be
152 The hdmi audio driver implements cpu-dai component using the
153 callbacks provided by OMAPDSS and registers the component
154 under DSS HDMI device. Omap-pcm is registered for platform
155 component also under DSS HDMI device. Dummy codec is used as
156 as codec component. The hdmi audio driver implements also
157 the card and registers it under its own platform device.
158 The device for the driver is registered by OMAPDSS hdmi
161 config SND_SOC_OMAP_OSK5912
162 tristate "SoC Audio support for omap osk5912"
163 depends on MACH_OMAP_OSK && I2C
164 select SND_SOC_OMAP_MCBSP
165 select SND_SOC_TLV320AIC23_I2C
167 Say Y or M if you want to add support for SoC audio on osk5912.
169 config SND_SOC_DAVINCI_EVM
170 tristate "SoC Audio support for DaVinci EVMs"
171 depends on ARCH_DAVINCI && I2C
172 select SND_SOC_DAVINCI_ASP if MACH_DAVINCI_DM355_EVM
173 select SND_SOC_DAVINCI_ASP if SND_SOC_DM365_AIC3X_CODEC
174 select SND_SOC_DAVINCI_VCIF if SND_SOC_DM365_VOICE_CODEC
175 select SND_SOC_DAVINCI_ASP if MACH_DAVINCI_EVM # DM6446
176 select SND_SOC_DAVINCI_MCASP if MACH_DAVINCI_DM6467_EVM
177 select SND_SOC_SPDIF if MACH_DAVINCI_DM6467_EVM
178 select SND_SOC_DAVINCI_MCASP if MACH_DAVINCI_DA830_EVM
179 select SND_SOC_DAVINCI_MCASP if MACH_DAVINCI_DA850_EVM
180 select SND_SOC_TLV320AIC3X
182 Say Y if you want to add support for SoC audio on the following TI
183 DaVinci EVM platforms:
192 prompt "DM365 codec select"
193 depends on SND_SOC_DAVINCI_EVM
194 depends on MACH_DAVINCI_DM365_EVM
196 config SND_SOC_DM365_AIC3X_CODEC
197 bool "Audio Codec - AIC3101"
199 Say Y if you want to add support for AIC3101 audio codec
201 config SND_SOC_DM365_VOICE_CODEC
202 bool "Voice Codec - CQ93VC"
204 Say Y if you want to add support for SoC On-chip voice codec
207 config SND_SOC_DM365_VOICE_CODEC_MODULE
209 depends on SND_SOC_DM365_VOICE_CODEC && SND_SOC
210 select MFD_DAVINCI_VOICECODEC
211 select SND_SOC_CQ0093VC
213 The is an internal symbol needed to ensure that the codec
214 and MFD driver can be built as loadable modules if necessary.