Jump to content

[Closed] AppleHDA patching requests


plsh2me

Recommended Posts

Hi,EMlyDinEsH, I've been working on following this guide for about 5 hours now.  I've managed to get through all the steps up to editing the XML.  I got stuck when you mentioned the attached zlib.pl file since I can't find any attachments to your post!  (Am I missing it?)  I was able to find it on one of your linked pages so i could keep going.  Now I am trying to follow your instructions for editing my own XML file.  But I'm not sure what to do with that pile of verbs I have created in Part 3.  Your guide doesn't mention where they go!  I thought maybe I would be able to figure out where they go by looking at the file you describe having produced but again, I can't find that attachment either.  Hopefully you can fill in the missing pieces for me so I can wrap up the AppleHDA patching.  Thanks! 

Link to comment
Share on other sites

  • Replies 390
  • Created
  • Last Reply

Top Posters In This Topic

For anyone interested in all of the different layout files and what vendorID they correspond to, here's a crude mapping I created (pasting it inline instead of as an attachment so it is searchable:  (in a few cases, there are extra vendorIDs after the filename - apparently those files have multiple CodecIDs in them, and therefore multiple VendorID)

file = layout0.xml, VendorID = 10134206
1aec8800
10ec0885
10de0007
10ec0262
file = layout1.xml, VendorID = 10134206
file = layout10.xml, VendorID = 83847680
file = layout11.xml, VendorID = 10134206
file = layout12.xml, VendorID = 10ec0885
file = layout13.xml, VendorID = 10134206
file = layout16392.xml, VendorID = 10134206
10de0007
file = layout16394.xml, VendorID = 10ec0885
file = layout17.xml, VendorID = 10134206
file = layout18.xml, VendorID = 10134206
file = layout19.xml, VendorID = 10134206
file = layout2.xml, VendorID = 83847680
file = layout20.xml, VendorID = 83847682
file = layout21.xml, VendorID = 83847680
file = layout24.xml, VendorID = 10134206
file = layout27.xml, VendorID = 10134206
file = layout28.xml, VendorID = 10134206
file = layout29.xml, VendorID = 10134206
file = layout3.xml, VendorID = 10134206
file = layout31.xml, VendorID = 10134206
file = layout32.xml, VendorID = 10134206
file = layout33.xml, VendorID = 10134206
file = layout35.xml, VendorID = 10134206
file = layout36.xml, VendorID = 10ec0885
file = layout38.xml, VendorID = 10ec0885
file = layout39.xml, VendorID = 10134206
file = layout4.xml, VendorID = 83847680
file = layout40.xml, VendorID = 10134206
file = layout42.xml, VendorID = 10ec0885
file = layout44.xml, VendorID = 10ec0885
file = layout46.xml, VendorID = 10ec0885
file = layout48.xml, VendorID = 10ec0885
file = layout5.xml, VendorID = 10134206
file = layout50.xml, VendorID = 10ec0885
file = layout53.xml, VendorID = 10ec0885
file = layout56.xml, VendorID = 10ec0885
file = layout58.xml, VendorID = 10ec0885
file = layout59.xml, VendorID = 10134206
file = layout60.xml, VendorID = 10ec0885
file = layout61.xml, VendorID = 10134206
file = layout62.xml, VendorID = 10ec0885
file = layout63.xml, VendorID = 10ec0885
file = layout64.xml, VendorID = 10ec0885
file = layout65.xml, VendorID = 10ec0885
file = layout66.xml, VendorID = 10ec0885
file = layout67.xml, VendorID = 10ec0885
10134206
1aec8800
file = layout69.xml, VendorID = 10ec0885
file = layout70.xml, VendorID = 10ec0885
file = layout71.xml, VendorID = 10134206
file = layout72.xml, VendorID = 10ec0885
file = layout73.xml, VendorID = 10ec0885
10134206
1aec8800
file = layout74.xml, VendorID = 10ec0885
file = layout75.xml, VendorID = 10134206
file = layout76.xml, VendorID = 10134206
file = layout77.xml, VendorID = 10134206
file = layout78.xml, VendorID = 10134206
file = layout79.xml, VendorID = 10134206
file = layout80.xml, VendorID = 10ec0885
file = layout81.xml, VendorID = 10134206
file = layout82.xml, VendorID = 10134206
file = layout83.xml, VendorID = 10134206
file = layout84.xml, VendorID = 10134206
file = layout85.xml, VendorID = 10134206
file = layout86.xml, VendorID = 10134206
file = layout88.xml, VendorID = 10134206
file = layout9.xml, VendorID = 10134206
file = layout90.xml, VendorID = 10134206
file = layout91.xml, VendorID = 10134206
file = layout92.xml, VendorID = 10134206
file = layout95.xml, VendorID = 15ad1975
file = layout98.xml, VendorID = 10134206
file = layout99.xml, VendorID = 10134206

To do this, I had to uncompress each of the xml files.  The OP makes mention of the zlib.pl file but it isn't attached to this post, so I'm adding it here:  RevoGirl's zlib.pl script: zlib.pl.zip

 

