Jump to content

AppleALC — dynamic AppleHDA patching


vit9696
5,390 posts in this topic

Recommended Posts

I did now a completely reinstall with Sierra 10.12.6 and Injected Layout ID 1 and now I have working Sound on Front and Rear Line In. The Microphone Port I couldn't test because I have currently no headset with this Port. The HDMI Audio also don't work but I think I have to patch that. Thanks for your help @arsardu

Link to comment
Share on other sites

I did now a completely reinstall with Sierra 10.12.6 and Injected Layout ID 1 and now I have working Sound on Front and Rear Line In. The Microphone Port I couldn't test because I have currently no headset with this Port. The HDMI Audio also don't work but I think I have to patch that. Thanks for your help @arsardu

 

You're welcome. :)

 

And yeah, hdmi needs to be patched separately. And I don't know how, cause I never used it. :)

Link to comment
Share on other sites

That is really strange. Now I don't get any sound anymore. When I plugin now my Headphones it detects that an Headphone is there but I don't get any sound on it. It doesn't work on front and rear connectors. I see in IOReg that AppleALC has loaded, DO you have any solution for this? When I did the fresh install of Sierra then it has worked on time.

 

Edit: I think I have found the issue, it looks like that it has something to do with FakePCIID_Intel_HD_Graphics.kext or FakePCIID_Intel_HDMI_Audio.kext when I remove this then sound is working again.

Link to comment
Share on other sites

I did now a completely reinstall with Sierra 10.12.6 and Injected Layout ID 1 and now I have working Sound on Front and Rear Line In. The Microphone Port I couldn't test because I have currently no headset with this Port. The HDMI Audio also don't work but I think I have to patch that. Thanks for your help @arsardu

HDMI audio generally needs the Nvidia Web Driver.

 

Sent from my SM-G930F using Tapatalk

Link to comment
Share on other sites

Tried AppleALC for ALC282 didn't work.  I have an Asus G750JX laptop that has stereo rear speakers and Subwoofer front speaker.  With my AppleHDA patchaudio everything was working up to EL Capitan 10.11.6 but in Sierra IOAudioFamily.kext source changed and broke it. I still have audio but my stereo right speaker is louder than left, subwoofer still works but I have a feeling the Subwoofer is being treated as the left speaker.   If the change in IOAudioFamily.kext is the issue then AppleALC won't resolve this or will it?  The volume control also does not change output.  The slider is available does nothing.  I can change the output if the application provides it like Logic or Youtube etc.

 

I am attaching my files in case someone is interested in investigating but I have a feeling Laptops with Subwoofers may be far but few in between so to get a binary patch if it could be done in IOAudioFamily.kext, I don't  know if there would be any interest for any developer since there are so few of them.  Layout 3 MUST be used with this setup none of the other layouts work.

 

Vusun123 attempted an AppleALC patch for me but it never worked, thanks for trying!

 

Audio Files attached binary patch in clover config for 10.11.6.

 

Edited:

 

Everything working again in Sierra 10.12.6 with my PatchAudio if I replace AppleHDA and IOAudioFamily kexts from 10.11.6 with those in 10.12.6, but prefer not to do this. Also VoodooHDA latest version also works great so I am not without other solutions but would like to get AppleALC to work as another solution.

 

My main question is if IOAudioFamily.kext has broken a property of the audio, such as the volume control as I mentioned above, does AppleALC still depend on IOAudioFamily.kext for all the other properties associated with Audio and if so that probably will answer my question AppleALC won't fix this.

Audio Files.zip

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

I have switched to Apple ALC kext with lilu kext  with my Realtek 1150 on ASUS Maximus VII Ranger. I use Layout 1 in Clover, and finally I have working sound after sleep and no disturbing pop sound anymore with iMac 14.2 smbios. Thank you so much for this development.

  • Like 1
Link to comment
Share on other sites

Finally!

 

My solution for a Kaby Lake (GA-H270M-DS3H): in Clover, add DSDT/Patches/change HDAS to HDEF

That`s all, besides LILU and APPLEALC of course (in /EFI/Clover/kexts/Other)

 

I`m using no customized DSDT.

 

Thanks to everybody working on this project!

Link to comment
Share on other sites

Finally!

 

My solution for a Kaby Lake (GA-H270M-DS3H): in Clover, add DSDT/Patches/change HDAS to HDEF

 

I had to do the same thing for Skylake. But yeah, other than that, just AppleALC and Lilu, both in Clover/kexts/Other.

 

Initially I was like: why do you need DSDT patches for an ALC 887 codec? Shouldn't it work by default with AppleALC and Lilu? And then I remembered I had to do the same renaming for my Skylake build.

 

Cool!

Link to comment
Share on other sites

I have switched to Apple ALC kext with lilu kext  with my Realtek 1150 on ASUS Maximus VII Ranger. I use Layout 1 in Clover, and finally I have working sound after sleep and no disturbing pop sound anymore with iMac 14.2 smbios. Thank you so much for this development.

What you use for wake after sleep to work sound on ALC1150?

