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