Dolnor Posted October 12, 2013 Share Posted October 12, 2013 Is it possible to make this as a standalone kext that wouldn't require rewrites and recompilation with every major source release from Apple? I mean, it's actually possible to make a power state hook that would execute the update method when power state changes and boolean that EAPD felt asleep is equal to one. This would be a much cleaner solution and won't require any user input after updating ... I'm not skilled enough to code a kext like that, but I've attempted nonetheless but PM state hook wasn't successful on my part and all I achieved was that audio was enabled upon boot up whilst EAPD verb wasn't included in pinconfig.. Link to comment Share on other sites More sharing options...
darkera13 Posted October 13, 2013 Share Posted October 13, 2013 It's work in 10.9 GM Just tried, but not work with on my Asus UX31A. My headphone work great after wake with no need patch IOAudioFamily, but Speaker not work even after reload AppleHDA.kext. Link to comment Share on other sites More sharing options...
Sherlocks Posted October 13, 2013 Share Posted October 13, 2013 Sorry, I don't have Lion installed. It is easier if you install xcode under Lion and just press the build button - then you get the code compiled for 10.7 automatically. I am not a programer so and I don't know where to download the SDKs. If you can tell me, where to download I can do the compile for you. can you tell me to audio issue fix compile tutorial? if you tell me, i try to compile fix for 10.7 Link to comment Share on other sites More sharing options...
Sherlocks Posted October 13, 2013 Share Posted October 13, 2013 Just tried, but not work with on my Asus UX31A. My headphone work great after wake with no need patch IOAudioFamily, but Speaker not work even after reload AppleHDA.kext. maybe your spk node is different Link to comment Share on other sites More sharing options...
glcnacy Posted October 13, 2013 Share Posted October 13, 2013 Is it possible to make this as a standalone kext that wouldn't require rewrites and recompilation with every major source release from Apple? I mean, it's actually possible to make a power state hook that would execute the update method when power state changes and boolean that EAPD felt asleep is equal to one. This would be a much cleaner solution and won't require any user input after updating ... I'm not skilled enough to code a kext like that, but I've attempted nonetheless but PM state hook wasn't successful on my part and all I achieved was that audio was enabled upon boot up whilst EAPD verb wasn't included in pinconfig.. Based on the sources of the current kext I would say that it should be possible. Basically you just need a kext with access to IORegistry (I read that there is some tutorial for writing kext for IOKit, that should be good for this purpose) Link to comment Share on other sites More sharing options...
glcnacy Posted October 13, 2013 Share Posted October 13, 2013 Just tried, but not work with on my Asus UX31A. My headphone work great after wake with no need patch IOAudioFamily, but Speaker not work even after reload AppleHDA.kext. Check two things: ioreg output -> what is the path to HDEF speaker node -> is it 0x14? Link to comment Share on other sites More sharing options...
glcnacy Posted October 13, 2013 Share Posted October 13, 2013 can you tell me to audio issue fix compile tutorial? if you tell me, i try to compile fix for 10.7 Install XCode and open up the project file: IOAudioFamily.xcodeproj In XCode there is the product menu. Here you find the Clean and the Build commands. The project should automatically use the existing SDK so all you have to do is press clean and after that press build. Link to comment Share on other sites More sharing options...
Dolnor Posted October 13, 2013 Share Posted October 13, 2013 Is it possible to make this as a standalone kext that wouldn't require rewrites and recompilation with every major source release from Apple? I mean, it's actually possible to make a power state hook that would execute the update method when power state changes and boolean that EAPD felt asleep is equal to one. This would be a much cleaner solution and won't require any user input after updating ... I'm not skilled enough to code a kext like that, but I've attempted nonetheless but PM state hook wasn't successful on my part and all I achieved was that audio was enabled upon boot up whilst EAPD verb wasn't included in pinconfig.. Quoting myself here... Well, I felt like having another kext in the system is pretty pointless, considering I already have a kext that is able to determine power state transitions.. and it just happens to be opensource. So I went ahead and modified it, so no more IOAudioFamily sources are required and no hassle for me after every updated (you don't generally update your PS/2 kexts that often, do you?). The kext is made configurable and can handle both speaker and headphone nodes if they are defined properly. You still need to have the EAPD codec verb in your pinconfig for sound to be enabled upon boot though. Not anymore... My codec only has EAPD on speaker node 0x14 (20) so I can't test headphones alone or headphones plus speakers for EAPD command verb updating. People who are using RehabMan's VoodooPS2Controller can give this a go, I've documented the settings I've added (as well what has been modified from RehabMan's sources) in the readme: https://github.com/Dolnor/VoodooPS2Controller_EAPD_Handler Cheers! - Dolnor a.k.a TimeWalker 1 Link to comment Share on other sites More sharing options...
68x Posted October 14, 2013 Share Posted October 14, 2013 Quoting myself here... Well, I felt like having another kext in the system is pretty pointless, considering I already have a kext that is able to determine power state transitions.. and it just happens to be opensource. So I went ahead and modified it, so no more IOAudioFamily sources are required and no hassle for me after every updated (you don't generally update your PS/2 kexts that often, do you?). The kext is made configurable and can handle both speaker and headphone nodes if they are defined properly. You still need to have the EAPD codec verb in your pinconfig for sound to be enabled upon boot though. My codec only has EAPD on speaker node 0x14 (20) so I can't test headphones alone or headphones plus speakers for EAPD command verb updating. People who are using RehabMan's VoodooPS2Controller can give this a go, I've documented the settings I've added (as well what has been modified from RehabMan's sources) in the readme: https://github.com/Dolnor/VoodooPS2Controller_EAPD_Handler Cheers! - Dolnor a.k.a TimeWalker If it is possible, can you consider making it a separate kext? As an owner of a laptop with an Elan touchpad, I can't use PS2 controller without kext conflicts. Link to comment Share on other sites More sharing options...
darkera13 Posted October 14, 2013 Share Posted October 14, 2013 Check two things: ioreg output -> what is the path to HDEF speaker node -> is it 0x14? Path: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/HDEF@1B Speak node: 0x14 (exactly) I try to change path on startUpdate function and rebuild but no luck. 10.8.4 work great, 10.8.5 and 10.9 not work. PS: Check Console.log has "EAPD: Enabled Successfully" but still not work. Link to comment Share on other sites More sharing options...
Recommended Posts