Jump to content
InsanelyMac Forum
flames

ALC268 legacy kext for /Extra/Extensions 32 & 64 bit

Recommended Posts

hello,

 

yesterday after i updated snow leo to 10.6.2, audio died, i used a patched applehda. since i didnt found any working kext for 10.6.2 i decided to make my own, legacy one

 

this kext still needs an device injection, your options are

1. HDAEnabler.kext in /Extra/Extensions

2. patching dsdt

3. efi string for audio hdef

 

i chosen the dsdt way:

 

1. find all entries "AZAL" and replace them with "HDEF"

 

2. replace the whole Device (HDEF) with the following

Device (HDEF)
		{
			Name (_ADR, 0x001B0000)
			OperationRegion (HDAR, PCI_Config, 0x4C, 0x10)
			Method (_DSM, 4, NotSerialized)
			{
				Store (Package (0x04)
					{
						"layout-id", 
						Buffer (0x04)
						{
							0x0C, 0x00, 0x00, 0x00
						}, 

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

			Field (HDAR, WordAcc, NoLock, Preserve)
			{
				DCKA,   1, 
						Offset (0x01), 
				DCKM,   1, 
					,   6, 
				DCKS,   1, 
						Offset (0x08), 
					,   15, 
				PMES,   1
			}
		}

 

dont forget to put Method (DTGP) in your dsdt right after Method (_WAK), or check if it exists from previous fixes

Method (DTGP, 5, 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 (LEqual (Arg1, One))
		{
			If (LEqual (Arg2, Zero))
			{
				Store (Buffer (One)
					{
						0x03
					}, Arg4)
				Return (One)
			}

			If (LEqual (Arg2, One))
			{
				Return (One)
			}
		}
	}

	Store (Buffer (One)
		{
			0x00
		}, Arg4)
	Return (Zero)
}

 

 

thanks to THe KiNG for his tutorial about patching applehda and creating legacy kexts for audio

thanks to Siobhan for the DSDT (dsdt part i took from here http://www.insanelymac.com/forum/index.php...025&st=112# )

 

for russian support join irc.osx86.hu #applelife.ru

 

legacy acl268.kext for 32 and 64bit snow leopard, tested on 10.6.2:

ALC268.zip

Share this post


Link to post
Share on other sites
Advertisement
i think i can not understand clearly so what about a tutorial of how installing ALC268 with snow 10.6.2 thanks i shall wait

 

edit your dsdt like described in first post

put the attached alc268.kext into /extra/extensions

set permissions

sudo chown -R root:wheel /Extra

sudo chmod -R 755 /Extra

 

remove voodoohda or replace modified applehda with original in /system/library/extensions

check persmissions for /system/library/extensions

clean caches:

sudo rm -rf /System/Library/Caches/*

sudo touch /System/Library/Extensions

reboot

 

be aware, this legacy alc268.kext doesnt work with all alc268. in my case it works perfekt on a toshiba satellite L3xx series laptop.

Share this post


Link to post
Share on other sites
In my laptop Acer Aspire 4320 internal speakers not works, mute, mic external internal and lineout works fine, and i have some errors at verbose startup.

 

 

the errors in verbose mode are normal with legacy kexts, i guess you get some sound assertions and one dependency error sounding like "applehdacontroller .... kextd not available in early boot" or something like that.

 

to solve your internal speaker you can try to modify pin configuration in the ALC268.kext/Contents/Info.plist

 

good luck

Share this post


Link to post
Share on other sites

Speakers, headphones, built-in mic work on my Dell Mini 9 running 10.6.2. I used HDAEnabler instead. Doesn't work on wake after sleep. I found temporary solution using Sleepwatcher to unload and load AppleHDA on wake. Thanks

Share this post


Link to post
Share on other sites

thanks for response, i am glad, that it helps people.

 

the "after sleep" issue is appears often with alc268, also with patched applehda and voodoohda. i didnt feagured out why the issue persist.

 

on my toshiba all is working perfekt, also after sleep audio works fine. so i cant reproduce that.

 

tommyv: hdaenabler is the most simple way, so its ok to use that. i am a dsdt fetishist, so trying to get all possible stuff working with dsdt ;)

maybe you try the dsdt patch, possibly that would fix audio after sleep? i cant say that for sure, but its worth a try imho.

Share this post


Link to post
Share on other sites
hdaenabler is the most simple way, so its ok to use that. i am a dsdt fetishist, so trying to get all possible stuff working with dsdt :)

maybe you try the dsdt patch, possibly that would fix audio after sleep? i cant say that for sure, but its worth a try imho.

 

Thanks, tried the dsdt patch instead but still doesn't fix audio after sleep :rolleyes: Any ideas other than unloading and loading on wake ? Cheers :)

Share this post


Link to post
Share on other sites
Thanks, tried the dsdt patch instead but still doesn't fix audio after sleep :D Any ideas other than unloading and loading on wake ? Cheers :P

 

not really, since i cant reproduce the issue on my laptop, i cant find out, where the problem is.

the idea is to mache a launchdaemon script, that do the unload+load the kext automatically (like the helper for voodoohda)

 

i dont know which values i can inject in dsdt, to give your audio sleep capability (i.e. method _prw)

and i dont know if its possible at all

 

good luck

 

edit: try this in dsdt (just replace the whole device hdev section with this)

				Device (HDEF)
			{
				Name (_ADR, 0x001B0000)
				OperationRegion (HDAR, PCI_Config, 0x4C, 0x10)

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

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

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

				Field (HDAR, WordAcc, NoLock, Preserve)
				{
					DCKA,   1, 
							Offset (0x01), 
					DCKM,   1, 
						,   6, 
					DCKS,   1, 
							Offset (0x08), 
						,   15, 
					PMES,   1
				}
			}

Share this post


Link to post
Share on other sites

Thanks. In the meantime I found a patched IOAudioFamily.kext on Applelife.ru forums that supposedly fixes the EAPD that goes off on sleep and doesn't come back on wake. Works perfectly in conjunction with your kext. Will try your dsdt patch nevertheless and post results.

 

Another question regarding your kext: I compared your pin config with my verb dump (attached), and found that modified verbs are only the actual ones being used. Can I remove the unused ones?

 

Thanks again for your effort.

IOAudioFamily.kext.zip

mini9codecverbs.zip

Share this post


Link to post
Share on other sites
Thanks. In the meantime I found a patched IOAudioFamily.kext on Applelife.ru forums that supposedly fixes the EAPD that goes off on sleep and doesn't come back on wake. Works perfectly in conjunction with your kext. Will try your dsdt patch nevertheless and post results.

yea, would be nice to know if method _prw solves sleep issue. if not, then i am out of ideas how to do that in dsdt.

where you put the ioaudiofamily.kext, does it work from extra?

 

Another question regarding your kext: I compared your pin config with my verb dump (attached), and found that modified verbs are only the actual ones being used. Can I remove the unused ones?

sure, you can remove not used verbs, if you need some info how to do, read the tutorial the king posted on osxproject forums. its damn good!

Share this post


Link to post
Share on other sites
yea, would be nice to know if method _prw solves sleep issue. if not, then i am out of ideas how to do that in dsdt.

where you put the ioaudiofamily.kext, does it work from extra?

 

I put it in S/L/E replacing the original

 

sure, you can remove not used verbs, if you need some info how to do, read the tutorial the king posted on osxproject forums. its damn good!

 

Unfortunately, with method _prw audio doesn't work at all :(

Share this post


Link to post
Share on other sites

flames... thank you very much!!

I used your kext and the instructions for editing the dsdt and finally I trashed VoodooHDA, which I didn't like at all!

 

Now the internal microphone works WAY better!! :blink:

 

 

 

I have a problem though... it doesn't recognize my internal speaker.. audio works only if I connect speaker/headphones to the jack.

Having a working patched AppleHDA, which I used when I was under Leopard, could help me finding the informations I need? For example from the info.plist of AppleHDAController.kext ..

 

 

 

Ah, by the way my laptop is an Acer Aspire 5720G

 

 

Thank you!

Share this post


Link to post
Share on other sites

Hi,

 

I have been trying to get my ALC269 Audio to work on my Samsung n510 netbook for several weeks now in SL 10.6.2.

VoodooHda 2.5.2 is very scratchy in sound quality although every thing works including internal mike.

 

I have tried to patch AppleHDA using Kings tutorial but no result.

 

Interestingly your codecs ALC268 has almost identical pins except for a minor numbering change.

 

I have tried to patch your kext. ie change it to my verbs and Vendor ID but no result. Maybe I missed something.

I have attached my Linux dump, codec graph, Verbs and pins.

Please can anyone help!

 

 

ALC269_audio_pins.txt

verbs.txt

Linux_codec_dump_dec.txt

codec_dump_dec.txt.svg.zip

 

Thanks

Share this post


Link to post
Share on other sites
I share IOAudioFamily.kext 23&63bit file for us.

It fixes the wakeup trouble...Have fun. :(

 

Thanks, only a little delay when i press mute/unmute but with it i have sound after sleep in Acer Aspire 4320.

 

The IOAudioFamily.kext seem is patched for the Dell Mini9, because a lot of those messages in system log:

 

Mini9MuteControl: setting to 0

Mini9MuteControl: request to change EAPD status timed out.

Mini9MuteControl: done

Mini9MuteControl: setting to 0

Mini9MuteControl: done

Auth result for: 10:20:30:40:50:60 MAC AUTH succeeded

AirPort: Link Up on en1

Mini9MuteControl: setting to 1

Mini9MuteControl: done

Mini9MuteControl: setting to 0

Mini9MuteControl: done

Mini9MuteControl: setting to 1

Mini9MuteControl: done

Mini9MuteControl: setting to 0

Mini9MuteControl: done

 

then how i can hide those messages ?

Share this post


Link to post
Share on other sites
hello,

 

yesterday after i updated snow leo to 10.6.2, audio died, i used a patched applehda. since i didnt found any working kext for 10.6.2 i decided to make my own, legacy one

 

this kext still needs an device injection, your options are

1. HDAEnabler.kext in /Extra/Extensions

2. patching dsdt

3. efi string for audio hdef

 

i chosen the dsdt way:

 

1. find all entries "AZAL" and replace them with "HDEF"

 

2. replace the whole Device (HDEF) with the following

Device (HDEF)
		 {
			 Name (_ADR, 0x001B0000)
			 OperationRegion (HDAR, PCI_Config, 0x4C, 0x10)
			 Method (_DSM, 4, NotSerialized)
			 {
				 Store (Package (0x04)
					 {
						 "layout-id", 
						 Buffer (0x04)
						 {
							 0x0C, 0x00, 0x00, 0x00
						 }, 

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

			 Field (HDAR, WordAcc, NoLock, Preserve)
			 {
				 DCKA,   1, 
						 Offset (0x01), 
				 DCKM,   1, 
					 ,   6, 
				 DCKS,   1, 
						 Offset (0x08), 
					 ,   15, 
				 PMES,   1
			 }
		 }

 

dont forget to put Method (DTGP) in your dsdt right after Method (_WAK), or check if it exists from previous fixes

Method (DTGP, 5, 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 (LEqual (Arg1, One))
		 {
			 If (LEqual (Arg2, Zero))
			 {
				 Store (Buffer (One)
					 {
						 0x03
					 }, Arg4)
				 Return (One)
			 }

			 If (LEqual (Arg2, One))
			 {
				 Return (One)
			 }
		 }
	 }

	 Store (Buffer (One)
		 {
			 0x00
		 }, Arg4)
	 Return (Zero)
 }

 

 

thanks to THe KiNG for his tutorial about patching applehda and creating legacy kexts for audio

thanks to Siobhan for the DSDT (dsdt part i took from here http://www.insanelymac.com/forum/index.php...025&st=112# )

 

for russian support join irc.osx86.hu #applelife.ru

 

legacy acl268.kext for 32 and 64bit snow leopard, tested on 10.6.2:

 

hi

how can i install it stap by stap pls

Share this post


Link to post
Share on other sites

hey!

 

i have a compal fl90. everything works pretty well with sl 10.6.4 but except my soundcard with alc268. i tried several voodoohda.kext but i always get kernelpanic!!!

 

what .kext should i use for sound?

 

plz help

 

thx a lot

Share this post


Link to post
Share on other sites

Hello everybody,

 

The tutorial from flames doesn't work for me on HP G7000 with Mac OS X 10.6.4 installed (unmodified version)

00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)

 

I tried some versions of Voodoo HDA, already followed the steps here (modify DSDT, add ALC268.kext to Extra/Extensions, and replace original AppleHDA in Extensions), tried the solution given here by leras (thank you), and tried some modified versions of AppleHDA.

 

I am beginning to be desperate... but I have to find a way to figure out the problem and solve it.

Do some of you guys (or girls) have any idea?

 

Thank you very much...

Joan

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.



×