Jump to content

Laptop - Lenovo IdeaPad Y510p - 10.9 - Mavericks


useletters
 Share

332 posts in this topic

Recommended Posts

@useletters, I checked the config.plist I uploaded earlier and I can confirm it is faulty. Sorry for that but as I said I didn't have OS X and just picked the wrong backup. I installed from scratch and here's the one that should work: http://pastebin.com/3ZF5uZ7K.

 

Let me know if it didn't (it works on my machine).

 

 

I acctually got it working last night with this config, http://pastebin.com/URu02QJ1

 

Yeah, I've managed to deduce that you got me the wrong one, thanks nonetheless.

Next step, SSDT and DSDT also AppleHDA patch.

 

Which guide/s and patches are you using for this? Will clover + F4 on boot loader would suffice for the aml files?

Link to comment
Share on other sites

Alright, that's good.

 

I'm doing fine with VoodooHDA no need to hassle with AppleHDA now as there are more important issues to look for. We have to consider proper power management, sleep/wake, sleep on lid close, graphics issues with Preview and some screen savers, fixing Home/End/PageUp/PageDown, and getting function keys to work. A lot more important than AppleHDA to be done.

 

Regarding ACPI tables, you can get them the way you like. Personally, I get them in Windows using RWeverything software.

Link to comment
Share on other sites

I used the attached one. The kext inside can be put into Clover kexts and it allow auto detecting headphones (credits to Sfairat). Currently both speakers are equal if slider in Sound preference is on balance. I'm not sure if Windows produce louder sound but make sure to increase PCM to max in VoodooHDA Pref.Pane. 

 

I used that script in the past but I lost the SSDT in the backups so I might do it again. And yes, many of RehabMan patches are essential for this PC. I tried patching mine using help from olarila forum and the patches used were from RehabMan's repo. I don't remember though which ones but I'll dig through the thread to find out. 

Sound.zip

  • Like 1
Link to comment
Share on other sites

That's nice, so far I've managed to patch my dsdt and generate ssdt, see attached. But when I try to drop the oem ssdt, qe/ci doesn't function. config also attached.

 

Edit:

Thanks for the audio fix! works wonder :D

 

Edit 2:

Should I also use patch and use the SSDTs from EFI/CLOVER/ACPI/origin? Or just use SSDT generated by the script?

 

Edit 3:

Finally got most of it working, QE/CI (HDMI works after sleep), brightness slider (no bightness fn keys), sleep (no lid sleep), P States: 8, 16, 24, 27, 28, 29, 30, 32

config and patched acpi.zip

Link to comment
Share on other sites

Good job. I see you have changed ig-platform-id to 0x0a260000. Does this have any benefits?

 

ُEdit:

 

I gave the files you attached a try which resulted in a big problem with graphics. The display flickers a couple of time per second and I lost QE/CI. I wasn't able to test sleep of course with this flicker, something is not right.

 

Are you sure you have a vanilla system? my build have full resolution with QE/CI, wifi with 5G support, Bluetooth, battery, touchpad. All these works using Clover and I didn't touch the actual system at all.

Link to comment
Share on other sites

I'm sorry, those are not working. I'll upload the working config tomorrow as I left my machine at my office.

 

0x0a260000 removed the mouse lag at startup (though I haven't re test it with my latest config)

 

Can you please upload your clover config and/or whole efi folder so I could try it with a vanilla install.

 

Thanks!

Link to comment
Share on other sites

Yea no problem. I attached the relevant parts of Clover folder (so not to exceed the 10MB limit in this forum). The archive includes patched ACPI files (mostly Sfairat's files in addition to the one I generate using ssdt script), all kexts used, and my config.plist.

 

The provided ACPI files allow brightness control with the help of provided kext, and allow for sleep as well although there's a wake problem at my setup that I need to fix.

 

Just a side note regarding keeping system clean, today I updated iTunes to 12.0.1 which broke something. I had to re-install VoodooHDA and to install wifi kext into S/L/E afterwards otherwise it won't recognize the card. Weird, but happen. 

Clover-Trimmed.zip

Link to comment
Share on other sites

Mine have DropOem set to true but not DropOEM_DSM if you mean that. I've read it's not required set DropOEM_DSM to true to load patched DSDT. Actually, it should be set to false to load custom DSDT and not the BIOS DSDT. Here's a quote from http://clover-wiki.zetam.org/Configuration/ACPI:

 

DSDT / DropOEM_DSM

<key>DropOEM_DSM</key>
<true/>

Some OEM DSDT already contains Method(_DSM...) for some devices. It has another structure, another logic, and another results then we need. But we can't modify this method, and we can't create own method with the same name, so DropOEM_DSM was created to drop these OEM _DSM.

 

Default value is false if using a custom DSDT and true if using BIOS.aml.

 

I'll give your files a go and be back to you. Thanks by the way.

Link to comment
Share on other sites

Oh. Alrighty. Though I get KPs using your files, I haven't throughly checked why, I just paste 'em on my clover after a vanilla install. Also, why do you use dumped PM ssdts along side with the genetated one? Is it working? I'll try and make your files working.

 

Thanks also!

Link to comment
Share on other sites

Your files "booted" my OS X but with flickering display. I switched ig-platform-id in your config.plist to 0a260006 but still flickering. I replaced your config.plist with mine and it still flicker so it's something in you patched ACPI files that work on your machine but not on mine. Same way that the patched files I use works on my machine but not on yours. This is awkward, do we have something different in out hardware?

 

Regarding using dumped PM SSDT's along side with the generated one, these SSDT's are made by Sfairat (a member in this forum) and I replaced SSDT-1 of his files with the one I generated. SSDT-1 in my files is the only one with CpuPm. 

SSDT-0: CB-01
SSDT-1: CpuPm
SSDT-2: CB-01
SSDT-3: Optimus
SSDT-4: Cpu0Cst
SSDT-5: ApCst
SSDT-6: CB-01
SSDT-7: CB-01

I don't know why CB-01 spans different SSDT's but I didn't touch them.

Link to comment
Share on other sites

You get the flickering because NVDA kext are being loaded, I think. I removed all NVDA and Geforce to make it work. This is because my ACPI files are not completely patched, and I am still wondering why I couldn't understand it. I mean, I'm quite fluent in programming, but still I somehow don't know how to tackle with ACPI. Anyway, it's true that your ACPI files and some kexts gets mr KPs. Though I was able to boot with your config.plist

 

Now I just really have to study ACPI stuff, or if someone here could help me patch things up. *cough*rehabman*cough* so I can use OSx vanilla with the patches on clover.

 

Thanks!

Link to comment
Share on other sites

About NVidia, well, I didn't disable it in BIOS but it's disabled in one of the SSDT's. However, I'm able to boot without all the .aml files, without any additional kernel flags, without removing any kext from system, all this while NVidia is enabled in BIOS. So I still wonder why the flickering with your ACPI files?

 

And yes, me too want to study ACPI. It's not really helpful to ask people to do it rather than helping me doing it myself. I think ACPI is not much about programming but instead knowing what's important and what's not, knowing how to fix syntax errors according to ACPI specs, and knowing the structure of ACPI tables and what section belongs to what functionality. I may be wrong though but this what I concluded from reading inside aml files. 

 

 

 

EDIT:

 

Just a side note, almost 10 days ago RehabMan updated ACPIBackLight.kext. The latest version fixed the default brightness value so once the system is up the brightness match with the value in slider. Previously, I had to tab on the slider once so the value is corrected every time I boot. There might be other fixes but this is what I noticed so far. Thanks RehabMan.

 

Another note. I don't know where I read this, someone suggested using 0a26000a as ig-platform-id in config.plist. The suggested value isn't one of the widely-known values presented below as this page states.

Intel HD 4600/5000 (Azul)
04060000
04120004
04160000 
04160002 
04260000 Chimera HD 5000 Default
0A160000 
0A260000 
0A260005 MacBook Air Platform ID
0A260006 
0A260008 
0A2E0008 
0C060000 
0C160000
0C260000 
0D220003 Chimera HD 4600 Default 
0D260000
0D260007

I tried it and it worked. It's better than the usual value 0a260006 for our mobile HD4600 in that it removes all glitches that appear in login screen. However, for some reason I don't know yet, using 0a26000a prevent OS X from restarting. The system halts with display off and doesn't reboot. Replacing it with the usual 0a260006, restart back to work again. It'd be helpful if someone give me an explanation for this. 

Link to comment
Share on other sites

Well, actually you are correct. And I actually meant help me through patching ACPI, not really just giving them a raw aml and get the patched ones in return.

I'm actually using a patched AppleBacklight.kext and AppleBacklightInjector.kext from RehabMan together with my patched SSDT, though it was from another forums, t...mac. Nonetheless, it works fine.

 

Can you guide me on disabling the nvidia card. I'm really really lost at ACPI, I don't know what is and not important.

 

Thanks!

 

Edit:

 

Thank you for the VoodooPS2 kexts, brightness control using Fn + ins and home works amazing.

Can we apply custom keyboard mapping to change it? https://github.com/RehabMan/OS-X-Voodoo-PS2-Controller/wiki/How-to-Use-Custom-Keyboard-Mapping

Link to comment
Share on other sites

The SSDT-3 in my files only disables nvidia, you could add it to your files after renaming. I'm currently reading on how to do it since SSDT-3 is provided by Sfairat so I don't have the knowledge to make it and I just using it for now.

 

The VoodooPS2 and ACPIBackLight kexts are really awesome but both developed by RehabMan so all the thanks to him.

 

Remapping ... hmm sounds nice. I'll read about it. RehabMan can make it easier since he is the man. We can also modify the code, if RehabMan allow us to (I think he provide the source code). There you go, said you are fluent programmer, that's the field to play hahaha, just kidding.

Link to comment
Share on other sites

I kept searching for the past few hours to find a way to capture key strokes and return their scan code but found none yet. RehabMan wrote in the "How to Use Custom Keyboard Mapping" :

Scan codes are written in hex, and correspond exactly to scan codes you see if you run the debug version of the voodoo kext.

I installed the debug version (and copied the daemon, copied the plist, fixed permission, and cleared cache) but still don't know how to get this info from the daemon. I took a look at the log for the daemon and thought to find everything regarding any key manipulation but found other generic info instead.

 

I'd really appreciate help from RehabMan here ...

Link to comment
Share on other sites

I tried my best to get the scan codes to remap Fn+Down -> Fn+Insert  and Fn+Up -> Fn+Home so the default keys for Y510P are used for brightness control. I couldn't get them using debug version of VoodooPS2Controller but was able to get them using Linux program showkey.  This is what I got:

Fn+Down		:	0xe0 0x4c 0xe0 0xcc
Fn+Insert	:	0x46 0xc6

Fn+Up		:	0xe0 0x54 0xe0 0xd4
Fn+Home		:	0xe1 0x1d 0x45 0xe1 0x9d 0xc5

 So basically, I need to remap e04ce0cc to 46c6 and e054e0d4 to e11d45e19dc5. I added the following lines to the Info.plist in both sections Default and Lenovo/Haswell-Ideapad:

<string>e04ce0cc=46c6;Fn+Down=Fn+Insert</string>
<string>e054e0d4=e11d45e19dc5;Fn+Up=Fn+Home</string>

After saving and installing kext (I didn't install as I inject it through Clover), nothing happen !

I'm tired .. I really need help here!

Link to comment
Share on other sites

Okay, scrap that!


 


I was able to get the scan codes from system debug version by looking into system.log rather than the daemon log itself. The scan codes are different than what I got from Linux which confuses me a bit.


 


Anyway, I found that it is doable with ease if scan code (from) and adb (to) are know which I was able to get from the log. I tried mapping Fn + z/x to brightness down/up and was successful. However, there are issue that not all combinations are recognised with this driver. For example, Fn + z is nothing more than z so no modifier applies and same goes for Fn + x is the same as x. This means I lost the keys z and x after this mapping so I had to revert.


 


The keys Down arrow and Up arrow are recognised. However,  the combinations Fn + Down and Fn + Up are not so I can't map them to brightness. I don't know why they are not recognised since they are in Linux.


Link to comment
Share on other sites

Awesome, how'd you got it working?

Anyway, my trackpad is not being recognised, though I can use it like a normal mouse (no gestures)

I think we can voodooPS2Controller kext along side with Elan kext, by replacing it's keyboard kext. I'm not quite sure it can work though.

 

Edit:

Trackpad is really faulty.

Link to comment
Share on other sites

I just love it when braniacs are @ work :P

 

Now can you start laying down the first steps for a possible Yosemite installation guide ?

 

I would like to tip in with some testing if needed.

 

P.S. My Maverick is almost good. Just resolution is down to 64 mb...

 

Cheers.

Link to comment
Share on other sites

Awesome, how'd you got it working?

Anyway, my trackpad is not being recognised, though I can use it like a normal mouse (no gestures)

I think we can voodooPS2Controller kext along side with Elan kext, by replacing it's keyboard kext. I'm not quite sure it can work though.

 

Edit:

Trackpad is really faulty.

 

I got a feedback from RehabMan saying if the keys combination doesn't show in system log then it's handled via ACPI. He mentioned to use ACPIDebug kext a long with couple of DSDT patches so the system log could capture the even triggered by the combination. Having the events names, another DSDT patch was required to control brightness from these events. The latter patch is listed below:

into method label _Q11 replace_content
begin
// Brightness Down\n
    Notify(\_SB.PCI0.LPCB.PS2K, 0x0205)\n
    Notify(\_SB.PCI0.LPCB.PS2K, 0x0285)\n
end;
into method label _Q12 replace_content
begin
// Brightness Up\n
    Notify(\_SB.PCI0.LPCB.PS2K, 0x0206)\n
    Notify(\_SB.PCI0.LPCB.PS2K, 0x0286)\n
end;

Then reboot and the keys will function correctly. Though there are more important issues to fix, I think this is the time to fix all key bending issues we may have because I already read in this.

 

Regarding touchpad, the VoodooPS2Controller.kext currently support 2 gestures: two-finger scrolling and three-finger swipe. On my machine, only two-finger scrolling and I'm currently investigating why the other one don't. Remains to say that it's not faulty at my end but keep in mind that mine is Synaptics while yours is Elan which may make difference.

Link to comment
Share on other sites

Right, that's why my trackpad is faulty. I'll try to load voodoops2keyboard along side with elan touchpad kext.

I'll also try that dsdt patch you and RehabMan got.

I'll report back whenever!

 

Thanks!

 

Edit:

Okay, I just realised, I have to edit both info.plist and also the executable file (cpp) of VoodooPS2Keyboard and Elan touchpad kext. AND! I have no idea what I'm doing.  :wallbash:  

 

Edit 2:
Okay, I'll just stay with Elan Touchpad Kext as I can't find a way to integrate VoodooPS2Keyboard with Elan Touchpad kext.
Also, as far my understanding goes, I can patch _Q11 and _Q12 methods on my DSDT to notify the right keys accordingly to the ApplePS2ElanTouchpad.kext, though I don't have any reference for this keys/events as EMlyDinEsH (KUDOS!), of OSXLatitude, did not publish his/her source codes.
I'll do the best I can to make this work, though a helpful hand would be much appreciated. THANKS!
Link to comment
Share on other sites

 Share

×
×
  • Create New...