Jump to content

ALC889A, Gigabyte (Intel): now having a working front mic


VCH888
 Share

1,156 posts in this topic

Recommended Posts

......................

Since making the changes I am having some issues as is Aargh-a-Knot as Syspref/Audio seems to be be inactive and the pin outs do not appear to work correctly. As advised I am a noob of sorts and believe the problem could be the LEGACY.HDA we are using as mine is the original and there are so many around.

 

Please see http://www.efixusers.com/showthread.php?t=778&page=2 for more info. I would appreciate any suggestions.

......................

Is this the same legacy kext did you use with Leo (10.5.X) and Snow Leo (10.6 - 10.6.2)? If the pins outs (including HP auto-switch) working properly prior updating to 10.6.3, I think it can be fixed. I use different legacy kext for Leo & Snow Leo. I'm attaching my legacy kext which works with 10.6.2. I just hex edit the same legacy AppleHDA.kext kext to make it working with 10.6.3.

http://www.mediafire.com/?vkzyzmtzozo

 

Just copy the values (pin configurations, configdata & etc) from your legacy kext (Info.plist) to my legacy kext. Use Property List Editor or PlistEdit Pro to edit the legacy kexts. It is very simple, not hard at all. Let me know if you need any help. :(

 

EDIT: I don't have ALC889 but so far updating to more compatible legacy kext should solve the problem.

 

kizwan

Link to comment
Share on other sites

Is this the same legacy kext did you use with Leo (10.5.X) and Snow Leo (10.6 - 10.6.2)? If the pins outs (including HP auto-switch) working properly prior updating to 10.6.3, I think it can be fixed. I use different legacy kext for Leo & Snow Leo. I'm attaching my legacy kext which works with 10.6.2. I just hex edit the same legacy AppleHDA.kext kext to make it working with 10.6.3.

http://www.mediafire.com/?vkzyzmtzozo

 

Just copy the values (pin configurations, configdata & etc) from your legacy kext (Info.plist) to my legacy kext. Use Property List Editor or PlistEdit Pro to edit the legacy kexts. It is very simple, not hard at all. Let me know if you need any help. :P

 

EDIT: I don't have ALC889 but so far updating to more compatible legacy kext should solve the problem.

 

kizwan

 

Hi Kizwan,

 

Thank you very much for this, I have copied your file and without editing it appears to work better, I will "play" around with the pin outs.

 

Your help is much appreciated.

 

Brgds/Tony.

Link to comment
Share on other sites

Hi Kizwan,

 

Thank you very much for this, I have copied your file and without editing it appears to work better, I will "play" around with the pin outs.

 

Your help is much appreciated.

 

Brgds/Tony.

All outs & ins are working with my legacy kext? Maybe it just coincidence that my ALC883 pin configurations same as yours.

 

EDIT: Oh...I see. Just copy the pin outs & ins from your old legacy kext to the new one. It should make your outs & ins working properly.

 

kizwan

Link to comment
Share on other sites

Hello,

I have a Gigabyte Borad with ALC889a Chipset for sound. The sound works well over the standard anlag output deveice. But the digital output device I can not choose over the sound preferences.soundpreferences.tiffSystemInfo.tiff

 

I hope sombody can help me.

Regards

Halegmaier

 

I think, you choose the wrong ALC889a kext.

Link to comment
Share on other sites

No the installer should work fine on any 10.5.x installs oh tho report back if it doesnt work and i will repack the pkg and correct it

 

Please help me

i have managed to instal ToH 10.5 Mac OSX every things works except mic and grahics card . i m not getting the correct resolution.

here are my specs

 

Intel P4 3.0 Ghz

Display: LCD samsung

Graphics: ATI Radeon Xpress 200 (inbuilt)

Audio is Realtek HD

 

 

i found kext for graphics by Callisto but i cannot execute the command in VI as i dont have any knowledge about it. here i m pasting the instruction some one please elaborate it assuming dummies.i dont understand anything from step 7 onwards.please some one explain me how to execute

 

1.I have typed this out of my head, so if something is incorrect, let me know, ok?

å

2.Download the file to the Desktop (surely you know how to download, no?)

 

Safari will download and unzip the archive into Callisto_latest.

 

3.Start a new terminal window from Applications->Utilities

 

4. cd ~/Desktop

 

5. cd Callisto_latest or wherever the archive was decompressed.

 

6. vi CallistoHAL.kext/Contents/Info.plist

 

7. Replace my own PCI device ID with yours under the IOPCIMatch key (4150 is mine...)

Don't tell me you don't know how to use vi? Try nano or Textedit then.

 

8. If your DFP monitor is detected as CRT by the driver, you can try to hard-code the EDID string of your monitor. Use the Monitor Asset Manager (or any other way) to retrieve your 128 byte HEX value string. When using MAM, you only need the actual hex values do not include line numbers (00:, 10:, 20:, etc).

 

9. Next open the Callisto_latest folder on your desktop, then right mouse click on Callisto.kext and left click on Show Package Contents. Open the Contents folder and there you will see Info.plist.

 

9. Double click on Info.plist file and it *should* open in Property List Editor. Click on the arrow next to the Root, then arrow next to the IOKitPersonalities, then next to the CallistoMatch.

 

10. You will see a key called MONITOR_TYPE,EDID. Double click on it to edit it and replace the MONITOR_TYPE with DFP so it says DFP,EDID or with CRT,EDID for a CRT screen.

 

11. In the value field of the same key replace the hex values there with the ones from your EDID, making sure that the < and > remain on the ends. You will see my original value there, it's the EDID for Apple Cinema Display 20" :). Once done, save the file with File/Save.

 

12. Here's an imaginary EDID string, just so you see how it looks like:

00 FF FF FF FF FF FF 00 10 AC 19 A0 4C 56 52 31 0D 10 01 03 80 2B 1B 78 EE EE 91 A3 54 4C 99 26 0F 50 54 A5 4B 00 81 80 71 4F 01 01 01 01 01 01 01 01 01 01 01 01 7C 2E 90 A0 60 1A 1E 40 30 20 36 00 B2 0E 11 00 00 1A 00 00 00 FF 00 48 46 37 33 30 36 33 52 31 52 56 4C 0A 00 00 00 FC 00 44 45 4C 4C 20 32 30 30 37 57 46 50 0A 00 00 00 FD 00 38 4C 1E 53 0E 00 0A 20 20 20 20 20 20 00 33

 

13. It is absolutely important that you do not miss any characters in your EDID string, and that it is exactly 128 bytes long. Also have in mind that the above procedure is ONLY for non-Mobility owners, Mobility owners should not do this, your settings come from the BIOS.

 

14. sudo mv Callisto* /System/Library/Extensions/

(enter your password when prompted)

 

sudo chown -R root:wheel /System/Library/Extensions/Callisto*

(enter your password when prompted)

 

sudo chmod -R 755 /System/Library/Extensions/Callisto*

(enter your password when prompted)

 

We might need to clean up some of the display settings files, so proceed with the following inside the terminal window:

sudo rm -f /Library/Preferences/com.apple.window*

 

rm -f ~/Library/Preferences/ByHost/com.apple.window*

 

rm -f ~/Library/Preferences/ByHost/com.apple.pref*

Also remove any display settings in your com.apple.Boot.plis file, for example:

<key>Graphics Mode</key>

<string>1280x1024x32</string>

This file is in the /Library/Preferences/SystemConfiguration/ folder.

 

Before you reboot, make sure you remove the Extensions.mkext and Extensions.kextcache, so that system refreshes those and include Callisto:

sudo rm /System/Library/Extensions.mkext

sudo rm /System/Library/Extensions.kextcache

 

Reboot and hope all goes well.

 

If it does, you will see your screen's default resolution (whatever that is based on the EDID). Go to your Display Preferences and try changing a resolution in there.

 

If you do not see new resolutions in Display Preferences, you did not follow the instructions above to the letter or the driver does not work properly on your computer, go back and try again.

 

When you change the resolution and get a picture, congratulate yourself.

Else, if you get a black screen, don't just click with the mouse like mad. Try using the cursor up and down key to switch between other modes and see if that brings the image back.

 

If there's no image at all, read the Troubleshooting section for possible solutions. If those fail then the driver does not work for you. Boot into single user mode (that's -s switch in boot prompt) and remove the two KEXT files...sorry it didn't work.

 

