v2.9 with Yosemite support

A week ago I blogged about my Haswell HDAU solution for Yosemite but the patch instructions (proof of concept) doesn’t work with Yosemite DP3 (Build 14A283o). Time to finally finish the update and release it. Enter version 2.9

Download v2.9 is now available for download. Here is a little how-to:

1) curl -o

2) chmod +x

3) ./ -b AppleHDA -b AppleHDAController

New now includes a new automatic binary patching feature, to patch the AppleHDAController binary, which should enable HDMI audio.


Please report bugs over at:
Not here. Thank you!


Whoops. That didn’t work. Version 3.0 out with a few corrections. Thanks to Toleda for reporting it.

Update 2

You may see the following sound assertion in: /var/log/system.log (DP3)

Sound assertion in AppleHDAController at line 2861

Fixed by changing the connector-type data in the HDMI frame buffer from 0004 0000 to 0008 0000.

54 thoughts on “ v2.9 with Yosemite support

      • AppleHDALoader.kext It will not load if the ./ AppleHDA-b AppleHDAController.
        To cut-b AppleHDAController this out.
        I do not know

        Note: It now works with KextsToPatch (Clover specific).

      • Good for you, that it works with Clover, but patching binaries with Clover features won’t help anyone relying on, and since that is what this is all about …

    • Strange. Here (HDMI) audio is working (ALC892) with DP3, and others reported success while you and a few other are reporting that it doesn’t work, so something weird is going on. Need to investigate this.

      Would you mind e-mailing me your patched DP3 audio kext (see latest script for e-mail address) so that I can see what might have failed in Thanks.

      • Thanks. I received your files, but my focus is on getting (HDMI) audio to work with Yosemite (DP3). Not to mention that your patched kext is missing all (3) AppleHDAController patches. Including the kext binary itself. I think that you used: ./ -b AppleHDA instead of ./ -b AppleHDA -b AppleHDAController. Correct?

      • Correct. With these parameters it works almost properly. Almost coz now noticed sound overload problem with volume around 70%.

        PS. Output signal compare to 10.9.3 one is rly low but everything sounds deeper, fatty and minutely.

        Thanks for your time.

  1. Hi.. I’m running 10.9.4 on GA-Z87X-UD5H, Gigabyte GT760.
    After the update the AppleHDA_898 RealTek Audio is not working while waking up from sleep.
    I’m trying various different things and it is not working 😦
    Help please!

    • This happens to alot of people including REAL macs.. you can either use a 10.9.1 patched kext or unload and then reload AppleHda.kext and restart the core audio service after coming out of sleep. See below

      close all apps that use sound

      sudo kextunload /System/Library/Extensions/AppleHDA.kext
      sudo kextload /System/Library/Extensions/AppleHDA.kext
      sudo killall coreaudiod

      ther is a topic on the apple support forums see

      • This works.. Only the pain is to run the script all the time. Any other better solution?

      • The AppleHDA and AppleHDAController binaries can be patched by Clover (I myself use RevoBoot by the way) and hopefully one day soon Chameleon can do this as well. That leaves the layout and platforms xml.zlib files, but I think to have found a new solution for them as well (need more time).

        Also. The ConfigData can be added to FakeSMC.kext/Content/Info.plist and the plugins folder (AppleHDA8Series.kext/Content/Plugins) can also be moved to FakeSMC.kext/Content/Plugins (in case you don’t use Clover) so that you won’t have to worry about them anymore.

    • 1.) Open your DSDT.dsl
      2.) Search for Device (HDEF) { … }
      3.) Look for Method (_DSM) { … }
      4.) Change the “layout-id” from Buffer (0x04) { 01 00 00 00 } to Buffer (0x04) { 03 00 00 00 }
      5.) Save the modified file (DSDT.dsl)
      6.) Compile it with: sudo iasl DSDT.dsl
      7.) Reboot

      • Perfect … I will do this. But i have see:

        “Fixed by changing the connector-type data in the HDMI frame buffer from 0004 0000 to 0008 0000”

        Is this in your patch or i must do in my DSDT.aml?

        If yes, where I can modify that … Sorry but DSDT patching is a complete new World for me.

      • I edit the DSDT.aml (aml is the right ending?) with MaciASL and ACPI 4.0 Modus.

        This is actual my HDEF area: …
        Is this ok?

        But i think the id 3 is not loading … when i starting MaciASL the App creating automatically a dsdt from the system. but in this dsdt i see layout-id again 😦

      • Sorry, but I cannot help you with this, because the problem you are trying to address here is not related to (a problem in) and I simply do not have the time (nor energy) for it, so please visit the usual forums and ask for help there.

  2. Pikeralpha?

    Can you add an Option for other ALC Codecs?

    sth like:
    ./ -Layout 3 -Configdata “01271C30 01271D01 01271EA0 01271F90 01471C10 01471D01 01471E17 01471F90 01771CF0 01771D00 01771E00 01771F40 01871CF0 01871D00 01871E00 01871F40 01971CF0 01971D00 01971E00 01971F40 01A71CF0 01A71D00 01A71E00 01A71F40 01B71CF0 01B71D00 01B71E00 01B71F40 01D71CF0 01D71D00 01D71E00 01D71F40 01E71CF0 01E71D00 01E71E00 01E71F40 02171C20 02171D10 02171E21 02171F03 01470C02” -PathMaps “22 12 2 33 13 3”

    Or simply add on request codecs to your script? i mean if ppl give you ConfigData, Pathmaps, etc…

    Cheers 🙂

    • I don’t know how that should work. I mean the script is still rather dumb. All it does now is that is reads data from Toleda’s Github repository. What I can do is add a few lines that lets you select local files rather than the data provided by Toleda. Would that work for you?

      • Forget it, you don’t need to edit that script just for me, it makes no sense 🙂
        I didn’t looked into that script, i thinked you just generate the plist and layouts with the script… based on Configdata and pathmaps for each codec… But now i see that its gonna be downloaded and not generated 🙂 So i can do that myself…

        I just don’t understand why on Yosemite, i can’t make a dump “realtekALC.kext”, like i did that on Mavericks, with my layouts and Configdata… With vanilla AppleHDA… it worked perfect on Mavericks, but on Yosemite i need to edit AppleHDA instead of making a dump…

        However, i need to look and find out why my modified AppleHDA works and why the dump kext not… 🙂

        Thank you Pike!

  3. Pike? Is there a way, like on Mavericks with the old AppleHDA Dummy (16kb) ?
    I mean, your new solution have an AppleHDA binary in the Dummy, and more…
    The old Dummy had only a link to applehda binary…

    • I don’t have binaries in there, because I let RevoBoot do the patching for me. That is the trick 😉

      You may already use Clover, and then it should be the same as what I am seeing. No idea about the current state of Chameleon/Chimera, but in case you are using either one of them, I don’t think that patching binaries is going to take long to get implemented.

      • Im using Clover… just my realtek alc282 is not supported in the script… i don’t want that anyone mess with that, because there are much laptop models with different alc… and some laptops have even different version of alc282…

        The problem is just, i have made me long time ago a working alc282.kext dummy that is injecting layout and portmap xml… and used clover to patch binary… and it worked very good on mavericks!

        Now on yosemite, the old dummy with clover patches doesn’t work anymore…
        And im searching for yosemite a way to patch applehda without to do something in SLE, like we did before on mavericks with the dummy…

        Now i tryed your script and generated a dummy for alc889 but the dummy have now applehda binary inside and not only a link, like the old dummy… so that way applehda binary doesn’t updates on new OS X versions….

        is there a way to get old method working again?

  4. First of all, thanks for supplying these scripts, very useful!

    I do have a problem though. I had working audio before, but wanted to try your script when experimenting with getting HDMI Audio to work. I did a backup of AppleHDA and ran the script. Everything worked great and after reboot, the audio was fine (no HDMI audio though, but that’s a different story).

    However, after doing this, Flash Player (ie all Youtube videos, facebook videos and such) started crashing with instant reboot. No error in the error logs. I removed the kexts from this script and installed the old ones, but no change. Very strange indeed, as I didn’t change anything else. So my question – does the script change anything else beside the AppleHDA kexts? Like any settings / config files or similar?

  5. Hi,

    Thanks pike, it works perfectly (Yosemite 10.10)!!

    Now, System info detect HDMI audio output from my display, but it doesn’t appear as a selectable option in audio preferences (System preferences) ¿?

    How can I get HDMI audio working too ?

    • Hola Ramon,

      This means that HDMI isn’t working, yet. But… You may have read about the hardware failures, so I can’t do any testing myself right now. Let me get back to you as soon as I am back up and running 😉

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s