Contribute
Register

Mountain Lion: Optimized AppleHDA for Realtek ALC8xx

Status
Not open for further replies.

toleda

Moderator
Joined
May 19, 2010
Messages
22,834
Motherboard
Asus Maximus VII Impact
CPU
i7-4770K
Graphics
RX 560 + HD4600
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Classic Mac
  1. 512K
  2. LC
  3. Power Mac
Mobile Phone
  1. iOS
2787035531_066ba1ee85.jpeg

ML: Optimized AppleHDA for Realtek ALC8xx


Mountain Lion//Optimized AppleHDA/Realtek ALC8xx/MultiBeast

Update 10/12/13 - 10.8.5 Supplemental 1.0/MultiBeast 5.5.3 and newer supports
1. ALC887_v100302 Mute
2. ALC888_v100302 Mute
3. Haswell/HD4600 HDMI audio

Update 9/21/13 - 10.8.5/Boot flag npci=0x3000 disables ML audio.
Remove npci=0x3000 from Extra/org.Chameleon.Boot.plist. Restart.
Credit: TwistedSystem, Problem after updating to 10.8.5 - Page 7

The Mountain Lion Optimized AppleHDA for Realtek ALC8xx is available from MultiBeast v5.1.1 or newer

Important Information
The Mountain Lion AppleHDA.kext does not recognize the Lion Audio IDs (i.e., 885, 887, 888, 889, 892 or 898). All current HDEF edited dsdts and all current HDAEnablers will no longer enable on board audio in Mountain Lion with the Mountain Lion AppleHDA.kext installed. For Mountain Lion, the on board Audio ID is 1 (layout-id is 1, as well) regardless of the audio codec. At this time, there are no plans to update the tonymacx86 DSDT database with the Mountain Lion HDEF/layout-id. However, MultiBeast_5.1.1 and newer will edit your dsdt/HDEF/layout-id to 1 when the Mountain Lion AppleHDA.kext is installed.

For all users
1. With DSDT
1a. MultiBeast_5.1.1 and newer/edits installed dsdt.aml for layout_id 1
1b. edit dsdt/HDEF for Mountain Lion Audio/layout-id 1, 2 or 3 before you install the Mountain Lion Optimized AppleHDA.
2. Without DSDT,
2a. MultiBeast _5.1.1 and newer/deletes unnecessary enablers and installs HDAEnabler1.kext
2b. delete all S/L/E/HDAEnabler8??.kext and install HDAEnabler1.kext or HDAEnabler2.kext with the Mountain Lion Optimized AppleHDA.

Summary
1. For Mountain Lion audio to work, the dsdt or enabler must be changed to Audio ID: 1 or 2 or 3 for audio to work after installation. Not making the changes results in no audio on restart.

Alternatives
1. Install Lion Optimized Realtek AppleHDA (no changes to dsdt or enablers in Mountain Lion)
1a. Available in MultiBeast_4.6.1/Audio/Realtek ALC8xx/Patched AppleHDA/ALC ...
1b. Available in MultiBeast_5.0.1/Audio/Realtek ALC8xx/With DSDT or Without DSDT/ALC
2. Voodoo
2a. Available in MultiBeast_5.0.1 and newer/Audio/Universal

Mountain Lion Audio IDs
1. Audio ID: 1 - supports standard 5/6 port onboard and/or AMD/Nvidia HDMI audio (Lion Audio ID:8xy)
2. Audio ID: 2 - supports custom 3 port onboard and/or AMD/Nvidia HDMI audio (Lion Audio ID:2xy)
3. Audio ID: 3 - supports custom 3/5/6 port onboard with HD3000/HD4000 HDMI audio (Lion Audio ID:3xy)

