Jump to content

ALC888 AppleHDA.kext for Moutain Lion (10.8.2+10.8.3 version)


Andy Vandijck
 Share

31 posts in this topic

Recommended Posts

I have an ALC888 audio chipset (VIA audio).

I decided to patch up the latest AppleHDA.kext (10.8.2 version).

If it doesn't work for you try changing the ID in the AppleHDAController binary to suit your PCI ID (not codec id ofcourse as that is ALC888 or 0x10EC0888)

You can get your audio controller PCI ID from IORegistry or lspci

Next look for and change:

Find
DE10E30B
Change to
XX (vendor upper byte)
XX (Vendor lower byte)
XX (Device upper byte)
XX (Device lower byte)
Example:
06118832
=
0x32881106 (allready supported as it is my audio card, VIA VT1708/A audio)

DSDT edit is also needed...

            Method (_DSM, 4, NotSerialized)
            {
                Store (Package (0x04)
                {
                    "layout-id",
                    Buffer (0x04)
                    {
                        0x0C, 0x00, 0x00, 0x00
                    },
                    "PinConfigurations",
                    Buffer (One)
                    {
                        0x00
                    }
                }, Local0)
                DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                Return (Local0)
            }

This is the _DSM method for injection layout-id 12

Result works great...

I'll be updating this codec with each release of OS X ;)

No assertion errors or so...

If you all post your controller ID's I can implement them in each new release of the kext

Screenshot under System Profiler below... :D

EDIT: Update... just hacked the 10.8.3 kext... pleased to announce it works well ;)

ALC888_AppleHDA_10.8.2_ML.kext.zip

post-100023-0-22750300-1356293147_thumb.png

ALC888_AppleHDA_10.8.3_ML.kext.zip

  • Like 6
Link to comment
Share on other sites

Hi Andy :)

 

Glad to see this topic!

 

I tried the attached kext but there's no audio... So I have to follow you steps.

Could you please tell me where exactly in the IORegistry I have to search for the PCI ID of my audio controller (ALC 888) and how it should look like?

Then, do I have to search for DE10E30B in the attached kext?

 

My DSDT section is different from yours...

Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
Store (Package (0x0E)
{
"subsystem-id",
Buffer (0x04)
{
0xA0, 0x00, 0x00, 0x00
},

"subsystem-vendor-id",
Buffer (0x04)
{
0x6B, 0x10, 0x00, 0x00
},

"codec-id",
Buffer (0x04)
{
0x88, 0x08, 0xEC, 0x10
},

"layout-id",
Buffer (0x04)
{
0x78, 0x03, 0x00, 0x00
},

"device-type",
Buffer (0x07)
{
"ALC888"
},

"PinConfigurations",
Buffer (0x28)
{
/* 0000 */ 0x40, 0x90, 0xA1, 0x90, 0x50, 0x90, 0xA1, 0x02,
/* 0008 */ 0x60, 0x30, 0x81, 0x01, 0x70, 0x40, 0x21, 0x02,
/* 0010 */ 0x10, 0x40, 0x11, 0x01, 0x20, 0x10, 0x01, 0x01,
/* 0018 */ 0x30, 0x60, 0x01, 0x01, 0x80, 0x20, 0x01, 0x01,
/* 0020 */ 0x90, 0x61, 0x4B, 0x01, 0xA0, 0x01, 0xCB, 0x01
},

"platformFamily",
Buffer (One)
{
0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}

 

Do I have to replace mine with your example?

 

Thanks in advance for your time help :idea:

  • Like 1
Link to comment
Share on other sites

Layout-id

0x0c, 0x00, 0x00, 0x00

For using my controller id

device-id

0x88, 0x32, 0x00, 0x00

vendor-id

0x06, 0x11, 0x00, 0x00

Try it...

 

  • Like 1
Link to comment
Share on other sites

  • 1 month later...
  • 2 weeks later...

My DSDT is different, too.

 

I dont do too many DSDT edits, so please forgive me if I got this all screwed up

 

 

Device (HDEF)

{

Name (_ADR, 0x001B0000)

OperationRegion (HDAR, PCI_Config, 0x4C, 0x10)

Field (HDAR, WordAcc, NoLock, Preserve)

{

DCKA, 1,

Offset (0x01),

DCKM, 1,

, 6,

DCKS, 1,

Offset (0x08),

, 15,

PMES, 1

}

Link to comment
Share on other sites

  • 1 month later...

New kext version is now available... :D

Enjoy ;)

  • Like 1
Link to comment
Share on other sites

Hi, Andy!

 

Will your kext be compatible with the Via VT-1705 CODEC?

 

All the best!

If the codec is ALC888 compliant: yes

Use my tool to get your codec id and report back please ;)

  • Like 1
Link to comment
Share on other sites

Hi!

 

Which tool? Where can i find it?

 

Best regards!

getcodecid in the developers corner.

You need voodoohda or applehda and then you can get the codec id of that via audio.

Link to comment
Share on other sites

Hi, Andy

Here is the codec_dump of TheConnactic.

We are working on a fix for this kext your help is welcome

Codec: VIA VT1705
Address: 0
AFG Function Id: 0x1 (unsol 0)
Vendor Id: 0x11064397
Subsystem Id: 0x101905b3
Revision Id: 0x100000
No Modem Function Group found
Default PCM:
rates [0x0]:
bits [0x0]:
formats [0x0]:
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
GPIO: io=1, o=0, i=0, unsolicited=1, wake=0
IO[0]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
Node 0x10 [Audio Output] wcaps 0x41d: Stereo Amp-Out
Control: name="Front Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Device: name="VT1705 Analog", type="Audio", device=0
Amp-Out caps: ofs=0x2a, nsteps=0x2a, stepsize=0x05, mute=0
Amp-Out vals: [0x1c 0x1c]
Converter: stream=8, channel=0
PCM:
rates [0x5e0]: 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Node 0x11 [Audio Output] wcaps 0x41d: Stereo Amp-Out
Control: name="Surround Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Amp-Out caps: ofs=0x2a, nsteps=0x2a, stepsize=0x05, mute=0
Amp-Out vals: [0x1c 0x1c]
Converter: stream=8, channel=0
PCM:
rates [0x5e0]: 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3
Power: setting=D3, actual=D3
Node 0x12 [Audio Output] wcaps 0x611: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x5e0]: 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Node 0x13 [Audio Input] wcaps 0x10051b: Stereo Amp-In
Control: name="Capture Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Control: name="Capture Switch", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Device: name="VT1705 Analog", type="Audio", device=0
Amp-In caps: ofs=0x0b, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x13 0x13]
Converter: stream=4, channel=0
SDI-Select: 0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 1
 0x17
Node 0x14 [Audio Input] wcaps 0x10051b: Stereo Amp-In
Control: name="Capture Volume", index=1, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Control: name="Capture Switch", index=1, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Amp-In caps: ofs=0x0b, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x00 0x00]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 1
 0x1e
Node 0x15 [Audio Output] wcaps 0x611: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x5e0]: 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Node 0x16 [Audio Mixer] wcaps 0x20050b: Stereo Amp-In
Control: name="PCM Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Control: name="PCM Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Control: name="Rear Mic Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=2, ofs=0
Control: name="Rear Mic Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=In, idx=2, ofs=0
Control: name="Front Mic Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=4, ofs=0
Control: name="Front Mic Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=In, idx=4, ofs=0
Control: name="Line Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=3, ofs=0
Control: name="Line Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=In, idx=3, ofs=0
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x17 0x17] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 7
 0x10 0x1f 0x1a 0x1b 0x1e 0x1d 0x25
Node 0x17 [Audio Selector] wcaps 0x300501: Stereo
Control: name="Input Source", index=0, device=0
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 6
 0x1f 0x1a 0x1b 0x1e* 0x1d 0x16
Node 0x18 [Audio Selector] wcaps 0x30050d: Stereo Amp-Out
Control: name="Surround Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Power states: D0 D1 D2 D3
Power: setting=D3, actual=D3
Connection: 1
 0x11
Node 0x19 [Pin Complex] wcaps 0x400581: Stereo
Pincap 0x00000014: OUT Detect
Pin Default 0x410110f0: [N/A] Line Out at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Power states: D0 D1 D2 D3
Power: setting=D3, actual=D3
Connection: 1
 0x18
Node 0x1a [Pin Complex] wcaps 0x400581: Stereo
Control: name="Rear Mic Boost Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Control: name="Rear Mic Jack", index=0, device=0
Pincap 0x00002334: IN OUT Detect
Vref caps: HIZ 50 100
Pin Default 0x01a19036: [Jack] Mic at Ext Rear
Conn = 1/8, Color = Pink
DefAssociation = 0x3, Sequence = 0x6
Pin-ctls: 0x21: IN VREF_50
Unsolicited: tag=03, enabled=1
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 1
 0x26
Node 0x1b [Pin Complex] wcaps 0x400581: Stereo
Control: name="Line Jack", index=0, device=0
Pincap 0x00002334: IN OUT Detect
Vref caps: HIZ 50 100
Pin Default 0x0181303e: [Jack] Line In at Ext Rear
Conn = 1/8, Color = Blue
DefAssociation = 0x3, Sequence = 0xe
Pin-ctls: 0x20: IN VREF_HIZ
Unsolicited: tag=05, enabled=1
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 1
 0x18
Node 0x1c [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Control: name="Front Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Control: name="Line Out Jack", index=0, device=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0001001c: OUT HP EAPD Detect
EAPD 0x2: EAPD
Pin Default 0x01014010: [Jack] Line Out at Ext Rear
Conn = 1/8, Color = Green
DefAssociation = 0x1, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=02, enabled=1
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 1
 0x16
Node 0x1d [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Control: name="Headphone Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Control: name="Independent HP", index=0, device=0
Control: name="Front Headphone Jack", index=0, device=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0000233c: IN OUT HP Detect
Vref caps: HIZ 50 100
Pin Default 0x0221401f: [Jack] HP Out at Ext Front
Conn = 1/8, Color = Green
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP VREF_HIZ
Unsolicited: tag=01, enabled=1
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 2
 0x16 0x25*
Node 0x1e [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Control: name="Front Mic Boost Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Control: name="Front Mic Jack", index=0, device=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0000233c: IN OUT HP Detect
Vref caps: HIZ 50 100
Pin Default 0x02a19038: [Jack] Mic at Ext Front
Conn = 1/8, Color = Pink
DefAssociation = 0x3, Sequence = 0x8
Pin-ctls: 0x21: IN VREF_50
Unsolicited: tag=04, enabled=1
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 2
 0x16* 0x25
Node 0x1f [Pin Complex] wcaps 0x400401: Stereo
Pincap 0x00000020: IN
Pin Default 0x503700f1: [N/A] CD at Int N/A
Conn = Analog, Color = Unknown
DefAssociation = 0xf, Sequence = 0x1
Pin-ctls: 0x00:
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Node 0x20 [Pin Complex] wcaps 0x400701: Stereo Digital
Pincap 0x00000010: OUT
Pin Default 0x474511f0: [N/A] SPDIF Out at Ext Rear Panel
Conn = Optical, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00:
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 1
 0x12
Node 0x21 [Pin Complex] wcaps 0x400701: Stereo Digital
Pincap 0x00000010: OUT
Pin Default 0x474410f0: [N/A] SPDIF Out at Ext Rear Panel
Conn = RCA, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 1
 0x15
Node 0x22 [Pin Complex] wcaps 0x400581: Stereo
Pincap 0x00000014: OUT Detect
Pin Default 0x410160f0: [N/A] Line Out at Ext Rear
Conn = 1/8, Color = Orange
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 1
 0x26
Node 0x23 [Pin Complex] wcaps 0x400581: Stereo
Pincap 0x00000014: OUT Detect
Pin Default 0x410160f0: [N/A] Line Out at Ext Rear
Conn = 1/8, Color = Orange
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Power states: D0 D1 D2 D3
Power: setting=D3, actual=D3
Connection: 1
 0x27
Node 0x24 [Audio Output] wcaps 0x41d: Stereo Amp-Out
Control: name="Center Playback Volume", index=0, device=0
ControlAmp: chs=1, dir=Out, idx=0, ofs=0
Control: name="LFE Playback Volume", index=0, device=0
ControlAmp: chs=2, dir=Out, idx=0, ofs=0
Amp-Out caps: ofs=0x2a, nsteps=0x2a, stepsize=0x05, mute=0
Amp-Out vals: [0x1c 0x1c]
Converter: stream=8, channel=0
PCM:
rates [0x5e0]: 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Node 0x25 [Audio Output] wcaps 0x41d: Stereo Amp-Out
Control: name="Headphone Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Device: name="VT1705 HP", type="Audio", device=2
Amp-Out caps: ofs=0x2a, nsteps=0x2a, stepsize=0x05, mute=0
Amp-Out vals: [0x1c 0x1c]
Converter: stream=8, channel=0
PCM:
rates [0x5e0]: 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3
Power: setting=D3, actual=D3
Node 0x26 [Audio Selector] wcaps 0x30050d: Stereo Amp-Out
Control: name="Center Playback Switch", index=0, device=0
ControlAmp: chs=1, dir=Out, idx=0, ofs=0
Control: name="LFE Playback Switch", index=0, device=0
ControlAmp: chs=2, dir=Out, idx=0, ofs=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 1
 0x24
Node 0x27 [Audio Selector] wcaps 0x30050d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Power states: D0 D1 D2 D3
Power: setting=D3, actual=D3
Connection: 1
 0x25

Link to comment
Share on other sites

This works with HDAEnabler? For those without DSDT. Nice job man :)

Yes.

Layout-id = 12 (0x0C)

You can use HDAEnabler ;)

Link to comment
Share on other sites

  • 4 weeks later...

I don't have any 'Device (HDEF)' in my DSDT (Asus P5B), where do I have tu put the DSDT section?

 

Thanks

Download IORegistryExplorer.

Check for AZAL and in dsdt rename it everywhere to HDEF.

If you don't have AZAL and have VoodooHDA installed check which pci device has it attached.

There are numbers behind it.

@2 means

Name (_ADR, 0x00020000)

@2,1 means

Name (_ADR, 0x00020001)

You can add the device... ;)

  • Like 2
