source "sound/soc/au1x/Kconfig"
 source "sound/soc/bcm/Kconfig"
 source "sound/soc/cirrus/Kconfig"
-source "sound/soc/davinci/Kconfig"
 source "sound/soc/dwc/Kconfig"
 source "sound/soc/fsl/Kconfig"
 source "sound/soc/hisilicon/Kconfig"
 source "sound/soc/jz4740/Kconfig"
 source "sound/soc/nuc900/Kconfig"
-source "sound/soc/omap/Kconfig"
 source "sound/soc/kirkwood/Kconfig"
 source "sound/soc/img/Kconfig"
 source "sound/soc/intel/Kconfig"
 source "sound/soc/stm/Kconfig"
 source "sound/soc/sunxi/Kconfig"
 source "sound/soc/tegra/Kconfig"
+source "sound/soc/ti/Kconfig"
 source "sound/soc/txx9/Kconfig"
 source "sound/soc/uniphier/Kconfig"
 source "sound/soc/ux500/Kconfig"
 
 obj-$(CONFIG_SND_SOC)  += au1x/
 obj-$(CONFIG_SND_SOC)  += bcm/
 obj-$(CONFIG_SND_SOC)  += cirrus/
-obj-$(CONFIG_SND_SOC)  += davinci/
 obj-$(CONFIG_SND_SOC)  += dwc/
 obj-$(CONFIG_SND_SOC)  += fsl/
 obj-$(CONFIG_SND_SOC)  += hisilicon/
 obj-$(CONFIG_SND_SOC)  += meson/
 obj-$(CONFIG_SND_SOC)  += mxs/
 obj-$(CONFIG_SND_SOC)  += nuc900/
-obj-$(CONFIG_SND_SOC)  += omap/
 obj-$(CONFIG_SND_SOC)  += kirkwood/
 obj-$(CONFIG_SND_SOC)  += pxa/
 obj-$(CONFIG_SND_SOC)  += qcom/
 obj-$(CONFIG_SND_SOC)  += stm/
 obj-$(CONFIG_SND_SOC)  += sunxi/
 obj-$(CONFIG_SND_SOC)  += tegra/
+obj-$(CONFIG_SND_SOC)  += ti/
 obj-$(CONFIG_SND_SOC)  += txx9/
 obj-$(CONFIG_SND_SOC)  += uniphier/
 obj-$(CONFIG_SND_SOC)  += ux500/
 
+++ /dev/null
-config SND_DAVINCI_SOC
-       tristate
-       depends on ARCH_DAVINCI
-       select SND_EDMA_SOC
-
-config SND_EDMA_SOC
-       tristate "SoC Audio for Texas Instruments chips using eDMA"
-       depends on TI_EDMA
-       select SND_SOC_GENERIC_DMAENGINE_PCM
-       help
-         Say Y or M here if you want audio support for TI SoC which uses eDMA.
-         The following line of SoCs are supported by this platform driver:
-         - daVinci devices
-         - AM335x
-         - AM437x/AM438x
-         - DRA7xx family
-
-config SND_DAVINCI_SOC_I2S
-       tristate "DaVinci Multichannel Buffered Serial Port (McBSP) support"
-       depends on SND_EDMA_SOC
-       help
-         Say Y or M here if you want to have support for McBSP IP found in
-         Texas Instruments DaVinci DA850 SoCs.
-
-config SND_DAVINCI_SOC_MCASP
-       tristate "Multichannel Audio Serial Port (McASP) support"
-       depends on SND_SDMA_SOC || SND_EDMA_SOC
-       help
-         Say Y or M here if you want to have support for McASP IP found in
-         various Texas Instruments SoCs like:
-         - daVinci devices
-         - Sitara line of SoCs (AM335x, AM438x, etc)
-         - DRA7x devices
-
-config SND_DAVINCI_SOC_VCIF
-       tristate
-
-config SND_DAVINCI_SOC_GENERIC_EVM
-       tristate
-       select SND_SOC_TLV320AIC3X
-       select SND_DAVINCI_SOC_MCASP
-
-config SND_AM33XX_SOC_EVM
-       tristate "SoC Audio for the AM33XX chip based boards"
-       depends on SND_EDMA_SOC && SOC_AM33XX && I2C
-       select SND_DAVINCI_SOC_GENERIC_EVM
-       help
-         Say Y or M if you want to add support for SoC audio on AM33XX
-         boards using McASP and TLV320AIC3X codec. For example AM335X-EVM,
-         AM335X-EVMSK, and BeagelBone with AudioCape boards have this
-         setup.
-
-config SND_DAVINCI_SOC_EVM
-       tristate "SoC Audio support for DaVinci DM6446, DM355 or DM365 EVM"
-       depends on SND_EDMA_SOC && I2C
-       depends on MACH_DAVINCI_EVM || MACH_DAVINCI_DM355_EVM || MACH_DAVINCI_DM365_EVM
-       select SND_DAVINCI_SOC_GENERIC_EVM
-       help
-         Say Y if you want to add support for SoC audio on TI
-         DaVinci DM6446, DM355 or DM365 EVM platforms.
-
-choice
-       prompt "DM365 codec select"
-       depends on SND_DAVINCI_SOC_EVM
-       depends on MACH_DAVINCI_DM365_EVM
-
-config SND_DM365_AIC3X_CODEC
-       tristate "Audio Codec - AIC3101"
-       help
-         Say Y if you want to add support for AIC3101 audio codec
-
-config SND_DM365_VOICE_CODEC
-       tristate "Voice Codec - CQ93VC"
-       select MFD_DAVINCI_VOICECODEC
-       select SND_DAVINCI_SOC_VCIF
-       select SND_SOC_CQ0093VC
-       help
-         Say Y if you want to add support for SoC On-chip voice codec
-endchoice
-
-config  SND_DM6467_SOC_EVM
-       tristate "SoC Audio support for DaVinci DM6467 EVM"
-       depends on SND_EDMA_SOC && MACH_DAVINCI_DM6467_EVM && I2C
-       select SND_DAVINCI_SOC_GENERIC_EVM
-       select SND_SOC_SPDIF
-
-       help
-         Say Y if you want to add support for SoC audio on TI
-
-config  SND_DA830_SOC_EVM
-       tristate "SoC Audio support for DA830/OMAP-L137 EVM"
-       depends on SND_EDMA_SOC && MACH_DAVINCI_DA830_EVM && I2C
-       select SND_DAVINCI_SOC_GENERIC_EVM
-
-       help
-         Say Y if you want to add support for SoC audio on TI
-         DA830/OMAP-L137 EVM
-
-config  SND_DA850_SOC_EVM
-       tristate "SoC Audio support for DA850/OMAP-L138 EVM"
-       depends on SND_EDMA_SOC && MACH_DAVINCI_DA850_EVM && I2C
-       select SND_DAVINCI_SOC_GENERIC_EVM
-       help
-         Say Y if you want to add support for SoC audio on TI
-         DA850/OMAP-L138 EVM
-
 
