Help - Search - Members - Calendar
Full Version: How to patch AppleHDA.kext from 10.5.2 and above
InsanelyMac Forum > OSx86 Project > Hardware and Drivers > Sound
Pages: 1, 2, 3, 4
MadTux
Os X Leopard introduced new codecs, inside their AppleHDA binary so why not to use them.
I will try to explain how to patch and modify a new AppleHDA.kext and hopefully help others in making their one. I believe that here are guys/girls ho want to work on this. I don't know perfect solution, U will need to try and test a bit. Learn and stuff...


This tutorial will be based on AppleHDA 10.5.5 kext coz it is latest one

Things that we need:
HexEditor: Click to view attachment
Plist Editor: Click to view attachment
AppleHDA.kext: Click to view attachment
And this generic plist files for PlatformPlugin and Controler plugins.
Click to view attachment
And your own codec dump from Linux, (U can get your codec dump information from Taruga HDAudio.kext, but I never had time to test that)

Let's begin:
These are codecs we have in AppleHDA binary
Click to view attachment
And this is a test codec:
Test codec
Name: ALC880
Decimal : 283904128
Hex: 0x10ec0880
Hexedit: 8008EC10

First
We need to patch AppleHDA binary with Hexedit
Binary is inside AppleHDA.kext (~/AppleHDA.kext/Contenst/MacOS/AppleHDA)

Open AppleHDA in HexEdit and find a codec dump that is close to yours.
Best way of knowing your card is reading patch_realtek.c from ALSA source:Click to view attachment
(Or if U are lucky it is the one from original AppleHDA and all that U need to do is create plist files)

I will edit AppleHDA binary with 8008EC10. what is backward of 10EC0880

So I searched for ALC0262 what is in hex 10EC0262 and changed to 8008EC10
P.S: Try different codecs, for this card 10ec0880, sigmatel codec works too, so U have to make some test, don't stuck on first one. Give it a try.
Second:
After U patched your AppleHDA next it is to create a working PlatformDriver.plist
I made(hopefully) a generic one with all thing that U could have.
How to Platform: Click to view attachment

Third
- Contorler.plist
Change CodecID to your codec in decimal number and put a LayoutID to 12.
Under PinConfigDefault put nothing.
(It would be best to know your own exact PinConfigDefault numbers, U can obtain them from Vista Registry Explorer, or obtain them thru linux dump(thx Kabyl and The King on this one).

Swap Contorler.plist with Info.plist inside Controler plugin
~/AppleHDA.kext/Contenst/PlugIns/AppleHDAController.kext/Contenst/Info.plist
RENAME Controler.plist to Info.plist!

Click to view attachment

With this U can hopefully boot and have sound.

P.P.S: Change in Controler plist are crucial,but U can boot with your AppleHDA.kext with only this informations in HDAController plist file, but System profiler will not show your inputs.

To change from HEX to DECIMAL use Calculator in Applications.
And U have to use HDAEneabler(If U have Intel chipset) or EFI string for your HDA to load, it is better to use HDAEneabler, coz it sets ClassMatch HDA value for Controler.plist.

After all this U have a working latest HDAkext for alc880:
Click to view attachment

How to read your codec dump
I will Use a codec dump from user adat6 and try to explane how to find
a pins inside codec dump. And hopefully U will find yours inside your dump
Click to view attachment
How to codec dump: Click to view attachment

How to PinConfig, PinConfigDefault or PinConfigOverRides
U can obtain this PinConfig thru Vista registry explorer.
Click on:
START
RUN
and write: regedit (this will start registry explorer)
Search for PinConfig, and U will get something like this:
Click to view attachment
Then as user idoc said: "strip out the junk!"
f01c2701 111d2701 111e2701 411f2701 f01c3701 111d3701 111e3701 411f3701 1f1c4701 101d4701 211e4701 021f4701 101c5701 011d5701 131e5701 991f5701 f01c6701111d6701 111e6701411f6701 401c8701981d8701 a11e8701021f8701 411c9701091d9701 a31e9701991f9701 4e1ca701301da701 811ea701021fa701 f01cc701111dc701 111ec701411fc701 2d1cd701951dd701 171ed701401fd701 301ce701111de701 451ee701021fe701

then you have to byte flip each double word;
<01271CF0 01271D11 01271E11 01271F41 01371CF0 01371D11 01371E11 01371F41 01471C1F 01471D10 01471E21 01471F02 01571C10 01571D01 01571E13 01571F99 01671D11 01671CF0 01671F41 01671E11 01871D98 01871C40 01871F02 01871EA1 01971D09 01971C41 01971F99 01971EA3 01A71D30 01A71C4E 01A71F02 01A71E81 01C71D11 01C71CF0 01C71F41 01C71E11 01D71D95 01D71C2D 01D71F40 01D71E17 01E71D11 01E71C30 01E71F02 01E71E45>
And after U done this go here so The King can tell U what to do with PinConfig:
PinConfig How to; The King aka XyZ:

Next... how to overide your BIOS with HDAVerbs... and get any card to work

A made this guide for people who cards are not supported by HDA patcher from Taruga, like mine card ALC880, this guide could be alternative. I don't know what cards are working U will have to try on your one.
If U found this guide useful, I am glad.



If U ask for help, and want to post a codec dump or registry dump from windows, please post them in text format as atachment. It is easier for every one.

Related stuff
AppleHDA collection and knowledge base from The King aka XyZ:

Anemic sound from limini:
atad6
Thanks for the great guide! I'm a bit new to this and have been trying to get the ALC269 codec to work since it's used in many of the new netbooks (MSI Wind, eee, etc). I went through the guide and am able to get system profiler to show the device but osx can't find any audio devices under sound preferences. I tried using the ALC269 codec I posted in this post http://forum.insanelymac.com/index.php?showtopic=126525 but no luck.
limini
MadTux: this has the potential to be brilliant! It seems the old methods aren't working with newer builds of leopard. And BTW: though it's clear English isn't your first language, I, and surely others, really appreciate the effort you've put into posting all this information.

Just to clarify: I assume this is the binary at AppleHDA.kext/Contents/MacOS/
QUOTE(MadTux @ Sep 20 2008, 10:01 PM) *
We need to patch AppleHDA kext with Hexedit

And I assume you mean that the character pairs are read from the end (ie: backwards):
QUOTE(MadTux @ Sep 20 2008, 10:01 PM) *
As U can see when we search in HexEdit with 8008EC10 what is oposite 2 by 2 char of 10EC0880

I'm slowly working my way through this for the 889A codec. There are still some things that are unclear. One thing is how to get the proper EFI string to get HDA to load (is that in com.apple.Boot.plist?). That's worked well for my video card, and I think that's the best for audio from now on.

Thanks again MadTux for this thread and I hope you keep revising and clarifying it!
age_sabres18
omg this is exactly what im looking for! now i can take matters into my own hands instead of waiting for damn patcher 2.00 lol plz post how to edit the Hard Way and how to read the info in the codec dump
atad6
Like I said before, thanks for the great guide. I'm just trying to clarify what you said because I'm a bit new to this and am sure there are others in a similar situation.

I'm just trying to figure out what to do with platform.plist. Are the values to be changed below correct?

Click to view attachment

I'm also a bit confused about controler.plist. We need to input our codec ID correct? Also is the correct place to put this the codec id that corresponds with LayoutID 12 as shown below? There are multiple listings with codec id which is why I'm confused.
Click to view attachment

After completing these steps do we rename platform.plist to info.plist and replace it with the one already in the folder AppleHDA.kext > Contents > PlugIns > AppleHDAPlatformDriver.kext > Contents > info.plist

and the same for controler.plist with AppleHDA.kext > Contents > PlugIns > AppleHDAController.kext > Contents > info.plist

I know I'm quite a novice but hopefully this can help others as well!

Also I can't wait for the extended guide for how to read pin numbers from a codec dump.
MadTux
QUOTE(limini @ Sep 21 2008, 04:03 PM) *
MadTux: this has the potential to be brilliant! It seems the old methods aren't working with newer builds of leopard. And BTW: though it's clear English isn't your first language, I, and surely others, really appreciate the effort you've put into posting all this information.

Just to clarify: I assume this is the binary at AppleHDA.kext/Contents/MacOS/

And I assume you mean that the character pairs are read from the end (ie: backwards):

I'm slowly working my way through this for the 889A codec. There are still some things that are unclear. One thing is how to get the proper EFI string to get HDA to load (is that in com.apple.Boot.plist?). That's worked well for my video card, and I think that's the best for audio from now on.

Thanks again MadTux for this thread and I hope you keep revising and clarifying it!


Thank U for your reply about mistaken writen words, and I will try to clarify this tutos, again really sorry for my bad english

QUOTE
Like I said before, thanks for the great guide. I'm just trying to clarify what you said because I'm a bit new to this and am sure there are others in a similar situation.

I'm just trying to figure out what to do with platform.plist. Are the values to be changed below correct?

Click to view attachment

Yes that is correct


QUOTE
I'm also a bit confused about controler.plist. We need to input our codec ID correct? Also is the correct place to put this the codec id that corresponds with LayoutID 12 as shown below? There are multiple listings with codec id which is why I'm confused.

Yes that is also correct, but in the first place don't put nothing in your Controler plist, remove your codec id from that , this one have IOPCIClassMatch set to AZAL AND HDEF support (0x04020000&0xFFFE0000 0x04030000&0xFFFE0000)
But later after U are shure your AppleHDA.kext is working, U can test various pinconfig inside,
But real deal would be to know how to calculate your real pinconfigdefault


QUOTE
After completing these steps do we rename platform.plist to info.plist and replace it with the one already in the folder AppleHDA.kext > Contents > PlugIns > AppleHDAPlatformDriver.kext > Contents > info.plist

and the same for controler.plist with AppleHDA.kext > Contents > PlugIns > AppleHDAController.kext > Contents > info.plist

This is also right
atad6
Thanks for all the help and for clarifying that! How would I go about finding the node/pin id's from this codec dump. I'd use HDAPatcher but the ALC269 codec is unsupported.
CODE
Codec: Realtek ALC269
Address: 0
Vendor Id: 0x10ec0269
Subsystem Id: 0x1043831a
Revision Id: 0x100004
No Modem Function Group found
Default PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
GPIO: io=0, o=0, i=0, unsolicited=0, wake=0
Node 0x02 [Audio Output] wcaps 0x1d: Stereo Amp-Out
Amp-Out caps: ofs=0x3f, nsteps=0x40, stepsize=0x03, mute=0
Amp-Out vals: [0x28 0x28]
Converter: stream=0, channel=0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x03 [Audio Output] wcaps 0x1d: Stereo Amp-Out
Amp-Out caps: ofs=0x3f, nsteps=0x40, stepsize=0x03, mute=0
Amp-Out vals: [0x00 0x00]
Converter: stream=0, channel=0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x04 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x05 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x06 [Audio Output] wcaps 0x211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x07 [Audio Input] wcaps 0x10011b: Stereo Amp-In
Amp-In caps: ofs=0x11, nsteps=0x2e, stepsize=0x03, mute=1
Amp-In vals: [0x00 0x00]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x160]: 44100 48000 96000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Connection: 1
0x24
Node 0x08 [Audio Input] wcaps 0x10011b: Stereo Amp-In
Amp-In caps: ofs=0x11, nsteps=0x2e, stepsize=0x03, mute=1
Amp-In vals: [0x90 0x90]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x160]: 44100 48000 96000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Connection: 1
0x23
Node 0x09 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x0a [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Connection: 5
0x18 0x19 0x1a 0x1b 0x1d
Node 0x0c [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Connection: 2
0x02 0x0b
Node 0x0d [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Connection: 2
0x03 0x0b
Node 0x0e [Audio Mixer] wcaps 0x20010a: Mono Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00] [0x00]
Connection: 2
0x0c 0x0d
Node 0x0f [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x10 [Audio Output] wcaps 0x211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x11 [Pin Complex] wcaps 0x400380: Mono Digital
Pincap 0x0814: OUT Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x10
Node 0x12 [Pin Complex] wcaps 0x400001: Stereo
Pincap 0x0820: IN
Pin Default 0x99a30920: [Fixed] Mic at Int ATAPI
Conn = ATAPI, Color = Unknown
DefAssociation = 0x2, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00:
Node 0x13 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x14 [Pin Complex] wcaps 0x40010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0810050: OUT EAPD Balanced
EAPD 0x2: EAPD
Pin Default 0x99130110: [Fixed] Speaker at Int ATAPI
Conn = ATAPI, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Connection: 2
0x0c* 0x0d
Node 0x15 [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x081001c: OUT HP EAPD Detect
EAPD 0x2: EAPD
Pin Default 0x0121401f: [Jack] HP Out at Ext Rear
Conn = 1/8, Color = Green
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=04, enabled=1
Connection: 2
0x0c* 0x0d
Node 0x16 [Pin Complex] wcaps 0x40010c: Mono Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80]
Pincap 0x0810: OUT
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Connection: 1
0x0e
Node 0x17 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x01a19830: [Jack] Mic at Ext Rear
Conn = 1/8, Color = Pink
DefAssociation = 0x3, Sequence = 0x0
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x19 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1a [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x08373c: IN OUT HP Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN VREF_HIZ
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1b [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN VREF_HIZ
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1c [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x1d [Pin Complex] wcaps 0x400000: Mono
Pincap 0x0820: IN
Pin Default 0x4005822d: [N/A] Line Out at Ext N/A
Conn = Optical, Color = Purple
DefAssociation = 0x2, Sequence = 0xd
Pin-ctls: 0x20: IN
Node 0x1e [Pin Complex] wcaps 0x400380: Mono Digital
Pincap 0x0814: OUT Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x06
Node 0x1f [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
Processing caps: benign=0, ncoeff=33
Node 0x21 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x22 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x23 [Audio Selector] wcaps 0x300101: Stereo
Connection: 7
0x18* 0x19 0x1a 0x1b 0x1d 0x12 0x0b
Node 0x24 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Connection: 6
0x18 0x19 0x1a 0x1b 0x1d 0x0b


MadTux
Rename your codec in codecdump
Codec: Realtek ALC269
Address: 0
Vendor Id: 0x10ec0269

to
Codec: Realtek ALC885
Address: 0
Vendor Id: 0x10ec0885

U will got a list of pins, coz patcher is checking only this information of a codec file
atad6
Sigh, still no luck. I was able to find the pin numbers using HDAPatcher and came up with this:

Back Mic: 9 34 24
Line In : 8 35 26
Speaker : 20 12 2
LineOut 1: 21 13 3
Headphone: 27 38 37

Still no luck, I can't get osx to recognize the sound card (I'm using HDAEnabler.kext with AppleHDA.kext). I think the problem may be in the controler.plist that I have to edit but I'm not sure.

Thanks for all the wonderful help so far, it's greatly appreciated!
limini
OK: this is interesting. I did a codec dump of the ALC889A on my system using Taruga's latest HDAudio.kext (run at boot) and this is what comes up:

CODE
Vendor Id: 0x10ec0885

...which according to the codec.rtf MadTux provided is already covered by the 10.5.5 AppleHDA.kext. I also looked in the info.plist using HexEdit and "885" seems to be there many times.

So what's missing? Why isn't the system recognizing this codec? And more importantly, how should I handle this next?

I've included the dump below if anyone cares to look. Thanks!

Click to view attachment
enb14
Thanks for your tips MadTux, now my question is when you mention about
"And U have to use HDAEneabler or EFI string for your HDA to load"

So if I edit the plist file in AppleHDA.kext it won't make it to work just with that?

Why and what do we have to add to the EFI string?
MacNutty
I think the easiest way is to use AppleHDA patcher from Taruga

limini
QUOTE(MacNutty @ Sep 22 2008, 01:20 AM) *
I think the easiest way is to use AppleHDA patcher from Taruga

Yes I agree. But I suspect that Taruga's patcher does much of what this thread shows us how to do manually. I think it's a good idea to learn to fish rather than depend on the fisherman.

Also, one issue with Taruga's 1.20 AppleHDA patcher (there is a 2.0 but there's no release date) is that it produces an out-of-spec AppleHDA.kext, whose internal version is 1.2.4 whereas the 10.5.5 AppleHDA.kext is at 1.5.7 and seems to have quite a few internal changes. Plus on my system the 1.20 patching does work, but one of the outputs is wrong. Another advantage of meddling directly in the configuration is assigning inputs and outputs the way we want them.

And then of course, there's the aspect of discovering OS X's intricacies. Like MadTux said: "Learn and stuff..." sorcerer.gif
MadTux
QUOTE(limini @ Sep 22 2008, 04:01 AM) *
OK: this is interesting. I did a codec dump of the ALC889A on my system using Taruga's latest HDAudio.kext (run at boot) and this is what comes up:

CODE
Vendor Id: 0x10ec0885

...which according to the codec.rtf MadTux provided is already covered by the 10.5.5 AppleHDA.kext. I also looked in the info.plist using HexEdit and "885" seems to be there many times.

So what's missing? Why isn't the system recognizing this codec? And more importantly, how should I handle this next?

I've included the dump below if anyone cares to look. Thanks!

Click to view attachment


Limini, I believe your card is already patched, yust look around to find a kext. I think this is one of best suported audio cards here.
enb14
QUOTE(limini @ Sep 22 2008, 12:13 AM) *
Yes I agree. But I suspect that Taruga's patcher does much of what this thread shows us how to do manually. I think it's a good idea to learn to fish rather than depend on the fisherman.

Also, one issue with Taruga's 1.20 AppleHDA patcher (there is a 2.0 but there's no release date) is that it produces an out-of-spec AppleHDA.kext, whose internal version is 1.2.4 whereas the 10.5.5 AppleHDA.kext is at 1.5.7 and seems to have quite a few internal changes. Plus on my system the 1.20 patching does work, but one of the outputs is wrong. Another advantage of meddling directly in the configuration is assigning inputs and outputs the way we want them.

And then of course, there's the aspect of discovering OS X's intricacies. Like MadTux said: "Learn and stuff..." sorcerer.gif


Me too I think MadTux did a great job explaining us how to do it using the latest kext, with taruga's patcher you were locked to 10.5.2 kexts but with this method you can do it by yourself and patch newer AppleHDA.kexts (10.5.6 in the future) and voiding those non sleep, non wake ups, etc.
limini
QUOTE(MadTux @ Sep 22 2008, 11:41 AM) *
Limini, I believe your card is already patched, yust look around to find a kext. I think this is one of best suported audio cards here.

In principle, Taruga's 885-889 for Leo works, but only ONCE. On first reboot, all the right info is there in Preferences and all the I/O works. But on 2nd reboot this card disappears and the System Profiler information for it too. No one here, or on Taruga's forum, has an explanation for this behavior. And it seems I'm not the only one this is happening to. A codec dump into Taruga's 1.20 patcher also works, but the information in the outputs is innaccurate, and this patcher creates an older version of AppleHDA.kext. So I'm looking at your method as an alternative, and hopefully more long term, solution.
MadTux
QUOTE(limini @ Sep 22 2008, 06:38 PM) *
In principle, Taruga's 885-889 for Leo works, but only ONCE. On first reboot, all the right info is there in Preferences and all the I/O works. But on 2nd reboot this card disappears and the System Profiler information for it too. No one here, or on Taruga's forum, has an explanation for this behavior. And it seems I'm not the only one this is happening to. A codec dump into Taruga's 1.20 patcher also works, but the information in the outputs is innaccurate, and this patcher creates an older version of AppleHDA.kext. So I'm looking at your method as an alternative, and hopefully more long term, solution.


U may try this, it could be a good start
Click to view attachment

And I think that pins from patcher are not innaccurate, just sometimes they dont work like they should :-)
age_sabres18
hi im on a pavillion laptop with IDT audio codec and I cant get osx to recognise my audio sad.gif. Ive patched everything what could i be doing wrong??
limini
QUOTE(MadTux @ Sep 22 2008, 06:42 PM) *
U may try this, it could be a good start
Click to view attachment

And I think that pins from patcher are not innaccurate, just sometimes they dont work like they should :-)

Thanks, MadTux! I'm now trying to use EFI to load the driver. Does this tutorial cover what I need to know?
MadTux
QUOTE(limini @ Sep 23 2008, 01:05 AM) *
I'm now trying to use EFI to load the driver. Does this tutorial cover what I need to know?

Yes that is a great one. But it is easier to use EFI STUDIO, has everything "built in" Network, Audio, Graphics.
limini
QUOTE(MadTux @ Sep 22 2008, 09:38 PM) *
Yes that is a great one. But it is easier to use EFI STUDIO, has everything "built in" Network, Audio, Graphics.

MadTux! MadTux!! It WORKS! Many , many thanks! I used your kext + HDAEnabler and the settings survive multiple reboots. All the Mac related I/O shows up properly and Built-in Speakers, and Digital out work. I haven't tested the inputs yet, but they're there. I found the bass anemic on the "Built-in Speakers" which is my Line out and looking through the plists I found where soft DSP is applying equalization to both the Built-in speakers and to the Mic. I'm going to try to remap the outputs so that I can get Line out signal to come out from the green jack line out; there are in fact 5 analog outs, 2 line ins, 2 mic ins and SPDIF I/O on this codec, so it should be possible to reroute. Is it possible to add I/O that isn't typically on a mac?

So now that it's working I guess I can try using EFI Studio and getting rid of HDAEnabler. I find it funny that looking for information on how to use EFI Studio to generate strings I find informations like "...then just use EFI Studio to input the right string for your graphics and audio, and you're done." Great... 2 questions:

1. I've found one with my graphics card as a preset, so I guess all I have to do is select my graphic card and "HDEF" for the audio and write both to the Boot.plist. I read on a thread here that you have to write both at the same time. If I already have my graphics string in Boot.plist, will EFI Studio replace the old one with the new or should I clean the old one out manually?

2. Do I need to fiddle with the HDEF values or can I assume EFI Studio is getting it right?

You do realize that by helping me out you've compromised my education... wink.gif
Cheops
Would this method work getting my internal subwoofer working on my acer laptop for the ALC268 codec?

Thanks

Ade.
MadTux
QUOTE(limini @ Sep 23 2008, 06:51 AM) *
I'm going to try to remap the outputs so that I can get Line out signal to come out from the green jack line out; there are in fact 5 analog outs, 2 line ins, 2 mic ins and SPDIF I/O on this codec, so it should be possible to reroute. Is it possible to add I/O that isn't typically on a mac?

I don't know, I am not an expert. People U have to try by your one. Test, learn...

QUOTE
1. I've found one with my graphics card as a preset, so I guess all I have to do is select my graphic card and "HDEF" for the audio and write both to the Boot.plist. I read on a thread here that you have to write both at the same time. If I already have my graphics string in Boot.plist, will EFI Studio replace the old one with the new or should I clean the old one out manually?

EFI_STUDIO replaces with new string, you don't have to delete manualy. I suggest U to put all three stuff in a same time. Network, Audio, Graphic Card in no particular order

QUOTE
2. Do I need to fiddle with the HDEF values or can I assume EFI Studio is getting it right?

If it founds HDEF it will put correct values, same thing for AZAL

P.S. And google is your friend and best educator.

xghost
Hey I'm stuck at finding out my nodes.
Because the first node has only 1 Connection, and it's not marked with a star.
I also tried Taruga patcher to find them out but this didn't work as well.
Even the repalcement of alc268 with alc885 as recommended on page 1 didn't work.
I attached my ubuntu linux dump. Could please someone help me?

Click here to see what I mean:
http://img99.imageshack.us/my.php?image=bild1oo6.jpg
machotom
have u got any idea with sigmatel 9200 audio ?! tried to patch and install kexts but no audio works. i made a clean install with dell laptop post installer and installed sigmatel 9200 driver but still no sound and osx cant identify my audio card. any idea??? - kalyway 10.5.2 default
MadTux
QUOTE(xghost @ Sep 24 2008, 12:04 PM) *
Hey I'm stuck at finding out my nodes.
Because the first node has only 1 Connection, and it's not marked with a star.
I also tried Taruga patcher to find them out but this didn't work as well.
Even the repalcement of alc268 with alc885 as recommended on page 1 didn't work.
I attached my ubuntu linux dump. Could please someone help me?

Click here to see what I mean:
http://img99.imageshack.us/my.php?image=bild1oo6.jpg


Than use that one node, U don't have much options
xghost
Okay I'll try. But I stumbled across another problem. I can't detect my input nodes because there is no Audio Selctor with the node from the mic (which would be 0x18 in my case) marked with a star. I have in general only 2 times the Audioselector.
Look at my dump.txt and you'll know what I mean...
limini
Just an FYI: I tried to use EFIStudio's generated string for HDEF sound (and graphics; network has worked OOB) but without HDAEnbler the sound driver just doesn't load.
SticMAC™
Hi Madtux,
is this a typo error?

"- PathMap
there U put a node numbers they are in this order:
0 > Mic > U put in 3 node numbers
1 > line out > U put in 3 node numbers
2 > SPIDIF in > U put in 2 numbers
3 > Speakers > 3 node numbers
4 > Headphones > 3 node numbers
5 > LineOut > 3 node numbers
6 > SPIDIF out > 2 node numbers"

You have two "line out >", is one supposed to be "line in >"???
and
example will "3 > Speakers > 3 node numbers" definitely have 3 node numbers or can there be less!?


SticMAN
MadTux
QUOTE(SticMAN™ @ Sep 24 2008, 08:52 PM) *
Hi Madtux,
is this a typo error?

"- PathMap
there U put a node numbers they are in this order:
0 > Mic > U put in 3 node numbers
1 > line out > U put in 3 node numbers
2 > SPIDIF in > U put in 2 numbers
3 > Speakers > 3 node numbers
4 > Headphones > 3 node numbers
5 > LineOut > 3 node numbers
6 > SPIDIF out > 2 node numbers"

You have two "line out >", is one supposed to be "line in >"???
and
example will "3 > Speakers > 3 node numbers" definitely have 3 node numbers or can there be less!?
SticMAN


Thx for seeing mistakes in writing, I'll fix them.
MadTux
QUOTE(limini @ Sep 24 2008, 08:46 PM) *
Just an FYI: I tried to use EFIStudio's generated string for HDEF sound (and graphics; network has worked OOB) but without HDAEnbler the sound driver just doesn't load.


funny I didn't know that, my card is AZAL and I am using HDAEneabler so my SystemProfiler can see my card as HDEF. I am working now on Pin Config so it can show my Inputs in SystemProfiler
dflow
MadTux,
I think your idea is pretty brilliant and maybe that's the right way
to create drivers for on-board audio chips not supported by OSX.
I understand the process you are describing, but can you please
post a few screenshots of the editing process?

For example, when we come to this:

QUOTE
- PathMap
there U put a node numbers they are in this order:
0 > Mic > 3 node numbers


how exactly do we enter the data from the codec dump?

Thank you smile.gif
MadTux
QUOTE(dflow @ Sep 26 2008, 08:38 AM) *
MadTux,
I think your idea is pretty brilliant and maybe that's the right way
to create drivers for on-board audio chips not supported by OSX.
I understand the process you are describing, but can you please
post a few screenshots of the editing process?

For example, when we come to this:
how exactly do we enter the data from the codec dump?

Thank you smile.gif


look at post 5 from adat6
sensei730000
MadTux you're the one! Thanks to you my alc889a worked, i couldn't have sounf, but with the one you provided in this thread it worked like a charm. Really, A BIG THANK YOU!
limini
Hi MadTux. I'm looking into re-organizing the pin assignments but I can't seem to find "Audio Selector" that's required for the inputs in my or Taruga's codec dump for the 899a. These are the available headers:

Audio Output
Audio Input
Audio Mixer
UNKNOWN Widget (one line items labled "mono")
Pin Complex
Volume Knob Widget

I know my Line In works, so I looked at it's pins: 8 35 26 (x08 x23 x1A). So starting with the Pin Complex:
CODE
   [PIN COMPLEX]
   Node 0x1a [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
       Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
       Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
       Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
       Amp-Out vals:  [0x80 0x80]
       Pincap 0x08373c: IN OUT HP Detect
         Vref caps: HIZ 50 GRD 80 100
       Pin Default 0x0181344f: [Jack] Line In at Ext Rear
         Conn = 1/8, Color = Blue
         DefAssociation = 0x4, Sequence = 0xf
       Pin-ctls: 0x20: IN VREF_HIZ
       Unsolicited: tag=00, enabled=0
       Connection: 5
          0x0c* 0x0d 0x0e 0x0f 0x26

What's interesting is that there's no "0x1A*" anywhere in the entire codec dump. And as mentioned there's no "Audio Selector" either. "0x1A" however does appear in 4 different "Audio Mixer"s (x22, x23, x24, x0B) along with other Pin Complexes, none of which have asterisks ("*"). If I follow "0x0C*" it brings me to this Audio Mixer, which isn't part of the Line In pins:
CODE
   Node 0x0c [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
     Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
     Amp-In vals:  [0x00 0x00] [0x80 0x80]
     Amp-Out caps: ofs=0x40, nsteps=0x40, stepsize=0x03, mute=0
     Amp-Out vals:  [0x40 0x40]
     Connection: 2
        0x02 0x0b

Which also doesn't lead to 0x08 audio input as it should. "0x02" & "0x0B" are as follows:

CODE
   Node 0x02 [Audio Output] wcaps 0x11: Stereo
     Converter: stream=0, channel=0
     PCM:
       rates [0x560]: 44100 48000 96000 192000
       bits [0xe]: 16 20 24
       formats [0x1]: PCM
  
   Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
     Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
     Amp-In vals:  [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97]
     Connection: 10
        0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17


The other two Line In pin numbers for Line In actually lead to this:
CODE
   ["AUDIO SELECTOR"??]
   Node 0x23 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
     Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
      Amp-In vals:  [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80  0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80  0x80]
     Connection: 11
        0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17 0x0b
  
   [AUDIO INPUT]
   Node 0x08 [Audio Input] wcaps 0x10011b: Stereo Amp-In
     Amp-In caps: ofs=0x10, nsteps=0x2e, stepsize=0x03, mute=1
     Amp-In vals:  [0x90 0x90]
     Converter: stream=0, channel=0
     SDI-Select: 0
     PCM:
       rates [0x560]: 44100 48000 96000 192000
       bits [0xe]: 16 20 24
       formats [0x1]: PCM
     Connection: 1
        0x23

So I see how 0x08 connects to 0x23, but I don't see the logical connection from the Pin Complex number.

Something's missing in the puzzle. Thanks for any assistance.
dRkLePtO
I'm trying to get the AnalogDevices1981 work on two laptops, but I'm going a bit crazy..
Do you think I'll have some chance of success? I mean, would be possible to get the mic working?

First tries aren't giving any positive result.. No audio interface at all.. sad.gif
(Audio out works with Azalia)

These are the codec dumps:
comatron
hey madtux - there are several ppl getting crazy with that alc269 chipset. i fallowed your great guide but i lost anyway. please help us to get this one working. i can provide you with all the infos we have here ...

ENHANCED CODEC DUMP:
CODE
!!################################
!!ALSA Information Script v 0.4.48
!!################################

!!Script ran on: Fri Aug 8 22:43:39 EST 2008


!!Linux Distribution
!!------------------

Fedora release 9 (Sulphur) Fedora release 9 (Sulphur) Fedora release 9 (Sulphur) Fedora release 9 (Sulphur)


!!Kernel Information
!!------------------

Kernel release: 2.6.25.11-97.fc9.i686
Operating System: GNU/Linux
Architecture: i686
Processor: i686
SMP Enabled: Yes


!!ALSA Version
!!------------

Driver version: 1.0.16rc2
Library version:
Utilities version: 1.0.16


!!Loaded ALSA modules
!!-------------------

snd_hda_intel


!!Soundcards recognised by ALSA
!!-----------------------------

0 [Intel ]: HDA-Intel - HDA Intel
HDA Intel at 0xf7eb8000 irq 16


!!PCI Soundcards installed in the system
!!--------------------------------------

00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)


!!Advanced information - PCI Vendor/Device/Susbsystem ID's
!!--------------------------------------------------------

00:1b.0 0403: 8086:27d8 (rev 02)
Subsystem: 1043:831a


!!Loaded sound module options
!!--------------------------

!!Module: snd_hda_intel
enable : Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y
enable_msi : 0
id : <NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>
index : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
model : <NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>
position_fix : 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
power_save : 0
power_save_controller : Y
probe_mask : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
single_cmd : N


!!HDA-Intel Codec information
!!---------------------------
--startcollapse--

Codec: Realtek ALC269
Address: 0
Vendor Id: 0x10ec0269
Subsystem Id: 0x1043831a
Revision Id: 0x100004
No Modem Function Group found
Default PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
GPIO: io=0, o=0, i=0, unsolicited=0, wake=0
Node 0x02 [Audio Output] wcaps 0x1d: Stereo Amp-Out
Amp-Out caps: ofs=0x3f, nsteps=0x40, stepsize=0x03, mute=0
Amp-Out vals: [0x2a 0x2a]
Converter: stream=0, channel=0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x03 [Audio Output] wcaps 0x1d: Stereo Amp-Out
Amp-Out caps: ofs=0x3f, nsteps=0x40, stepsize=0x03, mute=0
Amp-Out vals: [0x00 0x00]
Converter: stream=0, channel=0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x04 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x05 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x06 [Audio Output] wcaps 0x211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x07 [Audio Input] wcaps 0x10011b: Stereo Amp-In
Amp-In caps: ofs=0x11, nsteps=0x2e, stepsize=0x03, mute=1
Amp-In vals: [0x00 0x00]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x160]: 44100 48000 96000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Connection: 1
0x24
Node 0x08 [Audio Input] wcaps 0x10011b: Stereo Amp-In
Amp-In caps: ofs=0x11, nsteps=0x2e, stepsize=0x03, mute=1
Amp-In vals: [0x90 0x90]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x160]: 44100 48000 96000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Connection: 1
0x23
Node 0x09 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x0a [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x1f 0x1f] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Connection: 5
0x18 0x19 0x1a 0x1b 0x1d
Node 0x0c [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Connection: 2
0x02 0x0b
Node 0x0d [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Connection: 2
0x03 0x0b
Node 0x0e [Audio Mixer] wcaps 0x20010a: Mono Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00] [0x00]
Connection: 2
0x0c 0x0d
Node 0x0f [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x10 [Audio Output] wcaps 0x211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x11 [Pin Complex] wcaps 0x400380: Mono Digital
Pincap 0x0814: OUT Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x10
Node 0x12 [Pin Complex] wcaps 0x400001: Stereo
Pincap 0x0820: IN
Pin Default 0x99a30920: [Fixed] Mic at Int ATAPI
Conn = ATAPI, Color = Unknown
DefAssociation = 0x2, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00:
Node 0x13 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x14 [Pin Complex] wcaps 0x40010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0810050: OUT EAPD Balanced
EAPD 0x2: EAPD
Pin Default 0x99130110: [Fixed] Speaker at Int ATAPI
Conn = ATAPI, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Connection: 2
0x0c* 0x0d
Node 0x15 [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x081001c: OUT HP EAPD Detect
EAPD 0x2: EAPD
Pin Default 0x0121401f: [Jack] HP Out at Ext Rear
Conn = 1/8, Color = Green
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=04, enabled=1
Connection: 2
0x0c* 0x0d
Node 0x16 [Pin Complex] wcaps 0x40010c: Mono Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80]
Pincap 0x0810: OUT
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Connection: 1
0x0e
Node 0x17 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x01a19830: [Jack] Mic at Ext Rear
Conn = 1/8, Color = Pink
DefAssociation = 0x3, Sequence = 0x0
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x19 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1a [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x08373c: IN OUT HP Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN VREF_HIZ
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1b [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN VREF_HIZ
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1c [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x1d [Pin Complex] wcaps 0x400000: Mono
Pincap 0x0820: IN
Pin Default 0x4005822d: [N/A] Line Out at Ext N/A
Conn = Optical, Color = Purple
DefAssociation = 0x2, Sequence = 0xd
Pin-ctls: 0x20: IN
Node 0x1e [Pin Complex] wcaps 0x400380: Mono Digital
Pincap 0x0814: OUT Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x06
Node 0x1f [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
Processing caps: benign=0, ncoeff=33
Node 0x21 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x22 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x23 [Audio Selector] wcaps 0x300101: Stereo
Connection: 7
0x18* 0x19 0x1a 0x1b 0x1d 0x12 0x0b
Node 0x24 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Connection: 6
0x18 0x19 0x1a 0x1b 0x1d 0x0b
--endcollapse--


!!ALSA Device nodes
!!-----------------

crw-rw---- 1 root root 116, 7 2008-08-08 21:18 /dev/snd/controlC0
crw-rw---- 1 root root 116, 6 2008-08-08 21:18 /dev/snd/hwC0D0
crw-rw---- 1 root root 116, 5 2008-08-08 21:19 /dev/snd/pcmC0D0c
crw-rw---- 1 root root 116, 4 2008-08-08 22:39 /dev/snd/pcmC0D0p
crw-rw---- 1 root root 116, 3 2008-08-08 21:18 /dev/snd/seq
crw-rw---- 1 root root 116, 2 2008-08-08 21:18 /dev/snd/timer


!!Aplay/Arecord output
!!------------

APLAY

**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: ALC269 Analog [ALC269 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0

ARECORD

**** List of CAPTURE Hardware Devices ****
card 0: Intel [HDA Intel], device 0: ALC269 Analog [ALC269 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0

!!Amixer output
!!-------------

!!-------Mixer controls for card 0 [Intel]

Simple mixer control 'Master',0
Capabilities: pvolume pvolume-joined pswitch pswitch-joined
Playback channels: Mono
Limits: Playback 0 - 64
Mono: Playback 42 [66%] [10.50dB] [on]
Simple mixer control 'Headphone',0
Capabilities: pswitch
Playback channels: Front Left - Front Right
Mono:
Front Left: Playback [on]
Front Right: Playback [on]
Simple mixer control 'PCM',0
Capabilities: pvolume
Playback channels: Front Left - Front Right
Limits: Playback 0 - 255
Mono:
Front Left: Playback 255 [100%] [0.00dB]
Front Right: Playback 255 [100%] [0.00dB]
Simple mixer control 'Front',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 64
Mono:
Front Left: Playback 64 [100%] [1.00dB] [on]
Front Right: Playback 64 [100%] [1.00dB] [on]
Simple mixer control 'Front Mic',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 31
Mono:
Front Left: Playback 31 [100%] [12.00dB] [on]
Front Right: Playback 31 [100%] [12.00dB] [on]
Simple mixer control 'Front Mic Boost',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 0 [0%]
Front Right: 0 [0%]
Simple mixer control 'Capture',0
Capabilities: cvolume cswitch
Capture channels: Front Left - Front Right
Limits: Capture 0 - 46
Front Left: Capture 0 [0%] [-17.00dB] [on]
Front Right: Capture 0 [0%] [-17.00dB] [on]
Simple mixer control 'Input Source',0
Capabilities: cenum
Items: 'Front Mic'
Item0: 'Front Mic'


!!Alsactl output
!!-------------

--startcollapse--
state.Intel {
control.1 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 64'
comment.dbmin -6300
comment.dbmax 100
iface MIXER
name 'Front Playback Volume'
value.0 64
value.1 64
}
control.2 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 2
iface MIXER
name 'Front Playback Switch'
value.0 true
value.1 true
}
control.3 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 2
iface MIXER
name 'Headphone Playback Switch'
value.0 true
value.1 true
}
control.4 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 31'
comment.dbmin -3450
comment.dbmax 1200
iface MIXER
name 'Front Mic Playback Volume'
value.0 31
value.1 31
}
control.5 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 2
iface MIXER
name 'Front Mic Playback Switch'
value.0 true
value.1 true
}
control.6 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 3'
comment.dbmin 0
comment.dbmax 3000
iface MIXER
name 'Front Mic Boost'
value.0 0
value.1 0
}
control.7 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 46'
comment.dbmin -1700
comment.dbmax 2900
iface MIXER
name 'Capture Volume'
value.0 0
value.1 0
}
control.8 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 2
iface MIXER
name 'Capture Switch'
value.0 true
value.1 true
}
control.9 {
comment.access 'read write'
comment.type ENUMERATED
comment.count 1
comment.item.0 'Front Mic'
iface MIXER
name 'Input Source'
value 'Front Mic'
}
control.10 {
comment.access 'read write'
comment.type INTEGER
comment.count 1
comment.range '0 - 64'
comment.dbmin 0
comment.dbmax 1600
iface MIXER
name 'Master Playback Volume'
value 42
}
control.11 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'Master Playback Switch'
value true
}
control.12 {
comment.access 'read write user'
comment.type INTEGER
comment.count 2
comment.range '0 - 255'
comment.tlv '0000000100000008ffffec1400000014'
comment.dbmin -5100
comment.dbmax 0
iface MIXER
name 'PCM Playback Volume'
value.0 255
value.1 255
}
}
--endcollapse--

WINDOWS REGISTRY INFORMATION AND PINNING
CODE
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000]
"Driver"="HdAudio.sys"
"DisableSetupDiChangeState"=hex:00,00,00,00
"InfPath"="hdaudio.inf"
"IncludedInfs"=hex(7):6b,00,73,00,2e,00,69,00,6e,00,66,00,00,00,77,00,64,00,6d,\
00,61,00,75,00,64,00,69,00,6f,00,2e,00,69,00,6e,00,66,00,00,00,00,00
"InfSection"="HdAudModel"
"ProviderName"="Microsoft"
"DriverDateData"=hex:00,80,8c,a3,c5,94,c6,01
"DriverDate"="6-21-2006"
"DriverVersion"="6.0.6000.16386"
"MatchingDeviceId"="hdaudio\\func_01"
"DriverDesc"="High Definition Audio Device"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\Drivers]
"SubClasses"="wave,midi,mixer,aux"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\Drivers\aux]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\Drivers\aux\wdmaud.drv]
"Driver"="wdmaud.drv"
"Description"="Microsoft 1.1 UAA Function Driver for High Definition Audio"
"Alias"="aux"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\Drivers\midi]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\Drivers\midi\wdmaud.drv]
"Driver"="wdmaud.drv"
"Description"="Microsoft 1.1 UAA Function Driver for High Definition Audio"
"Alias"="midi"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\Drivers\mixer]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\Drivers\mixer\wdmaud.drv]
"Driver"="wdmaud.drv"
"Description"="Microsoft 1.1 UAA Function Driver for High Definition Audio"
"Alias"="mixer"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\Drivers\wave]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\Drivers\wave\wdmaud.drv]
"Driver"="wdmaud.drv"
"Description"="Microsoft 1.1 UAA Function Driver for High Definition Audio"
"Alias"="wave"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\GlobalSettings]
"DcOffsetWorkaround"=hex:01,00,00,00
"ResetAudioFgOnStart"=hex:01,00,00,00
"SysAudioTopoMiniportWorkaround"=hex:01,00,00,00
"ValidateCodecWrites"=hex:00,00,00,00
"SendFakePcxCfgDefVerbs"=hex:00,00,00,00
"SpdifOutputEchosRearRenderWhenNoAc3"=hex:01,00,00,00
"HpShutsOffRearSpeaker"=hex:00,00,00,00
"HpMode"=hex:01,00,00,00
"EnableDynamicDevices"=hex:01,00,00,00
"SetSpdifVCfg"=hex:01,00,00,00
"EnableWaveRT"=hex:01,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\GlobalSettings\SpdifIn]
"SpdifInputBitDepth"=hex:00,00,00,00
"SpdifInputSampleRate"=hex:01,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\GlobalSettings\SpdifOut]
"ExternalSpdifReceiverSupportedSampleRates44100"=hex:00,00,00,00
"ExternalSpdifReceiverSupportedSampleRates48000"=hex:01,00,00,00
"ExternalSpdifReceiverSupportedSampleRates96000"=hex:00,00,00,00
"ExternalSpdifReceiverSupportedBitDepths16"=hex:01,00,00,00
"ExternalSpdifReceiverSupportedBitDepths20"=hex:00,00,00,00
"ExternalSpdifReceiverSupportedBitDepths24"=hex:00,00,00,00
"ExternalSpdifReceiverSupportedBitDepths32"=hex:00,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\MixerSettings]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\MixerSettings\eMicInTopo]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\MixerSettings\eMicInTopo\PrimaryNode000]
"Chan000"=dword:001d0000
"Chan001"=dword:001d0000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\MixerSettings\eMicInTopo\PrimaryNode001]
"Chan000"=dword:00000000
"Chan001"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\MixerSettings\eSlavedHpSpeakerTopo]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\MixerSettings\eSlavedHpSpeakerTopo\PrimaryNode000]
"Chan000"=dword:00010000
"Chan001"=dword:00010000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\MixerSettings\eSlavedHpSpeakerTopo\PrimaryNode001]
"Chan000"=dword:00000000
"Chan001"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\MixerSettings\eSlavedHpSpeakerTopo\SlavedNode000]
"Chan000"=dword:fff30000
"Chan001"=dword:fff30000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\MixerSettings\eSlavedHpSpeakerTopo\SlavedNode001]
"Chan000"=dword:00000000
"Chan001"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\PinConfigOverrideVerbs]
"0000"=hex:f0,1c,17,01
"0001"=hex:11,1d,17,01
"0002"=hex:11,1e,17,01
"0003"=hex:41,1f,17,01
"0004"=hex:20,1c,27,01
"0005"=hex:09,1d,27,01
"0006"=hex:a3,1e,27,01
"0007"=hex:99,1f,27,01
"0008"=hex:10,1c,47,01
"0009"=hex:01,1d,47,01
"0010"=hex:13,1e,47,01
"0011"=hex:99,1f,47,01
"0012"=hex:1f,1c,57,01
"0013"=hex:40,1d,57,01
"0014"=hex:21,1e,57,01
"0015"=hex:01,1f,57,01
"0016"=hex:f0,1c,67,01
"0017"=hex:11,1d,67,01
"0018"=hex:11,1e,67,01
"0019"=hex:41,1f,67,01
"0020"=hex:30,1c,87,01
"0021"=hex:98,1d,87,01
"0022"=hex:a1,1e,87,01
"0023"=hex:01,1f,87,01
"0024"=hex:f0,1c,97,01
"0025"=hex:11,1d,97,01
"0026"=hex:11,1e,97,01
"0027"=hex:41,1f,97,01
"0028"=hex:f0,1c,a7,01
"0029"=hex:11,1d,a7,01
"0030"=hex:11,1e,a7,01
"0031"=hex:41,1f,a7,01
"0032"=hex:f0,1c,b7,01
"0033"=hex:11,1d,b7,01
"0034"=hex:11,1e,b7,01
"0035"=hex:41,1f,b7,01
"0036"=hex:2d,1c,d7,01
"0037"=hex:82,1d,d7,01
"0038"=hex:05,1e,d7,01
"0039"=hex:40,1f,d7,01
"0040"=hex:f0,1c,e7,01
"0041"=hex:11,1d,e7,01
"0042"=hex:11,1e,e7,01
"0043"=hex:41,1f,e7,01
"NumVerbs"=hex:2c,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\PowerSettings]
"ConservationIdleTime"=hex:1e,00,00,00
"PerformanceIdleTime"=hex:00,00,00,00
"IdlePowerState"=hex:03,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\WaveportSettings]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\WaveportSettings\eSlavedHpSpeakerWave]
"ActiveSpeakerPositions"=hex:03,00,00,00


MY RESULTS IN THE PROFILER (USING YOUR GUIDE - NO INPUT/OUTPUT DEV IN SYSCONFIG)


USEFULL INTEL-HDA-DOC
http://download.microsoft.com/download/9/c...Config_Test.doc

THREADS/COMMENTS REGARDING THIS CODEC:
http://forum.insanelymac.com/index.php?showtopic=126525
http://ipis-osx.wikidot.com/forum/t-90890/...be-my-moving-on
http://www.maceee.com/how-to-mac-os-x-1054...1-1000h-27.html
http://forum.insanelymac.com/index.php?showtopic=119653

please help us ... its all about editing the plists correctly by understanding the codec-dump and the windows regfile which has some detailled "pin information"
MadTux
QUOTE(dRkLePtO @ Sep 27 2008, 04:32 PM) *
I'm trying to get the AnalogDevices1981 work on two laptops, but I'm going a bit crazy..
Do you think I'll have some chance of success? I mean, would be possible to get the mic working?

First tries aren't giving any positive result.. No audio interface at all.. sad.gif
(Audio out works with Azalia)

These are the codec dumps:


If it works with azalia, then there is a big chance for HDA. AZALIA was a "code name" for the new HDA Audio devices standard that Intel provided, U may look on Azalia as a testing platform for new HDA standard that was known as HDA. So if it works with Azalia it should work with HDA, even AD codec is in new AppleHDA kexts, so way not to try.

Comatron, post your testing kext. And I can't download that HDA document from microsoft can U post and that one too? And give me some time, on this one, U provided me with lot informations, I need to think a bit
comatron
here the workring link for the intel-hda-document:

http://download.microsoft.com/download/9/c...Config_Test.doc

and my kext in attachment - what i did:

-hexedited the binary ApplaHDA and replaced the alc262 with alc269 in 2 positions like mentioned (reverse hex)
-edited codec id in both plists with dec 283902569 (wich should be alc269)
-deleted stuff in the path map

i dont know if i did the last 2 steps correcty. i also didnt change any nodes as i dont know how to do that correctly. so i did not much. but the sysprofiler iss now showing stuff instead of just the subsystem id.

there are SO many people waiting to get this codec work - there are thousands of comments in youtube videos and in eeeosx68 / msi wind forums ... it would be so great if you could help. you can contact me in icq 150306284 if you need any kind of help. i absolute willing to help all the eee-users like me.
MadTux
QUOTE(comatron @ Sep 27 2008, 11:08 PM) *
-hexedited the binary ApplaHDA and replaced the alc262 with alc269 in 2 positions like mentioned (reverse hex)
-edited codec id in both plists with dec 283902569 (wich should be alc269)
-deleted stuff in the path map

i dont know if i did the last 2 steps correcty. i also didnt change any nodes as i dont know how to do that correctly. so i did not much. but the sysprofiler iss now showing stuff instead of just the subsystem id.


