ASoC: tegra: Add Tegra210 based DMIC driver
authorSameer Pujar <spujar@nvidia.com>
Sun, 19 Jul 2020 05:01:22 +0000 (10:31 +0530)
committerMark Brown <broonie@kernel.org>
Mon, 20 Jul 2020 14:10:22 +0000 (15:10 +0100)
commit8c8ff982e9e2b2eb9255fc393f938915b0ddc127
tree22ada06356f4c17f9d47af83f3ffe3534576a822
parent1c3b89fb7e4a78ddcd627e3f218a216e2136ae9b
ASoC: tegra: Add Tegra210 based DMIC driver

The Digital MIC (DMIC) Controller is used to interface with Pulse Density
Modulation (PDM) input devices. The DMIC controller implements a converter
to convert PDM signals to Pulse Code Modulation (PCM) signals. From signal
flow perspective, the DMIC can be viewed as a PDM receiver.

This patch registers DMIC component with ASoC framework. The component
driver exposes DAPM widgets, routes and kcontrols for the device. The DAI
driver exposes DMIC 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 DMIC devices can be enabled in the DT via
"nvidia,tegra210-dmic" compatible string. This driver can be used for
Tegra186 and Tegra194 chips as well.

Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Link: https://lore.kernel.org/r/1595134890-16470-4-git-send-email-spujar@nvidia.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/tegra/Kconfig
sound/soc/tegra/Makefile
sound/soc/tegra/tegra210_dmic.c [new file with mode: 0644]
sound/soc/tegra/tegra210_dmic.h [new file with mode: 0644]