Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Thanks for the support.

This is the IOReg with both AppleALC.kext preview installed and AppleHDAController.kext patched.

I tried with just the AppleALC.kex preview installed. Also doesn't work.
 

Attachments

  • Mac Pro.ioreg.zip
    904.6 KB · Views: 352
  • Preview only.zip
    911.1 KB · Views: 311
Last edited:
This is the IOReg with both AppleALC.kext preview installed and AppleHDAController.kext patched.
To clarify, 2 methods; one or the other, remove 1st before installing 2nd
Both IORegs look the same, neither method worked
Binary patch: specify hex editor? in place? not in place, kext installer? kext cache rebuild?
AppleALC: native AppleHDA.kext? location? kext installer? kext cache rebuild?
Attach kext cache rebuild output, if available
[doublepost=1523994350][/doublepost]
Will the next release support GTX 980 HDMI audio codec id as well?
IOReg/HDAU/device-id?
 
To clarify, 2 methods; one or the other, remove 1st before installing 2nd
Both IORegs look the same, neither method worked
Binary patch: specify hex editor? in place? not in place, kext installer? kext cache rebuild?
AppleALC: native AppleHDA.kext? location? kext installer? kext cache rebuild?
Attach kext cache rebuild output, if available
[doublepost=1523994350][/doublepost]
IOReg/HDAU/device-id?

I know, I tried that preview AppleALC.kext with the original AppleHDAController.kext first.

May I know with the self patched AppleHDAController.kext. Should I use the normal AppleALC 1.2.6? Or the one that manually edited? My last attempt was with the self edited + builded version.

https://forums.macrumors.com/threads/guide-hdmi-audio.1499797/page-27#post-25971642

Either doesn't work. Then I tried both. Anyway, will try patched AppleHDAcontroller.kext + native AppleALC.1.2.6 now.

For info:

Binary patch,

Hex Editor is HexMiner (I used it for few years already, never give me any issue)
Screen Shot 2018-04-18 at 04.08.49.png


I copied the original AppleHDAController binary to desktop. Edited it. Then put it back to the original place, then manually fix the permission.
Screen Shot 2018-04-18 at 04.07.07.png


Then open Kext Utility, let it install the self edited+builded AppleALC 1.2.6 (not your preview version), and let it rebuild cache.

AppleALC,

YES, with native AppleHDA.kext.

Installed to S/L/E by Kext Utility. And I did let it rebuild cache.
Screen Shot 2018-04-18 at 04.17.58.png


May I know how to get the kext cache rebuild output?
[doublepost=1523996769][/doublepost]This is the IOReg for patched AppleHDAController with the AppleALC 1.2.6 release directly downloaded from here.

https://github.com/vit9696/AppleALC/releases

W
ith this combination. The 1080Ti's audio controller shows driver installed
Screen Shot 2018-04-18 at 04.26.52.png


But still not available in Sound preferences yet.
Screen Shot 2018-04-18 at 04.28.19.png
 

Attachments

  • Mac Pro.ioreg.zip
    932.2 KB · Views: 284
Last edited:
May I know with the self patched AppleHDAController.kext. Should I use the normal AppleALC 1.2.6? Or the one that manually edited? My last attempt was with the self edited + builded version.

Either doesn't work. Then I tried both. Anyway, will try patched AppleHDAcontroller.kext + native AppleALC.1.2.6 now.

Then open Kext Utility, let it install the self edited+builded AppleALC 1.2.6 (not your preview version), and let it rebuild cache.

May I know how to get the kext cache rebuild output?
This is the IOReg for patched AppleHDAController with the AppleALC 1.2.6 release directly downloaded from here.
With this combination. The 1080Ti's audio controller shows driver installed
But still not available in Sound preferences yet.
Kext patch procedure is correct.
Native AppleALC.kext v1.2.6 does not include the AppleHDAController patch for your graphics card, useless.
Do not combine the binary patch with AppleALC.kext, KP possible.
For the 1080Ti's audio controller, you selected the video device, not the audio controller: pcie10de,10ef

