This series adds support for Output Prcoessing Module (OPE) module on Tegra210 and later generations of SoCs. OPE is a client of AHUB and it has sub blocks of PEQ (Parametric Equalizer) and MBDRC (Multi Band Dynamic Range Compressor) for data processing.
An ASoC component is registered for OPE, which includes PEQ and MBDRC functions as well. This can be plugged in audio path using ALSA mixer controls. The series adds necessary binding documentaion, driver and DT binding patches to enable OPE module on Jetson platforms.
Sameer Pujar (6): ASoC: tegra: Add binding doc for OPE module ASoC: tegra: Add Tegra210 based OPE driver ASoC: tegra: AHUB routes for OPE module arm64: defconfig: Build Tegra OPE module arm64: tegra: Add OPE device on Tegra210 and later arm64: tegra: Enable OPE on various platforms
.../bindings/sound/nvidia,tegra210-ahub.yaml | 4 + .../bindings/sound/nvidia,tegra210-mbdrc.yaml | 51 + .../bindings/sound/nvidia,tegra210-ope.yaml | 91 ++ .../bindings/sound/nvidia,tegra210-peq.yaml | 52 + arch/arm64/boot/dts/nvidia/tegra186-p2771-0000.dts | 43 + arch/arm64/boot/dts/nvidia/tegra186.dtsi | 23 + arch/arm64/boot/dts/nvidia/tegra194-p2972-0000.dts | 43 + .../arm64/boot/dts/nvidia/tegra194-p3509-0000.dtsi | 43 + arch/arm64/boot/dts/nvidia/tegra194.dtsi | 23 + arch/arm64/boot/dts/nvidia/tegra210-p2371-2180.dts | 84 ++ arch/arm64/boot/dts/nvidia/tegra210-p3450-0000.dts | 84 ++ arch/arm64/boot/dts/nvidia/tegra210.dtsi | 40 + .../dts/nvidia/tegra234-p3737-0000+p3701-0000.dts | 43 + arch/arm64/boot/dts/nvidia/tegra234.dtsi | 23 + arch/arm64/configs/defconfig | 1 + sound/soc/tegra/Kconfig | 9 + sound/soc/tegra/Makefile | 2 + sound/soc/tegra/tegra210_ahub.c | 39 +- sound/soc/tegra/tegra210_mbdrc.c | 1012 ++++++++++++++++++++ sound/soc/tegra/tegra210_mbdrc.h | 215 +++++ sound/soc/tegra/tegra210_ope.c | 419 ++++++++ sound/soc/tegra/tegra210_ope.h | 90 ++ sound/soc/tegra/tegra210_peq.c | 434 +++++++++ sound/soc/tegra/tegra210_peq.h | 56 ++ 24 files changed, 2920 insertions(+), 4 deletions(-) create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-mbdrc.yaml create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-ope.yaml create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-peq.yaml create mode 100644 sound/soc/tegra/tegra210_mbdrc.c create mode 100644 sound/soc/tegra/tegra210_mbdrc.h create mode 100644 sound/soc/tegra/tegra210_ope.c create mode 100644 sound/soc/tegra/tegra210_ope.h create mode 100644 sound/soc/tegra/tegra210_peq.c create mode 100644 sound/soc/tegra/tegra210_peq.h