Link to comment
Share on other sites

I am on an Acer VX15 with NVMe+SATA. Can see only harddisk for now, which is where I have Hackintosh. Things are running fine, except sound.
ALC255 on i5-7300HQ. 10.12.6 o natuve Kaby Lake / HD630 support.

Tried the AppleALC, and Inject (clover) 3,13, 17 and in all cases, OS X lists Intel High Definition Audio, and the Inject number.
AppleALC only on EFI. -alcdbg does not give any syslog data. I only see Lilu loaded. 

Any help to push me in right direction ? I do have the HDAS->HDEF patch active.

Link to comment
Share on other sites

Installed in /S/L/E using kext wizard and now I get log. Can somebody help here ?

 

Used -alcbeta, and now it seems to find it, but it seems like no patches applicable. AppleALC.kext is freshly installed with kext wizard. Same with AppleHDA extraced from image.

 

2017-08-07 10:39:30.864759+0200  localhost kernel[0]: calling mpo_policy_init for Lilu

2017-08-07 10:39:30.866303+0200  localhost kernel[0]: Security policy loaded: Lilu Kernel Extension 1.1.2 (Lilu)
2017-08-07 10:39:57.620661+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::validateCodecs()> AppleALC: (DEBUG) alc @ found supported Realtek ALC255 codec revision 0x100002
2017-08-07 10:39:57.625497+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::processKext(KernelPatcher&, unsigned long, unsigned long long, unsigned long)> AppleALC: (DEBUG) alc @ missing ControllerModInfo for 0 controller
2017-08-07 10:39:57.629760+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::processKext(KernelPatcher&, unsigned long, unsigned long long, unsigned long)> AppleALC: (DEBUG) alc @ missing ControllerModInfo for 1 controller
2017-08-07 10:39:57.633969+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::processKext(KernelPatcher&, unsigned long, unsigned long long, unsigned long)> AppleALC: (DEBUG) alc @ missing ControllerModInfo for 2 controller
2017-08-07 10:39:57.638102+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::processKext(KernelPatcher&, unsigned long, unsigned long long, unsigned long)> AppleALC: (DEBUG) alc @ will route callbacks resource loading callbacks
2017-08-07 10:39:57.642220+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::applyPatches(KernelPatcher&, unsigned long, KextPatch const*, unsigned long)> AppleALC: (DEBUG) alc @ applying patches for 7 kext
2017-08-07 10:39:57.646008+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::applyPatches(KernelPatcher&, unsigned long, KextPatch const*, unsigned long)> AppleALC: (DEBUG) alc @ applying 1 patch for 7 kext
2017-08-07 10:39:57.649893+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::applyPatches(KernelPatcher&, unsigned long, KextPatch const*, unsigned long)> AppleALC: (DEBUG) alc @ applying 2 patch for 7 kext
2017-08-07 10:39:57.653790+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::applyPatches(KernelPatcher&, unsigned long, KextPatch const*, unsigned long)> AppleALC: (DEBUG) alc @ applying 3 patch for 7 kext
2017-08-07 10:39:57.658207+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::applyPatches(KernelPatcher&, unsigned long, KextPatch const*, unsigned long)> AppleALC: (DEBUG) alc @ applying 4 patch for 7 kext
2017-08-07 10:39:57.664025+0200  localhost kernel[0]: (kernel) Lilu: patcher @ lookup patching applied only 0 patches out of 2
2017-08-07 10:39:57.668196+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::applyPatches(KernelPatcher&, unsigned long, KextPatch const*, unsigned long)> AppleALC: (DEBUG) alc @ applying 5 patch for 7 kext
2017-08-07 10:39:57.672855+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::applyPatches(KernelPatcher&, unsigned long, KextPatch const*, unsigned long)> AppleALC: (DEBUG) alc @ applying 6 patch for 7 kext
2017-08-07 10:39:57.677574+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::applyPatches(KernelPatcher&, unsigned long, KextPatch const*, unsigned long)> AppleALC: (DEBUG) alc @ applying 7 patch for 7 kext
2017-08-07 10:39:57.682250+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::processKext(KernelPatcher&, unsigned long, unsigned long long, unsigned long)> AppleALC: (DEBUG) layout call 55 48 89 E5 41 57 41 56 41 54 53 41 89 CE 49 89
2017-08-07 10:39:57.686964+0200  localhost kernel[0]: (AppleALC) <AppleALC`AlcEnabler::processKext(KernelPatcher&, unsigned long, unsigned long long, unsigned long)> AppleALC: (DEBUG) platform call 55 48 89 E5 41 57 41 56 41 54 53 41 89 CE 49 89
Link to comment
Share on other sites

One more info, I tried all the Inject IDs listed in the plist for ALC255:
layout 3, 13, 17, 27, 28.

Anything more I can do ?
This is an:
Acer Aspire VX15 X5-591G
ALC255 is detected as Codec.
Tried the layouts: 3,13,17,27, 28
Using 10.12.6 - Kaby Lake native support on SMBIOS 14,1

Codec-info attached.

 

​And command output:
HDEF@1F,3 = = = = = = = = = = = = = = = = = = = = = = = = = = =

Layout, hex: 0x0000001c , dec: 28
 
PinConfigurations:
00
 
Codecs Found: 1
HDA:
0 CodecAddress:0x0
VendorID: 0x10ec0255
RevisionID: 0x100002
CodecID: 283902549
Revision(dec):=1048578
Id=0x0255
Id(dec)=597
Vendor=0x10ec
Vendor(dec)=4332

Info.plist.zip

Link to comment
Share on other sites

VooDooHDA works. Now I doubt if I actually had the HDEF patch enabled when trying AppleALC, as it wasn't enabled with VooDooALC, and I needed to enable it to get things working. Well, at least I got audio working as well. Next step is my NVMe with Windows.

Link to comment
Share on other sites

My Mic is not working using AppleALC.

 

 

1- Laptop model Asus Zenbook UX305UA

2- Codec CX20751/2

3- Layout tested : 3 and 28

4- OSX 10.12.6

 

Here is an extract of my lspci in linux : 

  1. snd_hda_codec_conexant hdaudioC0D0: CX20751/2: BIOS auto-probing.
  2. [   16.679500] snd_hda_codec_conexant hdaudioC0D0: autoconfig for CX20751/2: line_outs=1 (0x17/0x0/0x0/0x0/0x0) type:speaker
  3. [   16.679502] snd_hda_codec_conexant hdaudioC0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
  4. [   16.679504] snd_hda_codec_conexant hdaudioC0D0:    hp_outs=1 (0x16/0x0/0x0/0x0/0x0)
  5. [   16.679505] snd_hda_codec_conexant hdaudioC0D0:    mono: mono_out=0x0
  6. [   16.679505] snd_hda_codec_conexant hdaudioC0D0:    inputs:
  7. [   16.679507] snd_hda_codec_conexant hdaudioC0D0:      Internal Mic=0x1a
  8. [   16.679508] snd_hda_codec_conexant hdaudioC0D0:      Mic=0x19
  9. [   16.680479] snd_hda_codec_conexant hdaudioC0D0: Enable sync_write for stable communication

The full is here: 

https://pastebin.com/HiqyiT5c

 

Here is the info.plist generated using the tool Codec-Info.command 

And the extract of the terminal when I did it. Please note there was an error in it.

https://drive.google.com/open?id=0B6oFCae5ZUQXQWVHcWRfYzl5aHc

 

Here is the Clover folder I use: 

https://drive.google.com/open?id=0B6oFCae5ZUQXQWVHcWRfYzl5aHc

 

The sound is working OK but not the internal mic.

 

Please could one of you help me solving this mic issue. 

 

Thanks

Link to comment
Share on other sites

Hi, 

 

I have a problem with headphones sound for:

Audio details ALC295:

Audio device: 0x80869D71
Sub Device: 0x10431740
Codec ID:0x10EC0295
Revision: 0x0002

Inject audio: 3

 

295 support was added in https://github.com/vit9696/AppleALC/releases/tag/1.0.18

 

Speakers, microphone work great but headphones sound not.

Had to change some levels in Midi Audio because of crackling and distorted audio but still it's hard to say it's working.

 

For inject 28 there is no audio at all(some silent, distorted from headphones) - but maybe because 295 was added for HP Pavilion ?

 

is there any way to fix headphones audio?

 

I've dumped codec from Linux and tried to generate own PathMap etc without success.

Is there any simple guide how to generate codec for AppleALC and add custom for my laptop model Asus UX430UA?

 

Thx

Link to comment
Share on other sites

Thxs

 

 

I actually using CodecCommander.kext in S/L/E. But I modified version of it because of my audio chip the Sound Blaster CA0132.

 

 

But with CodecComander I can not fix the issue after wake up.

Try setting darkwake=8 in config.plist

 

Sent from my SM-G930F using Tapatalk

 

 

EDIT

Also is High Sierra Support added yet?

Link to comment
Share on other sites

Hello @ vandroiy2012,

 
Ok, checked with Source 1.1.4, ALC260 works, thank you.
 
From here new:
 
can you please add the new additional codec layout ID 13 AD1984A for Optiplex780 / 760
 
 
old codec layoutID 11 is ManualMode (LineOut / HP)
new additional codec layoutID 13 is SwitchMode (Speaker / HP or HDMI / HP) autodetect
 
More choice for the users.
 
Works good
  • Like 2
Link to comment
Share on other sites

Hello @vandroiy2012,

 
great    :thumbsup_anim:
 
 
 
I have another update here:
 
can you please add the new additional codec layoutID 16 - ALC269VB for Optiplex790/990
 
 
old codec layoutID 15 is ManualMode (LineOut / HP)
new additional codec layoutID 16 is SwitchMode (Speaker/HP) autodetect
 
Again, more choices for users.
 
Works good
  • Like 1
Link to comment
Share on other sites

×
×
  • Create New...