Jump to content
vit9696

AppleALC — dynamic AppleHDA patching

4,367 posts in this topic

Recommended Posts

7 hours ago, Andres ZeroCross said:


Strange problem,, maybe should ask to @MacPeet @insanelyDeepak and others

 

@najeeb_anwer
Where is the problem?
Codec_Dump of the computer?

Which computer? Name? No signature completed!
Inject LayoutID with Clover or with patched DSDT?
You work with HighSierra?
You work with original AppleHDA and AppleALC + Lilu?
Delete all kext-to-patch entries for AppleHDA in Clover!
Dummy.kext or realtekALC.kext are not in the system? Neither in Clover, nor in L/E or S/L/E? If yes, then delete!
With HighSierra try also older version AppleALC1.2.7!
With older computers and new AppleALC for Mojave there are some problems with the Inject.

Edited by MacPeet

Share this post


Link to post
Share on other sites
Advertisement
3 hours ago, MacPeet said:

 

@najeeb_anwer
Where is the problem?
Codec_Dump of the computer?

Which computer? Name? No signature completed!
Inject LayoutID with Clover or with patched DSDT?
You work with HighSierra?
You work with original AppleHDA and AppleALC + Lilu?
Delete all kext-to-patch entries for AppleHDA in Clover!
Dummy.kext or realtekALC.kext are not in the system? Neither in Clover, nor in L/E or S/L/E? If yes, then delete!
With HighSierra try also older version AppleALC1.2.7!
With older computers and new AppleALC for Mojave there are some problems with the Inject.

 

My laptop details are now in the signature.

 

Problem description:

I have macOS High Sierra (17G3025). I have previously been using a modified AppleHDA.kext (for layout-id 12) with AppleHDA patches in config.plist and an audio kext called HDAIDT.kext, which worked. All of this is attached to this post in file called "Dell Studio XPS M1340.zip".

I want to use Lilu.kext & AppleALC.kext. The codec (IDT 92HD73C1) appears to be supported with layout-id 19.

Originally, the problem was that the alc-layout-id was not being injected by any of the methods (config.plist Devices/Audio/Inject or Devices/Properties or by using alcid=19 at boot). @Andres ZeroCross fixed this problem by providing a modified DSDT.aml that properly injected the properties in HDEF.

The problem now is that the audio works only occasionally, but fails on reboot.

When it works, it looks like this:

image.thumb.png.b6b179c9fc3d306a1c45d46d622110e3.png

When it does not work, there is a NULL Codec present in the DPCIManager audio list and there is an empty "IOHDACodecDevice@8,1" listed in IOReg/HDEF, and AppleHDA.kext stops running after a minute. It looks like this:

image.thumb.png.b30016cfb7cf25a622cc0514d6ed44fc.png

 

Codec_Dump of the computer?

The entire contents of Linux /proc/asound is attached.

 

Inject LayoutID with Clover or with patched DSDT?

Patched DSDT.

 

You work with HighSierra?

Yes, macOS High Sierra (17G3025).

 

You work with original AppleHDA and AppleALC + Lilu?

Yes, original AppleHDA. The AppleALC I am currently using is provided by @Andres ZeroCross using layout-id 21 but the problem existed with original AppleALC and using layout-id 19.

 

Delete all kext-to-patch entries for AppleHDA in Clover!

Yes, from the beginning.

 

Dummy.kext or realtekALC.kext are not in the system? Neither in Clover, nor in L/E or S/L/E? If yes, then delete!

Yes, not present.

 

Please let me know if I need to send any more info. Thanks.

 

 

Dell Studio XPS M1340.zip

asound.zip

Edited by najeeb_anwer

Share this post


Link to post
Share on other sites
9 minutes ago, insanelyDeepak said:

@Andres ZeroCross and @najeeb_anwer i would prefer patched applehda instead if you have lots of issue in start , then you can move to appleALC , if patched appleHDA works then is no chance appleALC couldn't work for you

 

Please see my previous post. I have had working audio with patched AppleHDA and HDAIDT.kext

Share this post


Link to post
Share on other sites
9 hours ago, najeeb_anwer said:

 

Please see my previous post. I have had working audio with patched AppleHDA and HDAIDT.kext

can you use it again for couple of days to see same issue you are having with it ?? and what about using resetHDA in clover config.plist ?? 

 

Edited by insanelyDeepak

Share this post


Link to post
Share on other sites
2 hours ago, insanelyDeepak said:

can you use it again for couple of days to see same issue you are having with it ?? and what about using resetHDA in clover config.plist ?? 

 

Yes, I have gone back to using my original DSDT.aml (without the HDEF _DSM patch to inject alc-layout-id), the modified AppleHDA.kext (for layout-id 12), the AppleHDA patches in config.plist and HDAIDT.kext.

