mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-12 13:34:10 +08:00
a2df8c2d5b
Asynchronous Sample Rate Converter (ASRC) converts the sampling frequency of the input signal from one frequency to another. It can handle over a wide range of sample rate ratios (freq_in/freq_out) from 1:24 to 24:1. ASRC has two modes of operation. One where ratio can be programmed in SW and the other where it gets the information from ratio estimator module. The latter mode above can help address the cases where the sample rate is not known at the stream set up time or is potentially time varying. In addition, the ratio between input and output sample rate can be any arbitrary number and the input and output clocks could be derived from asynchronous clocks. This patch registers ASRC driver with ASoC framework. The component driver exposes DAPM widgets, routes and kcontrols for the device. The DAI driver exposes ASRC interfaces, which can be used to connect different components in the ASoC layer. Makefile and Kconfig support is added to allow build the driver. Signed-off-by: Sameer Pujar <spujar@nvidia.com> Link: https://lore.kernel.org/r/1648735412-32220-3-git-send-email-spujar@nvidia.com Signed-off-by: Mark Brown <broonie@kernel.org>
50 lines
2.3 KiB
Makefile
50 lines
2.3 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
# Tegra platform Support
|
|
snd-soc-tegra-pcm-objs := tegra_pcm.o
|
|
snd-soc-tegra-utils-objs += tegra_asoc_utils.o
|
|
snd-soc-tegra20-ac97-objs := tegra20_ac97.o
|
|
snd-soc-tegra20-das-objs := tegra20_das.o
|
|
snd-soc-tegra20-i2s-objs := tegra20_i2s.o
|
|
snd-soc-tegra20-spdif-objs := tegra20_spdif.o
|
|
snd-soc-tegra30-ahub-objs := tegra30_ahub.o
|
|
snd-soc-tegra30-i2s-objs := tegra30_i2s.o
|
|
snd-soc-tegra210-ahub-objs := tegra210_ahub.o
|
|
snd-soc-tegra210-dmic-objs := tegra210_dmic.o
|
|
snd-soc-tegra210-i2s-objs := tegra210_i2s.o
|
|
snd-soc-tegra186-asrc-objs := tegra186_asrc.o
|
|
snd-soc-tegra186-dspk-objs := tegra186_dspk.o
|
|
snd-soc-tegra210-admaif-objs := tegra210_admaif.o
|
|
snd-soc-tegra210-mvc-objs := tegra210_mvc.o
|
|
snd-soc-tegra210-sfc-objs := tegra210_sfc.o
|
|
snd-soc-tegra210-amx-objs := tegra210_amx.o
|
|
snd-soc-tegra210-adx-objs := tegra210_adx.o
|
|
snd-soc-tegra210-mixer-objs := tegra210_mixer.o
|
|
|
|
obj-$(CONFIG_SND_SOC_TEGRA) += snd-soc-tegra-pcm.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA20_AC97) += snd-soc-tegra20-ac97.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA20_DAS) += snd-soc-tegra20-das.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA20_I2S) += snd-soc-tegra20-i2s.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA20_SPDIF) += snd-soc-tegra20-spdif.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA30_AHUB) += snd-soc-tegra30-ahub.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA30_I2S) += snd-soc-tegra30-i2s.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA210_DMIC) += snd-soc-tegra210-dmic.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA210_AHUB) += snd-soc-tegra210-ahub.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA210_I2S) += snd-soc-tegra210-i2s.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA186_ASRC) += snd-soc-tegra186-asrc.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA186_DSPK) += snd-soc-tegra186-dspk.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA210_ADMAIF) += snd-soc-tegra210-admaif.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA210_MVC) += snd-soc-tegra210-mvc.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA210_SFC) += snd-soc-tegra210-sfc.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA210_AMX) += snd-soc-tegra210-amx.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA210_ADX) += snd-soc-tegra210-adx.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA210_MIXER) += snd-soc-tegra210-mixer.o
|
|
|
|
# Tegra machine Support
|
|
snd-soc-tegra-wm8903-objs := tegra_wm8903.o
|
|
snd-soc-tegra-machine-objs := tegra_asoc_machine.o
|
|
snd-soc-tegra-audio-graph-card-objs := tegra_audio_graph_card.o
|
|
|
|
obj-$(CONFIG_SND_SOC_TEGRA_WM8903) += snd-soc-tegra-wm8903.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA_MACHINE_DRV) += snd-soc-tegra-machine.o
|
|
obj-$(CONFIG_SND_SOC_TEGRA_AUDIO_GRAPH_CARD) += snd-soc-tegra-audio-graph-card.o
|