The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH v2 0/7] ASoC: apple: mca: support simultaneous I2S capture on the frontend
@ 2026-06-28 11:41 James Calligeros
  2026-06-28 11:41 ` [PATCH v2 1/7] ASoC: apple: mca: increase SERDES reset delay James Calligeros
                   ` (6 more replies)
  0 siblings, 7 replies; 10+ messages in thread
From: James Calligeros @ 2026-06-28 11:41 UTC (permalink / raw)
  To: Martin Povišer, Liam Girdwood, Mark Brown, Jaroslav Kysela,
	Takashi Iwai
  Cc: asahi, linux-sound, linux-kernel, James Calligeros, Hector Martin

Hi folks,

This is technically version 2 of a patchset that was supposed to have
been applied quite some time ago, but seemingly never was. The original
cover letter is as follows:

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.

---
It is not so bad that these patches did not end up applied, as some changes
ended up being necessary:

---
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 | 301 +++++++++++++++++--------
 1 file changed, 208 insertions(+), 93 deletions(-)
---
base-commit: e67251245f42eb4479636d4c082cdbe60b23f5b3
change-id: 20260623-apple-audio-redux-b7b43d9c02af

Best regards,
--  
James Calligeros <jcalligeros99@gmail.com>


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2026-07-05  2:05 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-28 11:41 [PATCH v2 0/7] ASoC: apple: mca: support simultaneous I2S capture on the frontend James Calligeros
2026-06-28 11:41 ` [PATCH v2 1/7] ASoC: apple: mca: increase SERDES reset delay James Calligeros
2026-06-28 11:42 ` [PATCH v2 2/7] ASoC: apple: mca: Separate data & clock port setup James Calligeros
2026-06-28 11:42 ` [PATCH v2 3/7] ASoC: apple: mca: Factor out mca_be_get_fe James Calligeros
2026-06-28 11:42 ` [PATCH v2 4/7] ASoC: apple: mca: Support FEs being clock consumers James Calligeros
2026-06-29 13:19   ` Joshua Peisach
2026-07-05  2:05     ` James Calligeros
2026-06-28 11:42 ` [PATCH v2 5/7] ASoC: apple: mca: Support capture on multiples BEs James Calligeros
2026-06-28 11:42 ` [PATCH v2 6/7] ASoC: apple: mca: Do not mark clocks in use for non-providers James Calligeros
2026-06-28 11:42 ` [PATCH v2 7/7] ASoC: apple: mca: Add delay after configuring clock James Calligeros

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox