Jump to content

AppleALC — dynamic AppleHDA patching


vit9696
5,371 posts in this topic

Recommended Posts

i know,so i dont now how to push this commit to applealc.but this applealc is perfect with no bug on my hp pavilion g4 laptop so i want to it can be commited to the applealc github.

 

Firs of all try all existing layouts (3, 11, 12, 20, 21). Build latest AppleALC and try them all. 

  • Like 1
Link to comment
Share on other sites

Firs of all try all existing layouts (3, 11, 12, 20, 21). Build latest AppleALC and try them all.

Hello vandroiy2012

I have test all layoutID and have the following results.

 

LayoutID=3 IntSpk have no sound

LayoutID=11 Int/Ext Mic with no power

LayoutID=12 All the Int/Ext Spk/Mic worked but the Int/Ext Mic can't change automatically.

LayoutID=20 ExtMic with no power

LayoutID=21 IntSpk have no sound

 

I have also test my files with LayoutID=12 and All the port worked perfectly and Int/Ext Mic can change automatically.

 

I guess it maybe the difference of the configdata,so I want this change can be committed to the AppleALC's github sourcecode.

 

Thanks.

 

 

从我的 iPhone 发送,使用 Tapatalk

Link to comment
Share on other sites

Hello All,

 

          I would like to get some help with getting my audio to work.

 

My codec is IDT 92HD91BXX.

I installed AppleALC in EFI\Kexts\Other and patched my DSDT for Audio Layout 12.

My internal Mic works as I can see the audio bar go up and down but my speaker audio does not work.

My computer is recognizing the audio as it shows internal speaker option. (see attached pics)

With Layout 12 internal mic, internal speakers are recognized but no sound output.

With Layout 3 system shows no Audio Hardware.

I have attached all files I have while attempting to get AppleHDA to work.

 

 

1. HP Envy 4 1110us / HM77

2. IDT 92HD91BXX
3. Tried Layout ID 12 and 3
4. Currently on OS X 10.12
5. Info.plist attached.

 

 

post-1217936-0-50788400-1480208763_thumb.png

post-1217936-0-59176000-1480208774_thumb.png

post-1217936-0-88019000-1480208787_thumb.png

post-1217936-0-96748700-1480208797_thumb.png

Info.plist.zip

IOREG.ioreg.zip

DSDT.aml.zip

Link to comment
Share on other sites

hmm. i thought this would be easy to do on my T460 for ALC293!? but something isn't happening. hope you can help me.

 

i modified:

 

PinConfig kext Info.plist with my verbs...

added ALC293 folder with my working layout28 and Platforms (from kext below) - i used the codec-info script and also tried modifying the ALC292 Info.plist as a template. 

built the kext and no go...

- removed any kext patches in clover config.plist

- on 10.12.2b3

 

 

my ioreg tree for HDEF

+-o Root  <class IORegistryEntry, id 0x100000100, retain 15>

  +-o MacBookPro11,1  <class IOPlatformExpertDevice, id 0x100000118, registered, matched, active, busy 0 (15152 ms), retain 47>

    +-o AppleACPIPlatformExpert  <class AppleACPIPlatformExpert, id 0x100000119, registered, matched, active, busy 0 (12001 ms), retain 54>

    | +-o PCI0@0  <class IOACPIPlatformDevice, id 0x100000151, registered, matched, active, busy 0 (11666 ms), retain 53>

    | | +-o AppleACPIPCI  <class AppleACPIPCI, id 0x100000207, registered, matched, active, busy 0 (11623 ms), retain 33>

    | |   +-o pci8086,1904@0  <class IOPCIDevice, id 0x10000021d, registered, matched, active, busy 0 (1 ms), retain 9>

    | |   +-o IGPU@2  <class IOPCIDevice, id 0x1000001b8, registered, matched, active, busy 0 (2252 ms), retain 35>

    | |   +-o XHC@14  <class IOPCIDevice, id 0x1000001e1, registered, matched, active, busy 0 (10926 ms), retain 13>

    | |   +-o HDEF@1F,3  <class IOPCIDevice, id 0x1000001f5, registered, matched, active, busy 0 (2576 ms), retain 11>

    | |   | +-o AppleHDAController@1F,3  <class AppleHDAController, id 0x10000030f, registered, matched, active, busy 0 (1728 ms), retain 9>

    | |   |   +-o IOHDACodecDevice@1F,3,0  <class IOHDACodecDevice, id 0x100000312, registered, matched, active, busy 0 (1728 ms), retain 7>

    | |   |     +-o IOHDACodecDriver  <class IOHDACodecDriver, id 0x10000032f, !registered, !matched, active, busy 0 (1329 ms), retain 5>

    | |   |       +-o IOHDACodecFunction@1F,3,0,1  <class IOHDACodecFunction, id 0x100000330, registered, matched, active, busy 0 (1329 ms), retain 8>

    | |   |         +-o AppleHDACodecGeneric  <class AppleHDACodecGeneric, id 0x10000033c, registered, matched, active, busy 0 (43 ms), retain 6>

    | |   |         | +-o AppleHDADriver  <class AppleHDADriver, id 0x10000036f, !registered, !matched, active, busy 0, retain 4>

    | |   |         +-o CodecCommander  <class CodecCommander, id 0x10000033d, registered, matched, active, busy 0 (0 ms), retain 6>

    | |   +-o SMBU@1F,4  <class IOPCIDevice, id 0x1000001de, registered, matched, active, busy 0 (1256 ms), retain 12>

 

kernel log snippet:

2016-11-27 12:48:37.534198-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ aslr/load slide is 0x<ptr>

2016-11-27 12:48:37.534199-0500  localhost kernel[0]: AppleALC: (DEBUG) util @ getOSData vendor-id has 8086 value

2016-11-27 12:48:37.534199-0500  localhost kernel[0]: AppleALC: (DEBUG) util @ getOSData device-id has 1916 value

2016-11-27 12:48:37.534200-0500  localhost kernel[0]: AppleALC: (DEBUG) util @ getOSData revision-id has 7 value

2016-11-27 12:48:37.534200-0500  localhost kernel[0]: AppleALC: (DEBUG) util @ getOSData AAPL,ig-platform-id has 19160000 value

2016-11-27 12:48:37.534201-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ AAPL,ig-platform-id 19160000 was found in controller at IGPU

2016-11-27 12:48:37.534201-0500  localhost kernel[0]: AppleALC: (DEBUG) ioutil @ failed to find HDAU

2016-11-27 12:48:37.534202-0500  localhost kernel[0]: AppleALC: (DEBUG) util @ getOSData vendor-id has 8086 value

2016-11-27 12:48:37.534202-0500  localhost kernel[0]: AppleALC: (DEBUG) util @ getOSData device-id has 10EC0293 value

2016-11-27 12:48:37.534203-0500  localhost kernel[0]: AppleALC: (DEBUG) util @ getOSData revision-id has 21 value

2016-11-27 12:48:37.534203-0500  localhost kernel[0]: AppleALC: (DEBUG) util @ getOSData layout-id has 1C value

2016-11-27 12:48:37.534204-0500  localhost kernel[0]: AppleALC: (DEBUG) util @ getOSData AAPL,ig-platform-id was not found

2016-11-27 12:48:37.534204-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ found 2u audio controllers

2016-11-27 12:48:37.534205-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ validating 0u controller 8086:1916:7

2016-11-27 12:48:37.534205-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 0u mod 8086:8D21

2016-11-27 12:48:37.534206-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 1u mod 8086:8D20

2016-11-27 12:48:37.534206-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 2u mod 8086:F04

2016-11-27 12:48:37.534207-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 3u mod 8086:24

2016-11-27 12:48:37.534207-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 4u mod 8086:C0C

2016-11-27 12:48:37.534208-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 5u mod 8086:8D20

2016-11-27 12:48:37.534208-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 6u mod 8086:412

2016-11-27 12:48:37.534209-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 7u mod 8086:1616

2016-11-27 12:48:37.534209-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 8u mod 8086:1612

2016-11-27 12:48:37.534210-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 9u mod 8086:191E

2016-11-27 12:48:37.534216-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to au mod 8086:1916

2016-11-27 12:48:37.534216-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ found mod for 0u controller

2016-11-27 12:48:37.534217-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ validating 1u controller 8086:10EC0293:21

2016-11-27 12:48:37.534217-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 0u mod 8086:8D21

2016-11-27 12:48:37.534218-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 1u mod 8086:8D20

2016-11-27 12:48:37.534218-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 2u mod 8086:F04

2016-11-27 12:48:37.534219-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 3u mod 8086:24

2016-11-27 12:48:37.534219-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 4u mod 8086:C0C

2016-11-27 12:48:37.534220-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 5u mod 8086:8D20

2016-11-27 12:48:37.534220-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 6u mod 8086:412

2016-11-27 12:48:37.534221-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 7u mod 8086:1616

2016-11-27 12:48:37.534221-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 8u mod 8086:1612

2016-11-27 12:48:37.534222-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to 9u mod 8086:191E

2016-11-27 12:48:37.534222-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to au mod 8086:1916

2016-11-27 12:48:37.534223-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to bu mod 8086:191B

2016-11-27 12:48:37.534223-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to cu mod 8086:1912

2016-11-27 12:48:37.534224-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to du mod 8086:166

2016-11-27 12:48:37.534224-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to eu mod 8086:166

2016-11-27 12:48:37.534225-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ comparing to fu mod 8086:166

2016-11-27 12:48:37.534225-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying patches for 1u kext

2016-11-27 12:48:37.534226-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ missing ControllerModInfo for 1u controller

2016-11-27 12:48:37.662707-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ aslr/load slide is 0x<ptr>

2016-11-27 12:48:37.662707-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ failed to find a suitable codec, we have nothing to do

2016-11-27 12:48:37.662708-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying patches for 6u kext

2016-11-27 12:48:37.662709-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying 0u patch for 6u kext

2016-11-27 12:48:37.662709-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ getRunningPosition <ptr> of memory 7f000u size

2016-11-27 12:48:37.662711-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ missing ControllerModInfo for 1u controller

2016-11-27 12:48:38.236274-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ aslr/load slide is 0x<ptr>

2016-11-27 12:48:38.618712-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ found supported Realtek 0x10ec0293 Rev:0x100003 codec revision 0x100003

2016-11-27 12:48:38.618713-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying patches for 3u kext

2016-11-27 12:48:38.618713-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ missing ControllerModInfo for 1u controller

2016-11-27 12:48:38.618714-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ will route callbacks resource loading callbacks

2016-11-27 12:48:38.618714-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying patches for 3u kext

2016-11-27 12:48:38.618715-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying 1u patch for 3u kext

2016-11-27 12:48:38.618716-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ getRunningPosition <ptr> of memory e6000u size

2016-11-27 12:48:38.618716-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying 2u patch for 3u kext

2016-11-27 12:48:38.618717-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ getRunningPosition <ptr> of memory e6000u size

2016-11-27 12:48:38.618717-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying 3u patch for 3u kext

2016-11-27 12:48:38.618718-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ getRunningPosition <ptr> of memory e6000u size

2016-11-27 12:48:38.618719-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying 4u patch for 3u kext

2016-11-27 12:48:38.618720-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ getRunningPosition <ptr> of memory e6000u size

2016-11-27 12:48:38.618722-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying 5u patch for 3u kext

2016-11-27 12:48:38.618723-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ getRunningPosition <ptr> of memory e6000u size

2016-11-27 12:48:38.618723-0500  localhost kernel[0]: AppleALC: (DEBUG) alc @ applying 6u patch for 3u kext

2016-11-27 12:48:38.618724-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ getRunningPosition <ptr> of memory e6000u size

2016-11-27 12:48:38.618726-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ Found symbol __ZN14AppleHDADriver18layoutLoadCallbackEjiPKvjPv at 0x<ptr> (non-aslr 0x10942)

2016-11-27 12:48:38.618726-0500  localhost kernel[0]: AppleALC: (DEBUG) mach @ Found symbol __ZN14AppleHDADriver20platformLoadCallbackEjiPKvjPv at 0x<ptr> (non-aslr 0x12576)

2016-11-27 12:48:38.618728-0500  localhost kernel[0]: AppleALC: (DEBUG) private @ writing to 8BFE9E76 value of 1u which is E9

2016-11-27 12:48:38.618729-0500  localhost kernel[0]: AppleALC: (DEBUG) private @ writing to 8BFE9E77 value of 4u which is 1C9FACD

2016-11-27 12:48:38.618729-0500  localhost kernel[0]: AppleALC: (DEBUG) private @ writing to 8DC89942 value of 1u which is E9

2016-11-27 12:48:38.618730-0500  localhost kernel[0]: AppleALC: (DEBUG) private @ writing to 8DC89943 value of 4u which is FE3479F9

2016-11-27 12:48:38.618732-0500  localhost kernel[0]: AppleALC: (DEBUG) private @ writing to 8BFE9E8C value of 1u which is E9

2016-11-27 12:48:38.618732-0500  localhost kernel[0]: AppleALC: (DEBUG) private @ writing to 8BFE9E8D value of 4u which is 1CA16EB

2016-11-27 12:48:38.618733-0500  localhost kernel[0]: AppleALC: (DEBUG) private @ writing to 8DC8B576 value of 1u which is E9

2016-11-27 12:48:38.618734-0500  localhost kernel[0]: AppleALC: (DEBUG) private @ writing to 8DC8B577 value of 4u which is FE346265

 

i attached 3 things:

 

working AppleHDA_ALC293.kext - layout28 - 

my SSDT-HDEF-T460.dsl - to inject HDEF device

and new ALC293 folder with Info.plist generated by codec-info.command

modified Pinconfig.kext

Hold up, I will make a custom AppleALC for you

Edit: Try my file here, use layout 28

AppleALC.kext.zip

Link to comment
Share on other sites

Published 1.0.18. Hopefully it (finally) fixes all the rest of the panics on Sierra. Please upgrade, enjoy, and report.

 

@tluck there are no resource calls from AppleHDA, which means the codec is probably not initialising properly I am afraid. Cannot tell more though.

  • Like 2
Link to comment
Share on other sites

Hi everyone.

 

Could anyone compile the AppleALC kext with the ALC3241 codec, a variation of the ALC290? I don't have the skills for that.

 

The codec is found on the HP Envy 15K series and on my HP Presario 14-v065br, there is already an patched AppleHDA.kext (sorry, don't remember the credits) that works with them.

 

I've included the patched AppleHDA kext file, along with the ALC3241 codec text for the AppleALC compilation.

 

Regards,

EDIT:

 

HP Presario 14-v065br ALC3241 Codec works now!

 

Now AppleALC 1.0.18 works on my HP Presario 14-v065br, with a Realtek ALC3241 codec and layout-id 28, although older versions may work as well.

 

This codec is supposed to be a variation of ALC290, as it works with a patched version of the Sierra AppleHDA ALC290 for HP ENVY 15t_k000 series [courtesy of MacPeet].

 

After watching the forum, I tried to use a different layout-id, device 28, and finally the ports of both speakers and microphone were found.

 

Credits:

MacPeet, developer of the AppleHDA ALC290 for HP ENVY 15t_k000 series binpatches... and a lot of help, and

vusun123, developer of the patch for LayoutID 28

 

Thanks also to vandroiy2012 for creating and keeping this work.

Link to comment
Share on other sites

OK. I will do it tomorrow. Don't have direct access to this laptop. Only remote... 

I thought we had a similar Samsung laptop with the same codec's patch in AppleALC ?

 

Nice when it now works.

However the thanks goes to vusun123, developer of the patch for LayoutID 28 !!!

 

 

 

EDIT:

 

HP Presario 14-v065br ALC3241 Codec works now!

 

Now AppleALC 1.0.18 works on my HP Presario 14-v065br, with a Realtek ALC3241 codec and layout-id 28, although older versions may work as well.

 

This codec is supposed to be a variation of ALC290, as it works with a patched version of the Sierra AppleHDA ALC290 for HP ENVY 15t_k000 series [courtesy of MacPeet].

 

After watching the forum, I tried to use a different layout-id, device 28, and finally the ports of both speakers and microphone were found.

 

Credits:

MacPeet, developer of the AppleHDA ALC290 for HP ENVY 15t_k000 series binpatches... and a lot of help, and

vusun123, developer of the patch for LayoutID 28

 

Thanks also to vandroiy2012 for creating and keeping this work.

Surprisingly, it was made for another laptop

Link to comment
Share on other sites

I thought we had a similar Samsung laptop with the same codec's patch in AppleALC ?

 

 

Surprisingly, it was made for another laptop

I don't know how that works either.

It would be interesting if someone skilled could explain that codec x layout-id x device relationship.

Link to comment
Share on other sites

I don't know how that works either.

It would be interesting if someone skilled could explain that codec x layout-id x device relationship.

There's no layout x codec relationship here. I can use any layouts I want ( save for the whitelisted one ). For example, I use layout 1 for all my test files, if successful I will renamed them to layout28 ( if RealtekALC) or layout12 ( if IDT ) or layout 10 ( Conexant ) to put into AppleALC

Link to comment
Share on other sites

There's no layout x codec relationship here. I can use any layouts I want ( save for the whitelisted one ). For example, I use layout 1 for all my test files, if successful I will renamed them to layout28 ( if RealtekALC) or layout12 ( if IDT ) or layout 10 ( Conexant ) to put into AppleALC

Understood. So, if a codec patch works in two or more (different) computers, that means they have exactly the same device?

Link to comment
Share on other sites

×
×
  • Create New...