The attached IOReg ("patched AppleHDAController with the AppleALC 1.2.6 release") shows AppleHDAController loading, working. Reason, patched binary.
Screen Shot 2018-04-18 at 9.17.41 AM.png

Remove AppleALC.kext. Rebuild kextcache: Terminal:
Code:
sudo touch /System/Library/Extensions && sudo kextcache -u /
Save Terminal Output

The reason for no HDMI audio, with the working AppleHDAController, is the Nvidia Web driver.

Restart, Reply with new IOReg and Terminal Output.
 
Kext patch procedure is correct.
Native AppleALC.kext v1.2.6 does not include the AppleHDAController patch for your graphics card, useless.
Do not combine the binary patch with AppleALC.kext, KP possible.
For the 1080Ti's audio controller, you selected the video device, not the audio controller: pcie10de,10ef

The attached IOReg ("patched AppleHDAController with the AppleALC 1.2.6 release") shows AppleHDAController loading, working. Reason, patched binary.
View attachment 758784

Remove AppleALC.kext. Rebuild kextcache: Terminal:
Code:
sudo touch /System/Library/Extensions && sudo kextcache -u /
Save Terminal Output

The reason for no HDMI audio, with the working AppleHDAController, is the Nvidia Web driver.

Restart, Reply with new IOReg and Terminal Output.

Thanks for providing the procedures. Will do that once I back to home.

Question:

Should I remove the Lilu.kext and the NvidiaGraphicsFixup.kext as well?

P.S. I realised that I was selecting the video device on the PCIe page, because what I wanted to show is just the "driver installed" is yes. Anyway, here is the audio device details.
Screen Shot 2018-04-19 at 04.01.31.png
 
Last edited:
I just removed all AppleALC, Lilu, and NvidiaGraphicsFix kext.

kextcache rebuilded
Screen Shot 2018-04-19 at 04.13.12.png


The binary still patched

HDMI Audio installed

PCI info same as above (shows Audio Controller driver installed), but not working yet

And the attachment is the IOReg.
 

Attachments

  • Mac Pro.ioreg.zip
    932.8 KB · Views: 290
Audio now works on my GTX 750 Ti with AppleALC and NvidiaGraphicsFixup. For posterity, I've described the procedure below.

1) Install NvidiaGraphicsFixup.kext and Lilu.kext.

2) Obtain the path to HDAU in IORegistryExplorer:

1.png


In my case, the path was AppleACPIPCI/IOU0/IOPP/HDAU.

3) Add the path to CodecLookup.plist in the source of AppleALC (unless the information is already included):

2.png


4) Form the codec ID by appending de10 (the Nvidia vendor ID) to the device ID that appears under HDAU in IORegistryExplorer:

3.png


In my case, the complete ID is de10bc0f.

5) Form the decimal name of the codec. In my case, the name is 4028 (decimal for 0x0fbc).

6) For completeness, find the chip number of the GPU. In my case, the number is GM107 (according to the Wikipedia article on the Maxwell architecture).

7) Include the complete ID, decimal name, and chip number to Controllers.plist in the source of AppleALC (unless the information is already included):

4.png


(The only case-specific entries are "Device," "Name," and "Replace.")

8) Rebuild AppleALC (making sure to include the debug version of Lilu.kext in the top-level folder of the source).

9) Install AppleALC.kext.

See also the AppleALC guide.
 
kextcache rebuilded
PCI info same as above (shows Audio Controller driver installed), but not working yet
And the attachment is the IOReg.
Expected
10.13.4 AppleHDAController is working
IOReg shows the issue with Nvidia Web driver and Pascal:
If using DP, try other DP ports.
If HDMI, acquire DP2HDMI adapter (for 4K display, an adapter required)
Reply with new IOReg
 
For anyone not wanting to edit kexts or do IOreg dumps*, I got HDMI audio working again with these downloads:

