Jump to content

AppleALC — dynamic AppleHDA patching


vit9696
5,390 posts in this topic

Recommended Posts

On 05/04/2018 at 11:22 AM, meaganmargaret said:

 

Try this......from Toleda.....

 

Nvidia HDMI Audio/10.13.4

The process that enabled all Nvidia HDMI audio codecs has been disabled in 10.13.4 AppleHDAController.kext. Device-ids for natively supported Nvidia graphics cards remain and work.

Supported Nvidia HDMI audio controller device ids (10.13.4 AppleHDAController):

  • DE 10 C0 0A
  • DE 10 94 0D
  • DE 10 E2 0B
  • DE 10 E3 0B
  • DE 10 E4 0B
  • DE 10 E5 0B
  • DE 10 EB 0B
  • DE 10 E9 0B
  • DE 10 EA 0B
  • DE 10 EE 0B
  • DE 10 08 0E
  • DE 10 09 0E
  • DE 10 0A 0E
  • DE 10 0B 0E
  • DE 10 1B 0E
  • DE 10 1A 0E
  • DE 10 00 00

Workarounds (select one):

  1. Backup 10.13.3/AppleHDA.kext_v280.12 prior 10 10.13.4 Update, install with kext installer to 10.13.4
  2. Add AppleHDAController patch to config.plist/KernelAndKextPatches/KextsToPatch with Xcode:
  3. Install latest AppleALC.kext/Lilu.kext to CLOVER/kexts/Other

It worked just by installing AppleHDA 10.13.3.
Thank you for your help!

Link to comment
Share on other sites

I'm looking for advice on what I might be doing wrong with this setup.

I have an Asus Z97-A motherboard which uses ALC892 

On Sierra, I used toleda/audio_CloverALC using Clover Injection and Layout ID 1. It had worked a treat, and I was using Aggregated Surround sound (Built In Output, Built In Line Output 1 & 2).

On moving to High Sierra today I used the vit9696 AppleALC kext and its MOSTLY working. Built In Line Output 1 & 2 are both working and happily driving the subwoofer, centre and rear speakers. 

However I'm getting no output from Built In Output, which would drive the front left and right.

I edited the config.plist to rename HDAS to HDEF in ACPI, and under devices told it to Inject Layout 1.

According to ioregisteryexplorer, I do have HDEF and its using Layout 1.

Screen Shot 2018-04-09 at 01.17.00.png

Link to comment
Share on other sites

1 hour ago, tarasis said:

On Sierra, I used toleda/audio_CloverALC using Clover Injection and Layout ID 1. It had worked a treat, and I was using Aggregated Surround sound (Built In Output, Built In Line Output 1 & 2).

Did you removed old Clover_ALC Injection? I mean from KernelAndKextToPatch in the Config.plist, because you should have it working!

Or remove everything that concern Audio injection from the Config.plist and then do an SSDT or DSDT injection and make sure to Drop OEM _DSM, and use clover patch for HDAS to HDEF

HdefSSDT.dsl

HdefSSDT.aml

Edited by ammoune78
Link to comment
Share on other sites

9 hours ago, ammoune78 said:

Did you removed old Clover_ALC Injection? I mean from KernelAndKextToPatch in the Config.plist, because you should have it working!

Or remove everything that concern Audio injection from the Config.plist and then do an SSDT or DSDT injection and make sure to Drop OEM _DSM, and use clover patch for HDAS to HDEF

HdefSSDT.dsl

HdefSSDT.aml

Cheers, I had missed an entry in the KernelAndKextToPatch section of config.plist. I thought I had disabled it, but obviously hadn't saved after I made the change.

Audio now fully working, thank you. 

Link to comment
Share on other sites

I tried 1.2.6 with my Vaio's ALC269 (layout 6) without  codec commander hoping it would no longer be needed but that wasn't the case.

Tried adding the following lines to layout 6 in info.plist but still no audio after wake without codec commander.

<key>WakeConfigData</key>
<data>
AUcMAg==
</data>
<key>WakeVerbReinit</key>
<true/>

 

Link to comment
Share on other sites

On 4/7/2018 at 8:05 AM, MacPeet said:

Please show me pictures of system settings / sound.
Speaker work when HP is set?

The first two attempts are configured in SwitchMode.
In System Preferences / Sound only one output is visible.
Example: Speaker is visible - now that HP is plugged in, then the display automatically switches to HP. If HP is removed, the speakers are displayed again.

Trial 3 is ManualMode. Both outputs are visible in System Settings / Sound / Output.
The selection is done manually.

