[PATCH 0/9] ASoC: apple: mca: support simultaneous I2S capture on the frontend
From: James Calligeros
Date: Sun May 18 2025 - 06:51:18 EST
Hi all,
This series introduces a number of changes to the ASoC driver
for the Apple MCA peripheral to enable support for bidirectional
I2S. This is achieved by allowing frontends to act as clock consumers
and logically ORing data input lines when multiple backends are linked
to a frontend.
This allows the Texas Instruments speaker amps used on Apple Silicon Macs
(Apple-specific revisions of TAS2764 and TAS2770) to send their IVSENSE
data back to the SoC. Since these amps do not have any sort of integrated
speaker protection logic, we must use the IVSENSE data and the Thiele/Small
Parameters of the attached speaker(s) to implement our own in software.
---
Hector Martin (3):
ASoC: apple: mca: Move clock shutdown to backend shutdown
ASoC: apple: mca: Do not mark clocks in use for non-providers
ASoC: apple: mca: Add delay after configuring clock
James Calligeros (1):
ASoC: apple: mca: use readx_poll_timeout to check for cluster reset
Martin Povišer (5):
ASoC: apple: mca: Constrain channels according to TDM mask
ASoC: apple: mca: Separate data & clock port setup
ASoC: apple: mca: Factor out mca_be_get_fe
ASoC: apple: mca: Support FEs being clock consumers
ASoC: apple: mca: Support capture on multiples BEs
sound/soc/apple/mca.c | 336 +++++++++++++++++--------
1 file changed, 234 insertions(+), 102 deletions(-)
---
base-commit: 7163ff8cf6a2ee6b6861f0c521885e83a97145f9
change-id: 20250517-mca-fixes-666094666fa0
Best regards,
--
James Calligeros <jcalligeros99@xxxxxxxxx>