I did the following:
  1. Download jch's copy of the 10.13.3 AppleHDA
  2. Moved my current system/library/extensions AppleHDA kext (that is, the 10.13.4 version) to the trash**
  3. Copied the 10.13.3 appleHDA file and kextbeast to my desktop
  4. Ran kextbeast and installed the 10.13.3 appleHDA file to S/L/E
  5. Re-ran HDMIaudio 1.1 install.sh
  6. Reboot

Everything is peachy on my Geforce 1060's HDMI output:
Screen Shot 2018-04-20 at 12.23.47 PM.png

Screen Shot 2018-04-20 at 12.23.34 PM.png

Screen Shot 2018-04-20 at 12.22.58 PM.png

You could supply your own copy of AppleHDA.kext by doing a backup of 10.13.3 before updating, but I didn't know that this was an issue until after the fact :D

* But for real, big props to h9826790 for diving into all of that and toleda for dropping all the knowledge. I'm just not good at any of that stuff.

** Kextbeast doesn't seem to overwrite any existing files with the same name, which sounds like a good safety feature to me. Just didn't realize that until I tried it a few times.
 
  • Like
Reactions: Susurs
Expected
10.13.4 AppleHDAController is working
IOReg shows the issue with Nvidia Web driver and Pascal:
If using DP, try other DP ports.
If HDMI, acquire DP2HDMI adapter (for 4K display, an adapter required)
Reply with new IOReg

Thanks for the suggestion. I just back home and try different DP. YOU ARE SPOT ON!

There are 3 DP on my reference 1080Ti. The left most port's audio works with simple binary patch.
Screen Shot 2018-04-21 at 17.14.20.png


Screen Shot 2018-04-21 at 17.17.44.png
 

Attachments

  • Mac Pro.ioreg.zip
    1.1 MB · Views: 246
For anyone not wanting to edit kexts or do IOreg dumps*, I got HDMI audio working again with these downloads:

I did the following:
  1. Download jch's copy of the 10.13.3 AppleHDA
  2. Moved my current system/library/extensions AppleHDA kext (that is, the 10.13.4 version) to the trash**
  3. Copied the 10.13.3 appleHDA file and kextbeast to my desktop
  4. Ran kextbeast and installed the 10.13.3 appleHDA file to S/L/E
  5. Re-ran HDMIaudio 1.1 install.sh
  6. Reboot

Everything is peachy on my Geforce 1060's HDMI output:
View attachment 759099

View attachment 759097

View attachment 759096

You could supply your own copy of AppleHDA.kext by doing a backup of 10.13.3 before updating, but I didn't know that this was an issue until after the fact :D

* But for real, big props to h9826790 for diving into all of that and toleda for dropping all the knowledge. I'm just not good at any of that stuff.

** Kextbeast doesn't seem to overwrite any existing files with the same name, which sounds like a good safety feature to me. Just didn't realize that until I tried it a few times.

Thank’s a lot! Finally I got it working on GTX 980.
Sound is ok when I use DP to HDMI adapter. No sound straight from HDMI out but anyway... :)
 
Thanks for the suggestion.
One more suggestion, IOReg shows AppleGraphicsPowerManagement.kext is not loading. Make an injector kext to support Pascal graphics with the MacPro5,1 sysdef, search: macOS Native Discrete GPU Power Management.
[doublepost=1524414663][/doublepost]
Thank’s a lot! Finally I got it working on GTX 980.
Sound is ok when I use DP to HDMI adapter. No sound straight from HDMI out but anyway
Nvidia web driver supports sound on all connectors for Fermi/Kepler/Maxwell graphic's cards (except 450,550,560). For Pascal graphics cards, only one DP supports sound and not always.

Your requirement for for a 980 DP2HDMI adapter is not a Nvidia Web driver problem, likely, a HDMIAudio.kext problem.
 
One more suggestion, IOReg shows AppleGraphicsPowerManagement.kext is not loading. Make an injector kext to support Pascal graphics with the MacPro5,1 sysdef, search: macOS Native Discrete GPU Power Management.
[doublepost=1524414663][/doublepost]
Nvidia web driver supports sound on all connectors for Fermi/Kepler/Maxwell graphic's cards (except 450,550,560). For Pascal graphics cards, only one DP supports sound and not always.

Your requirement for for a 980 DP2HDMI adapter is not a Nvidia Web driver problem, likely, a HDMIAudio.kext problem.

Thanks for the suggestion, that's beyond my knowledge at this moment. I can learn how to do that, no problem.

However, may I know what can I expect if I successfully load the AppleGraphicsPowerManagement.kext? My GPU's power management seems OK with the Nvidia web driver.
 
For anyone not wanting to edit kexts or do IOreg dumps*, I got HDMI audio working again with these downloads:

I did the following:
  1. Download jch's copy of the 10.13.3 AppleHDA
  2. Moved my current system/library/extensions AppleHDA kext (that is, the 10.13.4 version) to the trash**
  3. Copied the 10.13.3 appleHDA file and kextbeast to my desktop
  4. Ran kextbeast and installed the 10.13.3 appleHDA file to S/L/E
  5. Re-ran HDMIaudio 1.1 install.sh
  6. Reboot

Everything is peachy on my Geforce 1060's HDMI output:
View attachment 759099

View attachment 759097

View attachment 759096

You could supply your own copy of AppleHDA.kext by doing a backup of 10.13.3 before updating, but I didn't know that this was an issue until after the fact :D

* But for real, big props to h9826790 for diving into all of that and toleda for dropping all the knowledge. I'm just not good at any of that stuff.

** Kextbeast doesn't seem to overwrite any existing files with the same name, which sounds like a good safety feature to me. Just didn't realize that until I tried it a few times.
[doublepost=1524475655][/doublepost]Awesome, that worked for me! I was following this tread for a while now and this is the only thing that works for me :) Working with HDMI directly.
Schermafbeelding 2018-04-23 om 11.21.14.png
Schermafbeelding 2018-04-23 om 11.24.47.png
 
  • Like
Reactions: tu2thepoo
However, may I know what can I expect if I successfully load the AppleGraphicsPowerManagement.kext? My GPU's power management seems OK with the Nvidia web driver.
VBIOS manages thermal limit by increasing fan speed or reducing frequency. The Nvidia web deriver has no PM. Fermi and previous use thresholds; Kepler, Maxwell and Pascal use P states. Setting AGPM.kext/Sysdef/Heuristic-ID: 4 sets macOS/Nvidia p state PM.
 
VBIOS manages thermal limit by increasing fan speed or reducing frequency. The Nvidia web deriver has no PM. Fermi and previous use thresholds; Kepler, Maxwell and Pascal use P states. Setting AGPM.kext/Sysdef/Heuristic-ID: 4 sets macOS/Nvidia p state PM.

I see.

So, even system info shows AGPM.kext is loaded, but it isn't working properly at this moment. Is that correct?
Screen Shot 2018-04-25 at 03.12.49.png
 
I wonder if proper PM would address the notorious PS and PCI fan bug. It had been hypothesized that the bug was related to GPU power states.
 
For anyone not wanting to edit kexts or do IOreg dumps*, I got HDMI audio working again with these downloads:

I did the following:
  1. Download jch's copy of the 10.13.3 AppleHDA
  2. Moved my current system/library/extensions AppleHDA kext (that is, the 10.13.4 version) to the trash**
  3. Copied the 10.13.3 appleHDA file and kextbeast to my desktop
  4. Ran kextbeast and installed the 10.13.3 appleHDA file to S/L/E
  5. Re-ran HDMIaudio 1.1 install.sh
  6. Reboot

Everything is peachy on my Geforce 1060's HDMI output:
View attachment 759099

View attachment 759097

View attachment 759096

You could supply your own copy of AppleHDA.kext by doing a backup of 10.13.3 before updating, but I didn't know that this was an issue until after the fact :D

* But for real, big props to h9826790 for diving into all of that and toleda for dropping all the knowledge. I'm just not good at any of that stuff.

** Kextbeast doesn't seem to overwrite any existing files with the same name, which sounds like a good safety feature to me. Just didn't realize that until I tried it a few times.

Does it still work with the security update?
 
I did SMC reset and CMD+OPTION+P+R due to some other issues, and the sound was lost for some reason on 10.13.4... It shows no input/output devices at all. Putting back default HDA - gives me standart sound (HDMI/DP does not work) but installing new 10.13.3. kext again (which was working previously) removes any sound input/output devices.... :(

Removing/enabling HDMIaudio does not change anything.
[doublepost=1524636466][/doublepost]P.S. On 10.12.6 HDMIaudio works but booting into another installation and then back to 10.12.6 disables HDMI sound for some reason. Reinstalling solves this until reboot to other partition again.
 
Last edited:
I did SMC reset and CMD+OPTION+P+R due to some other issues, and the sound was lost for some reason on 10.13.4... It shows no input/output devices at all. Putting back default HDA - gives me standart sound (HDMI/DP does not work) but installing new 10.13.3. kext again (which was working previously) removes any sound input/output devices.... :(

Removing/enabling HDMIaudio does not change anything.
[doublepost=1524636466][/doublepost]P.S. On 10.12.6 HDMIaudio works but booting into another installation and then back to 10.12.6 disables HDMI sound for some reason. Reinstalling solves this until reboot to other partition again.

PRAM reset will enable SIP, which disable all unsigned 3rd party kext.

Try disable SIP, it may work again.
 
  • Like
Reactions: Susurs
PRAM reset will enable SIP, which disable all unsigned 3rd party kext.

Try disable SIP, it may work again.

Oh great! Will definitely try to. I thouht I might need to reinstall the system.
Does 10.13.3. HDA in 10.13.4. counts as unsigned as well?
[doublepost=1524640570][/doublepost]P.S. Do you have any possible hint why HDMI sound gets disabled on 10.12.6 every time I reboot to another partition and back?
 
KUDOS:


I did the following:
  1. Download jch's copy of the 10.13.3 AppleHDA
  2. Moved my current system/library/extensions AppleHDA kext (that is, the 10.13.4 version) to the trash**
  3. Copied the 10.13.3 appleHDA file and kextbeast to my desktop
  4. Ran kextbeast and installed the 10.13.3 appleHDA file to S/L/E
  5. Re-ran HDMIaudio 1.1 install.sh
  6. Reboot

this is the only working solution I had tried the HDMIaudio kext several time the key was indeed to replace the apple kext to the older version.

Many thanks this was driving me nuts so many different posts this one simple helped

Works on EVGA Geforce 980 TI SC+ on Mac Pro 5.1
 
So, even system info shows AGPM.kext is loaded, but it isn't working properly at this moment. Is that correct?
View attachment 759549
AGPM.kext loaded and determined the installed graphics card does not match the AGPM/MacPro5,1 supported graphics cards (GT 210 and GTX 285?). Native IOReg/AGPM/MacPro5,1:
Screen Shot 2018-04-25 at 7.13.20 PM.png
Working Nvidia/AGPM, note AGPM attach to each graphics system. IOReg/AGPM:
Screen Shot 2018-04-25 at 6.58.54 PM.png
Apologies for a way off topic post
 
AGPM.kext loaded and determined the installed graphics card does not match the AGPM/MacPro5,1 supported graphics cards (GT 210 and GTX 285?). Native IOReg/AGPM/MacPro5,1:
View attachment 759672
Working Nvidia/AGPM, note AGPM attach to each graphics system. IOReg/AGPM:
View attachment 759673
Apologies for a way off topic post

Thanks for teaching me all about this. I am more than happy to learn new things.

However, still haven't figure out how to make that injector kext yet
[doublepost=1524700837][/doublepost]Or if I can use the same method to patch the AGPMcontroller?
 
PRAM reset will enable SIP, which disable all unsigned 3rd party kext.

Try disable SIP, it may work again.


Thank you again! That was the issue. 10.13.3 HDA is functional in 10.13.4. again for me. Standard sound outputs are working. I have latest security update installed, so I cannot check HDMI as there are no updated Web drivers so far. But under PCI I see my 980 listed as Audio device again.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.