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