Jump to content

AppleALC — dynamic AppleHDA patching


vit9696
5,371 posts in this topic

Recommended Posts

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

5 hours ago, Shaneee said:

There's been a couple reports of it working with the Ryzen chip so thought I'd give it a go... Seems like the codec ID just needs added.

If you look on the IORegistryExplorer, you will find that Device HDEF have Vendor ID: 1022 AMD instead of 8086 INTEL, you can try the Fake ID 0xxxxx8086 ALC1220 for HDEF on clover, and see whats the result!

Link to comment
Share on other sites

FWIW, this is what codec commander says during boot on my system: (ALC269 layout-id=6)

CodecCommander: Node ID 0x14 supports EAPD, will update state after sleep.
CodecCommander: Node ID 0x15 supports EAPD, will update state after sleep.

Is there a particular WakeConfigData I need to specify to get sound after wake?

Hope to eventually be able to get rid of CodecCommander. Willing to provide any extra debug info needed to implement this functionality into AppleALC. 

Link to comment
Share on other sites

@Shaneee

Unfortunately, I'm not the hardware or device expert.
Presumably, vit9696 can tell more why AMD devices are not working.
Maybe it's somehow FakeID's or FakeSubID's. No idea.
So far it has never worked with AMD.
Many problems on AMD. AppleHPET and AppleLPC is not loaded. Also often important for sound.

This is an example of a laptop with ALC1220 I am currently working on with ID13:

intel.thumb.png.7c226fe800454f5f509083630909de43.png

intel2.thumb.png.115614b731bada5b66d483e784b6795c.png

Your devices:

amd.thumb.png.5601c5fc007cf6b7794904696f887446.png

try this:

try.thumb.png.7f33b7a669d5e70c0a7048e28f91c557.png


The nodes of the VoodooDump are not much different to the other LayoutID's.
You can try with 15 (0F). But I do not have much hope.

trial_ryzen_layoutID15 (0F).zip

Edited by MacPeet
  • Like 1
Link to comment
Share on other sites

4 hours ago, MacPeet said:

@Shaneee

Unfortunately, I'm not the hardware or device expert.
Presumably, vit9696 can tell more why AMD devices are not working.
Maybe it's somehow FakeID's or FakeSubID's. No idea.
So far it has never worked with AMD.
Many problems on AMD. AppleHPET and AppleLPC is not loaded. Also often important for sound.

This is an example of a laptop with ALC1220 I am currently working on with ID13:

intel.thumb.png.7c226fe800454f5f509083630909de43.png

intel2.thumb.png.115614b731bada5b66d483e784b6795c.png

Your devices:

amd.thumb.png.5601c5fc007cf6b7794904696f887446.png

try this:

try.thumb.png.7f33b7a669d5e70c0a7048e28f91c557.png


The nodes of the VoodooDump are not much different to the other LayoutID's.
You can try with 15 (0F). But I do not have much hope.

trial_ryzen_layoutID15 (0F).zip

Well the kext patch allowed the AppleHDAController to load onto HDEF. I'll try the layout later after work. Thanks for helping.

Link to comment
Share on other sites

6 hours ago, Dr. Hurt said:

FWIW, this is what codec commander says during boot on my system: (ALC269 layout-id=6)

CodecCommander: Node ID 0x14 supports EAPD, will update state after sleep.
CodecCommander: Node ID 0x15 supports EAPD, will update state after sleep.

Is there a particular WakeConfigData I need to specify to get sound after wake?

Hope to eventually be able to get rid of CodecCommander. Willing to provide any extra debug info needed to implement this functionality into AppleALC. 

CodecCommander does not just send the EAPD bit, if you look at the codec profile in the plist, it also set an unsolicited enable bit. Not sure if this is required for your codec, but you can remove the ALC269 profile an see if it still works. If so, the AppleALC WakeVerbReinit should be enough.

Link to comment
Share on other sites

Hola, gracias por el trabajo perfecto, este kext y tu.

Mi GTX980 no muestra el sonido HDMI en Preferencias.

Tengo la versión 1.2.5 y no funciona esto: /


Se agregó parche NVIDIA HDMI para GM204 para 10.13.4+

Edit:
image.thumb.png.77675f04b67394b34ed634b66f37f6f3.png

