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	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	  - OMAP4
39	  - DRA7x devices
40	  - Keystone devices
41	  - K3 devices (am654, j721e)
42
43config SND_SOC_OMAP_DMIC
44	tristate "Digital Microphone Module (DMIC) support"
45	depends on ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST && COMMON_CLK
46	select SND_SOC_TI_SDMA_PCM
47	help
48	  Say Y or M here if you want to have support for DMIC IP found in
49	  OMAP4 and OMAP5.
50
51config SND_SOC_OMAP_MCBSP
52	tristate "Multichannel Buffered Serial Port (McBSP) support"
53	depends on ARCH_OMAP || ARCH_OMAP1 || COMPILE_TEST && COMMON_CLK
54	select SND_SOC_TI_SDMA_PCM
55	help
56	  Say Y or M here if you want to have support for McBSP IP found in
57	  Texas Instruments OMAP1/2/3/4/5 SoCs.
58
59config SND_SOC_OMAP_MCPDM
60	tristate "Multichannel PDM Controller (McPDM) support"
61	depends on ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
62	select SND_SOC_TI_SDMA_PCM
63	help
64	  Say Y or M here if you want to have support for McPDM IP found in
65	  OMAP4 and OMAP5.
66
67comment "Audio support for boards with Texas Instruments SoCs"
68config SND_SOC_NOKIA_N810
69	tristate "SoC Audio support for Nokia N810"
70	depends on MACH_NOKIA_N810 && I2C
71	select SND_SOC_OMAP_MCBSP
72	select SND_SOC_TLV320AIC3X
73	help
74	  Say Y or M if you want to add support for SoC audio on Nokia N810.
75
76config SND_SOC_NOKIA_RX51
77	tristate "SoC Audio support for Nokia RX-51"
78	depends on ARCH_OMAP3 && I2C && GPIOLIB
79	select SND_SOC_OMAP_MCBSP
80	select SND_SOC_TLV320AIC3X
81	select SND_SOC_TPA6130A2
82	help
83	  Say Y or M if you want to add support for SoC audio on Nokia RX-51
84	  hardware. This is also known as Nokia N900 product.
85
86config SND_SOC_OMAP3_PANDORA
87	tristate "SoC Audio support for OMAP3 Pandora"
88	depends on ARCH_OMAP3
89	depends on TWL4030_CORE
90	select SND_SOC_OMAP_MCBSP
91	select SND_SOC_TWL4030
92	help
93	  Say Y or M if you want to add support for SoC audio on the OMAP3 Pandora.
94
95config SND_SOC_OMAP3_TWL4030
96	tristate "SoC Audio support for OMAP3 based boards with twl4030 codec"
97	depends on ARCH_OMAP3 || COMPILE_TEST && COMMON_CLK
98	depends on TWL4030_CORE
99	select SND_SOC_OMAP_MCBSP
100	select SND_SOC_TWL4030
101	help
102	  Say Y or M if you want to add support for SoC audio on OMAP3 based
103	  boards using twl4030 as codec. This driver currently supports:
104	  - Beagleboard or Devkit8000
105	  - Gumstix Overo or CompuLab CM-T35/CM-T3730
106	  - IGEP v2
107	  - OMAP3EVM
108	  - SDP3430
109	  - Zoom2
110
111config SND_SOC_OMAP_ABE_TWL6040
112	tristate "SoC Audio support for OMAP boards using ABE and twl6040 codec"
113	depends on TWL6040_CORE && COMMON_CLK
114	depends on ARCH_OMAP4 || (SOC_OMAP5 && MFD_PALMAS) || COMPILE_TEST
115	select SND_SOC_OMAP_DMIC
116	select SND_SOC_OMAP_MCPDM
117	select SND_SOC_TWL6040
118	help
119	  Say Y or M if you want to add support for SoC audio on OMAP boards
120	  using ABE and twl6040 codec. This driver currently supports:
121	  - SDP4430/Blaze boards
122	  - PandaBoard (4430)
123	  - PandaBoardES (4460)
124	  - OMAP5 uEVM
125
126config SND_SOC_OMAP_AMS_DELTA
127	tristate "SoC Audio support for Amstrad E3 (Delta) videophone"
128	depends on MACH_AMS_DELTA || COMPILE_TEST
129	depends on TTY
130	select SND_SOC_OMAP_MCBSP if COMMON_CLK
131	select SND_SOC_CX20442
132	help
133	  Say Y  or M if you want to add support  for SoC audio device
134	  connected to a handset and a speakerphone found on Amstrad E3 (Delta)
135	  videophone.
136
137	  Note that in order to get those devices fully supported,  you have to
138	  build  the kernel  with  standard  serial port  driver  included  and
139	  configured for at least 4 ports.  Then, from userspace, you must load
140	  a line discipline #19 on the modem (ttyS3) serial line.  The simplest
141	  way to achieve this is to install util-linux-ng  and use the included
142	  ldattach  utility.  This  can be  started  automatically  from  udev,
143	  a simple rule like this one should do the trick (it does for me):
144		ACTION=="add", KERNEL=="controlC0", \
145				RUN+="/usr/sbin/ldattach 19 /dev/ttyS3"
146
147config SND_SOC_OMAP_HDMI
148	tristate "OMAP4/5 HDMI audio support"
149	depends on OMAP4_DSS_HDMI || OMAP5_DSS_HDMI || COMPILE_TEST
150	select SND_SOC_TI_SDMA_PCM
151	help
152	  For HDMI audio to work OMAPDSS HDMI support should be
153	  enabled.
154	  The hdmi audio driver implements cpu-dai component using the
155	  callbacks provided by OMAPDSS and registers the component
156	  under DSS HDMI device. Omap-pcm is registered for platform
157	  component also under DSS HDMI device. Dummy codec is used as
158	  as codec component. The hdmi audio driver implements also
159	  the card and registers it under its own platform device.
160	  The device for the driver is registered by OMAPDSS hdmi
161	  driver.
162
163config SND_SOC_OMAP_OSK5912
164	tristate "SoC Audio support for omap osk5912"
165	depends on MACH_OMAP_OSK && I2C
166	select SND_SOC_OMAP_MCBSP
167	select SND_SOC_TLV320AIC23_I2C
168	help
169	  Say Y or M if you want to add support for SoC audio on osk5912.
170
171config SND_SOC_DAVINCI_EVM
172	tristate "SoC Audio support for DaVinci EVMs"
173	depends on ARCH_DAVINCI && I2C
174	select SND_SOC_TLV320AIC3X
175	help
176	  Say Y if you want to add support for SoC audio on the following TI
177	  DaVinci EVM platforms:
178	  - DM355
179	  - DM365
180	  - DM6446
181	  - DM6447
182	  - DM830
183	  - DM850
184
185config SND_SOC_J721E_EVM
186	tristate "SoC Audio support for j721e EVM"
187	depends on ARCH_K3 || COMPILE_TEST && COMMON_CLK
188	depends on I2C
189	select SND_SOC_PCM3168A_I2C
190	select SND_SOC_DAVINCI_MCASP
191	help
192	  Say Y if you want to add support for SoC audio on j721e Common
193	  Processor Board and Infotainment expansion board.
194endmenu
195
196