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