[PATCH v3 07/10] ASoC: tegra: add Tegra210 based ADMAIF driver

Dmitry Osipenko digetx at gmail.com
Fri Feb 21 07:08:44 CET 2020


20.02.2020 09:34, Sameer Pujar пишет:
> ADMAIF is the interface between ADMA and AHUB. Each ADMA channel that
> sends/receives data to/from AHUB must intreface through an ADMAIF channel.
> ADMA channel sending data to AHUB pairs with an ADMAIF Tx channel and
> similarly ADMA channel receiving data from AHUB pairs with an ADMAIF Rx
> channel. Buffer size is configuranle for each ADMAIF channel, but currently
> SW uses default values.
> 
> This patch registers ADMAIF driver with ASoC framework. The component
> driver exposes DAPM widgets, routes and kcontrols for the device. The DAI
> driver exposes ADMAIF interfaces, which can be used to connect different
> components in the ASoC layer. Makefile and Kconfig support is added to
> allow to build the driver. The ADMAIF device can be enabled in the DT via
> "nvidia,tegra210-admaif" compatible binding.
> 
> Tegra PCM driver is updated to expose required PCM interfaces and
> snd_pcm_ops callbacks.
> 
> Signed-off-by: Sameer Pujar <spujar at nvidia.com>
> ---
...
> +int tegra_pcm_construct(struct snd_soc_component *component,
> +			struct snd_soc_pcm_runtime *rtd);
> +void tegra_pcm_destruct(struct snd_soc_component *component,
> +			struct snd_pcm *pcm);
> +int tegra_pcm_open(struct snd_soc_component *component,
> +		   struct snd_pcm_substream *substream);
> +int tegra_pcm_close(struct snd_soc_component *component,
> +		    struct snd_pcm_substream *substream);
> +int tegra_pcm_hw_params(struct snd_soc_component *component,
> +			struct snd_pcm_substream *substream,
> +			struct snd_pcm_hw_params *params);
> +int tegra_pcm_hw_free(struct snd_soc_component *component,
> +		      struct snd_pcm_substream *substream);
> +int tegra_pcm_mmap(struct snd_soc_component *component,
> +		   struct snd_pcm_substream *substream,
> +		   struct vm_area_struct *vma);

> +int tegra_pcm_trigger(struct snd_soc_component *component,
> +		      struct snd_pcm_substream *substream, int cmd);

Looks like this function doesn't exist.


More information about the Alsa-devel mailing list