[PATCH v3 0/6] OPE support on Tegra210 and later

Sameer Pujar
2022-06-03T06:36:29Z

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.

Changelog
=========

v2 -> v3:
---------
* Drop "Device Tree Bindings" string from bindind doc titles for
OPE, PEQ and MBDRC.

v1 -> v2:
---------
* Use generic node names for OPE, PEQ and MBDRC devices. Update
binding doc and DT patches for this.
* Remove redundant nodename rule enforcement from
OPE, PEQ and MBDRC nodes. Update binding doc patch for this.
* Fix spaces before binding doc examples and remove '|'
from binding doc descriptions.

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 | 47 +
.../bindings/sound/nvidia,tegra210-ope.yaml | 87 ++
.../bindings/sound/nvidia,tegra210-peq.yaml | 48 +
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, 2908 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

--
2.7.4