+++ /dev/null
-# SPDX-License-Identifier: GPL-2.0
-# DAVINCI Platform Support
-snd-soc-edma-objs := edma-pcm.o
-snd-soc-davinci-i2s-objs := davinci-i2s.o
-snd-soc-davinci-mcasp-objs:= davinci-mcasp.o
-snd-soc-davinci-vcif-objs:= davinci-vcif.o
-
-obj-$(CONFIG_SND_EDMA_SOC) += snd-soc-edma.o
-obj-$(CONFIG_SND_DAVINCI_SOC_I2S) += snd-soc-davinci-i2s.o
-obj-$(CONFIG_SND_DAVINCI_SOC_MCASP) += snd-soc-davinci-mcasp.o
-obj-$(CONFIG_SND_DAVINCI_SOC_VCIF) += snd-soc-davinci-vcif.o
-
-# Generic DAVINCI/AM33xx Machine Support
-snd-soc-evm-objs := davinci-evm.o
-
-obj-$(CONFIG_SND_DAVINCI_SOC_GENERIC_EVM) += snd-soc-evm.o
 
+++ /dev/null
-config SND_OMAP_SOC
-       tristate "SoC Audio for Texas Instruments OMAP chips (deprecated)"
-       depends on (ARCH_OMAP && DMA_OMAP) || (ARM && COMPILE_TEST)
-       select SND_SDMA_SOC
-
-config SND_SDMA_SOC
-       tristate "SoC Audio for Texas Instruments chips using sDMA"
-       depends on DMA_OMAP || COMPILE_TEST
-       select SND_SOC_GENERIC_DMAENGINE_PCM
-
-config SND_OMAP_SOC_DMIC
-       tristate
-
-config SND_OMAP_SOC_MCBSP
-       tristate
-
-config SND_OMAP_SOC_MCPDM
-       tristate
-
-config SND_OMAP_SOC_HDMI_AUDIO
-       tristate "HDMI audio support for OMAP4+ based SoCs"
-       depends on SND_SDMA_SOC
-       help
-         For HDMI audio to work OMAPDSS HDMI support should be
-         enabled.
-         The hdmi audio driver implements cpu-dai component using the
-         callbacks provided by OMAPDSS and registers the component
-         under DSS HDMI device. Omap-pcm is registered for platform
-         component also under DSS HDMI device. Dummy codec is used as
-         as codec component. The hdmi audio driver implements also
-         the card and registers it under its own platform device.
-         The device for the driver is registered by OMAPDSS hdmi
-         driver.
-
-config SND_OMAP_SOC_N810
-       tristate "SoC Audio support for Nokia N810"
-       depends on SND_SDMA_SOC && MACH_NOKIA_N810 && I2C
-       select SND_OMAP_SOC_MCBSP
-       select SND_SOC_TLV320AIC3X
-       help
-         Say Y if you want to add support for SoC audio on Nokia N810.
-
-config SND_OMAP_SOC_RX51
-       tristate "SoC Audio support for Nokia N900 (RX-51)"
-       depends on SND_SDMA_SOC && ARM && I2C
-       select SND_OMAP_SOC_MCBSP
-       select SND_SOC_TLV320AIC3X
-       select SND_SOC_TPA6130A2
-       depends on GPIOLIB
-       help
-         Say Y if you want to add support for SoC audio on Nokia N900
-         cellphone.
-
-config SND_OMAP_SOC_AMS_DELTA
-       tristate "SoC Audio support for Amstrad E3 (Delta) videophone"
-       depends on SND_SDMA_SOC && MACH_AMS_DELTA && TTY
-       select SND_OMAP_SOC_MCBSP
-       select SND_SOC_CX20442
-       help
-         Say Y  if you want to add support  for SoC audio device  connected to
-         a handset and a speakerphone found on Amstrad E3 (Delta) videophone.
-
-         Note that in order to get those devices fully supported,  you have to
-         build  the kernel  with  standard  serial port  driver  included  and
-         configured for at least 4 ports.  Then, from userspace, you must load
-         a line discipline #19 on the modem (ttyS3) serial line.  The simplest
-         way to achieve this is to install util-linux-ng  and use the included
-         ldattach  utility.  This  can be  started  automatically  from  udev,
-         a simple rule like this one should do the trick (it does for me):
-               ACTION=="add", KERNEL=="controlC0", \
-                               RUN+="/usr/sbin/ldattach 19 /dev/ttyS3"
-
-config SND_OMAP_SOC_OSK5912
-       tristate "SoC Audio support for omap osk5912"
-       depends on SND_SDMA_SOC && MACH_OMAP_OSK && I2C
-       select SND_OMAP_SOC_MCBSP
-       select SND_SOC_TLV320AIC23_I2C
-       help
-         Say Y if you want to add support for SoC audio on osk5912.
-
-config SND_OMAP_SOC_OMAP_TWL4030
-       tristate "SoC Audio support for TI SoC based boards with twl4030 codec"
-       depends on TWL4030_CORE && SND_SDMA_SOC
-       select SND_OMAP_SOC_MCBSP
-       select SND_SOC_TWL4030
-       help
-         Say Y if you want to add support for SoC audio on TI SoC based boards
-         using twl4030 as c codec. This driver currently supports:
-         - Beagleboard or Devkit8000
-         - Gumstix Overo or CompuLab CM-T35/CM-T3730
-         - IGEP v2
-         - OMAP3EVM
-         - SDP3430
-         - Zoom2
-
-config SND_OMAP_SOC_OMAP_ABE_TWL6040
-       tristate "SoC Audio support for OMAP boards using ABE and twl6040 codec"
-       depends on TWL6040_CORE && SND_SDMA_SOC && COMMON_CLK
-       depends on ARCH_OMAP4 || (SOC_OMAP5 && MFD_PALMAS) || COMPILE_TEST
-       select SND_OMAP_SOC_DMIC
-       select SND_OMAP_SOC_MCPDM
-       select SND_SOC_TWL6040
-       select SND_SOC_DMIC
-       select COMMON_CLK_PALMAS if (SOC_OMAP5 && MFD_PALMAS)
-       select CLK_TWL6040
-       help
-         Say Y if you want to add support for SoC audio on OMAP boards using
-         ABE and twl6040 codec. This driver currently supports:
-         - SDP4430/Blaze boards
-         - PandaBoard (4430)
-         - PandaBoardES (4460)
-         - omap5-uevm (5432)
-
-config SND_OMAP_SOC_OMAP3_PANDORA
-       tristate "SoC Audio support for OMAP3 Pandora"
-       depends on TWL4030_CORE && SND_SDMA_SOC && MACH_OMAP3_PANDORA
-       select SND_OMAP_SOC_MCBSP
-       select SND_SOC_TWL4030
-       help
-         Say Y if you want to add support for SoC audio on the OMAP3 Pandora.
 
