[PATCH v4 0/2] Introduces MDSYNC support for CS35L45

From: Ricardo Rivera-Matos

Date: Fri Aug 21 2026 - 18:41:59 EST


The CS35L45 has SYNC pin that can be used as a multi
device synchronization (MDSYNC) bus. This pin can send
various message types between Cirrus devices.

This patch series adds support for long and short DSP
messages between CS35L45 devices.

Each device on the SYNC bus must have a unique transmitter
identifier per message type as the bus arbitrates message
priority via this identifier. These identifiers are set by
the introduced devicetree properties. The priority
assignment is intended to be a static system integration
decision.

The relevant receiver controls are introduced as mixer
controls so they are exposed at runtime to be configured
for the appropriate use cases.

Changes since v3:
- return 0 when controls are unchanged
- adds locking to cs35l45_sync_en_put
- Enable -> Switch

Changes since v2:
- snd_soc_kcontrol_component -> snd_kcontrol_chip
- only register sync controls if GPIO mux selects SYNC
- return 1 on cs35l45_sync_en_put success
- drop | in dt property description

Changes since v1:
- Fixed property parsing namespace issue

Signed-off-by: Ricardo Rivera-Matos <rriveram@xxxxxxxxxxxxxxxxxxxxx>
---
Ricardo Rivera-Matos (2):
ASoC: dt-bindings: cs35l45: Adds SYNC properties
ASoC: cs35l45: Adds support for SYNC bus

.../devicetree/bindings/sound/cirrus,cs35l45.yaml | 27 ++++++
sound/soc/codecs/cs35l45-tables.c | 4 +
sound/soc/codecs/cs35l45.c | 101 ++++++++++++++++++++-
sound/soc/codecs/cs35l45.h | 23 +++++
4 files changed, 151 insertions(+), 4 deletions(-)
---
base-commit: 2792cc1b80b7674cc0751b34a964aad76630c1fa
change-id: 20260821-sound-for-next-cs35l45-sync-v4-c2664a7bd536

Best regards,
--
Ricardo Rivera-Matos <rriveram@xxxxxxxxxxxxxxxxxxxxx>