It is all about correct nodes in Pathmap of Platform.plist, I will check on that and send U something over PM, I think atad6 posted codec dump for this card, and that was one I took for HOW TO FIND NODES INSIDE YOUR CODEC DUMP.
comatron
QUOTE(MadTux @ Sep 28 2008, 01:15 AM) *
It is all about correct nodes in Pathmap of Platform.plist, I will check on that and send U something over PM, I think atad6 posted codec dump for this card, and that was one I took for HOW TO FIND NODES INSIDE YOUR CODEC DUMP.


thank you very very much. i did write to atad6 via pm too. seems like he failed cause the whole community for alc269 got no solution yet sad.gif i checked how to find nodes on your first post (uad) but i dont understand those steps with the 3 nodes and their connections. ill check my pm all the time so i can test your stuff! thanx for the effort of time
dRkLePtO
I tried to find out my nodes..

Mic: Input Selector PinCom
HEX: 04 0B 18
DEC: 4 11 24

Out: PinCom Mixer Output
HEX: 06 0E 02
DEC: 6 14 2

As already stated, I'm working on a AD1981. I've edited the AppleHDA binary and changed 8b19d411 to 8119d411 twice.

In AppleHDA.kext/Contents/PlugIns/AppleHDAPlatformDriver.kext/Contents/Info.plist:
  • Layouts/PathMapRef:
  1. Deleted SPDIF IN/OUT.
  2. Changed CodecID to 299112833.
  • PathMaps
  1. Changed nodes 0 and 3 to the settings found above
Left AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext/Contents/Info.plist untouched. I'm using the plist prepared by MadTux.
After replacing the stock AppleHDA.kext, removed AppleAzalia, repaired perms, reloaded kextcache and booted with -f -v, the system doesn't see anything. No audio devices at all.
ioreg -l | grep HDA gave no information. Apparently the kext doesn't load.
Maybe should I adjust some PCI Class Match?

Thanks for the help!
MadTux
QUOTE(dRkLePtO @ Sep 28 2008, 01:30 PM) *
I tried to find out my nodes..

Mic: Input Selector PinCom
HEX: 04 0B 18
DEC: 4 11 24

Out: PinCom Mixer Output
HEX: 06 0E 02
DEC: 6 14 2

As already stated, I'm working on a AD1981. I've edited the AppleHDA binary and changed 8b19d411 to 8119d411 twice.

In AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext/Contents/Info.plist:
  • Layouts/PathMapRef:
  1. Deleted SPDIF IN/OUT.
  2. Changed CodecID to 299112833.
  • PathMaps
  1. Changed nodes 0 and 3 to the settings found above
Left AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext/Contents/Info.plist untouched. I'm using the plist prepared by MadTux.
After replacing the stock AppleHDA.kext, removed AppleAzalia, repaired perms, reloaded kextcache and booted with -f -v, the system doesn't see anything. No audio devices at all.
ioreg -l | grep HDA gave no information. Apparently the kext doesn't load.
Maybe should I adjust some PCI Class Match?

