I'm using the latest one version 2.8.9. I took the kext and placed it in EFI/Clover/Kexts/Other
Hopefully the issue everyone is having with HDMI/DP audio is resolved soon and VoodooHDA could be deleted.
There is no Problem with HDMI/DP Audio...
Just for those who dont know what to inject in dsdt... or clover...
And Voodoohda is absolutely old crap... do it proper with applehda...
Just an Example how i do it with Clover (Arbitary)
Code:
<key>Devices</key>
<dict>
<key>Arbitrary</key>
<array>
<dict>
<key>Comment</key>
<string>Nvidia Display</string>
<key>CustomProperties</key>
<array>
<dict>
<key>Key</key>
<string>@2,AAPL,boot-display</string>
<key>Value</key>
<data>
</data>
</dict>
<dict>
<key>Key</key>
<string>@2,connector-type</string>
<key>Value</key>
<data>
AAgAAA==
</data>
</dict>
<dict>
<key>Key</key>
<string>hda-gfx</string>
<key>Value</key>
<string>onboard-2</string>
</dict>
</array>
<key>PciAddr</key>
<string>01:00.00</string>
</dict>
<dict>
<key>Comment</key>
<string>Intel HDA</string>
<key>CustomProperties</key>
<array>
<dict>
<key>Key</key>
<string>layout-id</string>
<key>Value</key>
<integer>1</integer>
</dict>
<dict>
<key>Key</key>
<string>PinConfigurations</string>
<key>Value</key>
<data>
</data>
</dict>
</array>
<key>PciAddr</key>
<string>00:1F.03</string>
</dict>
</array>
</dict>
I have 2 Displays connected, but here a small howto:
1. disconnect your second monitor if you have a second monitor
2. open ioreg, check where your display0 is located (under NVDA,Display-A@0 or NVDA,Display-B@1 etc...)
3. you need to change in the code above @2,connector-type to @1,connector-type or @0,connector-type (depends where your display0 is located in ioreg) but you can do it easy and make multiple connector-type's, just inject all @0,connector-type, @1,connector-type, @2,connector-type, @3,connector-type etc... this doesnt really matter, im injecting only one, because i dont need dp/hdmi audio in the other ports... but it doesnt matter, you wont break anything, if you inject it on every connector...
4. Optional @2,AAPL,boot-display : you dont need this if you use only one monitor, but you need if you use multiple monitors... like me... My Hack doesnt boot without it with multiple monitors connected.
Just check where your main display is connected at, same as above and change @2,AAPL,boot-display to @0 @1 @2 @3,AAPL,boot-display etc... this entry cant be multiple.
Next, you need to inject via SSDT your HDAU device,
1. Open ioregistryeditor, goto your Nvidia Device and check the name...
For Example:
My GTX 1060 is located in Ioregistryeditor under PCI0 -> PEG0 -> GFX0
but your device can be under PCI0 -> PEG2 -> PEGP (or anything else...)
2. Check the Code below there are 3 lines:
Line 1: External (_SB_.PCI0.PEG0.GFX0, DeviceObj)
Line 2: Scope (_SB.PCI0.PEG0.GFX0)
Line 3: Device (_SB.PCI0.PEG0.HDAU)
Change that lines to your matching, for example, if you have under ioreg: PCI0 -> PEG2 -> PEGP
the lines should look this:
Line 1: External (_SB_.PCI0.PEG2.PEGP, DeviceObj)
Line 2: Scope (_SB.PCI0.PEG2.PEGP)
Line 3: Device (_SB.PCI0.PEG2.HDAU)
Code:
DefinitionBlock ("", "SSDT", 1, "APPLE ", "gfxhdau", 0x00000000)
{
External (_SB_.PCI0.PEG0.GFX0, DeviceObj)
Scope (_SB.PCI0.PEG0.GFX0)
{
Name (_SUN, One) // _SUN: Slot Number
}
Device (_SB.PCI0.PEG0.HDAU)
{
Name (_ADR, One)
Method (_DSM, 4, NotSerialized)
{
If (LEqual (Arg2, Zero))
{
Return (Buffer (One)
{
0x03
})
}
Return (Package (0x04)
{
"layout-id",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"hda-gfx",
Buffer (0x0A)
{
"onboard-2"
}
})
}
}
}
If you still didn't get it, dont ask, google and search... its simple... nvidia released drivers and everything works, if its not working for you, go and search.
@TeK9Samurai
I meant not you exactly, i write this to every noob here
Cheers