After blood, sweat and several tears, I finally sort-of got AppleHDA working (VoodooHDA was hopeless).
I say "sort-of" because of two notable caveats:
1. I only get stereo output on all 889A and HDMI devices.
2. I have four total display devices (3 monitors + one TV). My 5850 only supports three devices at a time (even in Windows). So, in theory, if I want the TV, I have to unplug one monitor, and plug in the TV. In practice, when I do this, I end up with some odd zoomed view on the TV. Swapping cables out in a particular order eventually produces the desired result, but I haven't yet discovered a convenient way to go from 3 monitors to 2 monitors + 1 TV. I do have a spare NVIDIA card that I could potentially use to drive two of the monitors, so I could just use the ATI card for the main monitor and TV, and be done with cable swapping. However, there's a mild announce associated with that solution (which I won't get into).
ok, so, here's what I did. I sincerely hope this helps somebody:
1. Grab dodo's DSDT from here:
http://www.insanelymac.com/forum/index. ... pic=196771
2. Boot with that DSDT, and use DSDTSE to edit HDEF to the following:
Device (HDEF)
{
Name (_ADR, 0x001B0000)
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x0D,
0x05
})
}
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x04)
{
"layout-id",
Buffer (0x04)
{
0x75, 0x03, 0x00, 0x00
},
"PinConfigurations",
Buffer (Zero) {}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
The item of interest is "layout-id". 885 somehow translates to 0x75, 0x03, 0x00, 0x00. We need this value to match the <key>LayoutID</key><key>885</key> in /S/L/E/AppleHDA.kext/Contents/Resources/Platforms.xml file which will be copied in the following steps.
3. Follow this guide:
http://www.tonymacx86.com/viewtopic.php?f=162&t=31947
The guide is a little confusing, but fortunately, most of it is verification. There's not actually a whole lot that needs to be done.
Note: If you're display address is 3, you need to search for 0x00010000 (not 0x00030000), and in my case, change it to 0x00030000.
4. Compile the DSDT, check for errors, and save it to /Extra
5. Make Sure GraphicsEnabler=Yes is being used in /Extra/com.apple.Boot.plist
6. At this point (at least for my 5850) HDMI audio was working with a stock AppleHDA (I'm on 2.1.3) with no additional kext modifications, enablers, etc…
TIP: AppleHDA 2.1.3 is capable of HDMI without working on-board audio.
7. To get 885/889a (they're one in the same) working, first go to here:
http://www.insanelymac.com/forum/index. ... 40941&st=0
8. Download ALC885_889a_LION.zip
9. Install as follows. Copy/paste the following into the terminal one line at a time (enter password as needed):
cd <drag and drop the extracted ALC885_889a_LION folder into the terminal window>
sudo cp layout885.xml /System/Library/Extensions/AppleHDA.kext/Contents/Resources/
sudo cp Platforms.xml /System/Library/Extensions/AppleHDA.kext/Contents/Resources/
sudo cp -R ALC885_889a.kext /System/Library/Extensions
sudo chown -R 0:0 /System/Library/Extensions/ALC885_889a.kext
sudo chmod -R 755 /System/Library/Extensions/ALC885_889a.kext
sudo touch /System/Library/Extensions
10. Reboot, and cross fingers.