Contribute
Register

[GUIDE] Lenovo Yoga 920

Status
Not open for further replies.
Yes I do
Thank you for answering. Sleep works for me on my 920 as well as long as I don't use VoodooI2C. Do you also use VoodooI2C and, if so, which version?
Yes I do, I2C is v2.2. I deactivated the sensor hub and after that sleep is working flawlesly. This is the snippet for it:
Code:
// Disables I2C SHUB on Yoga 910
DefinitionBlock ("", "SSDT", 2, "hack", "SHUB", 0) {
Method(_SB.PCI0.I2C3._STA,0){Return(0)} 
}

I don't need the display rotated automatically. I also use the VoodooPS2Controller only for the keyboard. I removed the PS2Trackpad and PS2Mouse plugins from it - only USB Mouse is used and trackpad/touchscreen are managed by I2C

Yesterday I created a backup and booted from it and then updated to Catalina - no issues at all so far.
 
Yes I do
Yes I do, I2C is v2.2. I deactivated the sensor hub and after that sleep is working flawlesly. This is the snippet for it:
Code:
// Disables I2C SHUB on Yoga 910
DefinitionBlock ("", "SSDT", 2, "hack", "SHUB", 0) {
Method(_SB.PCI0.I2C3._STA,0){Return(0)}
}

I don't need the display rotated automatically. I also use the VoodooPS2Controller only for the keyboard. I removed the PS2Trackpad and PS2Mouse plugins from it - only USB Mouse is used and trackpad/touchscreen are managed by I2C

Yesterday I created a backup and booted from it and then updated to Catalina - no issues at all so far.
Hey, I just came across your post and was wondering if you could help me out. I have a Lenovo 330S-14IKB and have been having the same issue where closing the lid wouldn't put the laptop to sleep when VoodooI2C kext is installed. My files are attached in the link. Mind taking a look and pointing me towards a solution?

Update: Fixed it by using the appropriate voodooi2c patch (GPIO)
 
Last edited:
Yes I do
Yes I do, I2C is v2.2. I deactivated the sensor hub and after that sleep is working flawlesly. This is the snippet for it:
Code:
// Disables I2C SHUB on Yoga 910
DefinitionBlock ("", "SSDT", 2, "hack", "SHUB", 0) {
Method(_SB.PCI0.I2C3._STA,0){Return(0)}
}

I don't need the display rotated automatically. I also use the VoodooPS2Controller only for the keyboard. I removed the PS2Trackpad and PS2Mouse plugins from it - only USB Mouse is used and trackpad/touchscreen are managed by I2C

Yesterday I created a backup and booted from it and then updated to Catalina - no issues at all so far.

I am a new Hackintosh, could you give me your full EFI folder? Thanks very much!
 
Yes I do
Yes I do, I2C is v2.2. I deactivated the sensor hub and after that sleep is working flawlesly. This is the snippet for it:
Code:
// Disables I2C SHUB on Yoga 910
DefinitionBlock ("", "SSDT", 2, "hack", "SHUB", 0) {
Method(_SB.PCI0.I2C3._STA,0){Return(0)}
}

I don't need the display rotated automatically. I also use the VoodooPS2Controller only for the keyboard. I removed the PS2Trackpad and PS2Mouse plugins from it - only USB Mouse is used and trackpad/touchscreen are managed by I2C

Yesterday I created a backup and booted from it and then updated to Catalina - no issues at all so far.

Great, thanks. I'll give it a try sometime.
 
I deactivated the sensor hub and after that sleep is working flawlesly.


Thank you for pointing me the right direction.

I deactivated I2C SHUB in the DSDT (to be sure I did it twice, in 'Scope (_SB.PCI0)' and 'Scope (_SB.PCI0.I2C3)', will figure out later whether one would have been enough)

Code:
Method (_STA, 0, NotSerialized)  // _STA: Status
            {
                Return (Zero)
            }

That still didn't do it, I had to disable the touchscreen (I2C0) the same way. Tried a couple of times and sleep seems to work. Even noticed that the laptop gets into hibernation and successfully wakes up. Trackpad works; will take a couple of days, though, to determine whether sleep works reliably.
 
Last edited:
Thank you for pointing me the right direction.
Sure but why deactivating them if you don't have to mess around with the pinning? In my case the sensor's IRQ was out of bounds and efforts to pin the GPIO didn't work so I just deactivated the SHUB. The trackpad and the touchscreen worked oob with I2C. They IRQ was lower than the highest supported one. The I only eeded to remove the Trackpad and Mouse plugins from the RehabMan's VoodooPS2Controller.kext and that did the trick...
 
Sure but why deactivating them if you don't have to mess around with the pinning? In my case the sensor's IRQ was out of bounds and efforts to pin the GPIO didn't work so I just deactivated the SHUB. The trackpad and the touchscreen worked oob with I2C. They IRQ was lower than the highest supported one. The I only eeded to remove the Trackpad and Mouse plugins from the RehabMan's VoodooPS2Controller.kext and that did the trick...

Well, the Touchscreen worked, but sleep didn't anymore. Deactivating the touchscreen seems to have solved the sleep issue and since I don't really need the touchscreen anyway, job done. Will have look at removing trackpad and mouse from VoodooPS2Controller.kext as an alternative, thank you.

Edit: deactivating the unnecessary plugins in VoodooPS2Controller.kext doesn't do the trick. Sleep is broken if touchscreen isn't deactivated. Time will tell about reliability of sleep&wake.
 
Last edited:
Thank you for pointing me the right direction.

I deactivated I2C SHUB in the DSDT (to be sure I did it twice, in 'Scope (_SB.PCI0)' and 'Scope (_SB.PCI0.I2C3)', will figure out later whether one would have been enough)

Code:
Method (_STA, 0, NotSerialized)  // _STA: Status
            {
                Return (Zero)
            }

That still didn't do it, I had to disable the touchscreen (I2C0) the same way. Tried a couple of times and sleep seems to work. Even noticed that the laptop gets into hibernation and successfully wakes up. Trackpad works; will take a couple of days, though, to determine whether sleep works reliably.
Could you elaborate on how you disabled the touchscreen? I'm a newb at DSDT patching.

Edit: I figured out a method that worked for me. In

Code:
Scope (_SB.PCI0.I2C0) {
            Device (TPD0) {
                        ....
            }

I replace the INI method with:
Code:
Method(_INI) { _OFF() }
Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
{
     ADBG ("PXSX _OFF")
}

The touchscreen is now disabled and sleep is working :)
 
Last edited:
Hi , Someone has Catalina running? I am considering installing MacOs since Windows surpasses me, but I have read and I do not quite understand the process ... any guide for fools with Lenovo YOGA 920-13IKB ? Thanks
 
Status
Not open for further replies.
Back
Top