Jump to content

HDA Wizard - Simple tool for AppleHDA.kext


janek202
 Share

150 posts in this topic

Recommended Posts

its seems that bin patching part not work for me and also may be for other idt user

this is script from bcc9 that i replace the codec id with my own 111D7603

and its work,i am attached the script may be possible to integrate it to app.

thanks

 

Hi Cyrus, Could you upload your patched AppleHDA.kext mate? Also do u have audio after wake from sleep using Apple HDA?

Link to comment
Share on other sites

Hi Cyrus, Could you upload your patched AppleHDA.kext mate? Also do u have audio after wake from sleep using Apple HDA?

audio after sleep i must say no!! i try every possible solution but not working.

its seem that exist a bug in our board (intel pm45)that cause graphics and sound problem after wake up.i can get my sound fully function with voodoohda i post a patched one in mammoth topic you can find it.

anyway this is patched applehda

AppleHDA.kext.zip

Link to comment
Share on other sites

Sorry, forgot to post my bin-patching command for Realtek ALC888:

 

find hex 0x85, 0x08, 0xEC, 0x10
patch to 0x88, 0x08, 0xEC, 0x10

cd /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/
sudo cp -pX AppleHDA ~AppleHDA
sudo perl -pi -e 's|\x85\x08\xec\x10|\x88\x08\xec\x10|g' AppleHDA

Can you please post your HDEF? This is mine:

			Device (HDEF)
		{
			Name (_ADR, 0x001B0000)
			Method (_PRW, 0, NotSerialized)
			{
				Return (Package (0x02)
				{
					0x0D, 
					0x05
				})
			}

			Method (_DSM, 4, NotSerialized)
			{
				Store (Package (0x04)
					{
						"layout-id", 
						Buffer (0x04)
						{
							0x78, 0x03, 0x00, 0x00
						}, 

						"PinConfigurations", 
						Buffer (Zero) {}
					}, Local0)
				MCDP (Arg2, RefOf (Local0))
				Return (Local0)
			}
		}

I tried binpatch along with ALC8xxHDA.kext but with no luck. Sound assertion at startup and no I/Os in System Preferences. Thanks.

Link to comment
Share on other sites

hi!

very useful utility, thanks a lot!

 

I don't know if you already thought about that, but it would be a nice feature to load an older version of patched AppleHDA.kext and the dsdt.dsl file, and it recognizes itself the necessary files to patch with the new version of AppleHDA installed ...

 

Thanks!

Mal

Link to comment
Share on other sites

I am a total NOOB on this topic, thus have 2 questions:

- Where do I select the proper layoutxxx.xml? From the previously patched AppleHDA.kext? The current version after any update does not have the ALC888 layout.

- With the previous patched version, I always had to have Taruga's HDAEnabler.kext to make the patched HDA work. So after patching the current version, do I still need HDAEnabler?

Thank you!

Link to comment
Share on other sites

I don't know if you already thought about that, but it would be a nice feature to load an older version of patched AppleHDA.kext and the dsdt.dsl file, and it recognizes itself the necessary files to patch with the new version of AppleHDA installed ...

 

Requires too much work.

This utility is designed only for quick sound fixing after update. It just puts files in correct places, binhacks, sets permissions and rebuild cache. That's it. No automatic patching.

 

- Where do I select the proper layoutxxx.xml? From the previously patched AppleHDA.kext? The current version after any update does not have the ALC888 layout.

I don't know which version you mean by "previously patched AppleHDA.kext".

 

- With the previous patched version, I always had to have Taruga's HDAEnabler.kext to make the patched HDA work. So after patching the current version, do I still need HDAEnabler?

 

HDAEnabler or DSDT Patch.

 

bin patching for 888 not working. layout.xml, platforms.xml and info.plist are installed by hda wizard.

Check the console. Some people said that binpathing works ok. I will look at it. It's the same code no matter which codec you select...

 

 

Edit:

This test version should properly patch AppleHDA on any supported system. Please check how it works. My ALC262 doesn't need any patching. MD5 sum was changing.

http://dl.dropbox.com/u/7085278/HDA_Wizard/HW_TV.zip

Link to comment
Share on other sites

Check the console. Some people said that binpathing works ok. I will look at it. It's the same code no matter which codec you select...

 

I'm sorry but I do not quite understand ... When you say "It's the same code no matter which codec you select..." , you mean I can use a ALC888 patch for my ALC888B? I'm trying to patch "manually" my ALC888B a few days ago and I is not working.

Link to comment
Share on other sites

Janek wrote:"I don't know which version you mean by "previously patched AppleHDA.kext".

 

-Version 1.8.4fc3-

The point is, with any update, the new AppleHDA.kext does not have ALC888 layout.xml or the right platform.xml. My question was whether I choose the layout.xml, platform.xml and info.plist from the working kext?

If this is the case, I don;t see the merit of patching new kext vs. using the old kext. Perhaps you can enlighten me on this Janek.

 

What I do is save AppleHDA.kext . After an update, I just replace this kext and everything would be OK.

In your applet, one has to seek out info.plist, platform.xml and layout.xml to perform the patch, all to the end having the same effect as replacingwhatever HDA kext with the old one. I am still too dense on this, for my logic fails.

Link to comment
Share on other sites

OK guys, this is the full monty for the ALC888 (running perfectly on my Shuttle XPC SG31G2V2):

 

find hex 0x85, 0x08, 0xEC, 0x10
patch to 0x88, 0x08, 0xEC, 0x10

cd /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/
sudo cp -pX AppleHDA ~AppleHDA
sudo perl -pi -e 's|\x85\x08\xec\x10|\x88\x08\xec\x10|g' AppleHDA

 

/* Fixed */ Device (HDEF)
		{
			Name (_ADR, 0x001B0000)
			Method (_PRW, 0, NotSerialized)
			{
				Return (Package (0x02)
				{
					0x05,
					0x04  // Original value 0x05
				})
			}

			Method (_DSM, 4, NotSerialized)
			{
				Store (Package (0x0E)
				{
					"codec-id",
						Buffer (0x04) {0x88, 0x08, 0xEC, 0x10},  // Codec ALC888 = 0x10EC0888 (283904136)
					"device_type",
						Buffer (0x06) {"audio"},
					"layout-id",
						Buffer (0x04) {0x78, 0x03, 0x00, 0x00},  // Layout ALC888 = 0x00000378
//					  "model",
//						  Buffer (0x1A) {"Realtek ALC888 Controller"},
					"subsystem-vendor-id",
						Buffer (0x04) {0x6B, 0x10, 0x00, 0x00},  // Subsystem = [106b:00a0] Apple device
					"subsystem-id",
						Buffer (0x04) {0xA0, 0x00, 0x00, 0x00},  // Subsystem = [106b:00a0] Apple device
					"platformFamily",
						Buffer (0x01) {Zero},
					"PinConfigurations",
						Buffer (0x01) {Zero}
				}, Local0)
				MCDP (Arg2, RefOf (Local0))
				Return (Local0)
			}
		}

 

So janek202, this proggie only loads what users here send you, right? It doesn't actually insert stuff into Platforms.xml but rather replaces the needed files, correct? The only thing it does by itself is to bin-patch?

 

Attached layout888.xml and Platforms.xml as well.

 

Thank you and all members here.

layout888.xml

Platforms.xml

Link to comment
Share on other sites

On another side note that entails audio routing to Display Port, I have a question, too.

My video card is gtx460 with Display Port instead of HDMI. Whatever the working patched I used, it conflicts with the current Lion's video kext for this device, resulting failure to route audio to DP (it also registers this conflict during verbose boot.

I have been searching for weeks to remedy it, but to no avail.

Does anyone have a solution?

Link to comment
Share on other sites

It doesn't actually insert stuff into Platforms.xml but rather replaces the needed files, correct? The only thing it does by itself is to bin-patch?

 

Yes. It replaces or inserts as new file Platforms, layout and Info. It doesn't edit this files in any way.

Link to comment
Share on other sites

Trying 0x85, 0x08, 0xEC, 0x10 patch to 0x87, 0x08, 0xEC, 0x10 (0x87 for ALC888B, same as ALC887) and still no luck... Also tried 0x88 and nothing... :)

 

Anyone had success patching or am I the only one with ALC888B? :unsure:

Link to comment
Share on other sites

 Share

×
×
  • Create New...