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