The SpacemiT K3 SoC has six SSPA-based I2S controllers (i2s0-i2s5).
This series fixes two bugs that prevented writing a correct DT for any
of them and adds all six nodes.
Patch 1 fixes the ASoC driver's clock lookup names. The driver was
requesting "sspa_bus" and "sspa" but the published binding specifies
"bus" and "func", causing probe failures on any conformant DT node.
Patch 2 allows K3 i2s1 to use its 6-clock layout while preserving the
published 7-clock order used by the other K3 I2S controllers. It
describes the K1, K3 i2s1, and other K3 layouts as separate tuples.
Patch 3 adds the i2s0-i2s5 DTS nodes. i2s0 and i2s2-i2s5 use all 7
clocks including sysclk_div; i2s1 uses the 6-clock variant.
This series depends on the K3 I2S clock fixes posted at:
https://lore.kernel.org/all/20260717-k3-clk-fix-i2s-v1-0-e95001a692ee@linux.spacemit.com/
The prerequisite series contains:
- dt-bindings: soc: spacemit: k3: add i2s_sysclk,
i2s_bclk_factor and i2s1_sysclk_src IDs
- clk: spacemit: k3: fix i2s clock topology
- clk: spacemit: k3: fix missing /2 factor in i2s sysclk dividers
Signed-off-by: Troy Mitchell <troy.mitchell@linux.spacemit.com>
---
Troy Mitchell (3):
ASoC: spacemit: rename clock inputs to match binding
dt-bindings: sound: spacemit,k1-i2s: allow 6 clocks for K3 i2s1
riscv: dts: spacemit: k3: add i2s0-i2s5 nodes
.../devicetree/bindings/sound/spacemit,k1-i2s.yaml | 64 +++++++----
arch/riscv/boot/dts/spacemit/k3.dtsi | 119 +++++++++++++++++++++
sound/soc/spacemit/k1_i2s.c | 16 +--
3 files changed, 171 insertions(+), 28 deletions(-)
---
base-commit: c425609d6ac4012c8bbf01ec2e10e801b1923a7b
change-id: 20260615-kx-i2s-dts-123764c9b2b2
prerequisite-message-id: <20260717-k3-clk-fix-i2s-v1-0-e95001a692ee@linux.spacemit.com>
prerequisite-patch-id: f8cbf4a26caa4b48d44328ec55288f19a5ea67fb
prerequisite-patch-id: 710ec05bdce3d01dcb7bb1fc2a5750666d02c20d
prerequisite-patch-id: 197bf1e162e5346f0282d4fd945ba631c68e0fad
Best regards,
--
Troy Mitchell <troy.mitchell@linux.spacemit.com>