watchthelight labs

Legion audio (VoodooHDA-Legion): what moved, 2026-10-15 to 2026-10-22

Target: VoodooHDA-Legion, VoodooHDA pinned at beb415a with a Legion patch, Realtek ALC257 on Tahoe. No open issues. Confidence uses High / Medium / Low / Unverified.

Actionable

Don't move past beb415a without restoring one line (High, diff read). CloverHackyColor/VoodooHDA b320ac936 "repair AMD HDMI audio" comments out if (res == -1) res = 0; in Parser.cpp (switchHandler / switchInit) for every codec, not only AMD. A failed pin-sense verb now reads as "jack present". On our ALC257 a single verb timeout could move output to the headphones and mute the speakers. If we bump the pin, put the line back in legion.patch. BSD-2-Clause.

Notable

  • Intel HDMI presence polling (Medium). 4545ddc04 adds a 10 s presence poll for Intel display codecs, plus D0 power-up and pin enable around each stream. It only helps once the Intel iGPU drives a display, and ours (7D67) has no macOS framebuffer, so we don't need it now. Our Info.plist leaves out HDMI on purpose.
  • USB microphones and the BL build (High). VoodooHDA#29 shows why the OpenCore-injected build breaks USB audio: it carries its own IOAudioFamily, so Apple's fails on duplicate class names and AppleUSBAudio never loads. Our /Library/Extensions build avoids that.

Noise

VoodooHDA#31 (ALC230, VoodooHDA 3.6.8) is a different codec and version. Seven discovery hits (VM tools, AppleALC guides for a Tahoe without AppleHDA, EFIs for other laptops) don't apply.