Link to comment
Share on other sites

post-169636-0-91644400-1365769745_thumb.png

,

So in my case I have to consider the PCI0@0, right?

Then I'll remove the AppleHDADisabler and VoodooHda and install your patched AppleHda, if I got it right.

 

Thanks

HDEF@18

Thus:

Device (HDEF)

{

Name (_ADR, 0x00180000)

 

Dsm method here...

}

  • Like 1
Link to comment
Share on other sites

Hi, i'm in the same case as theconnactic i have an VIA VT1705 with VIA VT1708S_4 codec, i installed your kext but nothing work, in IORegistryExplorer i can't find AZAL or any Voodoo entry

What's wrong ? i don't use DSDT

Thanks !

  • Like 1
Link to comment
Share on other sites

Arrgh i'm out of luck, first was the ethernet problem now the audio .. ^^"

 

I was able to get the VT1705 works, i used an VoodooHDA kext but after an restore i lost the kext .. now i'm searching for it but nothing around the web want to work, i don't know why, even all AppleHDA i have found :/

  • Like 1
Link to comment
Share on other sites

VoodooHDA should work with this CODEC without any issues, i myself used the latest version of it both in 10.7.5 and 10.8.2. Had to ditch it because i need HDMI audio.

 

All the best!

 

Worked like a charm, Thanks !!!!!

 

 

For those who can't change volume with VT1705, simple change this value under info.plist

 

<key>VoodooHDAEnableVolumeChangeFix</key>
<false/>

to


<key>VoodooHDAEnableVolumeChangeFix</key>
<true/>

  • Like 1
Link to comment
Share on other sites

 Share

×
×
  • Create New...