Jump to content

Patched AppleHDA.kext for codecs IDT 92HD81B1X5, 92HD91BXX, 92HD87B1/3, 92HD87B2/4, 92HD87XX etc.


Micky1979
 Share

203 posts in this topic

Recommended Posts

After binary patching you should see "sound assertion errors" at boot.

You need to get rid of these errors, but at least you know the DSDT is communicating with AppleHDA.

 

Thats the problem, I am not seeing any sound assertion errors. These errors are shown in verbose boot right?

The only applehda stuff I saw during booting was applehdacontroller failed to load in the console utility under system.log.

 

Do you want to check my dsdt file?

Link to comment
Share on other sites


dsdt.dsl 8233: Method (_GTM, 0, NotSerialized)
Warning 1106 - ^ Reserved method must return a value (Buffer required for _GTM)

 

I'm using the latest iasl 20121220-64, compiled with acpicatools.

Try this:

 


Device (HDEF)
{
Name (_ADR, 0x001B0000)
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)
}
}

 

Add DTGP after this:

 


Name (_S5, Package (0x04) // _S5_: S5 System State
{
0x07,
0x07,
Zero,
Zero
})

DTGP code here

Link to comment
Share on other sites

I'm unable to compile your DSDT.

 


dsdt.dsl 8233: Method (_GTM, 0, NotSerialized)
Warning 1106 - ^ Reserved method must return a value (Buffer required for _GTM)

 

I'm using the latest iasl 20121220-64, compiled with acpicatools. Sorry I don't have enough time to figure out your error.

 

Thanks for your code. With regards to compiling, from DSDTse application it gives just warning and remarks, about _HOT, _GTM and much more, but it still compiles successfully, I don't whether these remarks and warning are affecting the HDEF section :worried_anim:

 

Can you confirm the edits in the attached dsdt?

I have amended the code you sent me however. In case the dsdt still does not load the AppleHDA kext, can I use an alternative way to load the kext?

dsdt.aml.zip

Link to comment
Share on other sites

I got two errors. I think we're using different iasl versions.

Your edits looks good.

 

[/size][/font][/color]

As far as I know, no.

 

Ok thanks dude, I don't know where those errors actually came from, as those method definitions, like _GTM are the default code from HP, just extracted using DSDTse app.

I actually need to go to my girlfriend now, (since the laptop with the hackintosh is hers) to check the new dsdt edits, and reinstall the applehda kext. One last question for now :)

 

The HDA assertion errors, do you have any idea, at what part of the booting they will show, and how do they look like, so that I will have an idea?

Link to comment
Share on other sites

I got two errors. BTW, your edits looks good.

 

[/size][/font][/color]

As far as I know, no.

 

Hey, I have rebooted using the new dsdt however, still no assertion errors at least.

However attached are the errors for AppleHDAController, that I have been seeing when booting into Mountain Lion.

 

Is there a way to be sure that at least DSDT.aml is loading? Do I need to make any alterations in the smbios.plist? I have also attached the smbios file.

HDAController error loading kext.rtf

smbios.plist.zip

Link to comment
Share on other sites

LOL. Now I have problems starting AppleHDA :)

It works with "-f" boot flag, but it doesn't load without that flag. I rebuilt kernel cache with kext helper. Same problem.

 

Try UseKernelCache=No maybe it helps.

 

By the way I have got some update. I managed to get sound assertion error by installing HDAEnabler and deleting the dsdt.aml. I am starting to think that my dsdt has a problem. What could it be?

Link to comment
Share on other sites

-f flag tells OSx using the minimum of kexts to start surely the system, but in this mode you can not rebuild the cache.

 

For this reason it would be useful to try to understand if there are unmet dependencies, launching this command in Terminal:

 

sudo kextcache -prelinked-kernel

 

now you can see the dipendency during the rebuild of kernelcache, and evaluate if thre are problems

 

Micky

Link to comment
Share on other sites

Hi Micky

 

Do you have any idea why sound assertion errors came up using HDAEnabler kext but not with the dsdt, even though it has HDEF?

 

One must note that the laptop did not implement the HDEF in the unedited DSDT file

 

 

Link to comment
Share on other sites

I do not know if HDAEnabler inject other things. However, the section HDEF could be inside some other ACPI table, as SSDT-X.aml (x = 1 or 2 or 3 etc.), or be missing entirely! It can however be injected along with the method DTGP. If, after you see her in ioreg, everything will be ok!

 

 

However, editing the dsdt is the best method for now.

Enoch bootloader, is being tested to inject HDEF, layout-id and HDMI directly into o.c.b.p. Soon, it will be ready!!! http://www.insanelymac.com/forum/topic/278638-enoch-bootloader/

Sorry in Italian...

 

Micky

Link to comment
Share on other sites

I do not know if HDAEnabler inject other things. However, the section HDEF could be inside some other ACPI table, as SSDT-X.aml (x = 1 or 2 or 3 etc.), or be missing entirely! It can however be injected along with the method DTGP. If, after you see her in ioreg, everything will be ok!

 

 

However, editing the dsdt is the best method for now.

Enoch bootloader, is being tested to inject HDEF, layout-id and HDMI directly into o.c.b.p. Soon, it will be ready!!! http://www.insanelymac.com/forum/topic/278638-enoch-bootloader/

Sorry in Italian...

 

Micky

 

In fact I have added HDEF in the DSDT file along wth the DTGP method. But still no applehda injection. In IORegistry app there is no load of applehda. I dont have any other ideas why this laptop in particular does not want to inject the kext like others as all edits necessary are there.

 

You mentiond the ssdt files, are these important to edit as well? Does dsdtse app extract ssdt files?

Link to comment
Share on other sites

Yes, clic on "Select..." button and choice table you want...

 

Micky

 

Thanks Micky, if I will find any HDEF instances should I delete them from ssdt?

However I am confused, does the ssdt definitions are contained within the dsdt? Im asking since I only have dsdt.aml in the Extra folder, so I dont know if the ssdt will affect?

Link to comment
Share on other sites

Has anyone patch AppleHDA for codec IDT 92HD75B2X5 ? :worried_anim:

I do not know, but if you want the device id of the codec is much clearer

 

Micky

 

Thanks Micky, if I will find any HDEF instances should I delete them from ssdt?

However I am confused, does the ssdt definitions are contained within the dsdt? Im asking since I only have dsdt.aml in the Extra folder, so I dont know if the ssdt will affect?

If you find HDEF on a SSDT table, you can move on dsdt, or patching the SSDT table and put it in Extra. Of course it could be that you do not have HDEF in any place (And you can manually add), but this was very interesting to know. Many real MacBook, have audio defined inside SSDT tables.

 

Micky

Link to comment
Share on other sites

Hey guys,

first of all thanks for all your efforts

I have IDT 92HD87B2/4 and I am close to patching my AppleHDA but there are few things I want to know about.

These two ebtries:

00A71CF0 00A71D00 00A71EF0 00A71F40

00F71C50 00F71D00 00F71EF0 00F71F40

 

Am I safe to remove them? what are these actually?

 

Except those, I am about to finish these are the final verbs. If anyone please tell me If I'm right

 

[10 0x0A] 00A71CF0 00A71D00 00A71EF0 00A71F40 []

 

[11 0x0B] 00B71C10 00B71D10 00B71E21 00B71F02 [HP Out at Ext Front]

 

[12 0x0C] 00C71C20 00C71D10 00C71EA1 00C71F02 [Mic at Ext Front]

 

[13 0x0D] 00D71C40 00D71D01 00D71E17 00D71F90 [speaker at Int N/A]

 

[15 0x0F] 00F71C50 00F71D00 00F71EF0 00F71F40 []

 

[17 0x11] 01171C30 01171D01 01171EA0 01171F90 [Mic at Int Top]

AppleHDA.zip

Link to comment
Share on other sites

[10 0x0A] 00A71CF0 00A71D00 00A71EF0 00A71F40 []

[15 0x0F] 00F71C50 00F71D00 00F71EF0 00F71F40 []

 

The verbs with F40 are disabled. Don't worry about them.

You can disable the external microphone too -- if you don't use it:

 

[12 0x0C] 00C71C20 00C71D10 00C71EA1 00C71F40 [Mic at Ext Front]

 

I have the same codec.

111d76d9.zip

Link to comment
Share on other sites

 Share

×
×
  • Create New...