Edited by WeBeRiO
Link to comment
Share on other sites

@MacPeet That layout didn't change it. With the AppleHDAController patch though it's at least starting to load on HDEF. AppleHDA is showing as loaded without doing anything. Even before the AZAL to HDEF patch in Clover. I feel like it's almost there. 

 

Screenshot 2018-04-13 21.49.58.png

Link to comment
Share on other sites

6 hours ago, wern apfel said:

CodecCommander does not just send the EAPD bit, if you look at the codec profile in the plist, it also set an unsolicited enable bit. Not sure if this is required for your codec, but you can remove the ALC269 profile an see if it still works. If so, the AppleALC WakeVerbReinit should be enough.

Hopefully then AppleALC implements sending this unsolicited bit on boot and wake like Codec Commander.

Link to comment
Share on other sites

1 hour ago, Shaneee said:

@MacPeet That layout didn't change it. With the AppleHDAController patch though it's at least starting to load on HDEF. AppleHDA is showing as loaded without doing anything. Even before the AZAL to HDEF patch in Clover. I feel like it's almost there. 

 

Screenshot 2018-04-13 21.49.58.png

The Vendor ID is still the defaults one. i suggest you to do it in clover Fake ID and use the files given from MacPeet.

If you can do the folowing:

+ _DSM with exact IDs given from MacPeet IORegistryExplorer to insert in HDEF, i mean Vendor ID, Subsystem Vendor ID, SubSystem ID and Device ID with compatible pci8086.xxxx from real Mac machine in your case MacPro 6.1

+ Fake ID in Clover config.plist

By the way why not using iMacPro

Edited by ammoune78
Link to comment
Share on other sites

Unsure if this is the issue above but if i remove codeccommander i lose all audio except HDMI, i can still see the devices but i have no audio. Would be great to eliminate an extra kext.

ALC1150

AppleALC 1.2.6

Lilu 1.2.3

ioreg attached.

Anything else i need to provide to help this issue?

Shane’s iMac.zip

Edited by SavageAUS
Link to comment
Share on other sites

Lilu and AppleALC both target Mountain Lion (10.8) and higher (as well as all the prebuilt binaries on github releases).

When it comes to compiling, you will need a compiler with C++14 support. Normally Lilu and AppleALC would compile on Mavericks and newer, since clang from Xcode 5.1.1 does not fully support c++14. However, I made some changes to Lilu and AppleALC (other kexts may follow) to let the buildsystem use the preliminary C++14 support on Mountain Lion's Xcode as well.

However, you should really avoid compiling with old Xcode if you could, as its bundled compiler is less reliable and may provide less optimised code.

  • Thanks 1
Link to comment
Share on other sites

I am having an issue with my GE60 0ND. DPCIManager reports my laptop with ALC892.  I already have Lilu and AppleALC in my clover other kext folder.  I've tried all the layouts listed for 892 but nothing works.  AppleHDA is stock and change HDAS to HDEF patach applied in ACPI>DSDT>Patch. VoodooHDA works but it splits my 4 speakers into 2 separate outputs with 2 speakers on each output, making only 2 speakers work at any given time. I would much rather use AppleALC and see if it fixes the problem. 

 

Below is what's reported in DPCIManager.

Audio Devie,  Sub Device,    Codec ID,   Revision,   Codec name:

0x80861E20, 0x146210C7, 0x10EC0892, 0x0302, Realtek ALC892

 

https://drive.google.com/open?id=1K3-ayWOidKNKrZvzTdaf8GAgiufLUbKL

Edited by 9000RPM
Link to comment
Share on other sites

On 4/11/2018 at 10:21 AM, MacPeet said:

Hi MacPeet, sorry for replying that late. 

 

Here are my test results:

Trial 5: Only ‘Internal Speakers’ are working on the ‘Internal Speakers’ mode. Headphones are not working.

Trial 6: Just like the previous attempts, speakers and headphones are both working on the ‘Headphone’ mode.

Trial 7: This  switch mode, shows 'Headphones' when headphones are attached, and ‘Internal speakers’ when  sound is playing over the internal speakers. So this is actually working! The only thing is that the headphone port constantly is is red, even when no data is emitted.

Edited by MegaCookie
Link to comment
Share on other sites

×
×
  • Create New...