This configuration works, consistently, across multiple reboots, without problems. I have been using this since Mac OS X 10.7.

 

I think the problem is the NULL Codec that is present in HDEF which causes AppleHDA.kext to exit. I tested by removing all the related kexts (Lilu, AppleALC and HDAIDT) and the DPCIManager still shows 3 codecs listed ("IDT 92HD73C1", "NULL Codec", "NVidia MCP7A HDMI").

I don't claim to understand exactly what HDAIDT.kext does, but part of it appears to be to patch AppleHDAController.kext to remove the additional codecs. When I use HDAIDT.kext, the only codec that shows up in DPCIManager is the "IDT 92HD73C1".

 

I have not tried using resetHDA in config.plist. It is not needed for HDAIDT.kext to work properly.

I suppose I can try it when I reinstall AppleALC the next time. Hopefully, the next attempt will be when you experts have a solution to the problem. :)

 

I have attached my current patched DSDT.aml so you can check for clues about what might be causing the "NULL Codec"

DSDT.aml

Edited by najeeb_anwer
Attached DSDT.aml

Share this post


Link to post
Share on other sites
25 minutes ago, najeeb_anwer said:

Yes, I have gone back to using my original DSDT.aml (without the HDEF _DSM patch to inject alc-layout-id), the modified AppleHDA.kext (for layout-id 12), the AppleHDA patches in config.plist and HDAIDT.kext.

This configuration works, consistently, across multiple reboots, without problems. I have been using this since Mac OS X 10.7.

This is what the system shows when I am using HDAIDT.kext:

 

image.thumb.png.ae130b77090134af10c44197d0599436.png

 

I have attached the IOReg for this.

Najeeb’s MacBook Pro.zip

Share this post


Link to post
Share on other sites

@najeeb_anwer

Kext Inject in the clover on "YES", not "Detect"?

 

Please try rollback AppleHDA from 10.13.3 with AppleALC + Lilu!
Install via KextUtility2.6.6! Secure Real ApplaHDA before!
Since 10.13.4 the AppleHDA has changed massively. My old system with codec AD1984A works since then only with rollback + AppleALC + Lilu.
Please test this!

AppleHDA.kext_rollback10.13.3.zip

Edited by MacPeet

Share this post


Link to post
Share on other sites
21 hours ago, najeeb_anwer said:

Yes, I have gone back to using my original DSDT.aml (without the HDEF _DSM patch to inject alc-layout-id), the modified AppleHDA.kext (for layout-id 12), the AppleHDA patches in config.plist and HDAIDT.kext.

This configuration works, consistently, across multiple reboots, without problems. I have been using this since Mac OS X 10.7.

 

I think the problem is the NULL Codec that is present in HDEF which causes AppleHDA.kext to exit. I tested by removing all the related kexts (Lilu, AppleALC and HDAIDT) and the DPCIManager still shows 3 codecs listed ("IDT 92HD73C1", "NULL Codec", "NVidia MCP7A HDMI").

I don't claim to understand exactly what HDAIDT.kext does, but part of it appears to be to patch AppleHDAController.kext to remove the additional codecs. When I use HDAIDT.kext, the only codec that shows up in DPCIManager is the "IDT 92HD73C1".

 

I have not tried using resetHDA in config.plist. It is not needed for HDAIDT.kext to work properly.

I suppose I can try it when I reinstall AppleALC the next time. Hopefully, the next attempt will be when you experts have a solution to the problem. :)

 

I have attached my current patched DSDT.aml so you can check for clues about what might be causing the "NULL Codec"

DSDT.aml

use darwindumper or in windows use AIDA64 send me reports 

 

 

Quote

I don't claim to understand exactly what HDAIDT.kext does, but part of it appears to be to patch AppleHDAController.kext to remove the additional codecs. When I use HDAIDT.kext, the only codec that shows up in DPCIManager is the "IDT 92HD73C1".

 

i dont think HDAIDT.kext doing any additional patches to AppleHDAController.kext except to inject file and configuration 

 

as i said earlier this could be possible your system is not in AppleHDAController.kext supported list , thats why partially working 

 

why not try @MacPeet rollback kext ?

Edited by insanelyDeepak

Share this post


Link to post
Share on other sites
2 hours ago, insanelyDeepak said:

i dont think HDAIDT.kext doing any additional patches to AppleHDAController.kext except to inject file and configuration

 

You're right; I removed HDAIDT.kext completely and audio still works consistently. Although now I do see both the IDT and NVidia codecs listed.

 

I think the problem with the NULL Codec was due to some problem in the DSDT I was using. I have gone back to using the DSDT that I had before I started trying to use AppleALC.

 

image.png.7530ef2a90a30a8b937f9385810667d8.png

 

image.png.51929d05ccab3e8299d88ff907e006f0.png

The only changes I have at this point is the modified layout12.xml.zlib and Platforms.xml.zlib files in AppleHDA/Contents/Resources and the 2 AppleHDA patches in config.plist.

 

I can't inject the layout-id because of the existing _DSM method for HDEF in DSDT.aml and I don't want to touch the DSDT in case it gets screwed up again.

 

Can you please add my layout-id=12 to codec IDT92HD73C1X5 in AppleALC.kext and

send me a new one to test? The relevant info is in the attached file.

 

Dell Studio XPS M1340.zip

Share this post


Link to post
Share on other sites
13 hours ago, MacPeet said:

Please try rollback AppleHDA from 10.13.3 with AppleALC + Lilu!

Install via KextUtility2.6.6! Secure Real ApplaHDA before!
Since 10.13.4 the AppleHDA has changed massively. My old system with codec AD1984A works since then only with rollback + AppleALC + Lilu.
Please test this!

AppleHDA.kext_rollback10.13.3.zip

 

I will try this in case the solution with layout-id=12 in AppleALC that I mentioned above does not work. Thanks.

Share this post


Link to post
Share on other sites
 
You're right; I removed HDAIDT.kext completely and audio still works consistently. Although now I do see both the IDT and NVidia codecs listed.
 
I think the problem with the NULL Codec was due to some problem in the DSDT I was using. I have gone back to using the DSDT that I had before I started trying to use AppleALC.
 
image.png.7530ef2a90a30a8b937f9385810667d8.png
 
image.png.51929d05ccab3e8299d88ff907e006f0.png
The only changes I have at this point is the modified layout12.xml.zlib and Platforms.xml.zlib files in AppleHDA/Contents/Resources and the 2 AppleHDA patches in config.plist.
 
I can't inject the layout-id because of the existing _DSM method for HDEF in DSDT.aml and I don't want to touch the DSDT in case it gets screwed up again.
 
Can you please add my layout-id=12 to codec IDT92HD73C1X5 in AppleALC.kext and
send me a new one to test? The relevant info is in the attached file.
 
Dell Studio XPS M1340.zip
It doesn't make sense, your IDT kext is contain pinconfig for your codec. How can audio work??? Your audio shouldn't work without properly pin config for your codec.

Sent from my Mi Note 2 using Tapatalk

Share this post


Link to post
Share on other sites
14 minutes ago, Andres ZeroCross said:

It doesn't make sense, your IDT kext is contain pinconfig for your codec. How can audio work??? Your audio shouldn't work without properly pin config for your codec.

Sent from my Mi Note 2 using Tapatalk
 

 

I am as surprised as you are. But here are the kexts I have in CLOVER:

image.png.81f87c3a734196f3ae075f066b9cd749.png

And this is the working audio. I have rebooted several times and it works every time.

image.png.33daf67a8892f55bed5d0a8838f2b2de.png

 

And this is the PinConfigurations in IODEF:

image.thumb.png.f658c2f1e3f524279fcb99daa7d36ab3.png

Edited by najeeb_anwer

Share this post


Link to post
Share on other sites

Cannot enable sound on new notebook Acer swift 3 sf314-54.

Now works everything except sound. I`ve tried all different patches, pinconfigs, ssdt-256.alc+codeccommander - nothing. Even VoodooHDA not enables this codec. 

I`ve taken dump from ubuntu, pls look in dsdt - I think there are too many HDAS sections.

DSDT.aml

codec#0.txt

codec#2.txt

verbitdebug.txt

Share this post


Link to post
Share on other sites
1 hour ago, najeeb_anwer said:

 

You're right; I removed HDAIDT.kext completely and audio still works consistently. Although now I do see both the IDT and NVidia codecs listed.

 

I think the problem with the NULL Codec was due to some problem in the DSDT I was using. I have gone back to using the DSDT that I had before I started trying to use AppleALC.

 

image.png.7530ef2a90a30a8b937f9385810667d8.png

 

image.png.51929d05ccab3e8299d88ff907e006f0.png

The only changes I have at this point is the modified layout12.xml.zlib and Platforms.xml.zlib files in AppleHDA/Contents/Resources and the 2 AppleHDA patches in config.plist.

 

I can't inject the layout-id because of the existing _DSM method for HDEF in DSDT.aml and I don't want to touch the DSDT in case it gets screwed up again.

 

Can you please add my layout-id=12 to codec IDT92HD73C1X5 in AppleALC.kext and

send me a new one to test? The relevant info is in the attached file.

 

