From: James Calligeros <jcalligeros99@gmail.com>
To: "Martin Povišer" <povik+lin@cutebit.org>,
"Liam Girdwood" <lgirdwood@gmail.com>,
"Mark Brown" <broonie@kernel.org>,
"Jaroslav Kysela" <perex@perex.cz>,
"Takashi Iwai" <tiwai@suse.com>
Cc: asahi@lists.linux.dev, linux-sound@vger.kernel.org,
linux-kernel@vger.kernel.org,
James Calligeros <jcalligeros99@gmail.com>,
Hector Martin <marcan@marcan.st>
Subject: [PATCH v3 0/7] ASoC: apple: mca: support simultaneous I2S capture on the frontend
Date: Sun, 05 Jul 2026 13:37:49 +1000 [thread overview]
Message-ID: <20260705-apple-audio-redux-v3-0-ff7a7afe2b6b@gmail.com> (raw)
Hi folks,
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.
---
Changes in v3:
- Changed magic number write in fe prepare to BIT(port)
- Link to v2: https://patch.msgid.link/20260628-apple-audio-redux-v2-0-6328269c9652@gmail.com
Changes in v2:
- Drop readx_poll_timeout use. It ended up being unreliable. Fall back
to just bumping up the delay on SERDES reset :/
- Rebase on asoc/for-next
- Drop the one patch that was applied
- Drop clock shutdown relocation patch. This was not actually required
and the incorrect thing to do anyway.
---
Link to v1: https://lore.kernel.org/asahi/20250518-mca-fixes-v1-0-ee1015a695f6@gmail.com/
Regards,
James
To: Martin Povišer <povik+lin@cutebit.org>
To: Liam Girdwood <lgirdwood@gmail.com>
To: Mark Brown <broonie@kernel.org>
To: Jaroslav Kysela <perex@perex.cz>
To: Takashi Iwai <tiwai@suse.com>
Cc: asahi@lists.linux.dev
Cc: linux-sound@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
---
Hector Martin (2):
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: increase SERDES reset delay
Martin Povišer (4):
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 | 300 +++++++++++++++++--------
1 file changed, 207 insertions(+), 93 deletions(-)
---
base-commit: e67251245f42eb4479636d4c082cdbe60b23f5b3
change-id: 20260623-apple-audio-redux-b7b43d9c02af
Best regards,
--
James Calligeros <jcalligeros99@gmail.com>
next reply other threads:[~2026-07-05 3:38 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-05 3:37 James Calligeros [this message]
2026-07-05 3:37 ` [PATCH v3 1/7] ASoC: apple: mca: increase SERDES reset delay James Calligeros
2026-07-05 3:37 ` [PATCH v3 2/7] ASoC: apple: mca: Separate data & clock port setup James Calligeros
2026-07-10 20:41 ` Mark Brown
2026-07-05 3:37 ` [PATCH v3 3/7] ASoC: apple: mca: Factor out mca_be_get_fe James Calligeros
2026-07-05 3:37 ` [PATCH v3 4/7] ASoC: apple: mca: Support FEs being clock consumers James Calligeros
2026-07-05 3:37 ` [PATCH v3 5/7] ASoC: apple: mca: Support capture on multiples BEs James Calligeros
2026-07-05 3:37 ` [PATCH v3 6/7] ASoC: apple: mca: Do not mark clocks in use for non-providers James Calligeros
2026-07-05 3:37 ` [PATCH v3 7/7] ASoC: apple: mca: Add delay after configuring clock James Calligeros
2026-07-10 18:04 ` [PATCH v3 0/7] ASoC: apple: mca: support simultaneous I2S capture on the frontend Mark Brown
2026-07-10 22:24 ` Mark Brown
2026-07-11 1:09 ` James Calligeros
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260705-apple-audio-redux-v3-0-ff7a7afe2b6b@gmail.com \
--to=jcalligeros99@gmail.com \
--cc=asahi@lists.linux.dev \
--cc=broonie@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=marcan@marcan.st \
--cc=perex@perex.cz \
--cc=povik+lin@cutebit.org \
--cc=tiwai@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox