This series adds support for Asynchronous Sample Rate Converter (ASRC) module on Tegra186 and later generations of SoCs. ASRC is a client of AHUB. The driver and DT support is added to make it work with Tegra audio graph card. The module can be plugged into audio path using ALSA mixer controls.
ASRC supports two modes of operation, where it gets the ratio info from SW and ratio detector module. Presently the support is added for SW mode.
Sameer Pujar (6): ASoC: tegra: Add binding doc for ASRC module ASoC: tegra: Add Tegra186 based ASRC driver ASoC: tegra: AHUB routes for ASRC module arm64: defconfig: Build Tegra ASRC module arm64: tegra: Add ASRC device on Tegra186 and later arm64: tegra: Enable ASRC on various platforms
.../bindings/sound/nvidia,tegra186-asrc.yaml | 81 ++ .../bindings/sound/nvidia,tegra210-ahub.yaml | 4 + arch/arm64/boot/dts/nvidia/tegra186-p2771-0000.dts | 223 +++++ arch/arm64/boot/dts/nvidia/tegra186.dtsi | 7 + arch/arm64/boot/dts/nvidia/tegra194-p2972-0000.dts | 223 +++++ .../arm64/boot/dts/nvidia/tegra194-p3509-0000.dtsi | 223 +++++ arch/arm64/boot/dts/nvidia/tegra194.dtsi | 8 + .../dts/nvidia/tegra234-p3737-0000+p3701-0000.dts | 223 +++++ arch/arm64/boot/dts/nvidia/tegra234.dtsi | 8 + arch/arm64/configs/defconfig | 1 + sound/soc/tegra/Kconfig | 12 + sound/soc/tegra/Makefile | 2 + sound/soc/tegra/tegra186_asrc.c | 1045 ++++++++++++++++++++ sound/soc/tegra/tegra186_asrc.h | 113 +++ sound/soc/tegra/tegra210_ahub.c | 82 +- 15 files changed, 2254 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra186-asrc.yaml create mode 100644 sound/soc/tegra/tegra186_asrc.c create mode 100644 sound/soc/tegra/tegra186_asrc.h