Jump to content

[BOOT-132] Legacy AppleHDA


stickpin
 Share

232 posts in this topic

Recommended Posts

Legacy AppleHDA for BOOT-132.

Updated: 13.10.2008

 

Thanks alot for hard work to: Taruga, Kabyl, Munky, CycloneFr and all Chameleon Team.

Thanks alot to THe KiNG (XyZ) for great research and AppleHDA - Knowledge Base.

 

Update 13.10.2008 V5: System profiler fixed, no more fake values. Codec verb fixed. Digital In removed.

 

Update 4.10.2008 V4: Changed override method to one that CycloneFr described here. More inputs and outputs working now. No more snow leo kexts needed, using leo ones now. Problem that not fixed yet is System Profiler, for now just use mine HDAEnabler, included into archive, its fakes PinConfigutaion. ;)

 

picture2nt8.png

 

Requirements:

1. Mac OS X 10.5.x Leopard with ORIGINAL AppleHDA.kext.

2. BOOT-132: USB Stick / FAT Partition / EFI Partition.

 

 

How to install:

 

1. Download kexts for your Sound card.

 

2. Extract them to your CUSTOM Extensions folder (ex. /Users/MyName/Desktop/Extensions).

 

3. Change permissions

chmod -R 644 /Users/MyName/Desktop/Extensions

chown -R root:wheel /Users/MyName/Desktop/Extensions

 

4. Create Extensions.mkext with all your kexts!!!

kextcache -a i386 -m /Users/MyName/Desktop/Extensions.mkext /Users/MyName/Desktop/Extensions

 

5. Copy Extensions.mkext to your Booter.

im using EFI Boot so my folder for Extensions.mkext is: /Volumes/EFI/System/Booter/Extensions.mkext

 

6. Change permissions again

chmod 644 /Volumes/EFI/System/Booter/Extensions.mkext

chown root:wheel /Volumes/EFI/System/Booter/Extensions.mkext

 

7. Dont forget to remove Extensions Folder on your Booter.

rm -rf /Volumes/EFI/System/Booter/Extensions

 

8. Restart with -f flag.

 

9. Post your result. :)

 

 

TODO List:

1) All Line Outs + Front Mic In to work.

2) Create Universal LegacyHDA for ALC88x series.

3) To support all ALCxxx series codecs.

 

 

Device Mapping:

Blue: Line In - Working

Green: IntSpeaker - Working

Pink: Mic In - Working

Black: Line Out - Working

Orange: Line Out - Work in progress

Gray: Line Out - Work in progress

 

S/P-DIF In: - Removed

S/P-DIF Out: - Working

 

Front: Headphones - Working

Front: Mic In - Work in progress

 

 

Downloads:

Realtek ALC882 Address 0: BETA V4 | BETA V5 Comming soon

Realtek ALC882 Address 2: BETA V4 | BETA V5 Comming soon

 

Realtek ALC883 Address 0: BETA V4 | BETA V5 Comming soon

Realtek ALC883 Address 2: BETA V4 | BETA V5 Comming soon

 

Realtek ALC888 Address 0: BETA V4 | BETA V5 Comming soon

Realtek ALC888 Address 2: BETA V4 | BETA V5 Comming soon

Realtek ALC888: ASUS M50SV by THe KiNG

 

Realtek ALC885/889A: BETA V4 | BETA V5

 

Sigmatel 9200: Legacy Sigmatel 9200 by sonotone

Sigmatel 9205: Legacy Sigmatel 9205 by Brandon2004

Link to comment
Share on other sites

Congratulations & thanks.

I goot a noob question. Does it need Alcinject?

I mean I have sound with ALC660-VD with applehda+alcinject. Will your method work with my sound card? Or it's only valid for those who don't need alinject?

 

Thanks!

Link to comment
Share on other sites

Ok, succesfull install using EFI BOOT

 

96565Imagen%201.jpg

 

Digital out & Internal Speakers: work

Line out: doesn´t work

Rest: N/T

 

Great Work , congrats... :P

 

edit:

 

system.log

 

Oct 2 09:35:26 p35-ds4-de-roisoft kernel[0]: Sound assertion "0 == entry" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDAEngine.cpp" at line 2363 goto Exit

Oct 2 09:35:26 p35-ds4-de-roisoft kernel[0]: Sound assertion "0 == entry" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDAEngine.cpp" at line 2363 goto Exit

Oct 2 09:35:27 p35-ds4-de-roisoft kernel[0]: Sound assertion "0 == entry" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDAEngine.cpp" at line 2363 goto Exit

Oct 2 09:35:27 p35-ds4-de-roisoft kernel[0]: Sound assertion "0 == entry" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDAEngine.cpp" at line 2363 goto Exit

Oct 2 09:35:27: --- last message repeated 1 time ---

Oct 2 09:35:27 p35-ds4-de-roisoft kernel[0]: Sound assertion "0 != widget->setUnsolicited ( true )" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDACodecGeneric.cpp" at line 830 goto handler

 

.....

 

Oct 2 09:38:52 p35-ds4-de-roisoft kernel[0]: Sound assertion "0 != widget->setUnsolicited ( true )" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDACodecGeneric.cpp" at line 830 goto handler

Oct 2 09:38:52 p35-ds4-de-roisoft kernel[0]: Sound assertion "0 != widget->setUnsolicited ( true )" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDACodecGeneric.cpp" at line 830 goto handler

Oct 2 09:43:59 p35-ds4-de-roisoft kernel[0]: Sound assertion "0 != widget->setUnsolicited ( true )" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDACodecGeneric.cpp" at line 830 goto handler

Link to comment
Share on other sites

Those sound assertion errors are normal if u have on plist wrong input/output

I managed to have just one(appear twice) and thats internal mic that dosent work, no matter what i tried, unless someone figure out how to create hda codec verbs u cant get rid of them and have 100% working codec ^_^

Link to comment
Share on other sites

Actually you don't need to use Snow Leopard kext in any way.

 

You can just use some Plist so whenever 10.5.6 is out and if it has a new AppleHDA, it'll use AppleHDAPlatform + Controller from 10.5.6 and NOT from Snow Leo !

 

Just edit your plists accordingly to mine (alc883) : http://www.mediafire.com/?onz2nm30yn1 so the structures remains the same.

Just take the plists from these 2 kexts you are using RIGHT now as a base and edit them so the main structure (everything except IOKitPersonalities, which has all the infos about your codec) remains the same as mine.

 

Enjoy !

 

EDIT : don't forget to use HDAEnabler.kext. Not the one from the topic, this one has been edited it seems and only works with ALC889.

Link to comment
Share on other sites

@stickpin

 

I got working LegacyAppleAHCIPort.kext and LegacyIOAHCIBlockStorage.kext.

 

But i am completely stuck with AppleHDA, i analyse the way you mod those plist file and try to do the same for my mobo.

 

I analyse also "THe KiNG for ASUS M50SV", little bit different and also try to do the same.

 

I can't definitely get it working, here is a log error.

 

Oct 4 09:02:50 localhost kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 1653 goto Exit

Oct 4 09:02:50 localhost kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 108 goto Exit

Oct 4 09:02:50 localhost kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 1653 goto Exit

Oct 4 09:02:50 localhost kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 108 goto Exit

 

Of course i use HDAEnabler and get partial SystemProfiler Audio report.

 

Here is attached my lattest try close to your method, if you like to help i will be very glad.

 

http://forum.insanelymac.com/index.php?act...st&id=35456

Link to comment
Share on other sites

@AlainTox714, you codec is Sigmatel 9227... i dont know if possible to use such method for your card. I think this trick works only for ALC88x cards. Sorry.

 

@ALL, Added ALC888, please test.

 

My Codec is SigmaTel STAC9274D

 

If i check AppleHDA binary Sigmatel is supported but for 7680 mine is 7621

 

otool -tV /Users/caytam/Desktop/AppleHDA.kext/Contents/MacOS/AppleHDA | grep 8384

 

0001d713 cmpl $0x83847680,%eax

0001f2f3 cmpl $0x83847680,%eax

 

If i check AppleHDA binary Realteck is supported but only for 262 and only 885

 

otool -tV /Users/caytam/Desktop/AppleHDA.kext/Contents/MacOS/AppleHDA | grep 10ec

 

0001d6df cmpl $0x10ec0262,%eax

0001d6e6 cmpl $0x10ec0885,%eax

0001f2bf cmpl $0x10ec0262,%eax

0001f2c6 cmpl $0x10ec0885,%eax

 

I even try to build an entirely patched AppleHDA.kext in S/L/E load but don't works.

 

Thanks anyway.

Link to comment
Share on other sites

@AlainTox714, ill take a look to another codecs letter, its should be another codec verb there, maybe another device mapping, i have no Sigmatel device to test here, so all i can to its to follow blind here.

 

@Stellarola, thanks alot for report, if you can please report if all submited inputs and outputs works for you.

Link to comment
Share on other sites

@AlainTox714, ill take a look to another codecs letter, its should be another codec verb there, maybe another device mapping, i have no Sigmatel device to test here, so all i can to its to follow blind here.

 

@Stellarola, thanks alot for report, if you can please report if all submited inputs and outputs works for you.

 

 

Tested Green and Black Line-out as well as Optical Out. Worked great. I don't have a mic or front headphone out to test.

 

Again great work to you and all those involved. ;)

 

-Stell

Link to comment
Share on other sites

Once I updated to 10.5.5 it works for me!

 

It seems to hang for a minute or so before finishing the boot, though. Will looking into that some more.

 

EDIT: Fixed. Was unrelated to HDA stuff. Saw that I was getting "GetHostUUIDString: unable to determine UUID for host. Error: 35"

 

Added the following to

/Library/Preferences/SystemConfiguration/NetworkInterfaces.plist

 

	  <dict>
	  <key>BSD Name</key>
	  <string>en3</string>
	  <key>IOBuiltin</key>
	  <false/>
	  <key>IOInterfaceType</key>
	  <integer>6</integer>
	  <key>IOInterfaceUnit</key>
	  <integer>3</integer>
	  <key>IOLocation</key>
	  <string></string>
	  <key>IOMACAddress</key>
	  <data>
	  ABbPoF5V
	  </data>
	  <key>IOPathMatch</key>
	  <string>IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/P0P3@1C,2/
   IOPCI2PCIBridge/pci14e4,4311@0/AirPort_Brcm43xx/IO80211Interface</string>
	  <key>SCNetworkInterfaceType</key>
	  <string>IEEE80211</string>
   </dict>

 

Credits go to bob (http://forum.netkas.org/index.php/topic,83.0.html)

Link to comment
Share on other sites

 Share

×
×
  • Create New...