[PATCH 0/4] ASoC: Add Cadence I2S-SC and I2S-MC controller support
joakim.zhang at cixtech.com
joakim.zhang at cixtech.com
Tue Sep 22 04:21:30 PDT 2026
From: Joakim Zhang <joakim.zhang at cixtech.com>
This series adds DT bindings and ASoC CPU DAI drivers for the two
Cadence I2S controllers integrated in the CIX SKY1 audio subsystem.
I2S-SC is a full-duplex stereo controller supporting standard I2S,
left/right-justified and DSP formats, mono operation mapped onto the
left audio channel, and TDM operation with up to 16 slots per frame.
I2S-MC is a multi-channel controller which moves up to 16 channels
through a configurable set of its 8 data pins, each pin carrying two
slots, and exposes a transmit DAI and a receive DAI which can act as
clock provider or consumer independently.
Both drivers register the dmaengine PCM helper, select the audio
reference clock parent for the 8 kHz or 11.025 kHz sample rate
family, keep the minimum functional-clock to bit-clock ratio
required for safe clock domain crossing, and support runtime and
system suspend/resume with regcache restore.
Joakim Zhang (4):
ASoC: dt-bindings: Add Cadence I2S-SC controller
ASoC: cdns: Add Cadence I2S-SC controller driver
ASoC: dt-bindings: Add Cadence I2S-MC controller
ASoC: cdns: Add Cadence I2S-MC controller driver
.../bindings/sound/cix,sky1-i2s-mc.yaml | 124 ++
.../bindings/sound/cix,sky1-i2s-sc.yaml | 94 ++
sound/soc/Kconfig | 1 +
sound/soc/Makefile | 1 +
sound/soc/cdns/Kconfig | 21 +
sound/soc/cdns/Makefile | 7 +
sound/soc/cdns/cdns-i2s-mc.c | 1149 ++++++++++++++++
sound/soc/cdns/cdns-i2s-sc.c | 1153 +++++++++++++++++
8 files changed, 2550 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/cix,sky1-i2s-mc.yaml
create mode 100644 Documentation/devicetree/bindings/sound/cix,sky1-i2s-sc.yaml
create mode 100644 sound/soc/cdns/Kconfig
create mode 100644 sound/soc/cdns/Makefile
create mode 100644 sound/soc/cdns/cdns-i2s-mc.c
create mode 100644 sound/soc/cdns/cdns-i2s-sc.c
base-commit: 4d4bc656580bcc448f8e6d6b3b3a903120eb29bb
--
2.50.1
More information about the linux-arm-kernel
mailing list