Repository navigation
Turn on sound through HDMI and DisplayPort displays - #83
erykwieliczko wants to merge 1 commit into
Conversation
linux-aurora creates the HDMI/DisplayPort sound cards only when appledrm's hdmi_audio parameter is set, and it is off by default, so no Mac had sound on an external display. Ship options appledrm hdmi_audio=1 in /usr/lib/modprobe.d, next to the notch default; the initramfs picks it up through modconf, as it does that one. An /etc/modprobe.d file with hdmi_audio=0 turns it off again. Tested on an M3 Pro (J514S) with a TV on the HDMI port and on USB-C, with linux-aurora 7.2.11.aurora11 plus omacom/linux-aurora#295 and #297: the sinks appear with the display, and audio keeps playing across pause/resume and stream changes. With alsa-ucm-conf-aurora at aurora-silicon/alsa-ucm-conf-asahi b9b2d0c82, the sinks also go away when the display is unplugged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
[Medium impact] The default affects external-display audio across Macs using the package. The PR appears safe to merge, with a small correction needed in the opt-out instructions. Findings
SummaryEnables display sound by shipping
Reviews (1) · Last reviewed commit: "Turn on sound through HDMI and DisplayPo..." · Reviewed by Greptile |
| | Suspend and resume | <span class="status ok">works</span> | Open the lid or press the power button to wake the Mac. A key press or trackpad click does not wake it: the kernel drivers for the built-in keyboard and trackpad do not register as a wakeup source on M1 or M2 MacBooks. Closed in a bag, it stays asleep. | | ||
| | Battery, lid, power profiles | <span class="status ok">works</span> | | | ||
| | External displays | <span class="status ok">works</span> | HDMI on models that have it, USB4 and DisplayPort alt-mode through the Aurora kernel. Five displays on the M2 Max. A third and fourth display rely on an aquamarine fix carried until Hyprland releases it. | | ||
| | External displays | <span class="status ok">works</span> | HDMI on models that have it, USB4 and DisplayPort alt-mode through the Aurora kernel. Five displays on the M2 Max. A third and fourth display rely on an aquamarine fix carried until Hyprland releases it. Sound plays through HDMI and DisplayPort displays; `appledrm hdmi_audio=1` in `/usr/lib/modprobe.d` turns it on, and an `/etc/modprobe.d` file with `options appledrm hdmi_audio=0` turns it off. | |
There was a problem hiding this comment.
The opt-out instruction leaves out the filename. Files with different names in /etc/modprobe.d and /usr/lib/modprobe.d are read in filename order. For example, /etc/modprobe.d/00-local.conf containing options appledrm hdmi_audio=0 is followed by the shipped hdmi_audio=1, so sound stays enabled despite following the manual.
Tell readers to use /etc/modprobe.d/appledrm-hdmi-audio.conf, which replaces the same-named vendor file.
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
linux-aurora creates the HDMI/DisplayPort sound cards only when
appledrm'shdmi_audioparameter is set, and it is off by default, so no Mac gets sound on an external display. This shipsoptions appledrm hdmi_audio=1in/usr/lib/modprobe.d, next to the notch default (asahi-notch.conf). The initramfs picks it up throughmodconf, as it does that one. An/etc/modprobe.dfile withoptions appledrm hdmi_audio=0turns it off again. The manual's hardware page says so in the same commit.Testing
M3 Pro (J514S) with a TV on the HDMI port and on USB-C, running linux-aurora 7.2.11.aurora11 plus omacom/linux-aurora#295 and #297:
With
alsa-ucm-conf-auroraat aurora-silicon/alsa-ucm-conf-asahib9b2d0c82, the sinks also go away when the display is unplugged.omarchy-mac/test: 17 of 20 scripts pass locally.setup,touchid-activateandtouchid-consentfail the same way on unmodifiedmainon this workstation (systemd-analyze verify: "Unit sysinit.target not found"), so they are left to CI.Notes
🤖 Generated with Claude Code