+++ /dev/null
-# SPDX-License-Identifier: GPL-2.0
-# OMAP Platform Support
-snd-soc-sdma-objs := sdma-pcm.o
-snd-soc-omap-dmic-objs := omap-dmic.o
-snd-soc-omap-mcbsp-objs := omap-mcbsp.o omap-mcbsp-st.o
-snd-soc-omap-mcpdm-objs := omap-mcpdm.o
-snd-soc-omap-hdmi-audio-objs := omap-hdmi-audio.o
-
-obj-$(CONFIG_SND_SDMA_SOC) += snd-soc-sdma.o
-obj-$(CONFIG_SND_OMAP_SOC_DMIC) += snd-soc-omap-dmic.o
-obj-$(CONFIG_SND_OMAP_SOC_MCBSP) += snd-soc-omap-mcbsp.o
-obj-$(CONFIG_SND_OMAP_SOC_MCPDM) += snd-soc-omap-mcpdm.o
-obj-$(CONFIG_SND_OMAP_SOC_HDMI_AUDIO) += snd-soc-omap-hdmi-audio.o
-
-# OMAP Machine Support
-snd-soc-n810-objs := n810.o
-snd-soc-rx51-objs := rx51.o
-snd-soc-ams-delta-objs := ams-delta.o
-snd-soc-osk5912-objs := osk5912.o
-snd-soc-omap-abe-twl6040-objs := omap-abe-twl6040.o
-snd-soc-omap-twl4030-objs := omap-twl4030.o
-snd-soc-omap3pandora-objs := omap3pandora.o
-
-obj-$(CONFIG_SND_OMAP_SOC_N810) += snd-soc-n810.o
-obj-$(CONFIG_SND_OMAP_SOC_RX51) += snd-soc-rx51.o
-obj-$(CONFIG_SND_OMAP_SOC_AMS_DELTA) += snd-soc-ams-delta.o
-obj-$(CONFIG_SND_OMAP_SOC_OSK5912) += snd-soc-osk5912.o
-obj-$(CONFIG_SND_OMAP_SOC_OMAP_ABE_TWL6040) += snd-soc-omap-abe-twl6040.o
-obj-$(CONFIG_SND_OMAP_SOC_OMAP_TWL4030) += snd-soc-omap-twl4030.o
-obj-$(CONFIG_SND_OMAP_SOC_OMAP3_PANDORA) += snd-soc-omap3pandora.o
 
--- /dev/null
+menu "Audio support for Texas Instruments SoCs"
+depends on DMA_OMAP || TI_EDMA || COMPILE_TEST
+
+config SND_SOC_TI_EDMA_PCM
+       tristate
+       select SND_SOC_GENERIC_DMAENGINE_PCM
+
+config SND_SOC_TI_SDMA_PCM
+       tristate
+       select SND_SOC_GENERIC_DMAENGINE_PCM
+
+comment "Texas Instruments DAI support for:"
+config SND_SOC_DAVINCI_ASP
+       tristate "daVinci Audio Serial Port (ASP) or McBSP suport"
+       depends on ARCH_DAVINCI || COMPILE_TEST
+       select SND_SOC_TI_EDMA_PCM
+       help
+         Say Y or M here if you want audio support via daVinci ASP or McBSP.
+         The driver only implements the ASP support which is a subset of
+         daVinci McBSP (w/o the multichannel support).
+
+config SND_SOC_DAVINCI_MCASP
+       tristate "Multichannel Audio Serial Port (McASP) support"
+       select SND_SOC_TI_EDMA_PCM if TI_EDMA
+       select SND_SOC_TI_SDMA_PCM if DMA_OMAP
+       help
+         Say Y or M here if you want to have support for McASP IP found in
+         various Texas Instruments SoCs like:
+         - daVinci devices
+         - Sitara line of SoCs (AM335x, AM438x, etc)
+         - DRA7x devices
+         - Keystone devices
+
+config SND_SOC_DAVINCI_VCIF
+       tristate "daVinci Voice Interface (VCIF) suport"
+       depends on ARCH_DAVINCI || COMPILE_TEST
+       select SND_SOC_TI_EDMA_PCM
+       help
+         Say Y or M here if you want audio support via daVinci VCIF.
+
+config SND_SOC_OMAP_DMIC
+       tristate "Digital Microphone Module (DMIC) support"
+       depends on ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
+       select SND_SOC_TI_SDMA_PCM
+       help
+         Say Y or M here if you want to have support for DMIC IP found in
+         OMAP4 and OMAP5.
+
+config SND_OMAP_SOC_MCBSP
+       tristate
+
+config SND_SOC_OMAP_MCBSP
+       tristate "Multichannel Buffered Serial Port (McBSP) support"
+       depends on ARCH_OMAP || ARCH_OMAP1 || COMPILE_TEST
+       select SND_SOC_TI_SDMA_PCM
+       select SND_OMAP_SOC_MCBSP
+       help
+         Say Y or M here if you want to have support for McBSP IP found in
+         Texas Instruments OMAP1/2/3/4/5 SoCs.
+
+config SND_SOC_OMAP_MCPDM
+       tristate "Multichannel PDM Controller (McPDM) support"
+       depends on ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
+       select SND_SOC_TI_SDMA_PCM
+       help
+         Say Y or M here if you want to have support for McPDM IP found in
+         OMAP4 and OMAP5.
+
+comment "Audio support for boards with Texas Instruments SoCs"
+config SND_SOC_NOKIA_N810
+       tristate "SoC Audio support for Nokia N810"
+       depends on MACH_NOKIA_N810 && I2C
+       select SND_SOC_OMAP_MCBSP
+       select SND_SOC_TLV320AIC3X
+       help
+         Say Y or M if you want to add support for SoC audio on Nokia N810.
+
+config SND_SOC_NOKIA_RX51
+       tristate "SoC Audio support for Nokia RX-51"
+       depends on ARCH_OMAP3 && I2C && GPIOLIB
+       select SND_SOC_OMAP_MCBSP
+       select SND_SOC_TLV320AIC3X
+       select SND_SOC_TPA6130A2
+       help
+         Say Y or M if you want to add support for SoC audio on Nokia RX-51
+         hardware. This is also known as Nokia N900 product.
+
+config SND_SOC_OMAP3_PANDORA
+       tristate "SoC Audio support for OMAP3 Pandora"
+       depends on ARCH_OMAP3
+       depends on TWL4030_CORE
+       select SND_SOC_OMAP_MCBSP
+       select SND_SOC_TWL4030
+       help
+         Say Y or M if you want to add support for SoC audio on the OMAP3 Pandora.
+
+config SND_SOC_OMAP3_TWL4030
+       tristate "SoC Audio support for OMAP3 based boards with twl4030 codec"
+       depends on ARCH_OMAP3 || COMPILE_TEST
+       depends on TWL4030_CORE
+       select SND_SOC_OMAP_MCBSP
+       select SND_SOC_TWL4030
+       help
+         Say Y or M if you want to add support for SoC audio on OMAP3 based
+         boards using twl4030 as codec. This driver currently supports:
+         - Beagleboard or Devkit8000
+         - Gumstix Overo or CompuLab CM-T35/CM-T3730
+         - IGEP v2
+         - OMAP3EVM
+         - SDP3430
+         - Zoom2
+
+config SND_SOC_OMAP_ABE_TWL6040
+       tristate "SoC Audio support for OMAP boards using ABE and twl6040 codec"
+       depends on TWL6040_CORE && COMMON_CLK
+       depends on ARCH_OMAP4 || (SOC_OMAP5 && MFD_PALMAS) || COMPILE_TEST
+       select SND_SOC_OMAP_DMIC
+       select SND_SOC_OMAP_MCPDM
+       select SND_SOC_TWL6040
+       help
+         Say Y or M if you want to add support for SoC audio on OMAP boards
+         using ABE and twl6040 codec. This driver currently supports:
+         - SDP4430/Blaze boards
+         - PandaBoard (4430)
+         - PandaBoardES (4460)
+         - OMAP5 uEVM
+
+config SND_SOC_OMAP_AMS_DELTA
+       tristate "SoC Audio support for Amstrad E3 (Delta) videophone"
+       depends on MACH_AMS_DELTA && TTY
+       select SND_SOC_OMAP_MCBSP
+       select SND_SOC_CX20442
+       help
+         Say Y  or M if you want to add support  for SoC audio device
+         connected to a handset and a speakerphone found on Amstrad E3 (Delta)
+         videophone.
+
+         Note that in order to get those devices fully supported,  you have to
+         build  the kernel  with  standard  serial port  driver  included  and
+         configured for at least 4 ports.  Then, from userspace, you must load
+         a line discipline #19 on the modem (ttyS3) serial line.  The simplest
+         way to achieve this is to install util-linux-ng  and use the included
+         ldattach  utility.  This  can be  started  automatically  from  udev,
+         a simple rule like this one should do the trick (it does for me):
+               ACTION=="add", KERNEL=="controlC0", \
+                               RUN+="/usr/sbin/ldattach 19 /dev/ttyS3"
+
+config SND_SOC_OMAP_HDMI
+       tristate "OMAP4/5 HDMI audio support"
+       depends on OMAP4_DSS_HDMI || OMAP5_DSS_HDMI || COMPILE_TEST
+       select SND_SOC_TI_SDMA_PCM
+       help
+         For HDMI audio to work OMAPDSS HDMI support should be
+         enabled.
+         The hdmi audio driver implements cpu-dai component using the
+         callbacks provided by OMAPDSS and registers the component
+         under DSS HDMI device. Omap-pcm is registered for platform
+         component also under DSS HDMI device. Dummy codec is used as
+         as codec component. The hdmi audio driver implements also
+         the card and registers it under its own platform device.
+         The device for the driver is registered by OMAPDSS hdmi
+         driver.
+
+config SND_SOC_OMAP_OSK5912
+       tristate "SoC Audio support for omap osk5912"
+       depends on MACH_OMAP_OSK && I2C
+       select SND_SOC_OMAP_MCBSP
+       select SND_SOC_TLV320AIC23_I2C
+       help
+         Say Y or M if you want to add support for SoC audio on osk5912.
+
+config SND_SOC_DAVINCI_EVM
+       tristate "SoC Audio support for DaVinci EVMs"
+       depends on ARCH_DAVINCI && I2C
+       select SND_SOC_DAVINCI_ASP if MACH_DAVINCI_DM355_EVM
+       select SND_SOC_DAVINCI_ASP if SND_SOC_DM365_AIC3X_CODEC
+       select SND_SOC_DAVINCI_VCIF if SND_SOC_DM365_VOICE_CODEC
+       select SND_SOC_DAVINCI_ASP if MACH_DAVINCI_EVM # DM6446
+       select SND_SOC_DAVINCI_MCASP if MACH_DAVINCI_DM6467_EVM
+       select SND_SOC_SPDIF if MACH_DAVINCI_DM6467_EVM
+       select SND_SOC_DAVINCI_MCASP if MACH_DAVINCI_DA830_EVM
+       select SND_SOC_DAVINCI_MCASP if MACH_DAVINCI_DA850_EVM
+       select SND_SOC_TLV320AIC3X
+       help
+         Say Y if you want to add support for SoC audio on the following TI
+         DaVinci EVM platforms:
+         - DM355
+         - DM365
+         - DM6446
+         - DM6447
+         - DM830
+         - DM850
+
+choice
+       prompt "DM365 codec select"
+       depends on SND_SOC_DAVINCI_EVM
+       depends on MACH_DAVINCI_DM365_EVM
+
+config SND_SOC_DM365_AIC3X_CODEC
+       bool "Audio Codec - AIC3101"
+       help
+         Say Y if you want to add support for AIC3101 audio codec
+
+config SND_SOC_DM365_VOICE_CODEC
+       bool "Voice Codec - CQ93VC"
+       select MFD_DAVINCI_VOICECODEC
+       select SND_SOC_CQ0093VC
+       help
+         Say Y if you want to add support for SoC On-chip voice codec
+endchoice
+
+menu "Deprecated kconfig options:"
+
+config SND_AM33XX_SOC_EVM
+       tristate "SoC Audio for the AM33XX chip based boards"
+       depends on SOC_AM33XX && I2C
+       select SND_SOC_TLV320AIC3X
+       select SND_SOC_DAVINCI_MCASP
+       help
+         Say Y or M if you want to add support for SoC audio on AM33XX
+         boards using McASP and TLV320AIC3X codec. For example AM335X-EVM,
+         AM335X-EVMSK, and BeagelBone with AudioCape boards have this
+         setup.
+
+config SND_DAVINCI_SOC_EVM
+       tristate "SoC Audio support for DaVinci DM6446, DM355 or DM365 EVM"
+       depends on ARCH_DAVINCI && I2C
+       depends on MACH_DAVINCI_EVM || MACH_DAVINCI_DM355_EVM || MACH_DAVINCI_DM365_EVM
+       select SND_SOC_DAVINCI_EVM
+       help
+         Say Y if you want to add support for SoC audio on TI
+         DaVinci DM6446, DM355 or DM365 EVM platforms.
+
+choice
+       prompt "DM365 codec select"
+       depends on SND_DAVINCI_SOC_EVM
+       depends on MACH_DAVINCI_DM365_EVM
+
+config SND_DM365_AIC3X_CODEC
+       tristate "Audio Codec - AIC3101"
+       select SND_SOC_DM365_AIC3X_CODEC
+       help
+         Say Y if you want to add support for AIC3101 audio codec
+
+config SND_DM365_VOICE_CODEC
+       tristate "Voice Codec - CQ93VC"
+       select SND_SOC_DM365_VOICE_CODEC
+       help
+         Say Y if you want to add support for SoC On-chip voice codec
+endchoice
+
+config  SND_DM6467_SOC_EVM
+       tristate "SoC Audio support for DaVinci DM6467 EVM"
+       depends on MACH_DAVINCI_DM6467_EVM && I2C
+       select SND_SOC_DAVINCI_EVM
+
+       help
+         Say Y if you want to add support for SoC audio on TI
+
+config  SND_DA830_SOC_EVM
+       tristate "SoC Audio support for DA830/OMAP-L137 EVM"
+       depends on MACH_DAVINCI_DA830_EVM && I2C
+       select SND_SOC_DAVINCI_EVM
+
+       help
+         Say Y if you want to add support for SoC audio on TI
+         DA830/OMAP-L137 EVM
+
+config  SND_DA850_SOC_EVM
+       tristate "SoC Audio support for DA850/OMAP-L138 EVM"
+       depends on MACH_DAVINCI_DA850_EVM && I2C
+       select SND_SOC_DAVINCI_EVM
+       help
+         Say Y if you want to add support for SoC audio on TI
+         DA850/OMAP-L138 EVM
+
+config SND_OMAP_SOC_HDMI_AUDIO
+       tristate "HDMI audio support for OMAP4+ based SoCs"
+       select SND_SOC_OMAP_HDMI
+       help
+         For HDMI audio to work OMAPDSS HDMI support should be
+         enabled.
+         The hdmi audio driver implements cpu-dai component using the
+         callbacks provided by OMAPDSS and registers the component
+         under DSS HDMI device. Omap-pcm is registered for platform
+         component also under DSS HDMI device. Dummy codec is used as
+         as codec component. The hdmi audio driver implements also
+         the card and registers it under its own platform device.
+         The device for the driver is registered by OMAPDSS hdmi
+         driver.
+
+config SND_OMAP_SOC_N810
+       tristate "SoC Audio support for Nokia N810"
+       depends on MACH_NOKIA_N810 && I2C
+       select SND_SOC_NOKIA_N810
+       help
+         Say Y if you want to add support for SoC audio on Nokia N810.
+
+config SND_OMAP_SOC_RX51
+       tristate "SoC Audio support for Nokia N900 (RX-51)"
+       depends on ARM && I2C && GPIOLIB && ARCH_OMAP3
+       select SND_SOC_NOKIA_RX51
+       help
+         Say Y if you want to add support for SoC audio on Nokia N900
+         cellphone.
+
+config SND_OMAP_SOC_AMS_DELTA
+       tristate "SoC Audio support for Amstrad E3 (Delta) videophone"
+       depends on MACH_AMS_DELTA && TTY
+       select SND_SOC_OMAP_AMS_DELTA
+       help
+         Say Y  if you want to add support  for SoC audio device  connected to
+         a handset and a speakerphone found on Amstrad E3 (Delta) videophone.
+
+         Note that in order to get those devices fully supported,  you have to
+         build  the kernel  with  standard  serial port  driver  included  and
+         configured for at least 4 ports.  Then, from userspace, you must load
+         a line discipline #19 on the modem (ttyS3) serial line.  The simplest
+         way to achieve this is to install util-linux-ng  and use the included
+         ldattach  utility.  This  can be  started  automatically  from  udev,
+         a simple rule like this one should do the trick (it does for me):
+               ACTION=="add", KERNEL=="controlC0", \
+                               RUN+="/usr/sbin/ldattach 19 /dev/ttyS3"
+
+config SND_OMAP_SOC_OSK5912
+       tristate "SoC Audio support for omap osk5912"
+       depends on MACH_OMAP_OSK && I2C
+       select SND_SOC_OMAP_OSK5912
+       help
+         Say Y if you want to add support for SoC audio on osk5912.
+
+config SND_OMAP_SOC_OMAP_TWL4030
+       tristate "SoC Audio support for TI SoC based boards with twl4030 codec"
+       depends on TWL4030_CORE
+       select SND_SOC_OMAP3_TWL4030
+       help
+         Say Y if you want to add support for SoC audio on TI SoC based boards
+         using twl4030 as c codec. This driver currently supports:
+         - Beagleboard or Devkit8000
+         - Gumstix Overo or CompuLab CM-T35/CM-T3730
+         - IGEP v2
+         - OMAP3EVM
+         - SDP3430
+         - Zoom2
+
+config SND_OMAP_SOC_OMAP_ABE_TWL6040
+       tristate "SoC Audio support for OMAP boards using ABE and twl6040 codec"
+       depends on TWL6040_CORE && COMMON_CLK
+       depends on ARCH_OMAP4 || (SOC_OMAP5 && MFD_PALMAS) || COMPILE_TEST
+       select SND_SOC_OMAP_ABE_TWL6040
+       help
+         Say Y if you want to add support for SoC audio on OMAP boards using
+         ABE and twl6040 codec. This driver currently supports:
+         - SDP4430/Blaze boards
+         - PandaBoard (4430)
+         - PandaBoardES (4460)
+         - omap5-uevm (5432)
+
+config SND_OMAP_SOC_OMAP3_PANDORA
+       tristate "SoC Audio support for OMAP3 Pandora"
+       depends on TWL4030_CORE
+       select SND_SOC_OMAP3_PANDORA
+       help
+         Say Y if you want to add support for SoC audio on the OMAP3 Pandora.
+endmenu
+
+endmenu
+
 
