mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-22 17:25:35 +03:00
ASoC: tegra-alt: Alternative DAPM-based driver
This driver is for the ahub with using DAPM. It supports kcontrols to route within the ahub clients by user space so we can route the memory to amx, adx and other ahub clients to I2S for playback/capture. Bug 1354235 Bug 1373091 Change-Id: Ia43b007de7c1161ce551087428a090ff2bf1e09e Based-on-work-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Arun Shamanna Lakshmi <aruns@nvidia.com> Signed-off-by: Songhee Baek <sbaek@nvidia.com> Reviewed-on: http://git-master/r/289919 GVS: Gerrit_Virtual_Submit Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
This commit is contained in:
committed by
Sameer Pujar
parent
f8c3f7a29e
commit
64a271ff0b
49
sound/soc/tegra-alt/Kconfig
Normal file
49
sound/soc/tegra-alt/Kconfig
Normal file
@@ -0,0 +1,49 @@
|
||||
config SND_SOC_TEGRA_ALT
|
||||
tristate "Alternative DAPM-based SoC audio support for the Tegra System-on-Chip"
|
||||
depends on ARCH_TEGRA && TEGRA20_APB_DMA
|
||||
select REGMAP_MMIO
|
||||
select SND_SOC_DMAENGINE_PCM if TEGRA20_APB_DMA
|
||||
help
|
||||
Say Y or M here if you want support for SoC audio on Tegra, using the
|
||||
alternative driver that exposes to user-space the full routing capabilities
|
||||
of the AHUB (Audio HUB) hardware module.
|
||||
|
||||
config SND_SOC_TEGRA_ALT_30_OR_LATER
|
||||
def_bool y
|
||||
depends on SND_SOC_TEGRA_ALT
|
||||
depends on ARCH_TEGRA_3x_SOC || ARCH_TEGRA_11x_SOC || ARCH_TEGRA_12x_SOC
|
||||
|
||||
config SND_SOC_TEGRA_ALT_114_OR_LATER
|
||||
def_bool y
|
||||
depends on SND_SOC_TEGRA_ALT
|
||||
depends on ARCH_TEGRA_11x_SOC || ARCH_TEGRA_12x_SOC
|
||||
|
||||
config SND_SOC_TEGRA30_XBAR_ALT
|
||||
tristate "Tegra30 XBAR driver"
|
||||
depends on SND_SOC_TEGRA_ALT && SND_SOC_TEGRA_ALT_30_OR_LATER
|
||||
help
|
||||
Say Y or M if you want to add support for Tegra30 XBAR module.
|
||||
|
||||
config SND_SOC_TEGRA30_APBIF_ALT
|
||||
tristate "Tegra30 APBIF driver"
|
||||
depends on SND_SOC_TEGRA30_XBAR_ALT && SND_SOC_TEGRA_ALT_30_OR_LATER
|
||||
help
|
||||
Say Y or M if you want to add support for Tegra30 APBIF module.
|
||||
|
||||
config SND_SOC_TEGRA30_I2S_ALT
|
||||
tristate "Tegra30 I2S driver"
|
||||
depends on SND_SOC_TEGRA_ALT && SND_SOC_TEGRA_ALT_30_OR_LATER
|
||||
help
|
||||
Say Y or M if you want to add support for Tegra30 I2S module.
|
||||
|
||||
config SND_SOC_TEGRA114_AMX_ALT
|
||||
tristate "Tegra114 AMX driver"
|
||||
depends on SND_SOC_TEGRA_ALT && SND_SOC_TEGRA_ALT_114_OR_LATER
|
||||
help
|
||||
Say Y or M if you want to add support for Tegra114 AMX module.
|
||||
|
||||
config SND_SOC_TEGRA114_ADX_ALT
|
||||
tristate "Tegra114 ADX driver"
|
||||
depends on SND_SOC_TEGRA_ALT && SND_SOC_TEGRA_ALT_114_OR_LATER
|
||||
help
|
||||
Say Y or M if you want to add support for Tegra114 ADX module.
|
||||
20
sound/soc/tegra-alt/Makefile
Normal file
20
sound/soc/tegra-alt/Makefile
Normal file
@@ -0,0 +1,20 @@
|
||||
GCOV_PROFILE := y
|
||||
|
||||
subdir-ccflags-y := -Werror
|
||||
|
||||
# Tegra platform Support
|
||||
snd-soc-tegra-alt-pcm-objs := tegra_pcm_alt.o
|
||||
snd-soc-tegra-alt-utils-objs := tegra_asoc_utils_alt.o
|
||||
snd-soc-tegra30-alt-apbif-objs := tegra30_apbif_alt.o
|
||||
snd-soc-tegra30-alt-xbar-objs := tegra30_xbar_alt.o
|
||||
snd-soc-tegra30-alt-i2s-objs := tegra30_i2s_alt.o
|
||||
snd-soc-tegra114-alt-amx-objs := tegra114_amx_alt.o
|
||||
snd-soc-tegra114-alt-adx-objs := tegra114_adx_alt.o
|
||||
|
||||
obj-$(CONFIG_SND_SOC_TEGRA_ALT) += snd-soc-tegra-alt-pcm.o
|
||||
obj-$(CONFIG_SND_SOC_TEGRA_ALT) += snd-soc-tegra-alt-utils.o
|
||||
obj-$(CONFIG_SND_SOC_TEGRA30_APBIF_ALT) += snd-soc-tegra30-alt-apbif.o
|
||||
obj-$(CONFIG_SND_SOC_TEGRA30_XBAR_ALT) += snd-soc-tegra30-alt-xbar.o
|
||||
obj-$(CONFIG_SND_SOC_TEGRA30_I2S_ALT) += snd-soc-tegra30-alt-i2s.o
|
||||
obj-$(CONFIG_SND_SOC_TEGRA114_AMX_ALT) += snd-soc-tegra114-alt-amx.o
|
||||
obj-$(CONFIG_SND_SOC_TEGRA114_ADX_ALT) += snd-soc-tegra114-alt-adx.o
|
||||
Reference in New Issue
Block a user