Changes in Mountain Lion AppleHDA (from Lion)
1. Can not use codec name for Audio-ID (Ex., 889 won't work). Must use an exiting Apple layout_id.
2. Nvidia HDMI audio device_ids are supported natively in ML_AppleHDA
3. The Resources/layoutx.xml and Platforms.xml are invisible and compressed. Terminal script available to uncompress and compress .zlib files
4. Each Optimized AppleHDA will only have layouts (1, 2 & 3) for the codec it supports.

New "Features" of Mountain Lion AppleHDA
1. AMD/Nvidia and HD3000/HD4000 HDMI audio works without on board audio working (assuming dsdt edits) by setting HDEF/layout_id to an existing Apple layout_id such as 1. That means systems with unsupported audio codecs can have HDMI audio and AirPlay audio using the native AppleHDA.kext in Mountain Lion (do not Install a Optimized AppleHDA for this feature).
2. When headphones are plugged in, selecting another audio device is disabled until the headphones are unplugged (10.8 AppleHDA.kext_v2.3.0 only).

Realtek ALC8xx Audio Configurations
ml_Audio_Configurations.png

Mute is not available on 887_v100302 and 888_v100302 - Fixed 10/12/13

Unsupported/Non Working Audio ML Optimized AppleHDA
1. MSI motherboards/pre Sandy Bridge - All audio devices present, controls work, no sound
1a. Note: MSI Z77 motherboards have sound, credit: kduvernay MSI, Asrock and Foxconn 1155 Patched Bios Thread - Page 52
2. Asus Sandy Bridge/6 Series motherboards with 3xxx BIOS - phantom codec
3. Any X79 motherboard - no sound, see Interim Realtek Ivy Bridge Lion AppleHDA
3a. Note: Intel DX79SI working, add HDEF (see no dsdt/HDEF below), credit AppleIIGuy - Multibeast 5.1.2 Audio
4. ALC888_v100001 motherboards - not supported
5. Any motherboard with non working Snow Leopard and/or Lion onboard likely will have non working ML audio.
6. It is possible, motherboards with audio working in Snow Leopard or Lion will not work In ML. Install the previously working Snow Leopard or Lion audio solution (from backup above) in ML.

Requirements
1. Mountain Lion 10.8 or newer -
2. Realtek ALC8xy (see Note 7, below), one of the following Device_IDs:
2a. 10ec0885
2b. 10ec0887
2c. 10ec0888
2d. 10ec0889
2e. 10ec0892
2f. 10ec0898
3. Chimera 1.11.1 or newer
4. KextBeast

No dsdt/HDEF?
1. ML: How to Add or Edit dsdt/HDEF
2. MultiBeat 5.1.1 or newer/.../Audio/Realtek ALC8xx/Without DSDT

Audio ID/layout-id Table
1. Audio ID: 1 > 0x01, 0x00, 0x00, 0x00
2. Audio ID: 2 > 0x02, 0x00, 0x00, 0x00
3. Audio ID: 3 > 0x03, 0x00, 0x00, 0x00

Downloads
1. View attachment Read_Me_First-ML_Optimized_AppleHDA.kext .pdf
2. View attachment Optimized_ML_AppleHDA_audio_screenshots.pdf

Customization
1. Mountain Lion: Customizing the Optimized AppleHDA

Installation (Detailed)
1. Downloads/Read_Me_First_ML_Optimized_AppleHDA

Installation - MultiBeast_5.1.1 or newer
1. Backup S/L/E/AppleHDA.kext
2. Verify dsdt/HDEF/layout-id
3. MultiBeast - Select Drivers & Bootloaders/Drivers/Audio/Realtek ALC8xx
3a. With DSDT/ALC8xy or
3b. Without DSDT/ALC8xy, and, if desired, Optional 3 Port Audio Enabler (for Audio ID: 2)
4. Continue
5. Install
6. Restart

Installation - Download/Backup
1. Backup S/L/E/AppleHDA.kext
2. Verify dsdt/HDEF/layout-id
3. Delete ALC8xxHDA.kext, HDAEnabler8??.kext and any other audio enablers from S/L/E
3a. Copy Downloads/ML_AppleHDA.../AppleHDA.kext or Backup/AppleHDA.kext to Desktop
3b. Without DSDT, copy Downloads/ML_AppleHDA.../HDAEnabler1.kext to Desktop
4. Run KextBeast
5. Restart

Diagnostic Tools
1. IORegistryExplorer
1a. See [Guide] How to Make a Copy of IOReg
2. MaciASL (dsdt editor)
2a.
MaciASL - Browse Files at SourceForge.net
3. Applications/Utilities/Console
4. System Information/Hardware/Audio/Intel High Definition Audio
5. System Information/Hardware/Graphics/Displays
5. System Preferences/Sound/Outputs
6. System Preferences/Sound/Inputs

Problem Reporting - See ML: MultiBeast - No Audio/Solutions and Problem Reporting
1. Description of audio problem, include the following information:
1a. Motherboard/processor/OS and version/graphics
1b. Procedure/Guide Used/AppleHDA.kext version
1c. dsdt
1d. copy of IOReg
1e. Console/All Messages/kernel Sound Assertions selected/Save Selection As…..
1f. Screenshot of System Information/Hardware/Audio
1g. Screenshot of System Information/Hardware/Graphics/Displays

Audio Popping Solutions
After a short period of no audio, the amp is turned down/quieted to eliminate static/noise. When the audio signal returns, the amp is repowered causing a pop. Choices are:
1. digital audio (HDMI, optical, USB, etc.)
2. black or orange ports
3. anti pop software
4. macpro3,1 system definition
5. windoz

Notes
1. AMD/Nvidia HDMI audio dsdt and kext edits required
2. HD3000 HDMI audio dsdt and kext edits required.
3. Use Applications/Utilities/Audio MIDI Setup to configure analog 5.1 surround sound with 3 Line Outs
4. Requires Platforms.xml edit, adds Grey LineOut and deletes SPDIFOut. Use Audio MIDI Setup to configure analog 7.1 surround sound with 4 Line Outs
5. SPDIFOut Encoded Digital Audio (Surround Sound) requires DD/DTS source, DD/DTS player (Plex, XBMC, Boxee) and DD/DTS sound system. Audi MIDI Setup/Audio Devices/Digital Output/ always shows 2 Channel Stereo. VLC encoded digital audio requires optional Optical Surround/AppleHDA binary, see Customization above.
6. For Audio ID: 1 or 2, a non-dsdt Enabler can be be installed in S/L/E with MultiBeast.
7. ALC8xy can one of the following Realtek audio codecs:
a. ALC885 aka ALC889a
b. ALC887 aka ALC888b
c. ALC888 aka ALC888s
d. ALC889
e. ALC892
f. ALC898

dsdt/HDEF edits
Code:
[COLOR=#232323][FONT=Verdana]            Device (HDEF)                                                {[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                Name (_ADR, 0x001B0000)           /** Always  0x001B0000   **/[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                Method (_PRW, 0, NotSerialized)    /** Not needed if present, begin  **/[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                {[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                    Return (Package (0x02)[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                    {[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                        0x0D, [/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                        0x05[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                    })[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                }                                  /** Not needed if present, end   **/[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]...[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]...[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]...[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                Method (_DSM, 4, NotSerialized)[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                {[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                    Store (Package (0x04)[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                        {[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                            "layout-id", [/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                            Buffer (0x04)[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                            {[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                                0x01, 0x00, 0x00, 0x00  /** for Realtek onboard audio **/[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                            }, [/FONT][/COLOR]

[COLOR=#232323][FONT=Verdana]                            "PinConfigurations", [/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                            Buffer (Zero) {}[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                        }, Local0)[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                    Return (Local0)[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]                }[/FONT][/COLOR]
[COLOR=#232323][FONT=Verdana]            }  [/FONT][/COLOR]
Screenshots
ALC892%20edited%20Lion%20prefs-sound-input.png
ALC892_edited_Lion_prefs-sound-output.png


Credits:
THe KiNG: http://www.projectosx.com/forum/index.php?showtopic=465 - Post 1
VCH888: insanelymac.com/forum/topic/140941-alc889a-gigabyte-intel-now-having-a-working-front-mic/page__st__740#entry1448833 - Post 760
.: ErmaC:.: insanelymac.com/forum/topic/280468-applehda-patching-in-mountain-lion/page__st__60#entry1839042 - Post 69
 
Last edited by a moderator:
Thank you for the work. I have attached my modified 10.8.2 alc892 kext in case anyone else needs it. It switches the Digital Audio Out to use the SPDIF Header instead of the TOSLink. Followed the #7 instructions in the customization tutorial.
 

Attachments

  • ALC892 SPDIF header_AppleHDA.kext.zip
    832.5 KB · Views: 2,749
Hi I am getting a problem with not audio devices detected:

CPU: i7 2600k
Graphics: MSI Nvidia 660Ti
Motherboard: Asus P8P67 Pro with Realtek: ALC 892

OSX - 10.8.2 (was working on 10.8)
Method of Install - Multibeast 5.1.2
DSDT - Created by me using @sammysnakes guide (attached)
IOReg - Attached

(had to zip both up due to file type and size limits on the forum sorry

View attachment DSDT.AML.zipView attachment IOReg.zip


Any Help would be really appreciated. :)
 
Hi toleda, thanks for the work!

In my log:
Sound assertion - Command/Response TIMED OUT and ( kRequestStateMatch == fCodecRequest->state = 2 ), fCodecRequest->command->codec: -549064016896, fCodecRequest->command->verb: 0xFFF, fPoweredDown: 0
Sound assertion in AppleHDAController at line 5097
Sound assertion in AppleHDAController at line 5098
Sound assertion in AppleHDAController at line 8276

please tell me, how to fix it?
I patched my dsdt here this:
 

Attachments

  • hdmi_audio_ami_efi_hd4000.txt.zip
    1.2 KB · Views: 469
Hello,

I am sorry, maybe I am an idiot, but I don't understand the thread.

My config is:
MB: Gigabyte ga-z68ap-d3 Rev. 2.0 with UEFI (Ua5), I guess it has a Realtek ALC889 HDAudio chip.
CPU: i7-3770k with HD4000 (I don't care about HDMI audio since I want to use OSX controls for volume etc...)

I used multibeast 5.1.2 since I upgraded to OSX 10.8.2
(I had sound working in 10.8.0 using multibeast 5.0.2)

UEFI means I used multibeast without dsdt...

In S/L/E I have:
AppleHDA.kext v2.3.1
HDEnabler1.kext v1.0.0d1

I get no sound right now...

I read the whole thread, but either I am an idiot or there is too much information. I don't know what steps I should take right now and I don't want to do something stupid.

Sorry for the inconvenience, but any advice would be greatly appreciated.
Best,
-a- (aka "looking for guidance")
;)
 
Status
Not open for further replies.
Back
Top