Also, for anyone interested, here's what I did to get this data:

First, uncompress each of the XML files:

for file in *zlib; do 
    base=$(echo $file | sed "s/.zlib//")
    perl /path/to/zlib.pl inflate $file > $base
done

Then get the CodecID and convert it to Hex:

for file in layout*xml; do 
    printf "file = %s, VendorID = " $file
    grep -A 2 CodecID $file | grep integer | sed 's/^.*\<integer\>//' | sed 's/\</integer\>//' | sed 's/ *\<\!.*\>$//' | xargs printf "%x\n"
done > vendorID.txt
  • Like 1
Link to comment
Share on other sites

Here's what I've come up with so far:  ktbos_codec.zip

 

The codec_dump file is exactly as described in this post.  And the codec_data file is following along the steps in the post. 

 

For me, things went pretty smoothly following the steps in Post 1 of this thread.  The paths in my codec_dump were not nearly as logical as in the example, though.  (for example, the line-in pin had the asterisk connection for the speaker main volume which can't be right)  So I needed to spend a little more time piecing together what would probably make the most sense. 

 

I'm using a Dell E6430 and the DSDT from Jake's guide.  Here's my lspci output line for the audio device:

00:1b.0 Audio device [0403]: Intel Corporation Panther Point High Definition Audio Controller [8086:1e20] (rev 04)

I do have audio working (after putting the AppleHDA kext directly in the S/L/E because the myHack one was causing kext errors and failing to load) but it's got some issues.  Primarily that the volume controls in the prefPane, in the menuBar, and the keyboard buttons don't stay in sync with each other.  And since the kext was from 10.8.2, I figured it might be time to run through the full set of steps and make a new 10.8.4 one that hopefully didn't have the control sync issue and maybe made better use of the volume range. 

 

Alternatively, if you have a suggestion for how to fix the sync issues and make other tweaks to improve the operation of the audio kext, I could start with the AppleHDA from Jake's guide and modify that.  (and/or DSDT modifications) 

 

Thanks! 

Link to comment
Share on other sites

Thank you ktbos, your list saved me lot of time

maybe i have the same issue with the applehda, at volume change the slider and sound jumps to full volume then it's work normally for a while

has your notebook stereo speaker ?, with headphones the same issue ?

thank's

hope that you understand this bad english

Link to comment
Share on other sites

On 6/10/2013 at 1:28 PM, kientux said:

Can someone help me patch my ALC270? I try 3 times but no luck, still No output/input device found. Used AppleHDA from 10.8.3 retail. It seems that I did it wrong somewhere in Platforms.xml. Here's my codec dump, thank you so much.

I've patched AppleHDA based on your codec dump, so try the attached patched file and let me know. Remember, you need to patch dsdt for HDEF with layout ID 28 as i've explained in Binary patch thread. And try to analyze my patched xml files and the codec verbs i've used inside plist file for understanding the differences, so you can do it yourself in future.

AppleHDA_ALC270_Patched.zip

  • Like 1
Link to comment
Share on other sites

Thanks.  And for what it's worth, I believe Jake said he's having the same issues with audio on his E6430 so hopefully more than just me will benefit from some improvement in the HDA. 

 

You're welcome. I'll give a try on this so can you send me the AppleHDA which is working for you? 

Link to comment
Share on other sites

It's Jake's from his Guide.  Which is one I believe you patched for him.  Presumably a 10.8.2 one.  (Note that it didn't work in myHack.kext, though.  I had to move it directly to S/L/E to get it to work.) 

 

And by "working", I get sound, but the controls don't sync and the volume scale isn't right.  I don't know if these issues are controlled from the layout, from the binary, in the DSDT, a combination, or somewhere else.  So I figured I would follow your guide from start to finish and find out where I ended up - see how my HDA behaved differently from the one in the guide.  And since I'd be starting with a 10.8.4 Apple original, that seemed like it stood a better chance of working well. 

 

Also, I'm going to be using the laptop docked in the E/Port Plus with USB 3 so the ability to get audio through the dock will be important too. 

 

So, let me know what you think - is the HDA I have as good as that will get and my issues need to be resolved in something other than the HDA?  Can the HDA patching be improved to fix my issues?  Is that patching something I should be able to do given the files I attached with some additional guidance or is it better left to a true expert? 

 

Finally, I described the audio issues and how I got audio working at all with the Guide's AppleHDA.kext in this post of the E6430 ML thread.

Link to comment
Share on other sites

Hi, EMlyDinEsH.

I remember you've once provided the IOAudioFamily.kext which solved the sound problem after waking from sleep. And since ML has upgraded to 10.8.5 and the IOAudioFamily.kext got updated for the first time since ML officially released. So I was curious if you could provide the latest "patched" version of IOAudioFamily.kext. In case you haven't upgraded to 10.8.5, here is the latest version of IOAudioFamily.

http://d.pr/f/7Rrt

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.

×
×
  • Create New...