Dell Studio XPS M1340.zip

 

Quote

I can't inject the layout-id because of the existing _DSM method for HDEF in DSDT.aml and I don't want to touch the DSDT in case it gets screwed up again.

you can use clover if you want to stay out of DSDT stuff

 

Quote

 

Can you please add my layout-id=12 to codec IDT92HD73C1X5 in AppleALC.kext and

send me a new one to test? The relevant info is in the attached file.

 

 here AppleALC.kext V1.zip AppleALC.kext V2.zip

Edited by insanelyDeepak

Share this post


Link to post
Share on other sites
28 minutes ago, Andres ZeroCross said:

It doesn't make sense, your IDT kext is contain pinconfig for your codec. How can audio work??? Your audio shouldn't work without properly pin config for your codec.

Sent from my Mi Note 2 using Tapatalk
 

i remember few IDT codec don't need proper patch only binpatch is enough, sometime few nodes to patch only 

Share this post


Link to post
Share on other sites
1 minute ago, insanelyDeepak said:

i remember few IDT codec don't need proper patch only binpatch is enough, sometime few nodes to patch only 

Ah nice info,, but it will be troublesome to make AppleALC. Did we still need to add pin config for this IDT if the info is right?

Share this post


Link to post
Share on other sites
5 minutes ago, insanelyDeepak said:

 

you can use clover if you want to stay out of DSDT stuff

 

 here AppleALC.kext V1.zip AppleALC.kext V2.zip

 

Thanks. I have tried injecting layout-id using Clover with Devices/Audio/Inject and using Devices/Properties - both did not work, layout-id remained 12 in ioreg.

 

Why two versions of AppleALC? Which one should I use?

Share this post


Link to post
Share on other sites
8 minutes ago, najeeb_anwer said:

 

Thanks. I have tried injecting layout-id using Clover with Devices/Audio/Inject and using Devices/Properties - both did not work, layout-id remained 12 in ioreg.

 

Why two versions of AppleALC? Which one should I use?

both have different binPatch you must try both , you don't need to worry this appleALC has layout 12 

 

9 minutes ago, Andres ZeroCross said:

Ah nice info,, but it will be troublesome to make AppleALC. Did we still need to add pin config for this IDT if the info is right?

yeah that's very few codecs so i don't think appleALC has to worry about 

 

Quote

Did we still need to add pin config for this IDT if the info is right?

it depends if just binpatch doing trick not required just clover is better here and if still few nodes needs to patch then yes AppleALC is good choice though 

 

 

 

Share this post


Link to post
Share on other sites
16 minutes ago, insanelyDeepak said:

both have different binPatch you must try both , you don't need to worry this appleALC has layout 12 

 

I tried both and I don't have audio with either one. Also, I don't see alc-layout-id in IOREG/HDEF.

 

image.thumb.png.b0c07ee5c341947702350abfbd52114a.png

 

I did the following:

1. Restored original AppleHDA.kext in S/L/E.

2. Put Lilu.kext and your AppleALC.kext in CLOVER/kexts/Other

3. Removed AppleHDA patches from config.plist.

 

1 hour ago, Andres ZeroCross said:

It doesn't make sense, your IDT kext is contain pinconfig for your codec. How can audio work??? Your audio shouldn't work without properly pin config for your codec.

Sent from my Mi Note 2 using Tapatalk
 

 

Is it possible that even though I removed HDAIDT.kext from CLOVER/kexts/Other, it was still in the kextcache and affecting the system?

Share this post


Link to post
Share on other sites
13 minutes ago, insanelyDeepak said:

 

put it again and remove AppleALC  and see what happens 

 

Okay, I put back the AppleHDA patches in config.plist. Still no audio, but this time the PinConfigurations are almost identical to what I had with working audio.

 

image.png.b1397eb2978ac1658e7e1b84d7a7ed33.png

Share this post


Link to post
Share on other sites
4 minutes ago, najeeb_anwer said:

 

Okay, I put back the AppleHDA patches in config.plist. Still no audio, but this time the PinConfigurations are almost identical to what I had with working audio.

 

It's almost 3am here. I'm going to sleep. Will follow up tomorrow. Thanks for the help.

Share this post


Link to post
Share on other sites
 
Okay, I put back the AppleHDA patches in config.plist. Still no audio, but this time the PinConfigurations are almost identical to what I had with working audio.
 
image.png.b1397eb2978ac1658e7e1b84d7a7ed33.png
Ofcourse there is no audio. If you put HDAIDT.kext then you must put modified Layout12.xml.zlib and modified platform.xml.zlib to applehda.kext/content/resource to get audio working

Sent from my Mi Note 2 using Tapatalk

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   1 member

×