Thanks for the help!



AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext/Contents/Info.plist
PUT INSIDE YOUR CODEC ID IN DECIMAL, WITH layout ID to 12.
Remove numbers inside PinConfig line.
It should help.

And Pathmap and Layout are inside Platform driver kext, U stated that U puted inside
AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext/Contents/Info.plist:
Cheops
Hi MadTux,

Would it be possible to give me a hand getting the ALC268 working using this method?

I am trying to get my laptop builtin SubWoofer working using this method! basically 2.1 sound.

Thanks

Ade.


MadTux
QUOTE(Cheops @ Sep 28 2008, 10:48 PM) *
Hi MadTux,

Would it be possible to give me a hand getting the ALC268 working using this method?

I am trying to get my laptop builtin SubWoofer working using this method! basically 2.1 sound.

Thanks

Ade.


Believe me, I don't know, maybe, bigest problem with your ALC268 is if it is muted in bios, coz when U using this method U are relaying on a default pin config from bios, and for this card and ALC862 is a big problem, U may tray to find a DefaultPinConfig and that is a biggest deal. Only if U have sound with azalia kext, then your card could work with this AppleHDA(if it works, that means that pin configuration inside your bios are right)
dRkLePtO
QUOTE(MadTux @ Sep 28 2008, 04:16 PM) *
AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext/Contents/Info.plist
PUT INSIDE YOUR CODEC ID IN DECIMAL, WITH layout ID to 12.
Remove numbers inside PinConfig line.
It should help.

And Pathmap and Layout are inside Platform driver kext, U stated that U puted inside
AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext/Contents/Info.plist:


Thanks for the quick reply! smile.gif And sorry for the error.. I meant AppleHDA.kext/Contents/PlugIns/AppleHDAPlatformDriver.kext/Contents/Info.plist.. wink.gif

I filled my CodecID and emptied the ConfigData line.. And now ioreg gives me some results..
But.. Still no sound at all! Maybe I've extracted the wrong nodes?
If you can find some spare time, could anybody check them? This is what I got..

Many thanks again! tongue.gif
Cheops
QUOTE(MadTux @ Sep 29 2008, 12:25 AM) *
Believe me, I don't know, maybe, bigest problem with your ALC268 is if it is muted in bios, coz when U using this method U are relaying on a default pin config from bios, and for this card and ALC862 is a big problem, U may tray to find a DefaultPinConfig and that is a biggest deal. Only if U have sound with azalia kext, then your card could work with this AppleHDA(if it works, that means that pin configuration inside your bios are right)


Thanks for the quick reply MadTux

If I use taruga ALC268 Installer 2 I get sound fine but no sub.

Let me see if I understand what your saying..

1. On booting the laptop sound is defaulted with a sound config and the bass(sub) may NOT be enabled am I right?
2. If the above is correct would it not be possible to change the default config with a custom kext?
3. if it works in linux with bass(sub) as well would the Node assignment show up on dumping the codec?
4. Is it possible to get the DefaultPinConfig using the Microsoft Tools?

Thanks

Ade

MadTux
QUOTE(Cheops @ Sep 29 2008, 12:29 AM) *
1. On booting the laptop sound is defaulted with a sound config and the bass(sub) may NOT be enabled am I right?

Yes, the default pinconfig for your sound card in your bios is not correct. That is reason, why your card is eneabled in alsa thru realtek patch, and not automatic thru bios pin config
QUOTE
2. If the above is correct would it not be possible to change the default config with a custom kext?

Yes it would be, but U need a proper sound pinconfig
QUOTE
3. if it works in linux with bass(sub) as well would the Node assignment show up on dumping the codec?

Yes it would, but U still need a proper pin config, so your card would be properly "activated"
QUOTE
4. Is it possible to get the DefaultPinConfig using the Microsoft Tools?

Yes it is, but who has HDAU.exe program?
If some one has, please post it.
And how to get these PinConfig defaults thru linux, I don't know
idoc
The HDAU.exe program would be really handy to determine the correct NODEIDs for your realtek codec, but it is not necessary for the ConfigData (PinConfigOverrideVerbs in Vista). If you use regedit to dump your registers in Vista and search for the above phrase you will find a series of hex codes which are series of 32-bit Pin Configuration registers for each device, and in Vista can override the BIOS pin setup (and I think, but I'm not sure) AppleHDA.kext uses the same codes just reversed e.g. regedit "0000"=hex:f0,1c,17,01 OSX 01171cf0. If someone with a macbook or macbookpro that uses AppleHDA.kext could run vista and compare the numbers, this could be confirmed.
The handy thing about HDAU.exe (again I surmise having not been able to et my hands on it) is that it should be able to tell us exactly how the NodeIDs are hooked up in a system where the audio definitely works (under vista). I'm trying to get my head around the eeepc ALC269 which has 4 devices - internal and external mic both hooked together with jack autosensing and internal speakers + headphones again which share an amp. Vista of course handles these perfectly, but it's a real pain trying to guess which nodes form which pin complex.
Cheers
Steve
Cheops
Hi All,

So I dumped my PinConfigOverrideVerbs but i'm not sure how to translate this data back to the AppleHDA codec plist?

Anyone care to expand

Thanks

Ade.


Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}000\PinConfigOverrideVerbs]
"0000"=hex:f0,1c,27,01
"0001"=hex:11,1d,27,01
"0002"=hex:11,1e,27,01
"0003"=hex:41,1f,27,01
"0004"=hex:f0,1c,37,01
"0005"=hex:11,1d,37,01
"0006"=hex:11,1e,37,01
"0007"=hex:41,1f,37,01
"0008"=hex:1f,1c,47,01
"0009"=hex:10,1d,47,01
"0010"=hex:21,1e,47,01
"0011"=hex:02,1f,47,01
"0012"=hex:10,1c,57,01
"0013"=hex:01,1d,57,01
"0014"=hex:13,1e,57,01
"0015"=hex:99,1f,57,01
"0016"=hex:f0,1c,67,01
"0017"=hex:11,1d,67,01
"0018"=hex:11,1e,67,01
"0019"=hex:41,1f,67,01
"0020"=hex:40,1c,87,01
"0021"=hex:98,1d,87,01
"0022"=hex:a1,1e,87,01
"0023"=hex:02,1f,87,01
"0024"=hex:41,1c,97,01
"0025"=hex:09,1d,97,01
"0026"=hex:a3,1e,97,01
"0027"=hex:99,1f,97,01
"0028"=hex:4e,1c,a7,01
"0029"=hex:30,1d,a7,01
"0030"=hex:81,1e,a7,01
"0031"=hex:02,1f,a7,01
"0032"=hex:f0,1c,c7,01
"0033"=hex:11,1d,c7,01
"0034"=hex:11,1e,c7,01
"0035"=hex:41,1f,c7,01
"0036"=hex:2d,1c,d7,01
"0037"=hex:95,1d,d7,01
"0038"=hex:17,1e,d7,01
"0039"=hex:40,1f,d7,01
"0040"=hex:30,1c,e7,01
"0041"=hex:11,1d,e7,01
"0042"=hex:45,1e,e7,01
"0043"=hex:02,1f,e7,01
"NumVerbs"=hex:2c,00,00,00
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.