If you mess up your OS, don't blame me, you should've read the F.A.Q. first.

Link to comment
Share on other sites

This is DIY and not for ATI graphic card users.

 

You may be able to get audio via HDMI cable from your computer to LCD TV.

 

What do you need?

 

- DIY.

- OS X 10.6.3 ? (I tested on this one.) Important! You must get AppleHDA working for your sound card and have Digital Output.

- Nvidia graphic cards that have a "native HDMI" port (or may be some working graphic cards via DVI-HDMI adaptor).

- An audio cable connecting between SPDIF input on Nvidia graphic card and SPDIF output on mainboard, see your manuals and test it on Windows OS.

- AppleHDA.kext 1.8.4fc3 (10.6.3), never test older ones.

- Absolutely an HDMI cable. :D

- Digital Out will be chosen in Sound Preferences.

- You need to set GFX string with DVI/DVI (NVCAP) or use DSDT for graphic enabler.

			"NVCAP", 
		Buffer (0x18)
		{
			/* 0000 */	0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 
			/* 0008 */	0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 
 			/* 0010 */	0x00, 0x00, 0x00, 0x00
		},

 

Alphonse tested on 9400GT and I tested on 9500GT. Alphone and I have the same LCD TV, Samsung B650 series so I have no idea this will or will not work on other LCD TVs. He told me that he got audio via an HDMI cable. So, I borrowed 9500GT that has a native HDMI port from my brother for testing and then I got it working. But, I got something weird about Sound Preferences after I selected Digital Out. I have read some people are using GTX260 or higher can work on OS X 10.6.3 via DVI-HDMI adaptor so they might be able to get sound via HDMI by selecting Digital Output.

 

Good luck.

 

Edited on June 20, 2010

Link to comment
Share on other sites

Edited on June 20, 2010

 

***AppleHDA.kext v1.7.9a4 (10.6.2) was tested on Gigabyte GT220 and Galaxy GT240, OS X 10.6.3, and HDMI audio's working and having Encoded Digital Audio (see Audio Miidi Setup). AppleHDA.kext v1.8.4fc3 doesn't have Encoded Digital Audio for HDMI audio. (11 May 2010)

 

This is how I made HDMI audio working for my Nvidia GT240. After I tried to find out how I can get HDMI audio for my Galaxy GT240, finally I just did two things, editing my DSDT and patching AppleHDA bin. I can say that if you have a graphic card such as GT220 or GT240 and AppleHDA.kext could not work on your sound on board, you should be able to get HDMI audio working. However, you might got some sound assertions. It's not bad, isn't it. It could be good if you can use AppleHDA.kext for your sound card on board and HDMI audio. You can see some of my testing logs, it's in zip file.

 

Requirements:

HexEdit for patching bin and iASLMe (DSDT tool, compile & decompile)

 

AppleHDA.kext version 1.8.4fc3 or higher ***tested AppleHDA.kext v1.7.9a4 (10.6.2) on OS X 10.6.3, got HDMI audio working.

 

I will not explain how to patch AppleHDA binary or edit info.plists for your sound card on board but I will tell you how to edit AppleHDA binary for HDMI audio. GT220 is based on GPU GT216 the same as GT330M used by Apple. If you have nVidia GT220 PCI-E card and ALC889a/885 on your motherboard, you don't have to patch binary.

 

DSDT.aml

You need to use DSDT.aml for your system in order to enabler HDMI audio. You need to know how to edit DSDT.dsl and how to compile it.

 

A graphic card that has a built-in audio chip.

You have known that recent ATI graphic cards have a built-in audio chip. Late 2009, Nvidia has marketed new GPUs that have a built-in audio chip; for example, GT220, GT240, GT330, GTX470, GTX480, etc. Visit www.nvidia.com for more information.

 

OS X 10.6.3

You may need to update your system to 10.6.3 since AppleHDA.kext is related to many kexts.

============================================================

How to edit your DSDT:

 

First:

 

Adding the following code into a graphic section if you are using boot loader for your graphic card.

Note: You must know what your graphic address is.

 

               Device (GFX0)
               {
                   Name (_ADR, Zero)
                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x02)
                           {
                               "hda-gfx", 
                               Buffer (0x0A)
                               {
                                   "onboard-1"
                               }
                           }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

               Device (HDAU)
               {
                   Name (_ADR, One)
                   Method (_DSM, 4, NotSerialized)
                   {
                        Store (Package (0x02)
                            {
                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-1"
                                }
                            }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

 

Then, it should be looking like the followings.

           Device (PEGP)  //adding this device
           {
               Name (_ADR, 0x00010000)   //using lspci tool for your graphic address
               Name (_PRW, Package (0x02)  //based on Gigabyte DSDT
               {
                   0x09, 
                   0x05
               })
               Device (GFX0)
               {
                   Name (_ADR, Zero)
                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x02)
                           {
                               "hda-gfx", 
                               Buffer (0x0A)
                               {
                                   "onboard-1"
                               }
                           }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

               Device (HDAU)
               {
                   Name (_ADR, One)
                   Method (_DSM, 4, NotSerialized)
                   {
                        Store (Package (0x02)
                            {
                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-1"
                                }
                            }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }
           }

 

If your boot loader does not contain your graphic device-id, you may use the followings.

           Device (PEGP)
           {
               Name (_ADR, 0x00010000)
               Name (_PRW, Package (0x02)
               {
                   0x09, 
                   0x05
               })
               Device (GFX0)
               {
                   Name (_ADR, Zero)
                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package ()
                           {
			"AAPL,slot-name",
			"PCI x16",

                               "@0,compatible", 
                               Buffer (0x0B)
                               {
                                   "NVDA,NVMac"
                               }, 

                               "@0,device_type", 
                               Buffer (0x08)
                               {
                                   "display"
                               }, 

                               "@0,name", 
                               Buffer (0x0F)
                               {
                                   "NVDA,Display-A"
                               }, 

                               "@1,compatible", 
                               Buffer (0x0B)
                               {
                                   "NVDA,NVMac"
                               }, 

                               "@1,device_type", 
                               Buffer (0x08)
                               {
                                   "display"
                               }, 

                               "@1,name", 
                               Buffer (0x0F)
                               {
                                   "NVDA,Display-B"
                               }, 

                               "NVCAP", 
                               Buffer (0x18)
                               {
                                   /* 0000 */    0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 
                                   /* 0008 */    0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 
                                   /* 0010 */    0x00, 0x00, 0x00, 0x00
                               }, 

                               "VRAM,totalsize", 
                               Buffer (0x04)
                               {
                                   0x00, 0x00, 0x00, 0x20   //change it for your graphic card
                               }, 

                               "device_type", 
                               Buffer (0x0C)
                               {
                                   "NVDA,Parent"
                               }, 

                               "model", 
                               Buffer (0x15)
                               {
                                   "nVidia GeForce GT240"  //change it for your graphic card
                               }, 

                               "rom-revision", 
                               Buffer ()
                               {
                                   "3172a"   //change it for your graphic card. I am not sure about this. Some recommended use this "3172a."
                               }, 

                               "hda-gfx", 
                               Buffer (0x0A)
                               {
                                   "onboard-1"
                               }
                           }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

               Device (HDAU)
               {
                   Name (_ADR, One)
                   Method (_DSM, 4, NotSerialized)
                   {
                        Store (Package (0x02)
                            {
                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-1"
                                }
                            }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }
           }

 

Updating: Thanks to toleda for getting HDMI audio to work with AppleHDA.kext that is updated to 10.6.5 or higher.

 

adding:

					"@1,connector-type",
				Buffer (0x04)
				{
					0x00, 0x08, 0x00, 0x00   // or 0x00, 0x04, 0x00, 0x00
				},

 

then should be:

           Device (PEGP)
           {
               Name (_ADR, 0x00010000)
               Name (_PRW, Package (0x02)
               {
                   0x09, 
                   0x05
               })
               Device (GFX0)
               {
                   Name (_ADR, Zero)
                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package ()
                           {
			"AAPL,slot-name",
			"PCI x16",

                               "@0,compatible", 
                               Buffer (0x0B)
                               {
                                   "NVDA,NVMac"
                               }, 

                               "@0,device_type", 
                               Buffer (0x08)
                               {
                                   "display"
                               }, 

			"@0,connector-type",
			Buffer (0x04)
			{
			    0x00, 0x08, 0x00, 0x00  // or 0x00, 0x04, 0x00, 0x00
			}, 

                               "@0,name", 
                               Buffer (0x0F)
                               {
                                   "NVDA,Display-A"
                               }, 

                               "@1,compatible", 
                               Buffer (0x0B)
                               {
                                   "NVDA,NVMac"
                               }, 

                               "@1,device_type", 
                               Buffer (0x08)
                               {
                                   "display"
                               },

			"@1,connector-type",
			Buffer (0x04)
			{
			    0x00, 0x08, 0x00, 0x00  // or 0x00, 0x04, 0x00, 0x00
			}, 

                               "@1,name", 
                               Buffer (0x0F)
                               {
                                   "NVDA,Display-B"
                               }, 

                               "NVCAP", 
                               Buffer (0x18)
                               {
                                   /* 0000 */    0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 
                                   /* 0008 */    0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 
                                   /* 0010 */    0x00, 0x00, 0x00, 0x00
                               }, 

                               "VRAM,totalsize", 
                               Buffer (0x04)
                               {
                                   0x00, 0x00, 0x00, 0x20   //change it for your graphic card
                               }, 

                               "device_type", 
                               Buffer (0x0C)
                               {
                                   "NVDA,Parent"
                               }, 

                               "model", 
                               Buffer (0x15)
                               {
                                   "nVidia GeForce GT240"  //change it for your graphic card
                               }, 

                               "rom-revision", 
                               Buffer ()
                               {
                                   "3172a"   //change it for your graphic card. I am not sure about this. Some recommended use this "3172a."
                               }, 

                               "hda-gfx", 
                               Buffer (0x0A)
                               {
                                   "onboard-1"
                               }
                           }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

               Device (HDAU)
               {
                   Name (_ADR, One)
                   Method (_DSM, 4, NotSerialized)
                   {
                        Store (Package (0x02)
                            {
                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-1"
                                }
                            }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }
           }

 

 

 

Second:

 

see HDMI device-id whether you need to patch Apple binary or not?

For example, I used Windows for getting information. You can see the following pictures.

16c9h5j.jpg

21cry9w.jpg

 

My Galaxy GT240 has HDMI audio device-id as 0x10DE000D while vanilla AppleHDA binary has 0x10DE000A. So, I must patch AppleHDA binary by using HexEdit to change all of them (four positions) from 0A 00 DE 10 to 0D 00 DE 10.

 

G210 : 0x10DE000B working or not working, I don't know about this G210.

GT220 : 0x10DE000A (Good choice)

GT240 : 0x10DE000D (need to patch Apple binary)

 

Finally, you should get like these.

124vjeo.jpg

2cyiwx.jpg

 

Note:

 

You have to connect HDMI cable between a graphic card and LCD TV (or Monitor w/ built-in speakers) for getting HDMI Output option.

 

I tested Sleep mode since I connected between GT240 and LCD TV and then it was OK and able to wake up. (19-04-2010)

 

 

If you encounter some problems, you may need to delete some preferences by booting into safe mode ("-s"). You will see two lines of /sbin/??, just type them.

I got these from http://www.insanelymac.com/forum/lofiversi...hp/t108186.html for removing old display preferences.

 

rm -f /Library/Preferences/com.apple.window*
rm -f /Users/"USER NAME"/Library/Preferences/ByHost/com.apple.window*
rm -r /Users/"USER NAME"/Library/Preferences/ByHost/com.apple.pref*

rm -f /Library/Preferences/Audio/com.apple.audi*

 

 

Enjoy. :D

Link to comment
Share on other sites

Hello everybody,

 

I upgraded my Gigabyte GA-EP45-DS3 (ALC889A audio) from 10.5.8 to 10.6.3 using the Kakewalk installer. Sound is basically working fine after the upgrade, but the audio output is being reset to "headphones" (from "internal speakers") on boot. To be able to hear sound from the speakers, I have to change the audio output in system preferences each time I start up the machine.

 

Is this a known problem? How can I preset the default output to "internal speakers"?

 

Cheers,

hehol

Link to comment
Share on other sites

Hello everybody,

 

I upgraded my Gigabyte GA-EP45-DS3 (ALC889A audio) from 10.5.8 to 10.6.3 using the Kakewalk installer. Sound is basically working fine after the upgrade, but the audio output is being reset to "headphones" (from "internal speakers") on boot. To be able to hear sound from the speakers, I have to change the audio output in system preferences each time I start up the machine.

 

Is this a known problem? How can I preset the default output to "internal speakers"?

 

Cheers,

hehol

 

Does your front audio support HDA/AZAL? If yes, please use the one named 3outs2ins HDA headphone.

 

It's weird that you got every time you started up your system.

Link to comment
Share on other sites

Type this into Google : alc889a vs alc885

And you'l find out that they are one and the same. I believe GigaByte just renamed the ALC885 into ALC889a. You'll find lots of threads from this forum at the top of the serach results. There are also better qualified people here (other than me) to tell you the minimal differences (if any) between the two.

 

EDIT: So what I'm saying is that you should compare the ALC889 to the ALC885.

Link to comment
Share on other sites

Does anyone know the difference between alc889 and alc889a?

why does alc889 doesn't work with version 1.8.4fc3 of applehda?

they share the same deviceid and the same vendor

so what is making the difference between them?

 

 

Did you try to patch AppleHDA bin and edit info.plist of AppleHDAHardwareConfigDriver.kext and AppleHDAPlatformDriver.kext instead of using legacy/dummy kext?

 

I had to patch bin and edit info.plists for my ALC662 (945GCM-S2L).

Link to comment
Share on other sites

ALC887 (888B) issues in 10.6.3, even with BinHack, but all OK with 10.6.2)

 

Hi Tmongkol,

Wonder if you can suggest any new lines for experiment on this problem...

 

I have analogue and SPDIF basically 100% OK in 10.6.3, using 10.6.2 AppleHDA. Success

- Either via LegacyHDA+HDAEnabler (and basically nothing other than basic HDEF in DSDT), or

- When using a "rebuilt" AppleHDA (10.6.2) in /S/L/E.

 

Paths, Layout and verbs seem OK to my limited knowledge, and I do not have any sound assertion errors*

 

 

When I try to build the relevant info into the 10.6.3 AppleHDA .plists, inc Hexedit 8708EC10, I do not get any analogue audio. Note that digital SPDIF (from ALC codec)* is however working no problems, in and out.

(Use HDAEnabler in /E/E or /S/L/E, also tried some variants of DSDT HDEF).

 

MB is GA P55M-UD2

 

*Well, I always get a GFX-EFI error as have ATI4870. Also like your comments in your post can't get HDMI working on that...(CodecID 1002,AA01)..but that's not bothering me half as much as no analog on 10.6.3 from the ALC887.

 

Thank you.

Link to comment
Share on other sites

ALC887 (888B) issues in 10.6.3, even with BinHack, but all OK with 10.6.2)

 

Hi Tmongkol,

Wonder if you can suggest any new lines for experiment on this problem...

 

I have analogue and SPDIF basically 100% OK in 10.6.3, using 10.6.2 AppleHDA. Success

- Either via LegacyHDA+HDAEnabler (and basically nothing other than basic HDEF in DSDT), or

- When using a "rebuilt" AppleHDA (10.6.2) in /S/L/E.

 

Paths, Layout and verbs seem OK to my limited knowledge, and I do not have any sound assertion errors*

 

 

When I try to build the relevant info into the 10.6.3 AppleHDA .plists, inc Hexedit 8708EC10, I do not get any analogue audio. Note that digital SPDIF (from ALC codec)* is however working no problems, in and out.

(Use HDAEnabler in /E/E or /S/L/E, also tried some variants of DSDT HDEF).

 

MB is GA P55M-UD2

 

*Well, I always get a GFX-EFI error as have ATI4870. Also like your comments in your post can't get HDMI working on that...(CodecID 1002,AA01)..but that's not bothering me half as much as no analog on 10.6.3 from the ALC887.

 

Thank you.

 

Now, i5/i7 (1156) users got problem with AppleHDA.kext v1.8.4fc3 again. :( Is it "Bridge" issue? I've read many posts and I think there is no issues to ICH9/R & ICH10/R South bridge and AppleHDA.kext (for Gigabyte users). Previously most i5/i7 (1156) Gigabyte users needed to update bios for being able to use AppleHDA.kext v1.7.9 (10.6.3), now they got problem with the latest one. Is it possible to downgrade bios? I have no idea how I can help you.

 

 

 

adding this to DSDT for eliminating GFX-EFI errors and enabler HDMI audio if available. I use these lines for my HD4870 so that I can get Sleep working properly by DSDT fix.


           Device (PEGP)
           {
               Name (_ADR, 0x00010000)
               Device (GFX0)
               {
                   Name (_ADR, Zero)
                   Name (_PRW, Package (0x02)
                   {
                       0x09, 
                       0x05
                   })

                   OperationRegion (PEGH, PCI_Config, Zero, 0x40)
                   Field (PEGH, ByteAcc, NoLock, Preserve)
                   {
                       VID0,   16, 
                       DID0,   16
                   }

                   Method (_DSM, 4, NotSerialized)
                   {
                       If (LEqual (Arg0, Buffer (0x10)
                               {
                                   /* 0000 */    0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, 
                                   /* 0008 */    0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B
                               }))
                       {
                           If (LNotEqual (And (VID0, 0xFFFF), 0xFFFF))
                           {
                               Store (Package (0x02)
                                   {
                                       "hda-gfx", 
                                       Buffer (0x0A)
                                       {
                                           "onboard-1"
                                       }
                                   }, Local0)
                               DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                               Return (Local0)
                           }
                       }

                       Return (0x80000002)
                   }
               }

               Device (HDAU)
               {
                   Name (_ADR, One)
                   OperationRegion (HDAH, PCI_Config, Zero, 0x40)
                   Field (HDAH, ByteAcc, NoLock, Preserve)
                   {
                       VID0,   16, 
                       DID0,   16
                   }

                   Method (_DSM, 4, NotSerialized)
                   {
                       If (LEqual (Arg0, Buffer (0x10)
                               {
                                   /* 0000 */    0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, 
                                   /* 0008 */    0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B
                               }))
                       {
                           If (LNotEqual (And (VID0, 0xFFFF), 0xFFFF))
                           {
                               Store (Package (0x02)
                                   {
                                       "hda-gfx", 
                                       Buffer (0x0A)
                                       {
                                           "onboard-1"
                                       }
                                   }, Local0)
                               DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                               Return (Local0)
                           }
                       }

                       Return (0x80000002)
                   }
               }
           }

 

and


           Device (HDEF)
           {
               Name (_ADR, 0x001B0000)
               OperationRegion (HDAR, PCI_Config, 0x00, 0x60)
               Field (HDAR, WordAcc, NoLock, Preserve)
               {
                   VID0,   16, 
                   DID0,   16, 
                           Offset (0x4C), 
                   DCKA,   1, 
                           Offset (0x4D), 
                   DCKM,   1, 
                       ,   6, 
                   DCKS,   1, 
                           Offset (0x54), 
                       ,   15, 
                   PMES,   1
               }

               Method (_PRW, 0, NotSerialized)
               {
                   Return (Package (0x02)
                   {
                       0x0D, 
                       0x05
                   })
               }

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

                           "device-type", 
                           Buffer (0x06)
                           {
                               "Audio"
                           }, 

                           "PinConfigurations", 
                           Buffer (Zero)
                           {}
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
           }


Link to comment
Share on other sites

Thank You for the fast reply!

 

adding this to DSDT for eliminating GFX-EFI errors and enabler HDMI audio if available. I use these lines for my HD4870 so that I can get Sleep working properly by DSDT fix.

Thanks.

EDIT: OK, so yes the _ADR for my PEGP/GFX was incorrect. Changed to 0x00030000 and now EFI-GFX sound assertion error has gone. (command "gfxutil-f display" will show the PCI bus address information). Not tested if this helps HDMI out yet (need a new cable). Analog audio still not working and no impact so far on inactivity sleep.

Did not work here yet, still get the EFI-GFX error.

Suspect perhaps I should be modifying the addresses for PCI_Config or something, not just blindly copying yours; but have no idea where to find out what they would be for my MB and card (XFX 1GB).

 

Or..perhaps the bridge..when you have _ADR (0x00010000), is that supposed to be the PCI Bridge address?

For me here lspci=

00:03.0 PCI Bridge....(so I guess I'll try _ADR (0x00030000) tomorrow..!)

01:00.0 VGA compatible controller

(HDEF _ADR is of course the same & OK, 1B).

Never did really understand that aspect of ACPI, despite reading the specs and chipset documents!

 

Now, i5/i7 (1156) users got problem with AppleHDA.kext v1.8.4fc3 again. ;) Is it "Bridge" issue? I've read many posts and I think there is no issues to ICH9/R & ICH10/R South bridge and AppleHDA.kext (for Gigabyte users). Previously most i5/i7 (1156) Gigabyte users needed to update bios for being able to use AppleHDA.kext v1.7.9 (10.6.3), now they got problem with the latest one. Is it possible to downgrade bios? I have no idea how I can help you.

Could be. If above mentioned issues are not the problem, I'll try out a few versions of the BIOS, just in case; and hope for fix in the soon to be F9.

 

I think in general Gigabyte users for 1156 socket are OK with 888/889a/885 on other boards (UD3/4/5 etc) as I see people posting hacked 1.8.4HDAs that work for them.

 

 

P.S. Sleep & wake was working basically OK before, except inactivity timer sleep.

Link to comment
Share on other sites

Hi tmongkol

 

Apologies for not reading this thread too often, but I was just reading your front page for ALC888 audio and have seen your AppleHDA_1.8.4fc3_ALC888_LayoutID_888.zip for 10.6.3. Thanks for this and as you said, I no longer need LegacyHDA.kext in E/E.

 

Regards

blackosx

Link to comment
Share on other sites

Hi tmongkol

 

Apologies for not reading this thread too often, but I was just reading your front page for ALC888 audio and have seen your AppleHDA_1.8.4fc3_ALC888_LayoutID_888.zip for 10.6.3. Thanks for this and as you said, I no longer need LegacyHDA.kext in E/E.

 

Regards

blackosx

 

Please, don't worry about that. You are the most active person, helping a lot of people and making good guides, that I've ever seen.

 

tmongkol

Link to comment
Share on other sites

I've been struggling to get audio to work on my 10.6.0 Snow Leopard install. All my other hardware seems fine. My system is a GA P35-DS3R w/ Core2Duo and 2Gb DDR2 and Nvidia 8800GT Graphics. I've got everything working but the sound. I've been trying to figure out this post, but for the life of me I can't get it to work. Is there a simple step-by-step guide to get digital audio working on the onboard ALC889A?

Link to comment
Share on other sites

I've been struggling to get audio to work on my 10.6.0 Snow Leopard install. All my other hardware seems fine. My system is a GA P35-DS3R w/ Core2Duo and 2Gb DDR2 and Nvidia 8800GT Graphics. I've got everything working but the sound. I've been trying to figure out this post, but for the life of me I can't get it to work. Is there a simple step-by-step guide to get digital audio working on the onboard ALC889A?

 

Hey I have the same problem ...

I have installed SL 10.6.3 on a GA-EP35-DS3R (ALC889a) and now after reading all the tutorial I am a bit confused.

For now I have patched my dsdt as shown below :

 

Device (HDEF)
		{
			Name (_ADR, 0x001B0000)
			OperationRegion (HDCS, PCI_Config, 0x54, 0x04)
			Field (HDCS, DWordAcc, NoLock, Preserve)
			{
					,   15, 
				PMES,   1
			}

			Method (_PRW, 0, NotSerialized)
			{
				Return (Package (0x02)
				{
					0x0D, 
					0x06
				})
			}

			Method (_DSM, 4, NotSerialized)
			{
				Store (Package (0x08)
					{
						"codec-id", 
						Buffer (0x04)
						{
							0x85, 0x08, 0xEC, 0x10
						}, 

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

						"device-type", 
						Buffer (0x10)
						{
							"Realtek ALC889a"
						}, 

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

 

But still no sound. What did I forget ?

Link to comment
Share on other sites

I've been struggling to get audio to work on my 10.6.0 Snow Leopard install. All my other hardware seems fine. My system is a GA P35-DS3R w/ Core2Duo and 2Gb DDR2 and Nvidia 8800GT Graphics. I've got everything working but the sound. I've been trying to figure out this post, but for the life of me I can't get it to work. Is there a simple step-by-step guide to get digital audio working on the onboard ALC889A?

 

Get ALC889a_LayoutID_885.zip

 

Install LegacyHDA.kext and HDAEnabler.kext into /Extra/Extensions and restart.

Link to comment
Share on other sites

 Share

×
×
  • Create New...