[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250210150129.40248-1-vsetti@baylibre.com>
Date: Mon, 10 Feb 2025 16:01:23 +0100
From: Valerio Setti <vsetti@...libre.com>
To: jbrunet@...libre.com,
neil.armstrong@...aro.org,
khilman@...libre.com,
martin.blumenstingl@...glemail.com,
linux-amlogic@...ts.infradead.org,
linux-sound@...r.kernel.org
Cc: linux-kernel@...r.kernel.org,
Valerio Setti <vsetti@...libre.com>
Subject: [PATCH RFC 0/6] Add support for AUDIN driver in Amlogic GXBB
This series adds support for audio input (AUDIN) on the Amlogic GXBB platform.
It starts with a HACK commit which is necessary to make AIU (audio output)
export its clocks. These clocks are necessary also for AUDIN, but they are
already owned and controlled by AIU. Therefore in order to avoid direct
dependencies between AIU and AUDIN drivers, we let AIU export its clocks.
This export is done through the clk-regmap interface which is not public yet,
so that's why the commit is marked as HACK.
The series then continues with adding dt-bindings, driver and DTS support
for AUDIN. As of now only I2S input is supported, because it's the only one
I could physically test in my setup, but other input sources (ex: SPDIF) are
also allowed according to the SOC's manual and can be added in the future.
This series was tested on an OdroidC2 board (Amlogic S905 SOC) with an
NXP SGTL5000 codec connected to its I2S input port. It was tested on tag
v6.14-rc1.
Valerio Setti (6):
ASoC: meson: [HACK] let AIU export its clocks through clk-regmap
ASoC: meson: audin: add audio input dt-bindings
ASoC: meson: add AUDIN driver
ASoC: meson: add support for AUDIN in gx-card
arm64: dts: meson-gx: add audin support
arm64: dts: meson-gx: enable audin on odroidc2 platform
.../bindings/sound/amlogic,audin.yaml | 104 +++++
arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 8 +
.../boot/dts/amlogic/meson-gxbb-odroidc2.dts | 9 +
arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi | 39 +-
include/dt-bindings/sound/meson-aiu.h | 5 +
include/dt-bindings/sound/meson-audin.h | 10 +
sound/soc/meson/Kconfig | 6 +
sound/soc/meson/Makefile | 5 +
sound/soc/meson/aiu-clocks.c | 123 ++++++
sound/soc/meson/aiu-encoder-i2s.c | 119 +++---
sound/soc/meson/aiu.c | 22 +
sound/soc/meson/aiu.h | 10 +
sound/soc/meson/audin-decoder-i2s.c | 247 +++++++++++
sound/soc/meson/audin-toddr.c | 403 ++++++++++++++++++
sound/soc/meson/audin.c | 321 ++++++++++++++
sound/soc/meson/audin.h | 119 ++++++
sound/soc/meson/gx-card.c | 12 +-
17 files changed, 1509 insertions(+), 53 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/amlogic,audin.yaml
create mode 100644 include/dt-bindings/sound/meson-audin.h
create mode 100644 sound/soc/meson/aiu-clocks.c
create mode 100644 sound/soc/meson/audin-decoder-i2s.c
create mode 100644 sound/soc/meson/audin-toddr.c
create mode 100644 sound/soc/meson/audin.c
create mode 100644 sound/soc/meson/audin.h
--
2.39.5
Powered by blists - more mailing lists