Contribute
Register

[Fix] 10.11.4 broken audio with AppleHDA injector (dummyHDA)

in other words, after looking at the Info.plist updated in RehabMan github repo, i just uncommented this line in my patch_hda.sh script based on RehabMan´s u430 repo.

Code:
#/usr/libexec/plistbuddy -c "Delete ':IOKitPersonalities:HDA Hardware Config Resource:PostConstructionInitialization'" $plist

After checking that worked, i looked at the RehabMan repo commit history and confirmed that it should be done.

It is really the re-running of the script that makes the difference.

If you look at the script, it creates the injector Info.plist from vanilla AppleHDA.kext Info.plist. Because the new vanilla AppleHDA Info.plist contains the new entries in OSBundleLibraries, so does the new injector. The old injector doesn't have the entries because the old AppleHDA Info.plist didn't have them.

And I enabled the code to remove PostConstructionInitialization just to reduce diffs on the injector between system updates. The PostConstructionInitialization section is special case data for certain Apple codecs, and of course, doesn't apply to our own (unless we had a need for it, and knew how to use it). Since it is specific to Apple hardware, we don't need it, so it can be removed.
 
It is really the re-running of the script that makes the difference.

If you look at the script, it creates the injector Info.plist from vanilla AppleHDA.kext Info.plist. Because the new vanilla AppleHDA Info.plist contains the new entries in OSBundleLibraries, so does the new injector. The old injector doesn't have the entries because the old AppleHDA Info.plist didn't have them.

And I enabled the code to remove PostConstructionInitialization just to reduce diffs on the injector between system updates. The PostConstructionInitialization section is special case data for certain Apple codecs, and of course, doesn't apply to our own (unless we had a need for it, and knew how to use it). Since it is specific to Apple hardware, we don't need it, so it can be removed.


the curious fact is that if I do not "enabled the code to remove PostConstructionInitialization", my new injector (10.11.4) does not work, different to 10.11.3.

In other words, the same procedure works at 10.11.3 and does not work on 10.11.4 without "enabled the code to remove PostConstructionInitialization"

Anyway now it works.
Thank you again
 
the curious fact is that if I do not "enabled the code to remove PostConstructionInitialization", my new injector (10.11.4) does not work, different to 10.11.3.

No. It has no effect, removed or not.

In the failed case, you probably just neglected to rebuild cache properly.
 
No. It has no effect, removed or not.

In the failed case, you probably just neglected to rebuild cache properly.

you need to believe. in my case, the same script, only with this difference, does not work!!!

can you do a test?
 
you need to believe. in my case, the same script, only with this difference, does not work!!!

No. Your test was flawed (neglect to rebuild cache properly).

It is very easy to forget to rebuild cache properly, conclude that it is not working and something more is needing changed... Then, make an insignificant change... install the kext, which forces a cache rebuild.... In that case, the problem was fixed not by the insignificant change, but the cache rebuild.

can you do a test?

I have run both ways. PostConstructionInitialization is not significant for hacks.
 
You can follow the instructions in post #1, or switch to AppleHDA_ProBook.kext.

According to the information I have, 4x0s_g0 is IDT 76e0, which for AppleHDA_ProBook.kext is layout-id 17. To use AppleHDA_ProBook.kext, remove AppleHDAIDT.kext, change layout id in DSDT (from 12 to 17), and install AppleHDA_ProBook.kext.

I have make this change but still no audio...
I found the device in sys info
 

Attachments

  • audio.tiff
    105.6 KB · Views: 107
Please can someone send me on original vanilla AppleHDA.kext from 10.11.4
I overwritten it with my patched one.

Thanks
 
I have make this change but still no audio...
I found the device in sys info

Attach ioreg as ZIP: http://www.tonymacx86.com/audio/58368-guide-how-make-copy-ioreg.html. Please, use the IORegistryExplorer v2.1 attached to the post! DO NOT reply with an ioreg from any other version of IORegistryExplorer.app.

Provide output (in Terminal):
Code:
kextstat|grep -y acpiplat
kextstat|grep -y appleintelcpu
kextstat|grep -y applelpc
kextstat|grep -y applehda

Attach EFI/Clover folder as ZIP (press F4 at main Clover screen before collecting). Please eliminate 'themes' directory. Provide only EFI/Clover, not the entire EFI folder.

Attach output of (in Terminal):
Code:
sudo touch /System/Library/Extensions && sudo kextcache -u /

Compress all files as ZIP. Do not use external links. Attach all files using site attachments only.
 
Back
Top