Hey guys,
If you get a Analog Devices AC97 Codec, you can try to modify the plist file to get it work. First in your "/System/Library/Extensions/AppleAC97Audio.kext/Context/PlugIn/AppleAC97CodecAD198x/Context/Info.plist"
Find the pattern:
<dict>
<key>AD198x</key>
<dict>
<key>CFBundleIdentifier</key>
<string>com.apple.driver.AppleAC97CodecAD198x</string>
<key>IOClass</key>
<string>AppleAC97CodecAD198x</string>
<key>IOProbeScore</key>
<integer>10000</integer>
<key>IOProviderClass</key>
<string>IOAC97CodecDevice</string>
<key>PNPVendorID</key>
<string>ADS75 ADS74 ADS73 ADS72</string>
</dict>
</dict>
Change codec device ID to yours. What is codec ID? First, you can get it from Windows XP with EVEREST (
http://www.lavalys.hu/index.php). If already you knew your codec chip, for example: AD1986a, you can get the ID from Analog Devices datasheet. Now I use AD1986a as sample:
Read the AD1986a spec, you can find the vender ID in register 7C, 7E.
Register 7C = 0x4144
Register 7E = 0x5378
Which '41' '44' '53' are ASCII codes, they are 'A', 'D', and 'S'. And the LSB byte of register 7E indicates the number of codec ID. Here AD1986a is '78'. So you can get the whole ID of AD1986a; it is 'ADS78'. It's simple, right?
All right, modify the above Info.plist file. Change any one of them (ADS75 ADS74 ADS73 ADS72) to ADS78.
<dict>
<key>AD198x</key>
<dict>
<key>CFBundleIdentifier</key>
<string>com.apple.driver.AppleAC97CodecAD198x</string>
<key>IOClass</key>
<string>AppleAC97CodecAD198x</string>
<key>IOProbeScore</key>
<integer>10000</integer>
<key>IOProviderClass</key>
<string>IOAC97CodecDevice</string>
<key>PNPVendorID</key>
<string>ADS78 ADS74 ADS73 ADS72</string> <=== MODIFY THIS LINE!
</dict>
</dict>
Remember that keep 4 IDs in the line "<string>ADS78 ADS74 ADS73 ADS72</string>"
The last step is load the AppleAC97CodecAD198x.kext:
sudo -s
kextload /System/Library/Extensions/AppleAC97.kext/Context/PlugIn/AppleAC97CodecAD198x.kext
cd /System/Library
rm Extensions.kextcache
kextcache -k Extensions
You can use:
kextstat | grep AC97
check AppleAC97CodecAD198x.kext loaded or not.
This way only for Analog Devices AD19xx (lucky guys). Other codec like Realtek still not working (at least on my Realtek ALC250 not working!).
Get a try!
EDIT::
By the way, if this way working, please someone moves this thread into 'Success' or open a new thread in 'Success', thanks.