Skip to content

Install CS8409 speaker driver on pre-T2 MacBook Pros and iMacs - #9516

Open
j7j7 wants to merge 3 commits into
omacom:quattrofrom
j7j7:apple-cs8409-imac
Open

Install CS8409 speaker driver on pre-T2 MacBook Pros and iMacs#9516
j7j7 wants to merge 3 commits into
omacom:quattrofrom
j7j7:apple-cs8409-imac

Conversation

@j7j7

@j7j7 j7j7 commented Sep 1, 2026

Copy link
Copy Markdown

Summary

In-tree CS8409 binds the codec but never programs the external amps / CS42L83 path, so PipeWire shows a healthy unmuted sink with no output. The DKMS module replaces snd-hda-codec-cs8409 under updates/ after reboot.

T2 Macs stay on fix-t2.sh / apple-t2-audio-config and are excluded (iMacPro1,1, MacBookPro15,1, etc.).

Hardware note

Verified on iMac18,3 (CS8409/CS42L83, codec subsystem 0x106b1000) on linux 7.1.9: speakers work once the Apple CS8409 path is loaded. MacBook Pro coverage is from #7140 (MacBookPro14,3).

Test plan

  • ./test/shell.d/cs8409-audio-test.sh (MacBook + iMac match/skip cases, install hook, migration, manual wording)
  • On iMac18/19 or MacBookPro13/14: install / migrate → reboot → lsmod | grep cs8409, aplay -l shows CS8409/CS42L83, speakers play
  • T2 Mac (MacBookPro15,1 / iMacPro1,1): hook and migration no-op

Supersedes / can close #7140 and draft #8285 once this and the pkgs package land together.

Made with Cursor

shawnyeager and others added 3 commits September 1, 2026 08:30
Those machines have speakers that stay silent with the in-tree
codec. Detect MacBookPro13,* / 14,* and install
snd-hda-macbookpro-dkms so the Apple amp path loads after reboot.
assert_hw used to rm the DMI fixture only after the assertion.
fail() exits the process, so a mismatch leaked the file.
MacBookPro13/14 coverage from the existing CS8409 work also applies to
iMac18,x and iMac19,x (CS8409/CS42L83). Verified on iMac18,3.

Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants