Jump to content
artur-pt

How to patch AppleHDA

Recommended Posts

hello


if u gonna use applehda.. no sense use 2 audio kext...


make a copy of voodoohda u are using.. and then delete


good hack

 


Hello.But I delete my VoodooHDA and copy AppleHAD in my S/L/E.I work premission and repair disk,and copy DSDT on my Extra folder

,but after restart nothing no sound. :(

Give me some suggestion and thank you.

Mobo: GA-Z90 M Gaming CPU: i9 9900K RAM: 16GB Kingstone NVMe: Samsung 970 250GB SanDisk SSD: 500GB

Link to comment
Share on other sites

Thi is my org.chameleon.boot.plist

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>DSDT</key>
<string>/Extra/DSDT.aml</string>
<key>GenerateCStates</key>
<string>Yes</string>
<key>GeneratePStates</key>
<string>Yes</string>
<key>Graphics Mode</key>
<string>1920x1080x32</string>
<key>Kernel</key>
<string>mach_kernel</string>
<key>Kernel Flags</key>
<string>darkwake=0</string>
<key>Legacy Logo</key>
<string>Yes</string>
<key>SMBIOS</key>
<string>/Extra/smbios.plist</string>
<key>SystemType</key>
<string>1</string>
<key>IGPEnabler</key>
<string>Yes</key>
<key>IGPpltformID</key>
<string>0166000A</string>
<key>Timeout</key>
<string>2</string>
<key>USBBusFix</key>
<string>Yes</string>
<key>UseKernelCache</key>
<string>Yes</string>
<key>device-properties</key>
<string>ee0200000100000001000000e20200001000000002010c00d041030a000000000101060000010101060000007fff04001e00000072006f006d002d007200650076006900730069006f006e0000001300000037302e30382e41412e30302e47300022000000400030002c006400650076006900630065005f00740079007000650000000c000000646973706c617900100000004e00560043004100500000001800000004000000000003000c0000000000000a0000000022000000400030002c0064006900730070006c00610079002d006300660067000000080000000301030014000000400030002c006e0061006d0065000000130000004e5644412c446973706c61792d4100100000006d006f00640065006c000000130000004765466f72636520475420363330002e000000400030002c004100410050004c002c0062006f006f0074002d0064006900730070006c0061007900000008000000010000000e0000004e00560050004d000000200000000100000000000000000000000000000000000000000000000000000014000000400031002c006e0061006d0065000000130000004e5644412c446973706c61792d4200220000005600520041004d002c0074006f00740061006c00730069007a0065000000080000000000004020000000400031002c0063006f006d00700061007400690062006c00650000000f0000004e5644412c4e564d61630020000000400030002c0063006f006d00700061007400690062006c00650000000f0000004e5644412c4e564d61630022000000400031002c006400650076006900630065005f00740079007000650000000c000000646973706c6179001c0000006400650076006900630065005f0074007900700065000000100000004e5644412c506172656e740022000000400031002c0064006900730070006c00610079002d00630066006700000008000000ffff0001220000004100410050004c002c0073006c006f0074002d006e0061006d00650000000a000000536c6f742d31</string>
</dict>
</plist>

Mobo: GA-Z90 M Gaming CPU: i9 9900K RAM: 16GB Kingstone NVMe: Samsung 970 250GB SanDisk SSD: 500GB

Link to comment
Share on other sites

Hi Mirone,


unfortunately no devices detected with new kext, I've tried with "layout-id" 0x0C and 0x01.


--EDIT--


I've tried once again first kext (AppleHDA-ALC269.zip) you've uploaded and output is OK, but Mic is strange thing, I can see under Audio Input settings that record level bar is showing activity but when I try record something (Audacity or Skype test call) nothing is recorded (at least voice, when I'm tapping with myfinger the chasis then I can hear it, but it's very quiet and with noise).

WIll you have some time to check or give me some advice what can I check myself (at least I'll try to play with it but need some advice where to search for)? I see it like that: kext is loaded, output is working so binary patching is OK, and output is ok, but what setting/files can I play to get input from microphone recorded.


Thanks in advance.


--

best regards

fimngerr

Link to comment
Share on other sites

@ fingerr

@ crusher

This guide cover how to make modifications in PathMaps

and Pinconfigs, I already did trablho hard for you these

make changes for themselves. fingerr use the previous kext and make changes.

I'm sorry I'm busy dealing with other issues.

btn_donate_SM.gif
Link to comment
Share on other sites

@ fingerr

@ crusher

This guide cover how to make modifications in PathMaps

and Pinconfigs, I already did trablho hard for you these

make changes for themselves. fingerr use the previous kext and make changes.

I'm sorry I'm busy dealing with other issues.

Big thanks for your help and time! I'll try to find the way to get the mic working.


Thanks to you I have working output and devices are show so I have good base.


--EDIT--

during boot log says:

03.10.2013 23:04:21,000 kernel[0]: Sound assertion - Command/Response TIMED OUT and ( kRequestStateMatch == fCodecRequest->state = 2 ), fCodecRequest->command->codec: 0xffffff800ef64500, fCodecRequest->command->verb: 0x3017FF00, fPoweredDown: 0

can't tell if its important

--

best regards

fingerr

Link to comment
Share on other sites

Hi, artur-pt:

I am trying my best to modify the Original AppleHDA.kext to drive the IDT 92HD90BXX(111d76e7) from Dell Latitude E6320, and below is some output from me, unfortunately, I still couldn't make it happen, so maybe I need your guys help~~~


Part 1. Codec ConfigData from Codec_Dump.txt, and modify info.plist file in AppleHDA.kext\Plugin (Codec_Dump.txt pls refer to attached file)

codec_dump.txt.zip

Codec: IDT 92HD90BXX
Address: 0
Vendor Id: 0x111d76e7
Normal Hex: 11 1d 76 e7
Decimal: 287143655
Hex Byte Flipped: e7 76 1d 11

 

 

a. Original Codec ConfigData
00A71C20 00A71D10 00A71EA1 00A71F03
00B71C1f 00B71D10 00B71E21 00B71F03
00C71CF0 00C71D00 00C71E00 00C71F40
00D71C10 00D71D01 00D71E17 00D71F90
00E71C50 00E71D10 00E71E01 00E71F23
00F71C2e 00F71D10 00F71EA1 00F71F23
01071CF3 01071D00 01071E00 01071F40
01171CF2 01171D00 01171E00 01171F40
01F71CF0 01F71D00 01F71E00 01F71F40
02071CF0 02071D00 02071E00 02071F40
b. Verb Data which Corrected by me
00A71C20 00A71D10 00A71EA1 00A71F03
00B71C10 00B71D10 00B71E21 00B71F03
00C71CF0 00C71D00 00C71E00 00C71F40
00D71C10 00D71D01 00D71E17 00D71F90
00E71C50 00E71D10 00E71E01 00E71F23
00F71C20 00F71D11 00F71EA0 00F71F20
01071CF3 01071D00 01071E00 01071F40
01171CF2 01171D00 01171E00 01171F40
01F71CF0 01F71D00 01F71E00 01F71F40
02071CF0 02071D00 02071E00 02071F40 00D70C02
Comments: I modified the Verb Data according to http://www.insanelymac.com/forum/topic/283754-patched-applehdakext-for-codecs-idt-92hd81b1x5-92hd91bxx-and-92hd87b24/, thanks Micky1979 

 

Then, I modified the AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext\info.plist as following steps:(Edit with Plist Editor Pro)

a. Change "CodecID" to 287143655 in decimal(111d76e7 in hex)

b. copy above Verb Data into "ConfigData" area.(164 bytes)

c. Change "Function Group" as "1"

d. Change "Layout ID" as "12"(Same with DSDT).


file info.plist, download link: https://dl.dropboxusercontent.com/u/6897343/Shared/Info.plist

(sorry, i couldn't upload file to this thread. so I use a dropbox link)



Part2. Patch the AppleHDA Binary file in AppleHDA.kext/Contents/MacOS.

I used bcc9's Script to patch the AppleHDA Binary file.

I modified the script file "patch-hda-codecs.pl", added the 111d76e7, and to replace the 11d4198b.

{ name => 'IDT 76e7', #aka 92HD90BXX
target_id => 0x111d76e7,
patch_id => 0x11d4198b #ADI 1984B
},
Comments: thanks bcc9's great effort. 

file Patched AppleHDA Binary file, download link:

https://dl.dropboxusercontent.com/u/6897343/Shared/AppleHDA

(sorry, i couldn't upload file to this thread. so I use a dropbox link)



Part3. Modified Layout12.xml.

I use zlib.pl (thanks RevoGirl R.I.P) to decompress the zlib file to xml, after modified, compress back.


a. Change "CodecID" to 287143655 in decimal(111d76e7 in hex)

b. Inputs Outputs

0: LineIn 0:HeadPhone

1: Mic 1:IntSpeaker

c. Change "PathMapID" to "1".



file modified Layout12.xml file, download link:

https://dl.dropboxusercontent.com/u/6897343/Shared/layout12.xml

(sorry, i couldn't upload file to this thread. so I use a dropbox link)



Part4. Calculate the PathMaps, and modify the platforms.xml.

Below is my PathMaps for Inputs and Outputs.

a. For Outputs (Pin Complex --> Audio Output)
   IntSpeaker:
     Hex:   0x0d --> 0x13
     Decimal: 13 --> 19
   HeadPhone:
     Hex:   0x0b --> 0x14
     Decimal: 11 --> 20
b. For Inputs (Pin Complex --> Audio Selector/Mixer --> Audio Input)
   Int Mic:
     Hex:   0x0f --> 0x17 --> 0x15
     Decimal: 15 --> 23 --> 21
   Ext Mic(LineIn):
     Hex:   0x0a --> 0x18 --> 0x16
     Decimal: 10 --> 24 --> 22 

then, I put those into platforms.xml file, and compress it, drop back.



file modified platforms.xml file, download link:

https://dl.dropboxusercontent.com/u/6897343/Shared/Platforms.xml

(sorry, i couldn't upload file to this thread. so I use a dropbox link)



Part5. Modify DSDT to add the Method function in Device (HDEF).

I set the layout ID 0x0c, 0x00, 0x00, 0x00



file AppleHDA.kext file, download link:

https://dl.dropboxusercontent.com/u/6897343/Shared/AppleHDA.kext.zip

(sorry, i couldn't upload file to this thread. so I use a dropbox link)



After done above, I drop the modified AppleHDA.kext to S\L\E, and repair the permission, then rebuild the kernelkeche.....reboot, but unfortunately, it didn't work at all.



so, Could you help to solve it? thanks, appreciate for your effort. :-)

Link to comment
Share on other sites

@telanx

if you use the flags npci=0x2000/3000

delete them and restart this flag disables the audio in 10.8.5.

 

Dear Mirone:

You are right, I am using the flags npci=0x2000 in clover config.plist.

I have already to del this flag, and reboot, but it is still not working.


but I have a concern on my clover boot loader, there is some problem on config.plist, so, I am asking another guy who has the same audio codec, and use chameleon to boot OSX, after he tried this kext, I will let you know the result.


by the way, is there any other suggestions besides deleting the flags.? any other reason to prevent the kext working?


ps:I am using the OSX 10.8.5(12F45), with Clover Ver. 1958.(UEFI boot)

Link to comment
Share on other sites

@telanx

I just think its weird codec

shows 111d76e in codec_dump

where did you get 111d76e7?

 

Codec: IDT 92HD90BXX
Address: 0
Vendor Id: 0x111d76e7

 

from codec_dump.txt, it said 111d76e7, and I checked the codec ID in Windows7, it also said the codec ID is 111d76e7.


I attached two file, one is from my codec(Dell E6320)codec_dump-E6320.txt.zip, and the other is from the other guy(Dell E6420)Codec-E6420.txt.zip, this two laptop used the same chipset intel QM67, and the same Audio codec IDT 92HD90BXX(111d76e7).


for your reference.

Link to comment
Share on other sites

this codec is really wired, currently, I am using this kext for driving my audio card instead of using a VoodooHDA.

Sorry, the file is large than 1M, so i couldn't upload, you can download it from this link [url]https://dl.dropboxusercontent.com/u/6897343/Shared/111d76e7%20Driver.zip[/url]

and I checked the configdata, layout, pathmaps from attached kext, and I tried to add those values into AppleHDA.kext, because those values were proved to be work for my audio card in attached kexts. but unfortunately, it doesn't work at all either....


just for your reference.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.





×
  • Create New...