--- /dev/null
+# SPDX-License-Identifier: GPL-2.0
+
+# Platform drivers
+snd-soc-ti-edma-objs := edma-pcm.o
+snd-soc-ti-sdma-objs := sdma-pcm.o
+
+obj-$(CONFIG_SND_SOC_TI_EDMA_PCM) += snd-soc-ti-edma.o
+obj-$(CONFIG_SND_SOC_TI_SDMA_PCM) += snd-soc-ti-sdma.o
+
+# CPU DAI drivers
+snd-soc-davinci-asp-objs := davinci-i2s.o
+snd-soc-davinci-mcasp-objs := davinci-mcasp.o
+snd-soc-davinci-vcif-objs := davinci-vcif.o
+snd-soc-omap-dmic-objs := omap-dmic.o
+snd-soc-omap-mcbsp-objs := omap-mcbsp.o omap-mcbsp-st.o
+snd-soc-omap-mcpdm-objs := omap-mcpdm.o
+
+obj-$(CONFIG_SND_SOC_DAVINCI_ASP) += snd-soc-davinci-asp.o
+obj-$(CONFIG_SND_SOC_DAVINCI_MCASP) += snd-soc-davinci-mcasp.o
+obj-$(CONFIG_SND_SOC_DAVINCI_VCIF) += snd-soc-davinci-vcif.o
+obj-$(CONFIG_SND_SOC_OMAP_DMIC) += snd-soc-omap-dmic.o
+obj-$(CONFIG_SND_SOC_OMAP_MCBSP) += snd-soc-omap-mcbsp.o
+obj-$(CONFIG_SND_SOC_OMAP_MCPDM) += snd-soc-omap-mcpdm.o
+
+# Machine drivers
+snd-soc-davinci-evm-objs := davinci-evm.o
+snd-soc-n810-objs := n810.o
+snd-soc-rx51-objs := rx51.o
+snd-soc-omap3pandora-objs := omap3pandora.o
+snd-soc-omap-twl4030-objs := omap-twl4030.o
+snd-soc-omap-abe-twl6040-objs := omap-abe-twl6040.o
+snd-soc-ams-delta-objs := ams-delta.o
+snd-soc-omap-hdmi-objs := omap-hdmi.o
+snd-soc-osk5912-objs := osk5912.o
+
+obj-$(CONFIG_SND_SOC_DAVINCI_EVM) += snd-soc-davinci-evm.o
+obj-$(CONFIG_SND_SOC_NOKIA_N810) += snd-soc-n810.o
+obj-$(CONFIG_SND_SOC_NOKIA_RX51) += snd-soc-rx51.o
+obj-$(CONFIG_SND_SOC_OMAP3_PANDORA) += snd-soc-omap3pandora.o
+obj-$(CONFIG_SND_SOC_OMAP3_TWL4030) += snd-soc-omap-twl4030.o
+obj-$(CONFIG_SND_SOC_OMAP_ABE_TWL6040) += snd-soc-omap-abe-twl6040.o
+obj-$(CONFIG_SND_SOC_OMAP_AMS_DELTA) += snd-soc-ams-delta.o
+obj-$(CONFIG_SND_SOC_OMAP_HDMI) += snd-soc-omap-hdmi.o
+obj-$(CONFIG_SND_SOC_OMAP_OSK5912) += snd-soc-osk5912.o
 
 };
 
 static struct snd_soc_dai_link dm365_evm_dai = {
-#ifdef CONFIG_SND_DM365_AIC3X_CODEC
+#ifdef CONFIG_SND_SOC_DM365_AIC3X_CODEC
        .name = "TLV320AIC3X",
        .stream_name = "AIC3X",
        .cpu_dai_name = "davinci-mcbsp",
        .ops = &evm_ops,
        .dai_fmt = SND_SOC_DAIFMT_DSP_B | SND_SOC_DAIFMT_CBM_CFM |
                   SND_SOC_DAIFMT_IB_NF,
-#elif defined(CONFIG_SND_DM365_VOICE_CODEC)
+#elif defined(CONFIG_SND_SOC_DM365_VOICE_CODEC)
        .name = "Voice Codec - CQ93VC",
        .stream_name = "CQ93",
        .cpu_dai_name = "davinci-vcif",
 
 #include <sound/dmaengine_pcm.h>
 
 #include "edma-pcm.h"
-#include "../omap/sdma-pcm.h"
+#include "sdma-pcm.h"
 #include "davinci-mcasp.h"
 
 #define MCASP_MAX_AFIFO_DEPTH  64
        ret = davinci_mcasp_get_dma_type(mcasp);
        switch (ret) {
        case PCM_EDMA:
-#if IS_BUILTIN(CONFIG_SND_EDMA_SOC) || \
-       (IS_MODULE(CONFIG_SND_DAVINCI_SOC_MCASP) && \
-        IS_MODULE(CONFIG_SND_EDMA_SOC))
+#if IS_BUILTIN(CONFIG_SND_SOC_TI_EDMA_PCM) || \
+       (IS_MODULE(CONFIG_SND_SOC_DAVINCI_MCASP) && \
+        IS_MODULE(CONFIG_SND_SOC_TI_EDMA_PCM))
                ret = edma_pcm_platform_register(&pdev->dev);
 #else
                dev_err(&pdev->dev, "Missing SND_EDMA_SOC\n");
 #endif
                break;
        case PCM_SDMA:
-#if IS_BUILTIN(CONFIG_SND_SDMA_SOC) || \
-       (IS_MODULE(CONFIG_SND_DAVINCI_SOC_MCASP) && \
-        IS_MODULE(CONFIG_SND_SDMA_SOC))
+#if IS_BUILTIN(CONFIG_SND_SOC_TI_SDMA_PCM) || \
+       (IS_MODULE(CONFIG_SND_SOC_DAVINCI_MCASP) && \
+        IS_MODULE(CONFIG_SND_SOC_TI_SDMA_PCM))
                ret = sdma_pcm_platform_register(&pdev->dev, NULL, NULL);
 #else
                dev_err(&pdev->dev, "Missing SND_SDMA_SOC\n");
 
 #ifndef __EDMA_PCM_H__
 #define __EDMA_PCM_H__
 
-#if IS_ENABLED(CONFIG_SND_EDMA_SOC)
+#if IS_ENABLED(CONFIG_SND_SOC_TI_EDMA_PCM)
 int edma_pcm_platform_register(struct device *dev);
 #else
 static inline int edma_pcm_platform_register(struct device *dev)
 {
        return 0;
 }
-#endif /* CONFIG_SND_EDMA_SOC */
+#endif /* CONFIG_SND_SOC_TI_EDMA_PCM */
 
 #endif /* __EDMA_PCM_H__ */
 
 #ifndef __SDMA_PCM_H__
 #define __SDMA_PCM_H__
 
-#if IS_ENABLED(CONFIG_SND_SDMA_SOC)
+#if IS_ENABLED(CONFIG_SND_SOC_TI_SDMA_PCM)
 int sdma_pcm_platform_register(struct device *dev,
                               char *txdmachan, char *rxdmachan);
 #else
 {
        return -ENODEV;
 }
-#endif /* CONFIG_SND_SDMA_SOC */
+#endif /* CONFIG_SND_SOC_TI_SDMA_PCM */
 
 #endif /* __SDMA_PCM_H__ */