EAPD is set in the PinConfig.
Sleep is a completely different story.
Try ResetHDA in the Clover or EAPDFix.kext or try again the CodecCommander.kext for audio after Sleep. 
EAPDFix.kext and CodecCommander.kext (info.plist) should contain the correct nodes.

HDMI must be regulated in the DSDT. (HDAU and hda gfx entries). This is not a matter of AppleALC.

With these settings the speakers and headphones are working:

5acb9dba19d93_ScreenShot2018-04-09at19_06_02.png.00248e2359c2e918fbfba18c06cd9eef.png

So yes you are right that I got two different outputs using the manual mode, however the 'Internal Speakers' setting is not working. I have to set it to Headphones even when I'm using the integrated speakers. Switching to 'Internal speakers' simply does result in not working audio.

 

Link to comment
Share on other sites

9 hours ago, MacPeet said:

@MacPeet 

Yes it's very strange. With this trial it didn't change anything noticeable.

I can live with it though, audio and microphone are actually working fine. Switching between Headphones and Speakers also kinda works, I just have to leave it to 'Headphones'.

Link to comment
Share on other sites

On 3/27/2018 at 10:07 AM, MacPeet said:
On 3/28/2018 at 12:40 PM, FredWst said:

Hello,

HDMI fix for 10.13.4 Bx

AppleALC has been updated for some nvidia hdau id.

Thank's to vit9696. 

Compil with debug

AppleALC.kext.zip

 

with NVIDIA HDMI for GP102 in 10.13.4+ (fabiosun)

AppleALC.kext.zip

Is there a plan to add NVIDIA HDMI patches for GP107, GP108 to AppleALC anytime soon ? 

 

Link to comment
Share on other sites

On 4/9/2018 at 5:44 PM, ammoune78 said:

I think you really need it

I thought the latest changes in 1.2.6 were supposed to make codec commander obsolete.

Can anyone shed more light on this...

Link to comment
Share on other sites

On 09.04.2018 at 4:47 PM, Dr. Hurt said:

I tried 1.2.6 with my Vaio's ALC269 (layout 6) without  codec commander hoping it would no longer be needed but that wasn't the case.

Tried adding the following lines to layout 6 in info.plist but still no audio after wake without codec commander.


<key>WakeConfigData</key>
<data>
AUcMAg==
</data>
<key>WakeVerbReinit</key>
<true/>

 

Why are you trying to add this lines? They are already added for layout-id 6. Check your kext version. Or use latest release... 

Link to comment
Share on other sites

Ok, let me clarify the verb changes in the latest release.

It should indeed be the case for the underlying AppleALC implementation to have everything CodecCommander offers. I.e. sending codec commands (verbs) at boot and wake. Previously I did not see any necessity in this feature, but since even higher end motherboards started to require this functionality it was implemented in AppleALC.

However, it does not mean that AppleALC has all the resources updated with the necessary verbs to let you delete CodecCommander and get it work out of the box. For some confugurations (mentioned in the changelog) we blindly added an EAPD fix verb to WakeConfigData, but obviously it is not present in all the necessary places. It also goes without saying that more verbs may be needed to wake your codec after sleep.

It is not really possible for us to monitor every existing codec, so we are hoping for the community to provide the changes via pull-requests.

To give you a technical idea, AppleALC will send codec verbs on wake if WakeVerbReinit is present in pin configurations plist (note, it is now merged into AppleALC by the build system by default). Wake verbs are read from either WakeConfigData if it is present, or from ConfigData otherwise.

  • Like 2
Link to comment
Share on other sites

ok guys, patching clover with my hdau and now it's working. if you want you can add it to next applealc release. thank you!

<dict><key>Comment</key>

<string>pascal 1070 hdmi audio</string>

<key>Disabled</key>

<false/>

<key>Find</key>

<data>

3hALDg==

</data>

<key>InfoPlistPatch</key>

<false/>

<key>Name</key>

<string>com.apple.driver.AppleHDAController</string>

<key>Replace</key>

<data>

3hDwEA==

</data>

Link to comment
Share on other sites

1 hour ago, Shaneee said:

@Dr. Hurt Can you help me out with the issue I've posted above? AppleHDA is loaded this time unlike my previous AMD setup. 

 

Screenshot 2018-04-12 20.23.13.png

 

Edit: I've also included the audio dump from DarwinDumper

Archive.zip

 

On 3/23/2018 at 10:52 PM, vandroiy2012 said:

AppleHDA didn't work on AMD motherboard. The only way for AMD is VoodooHDA. 

 

 

Link to comment
Share on other sites

×
×
  • Create New...