Contribute
Register

Lenovo Z580, El Capitan, and SSDT/DSDT patches

Status
Not open for further replies.
Joined
Sep 1, 2016
Messages
11
Motherboard
Lenovo IdeaPad Z580 model 2151, 8 GB RAM
CPU
Intel Core i7-3612QM Processor (2.1GHz, 6MB)
Graphics
Intel HD Graphics 4000, laptop screen running at native resolution of 1366 x 768; Nvidia Optimus off
Mac
  1. Mac mini
Mobile Phone
  1. iOS
Hi everyone,

First of all: my eternal gratitude goes out to everyone who has participated in these forums.
I've learned a great deal of things while reading things that were written here.

Here's a quick sketch of the situation I'm in right now:
  • Lenovo Ideapad Z580 laptop (system details in my profile on the left of this post)
  • Installed macOS El Capitan 10.11.5 w/ Clover UEFI bootloader, updated to macOS 10.11.6 without any trouble
  • Everything works absolutely great, except for:
    • the battery indicator
    • closing the lid (the screen will not turn back on, requires a reboot)
    • bringing the system to sleep (it will not turn off -- instead, it goes straight to the login screen)
The broken things mentioned above were already broken before I updated to 10.11.6.

What I care about most right now is getting the battery indicator to work. I never really use sleep, anyway.
I've tried a number of things:
  • I installed ACPIBatteryManager.kext from RehabMan's Github.
    This did not make any visible difference.
  • I patched the system DSDT with this battery patch.
    As the patch was made for this exact system and MaciASL had no particular problems with the patch, it seems to me like it should work. (I've tried patches for other, similar systems, but MaciASL obviously threw errors as it couldn't find devices mentioned in the patch.)
    This patch did not make any visible difference.
  • I executed the instructions in headings #5 and #9 on this page, patching AppleIntelCPUPowerManagement.kext and the SSDT.
    Interestingly, AICPUPMI_grep_before.txt and AICPUPMI_grep_after.txt (results from the SSDT patch in #9) both showed up as an empty (zero byte) file.
    Again: no visible difference.
The instructions on that last page are for macOS 10.10.0, so there's a good chance that was just lost time on patches that simply won't work for El Capitan. But a man can dream, eh? ;-)

I was wondering if someone could point me in the right direction, or shout at me for doing everything wrong (and then tell me how to do it right), or tell me that it just won't work. I'd just like to hear it from someone more experienced like you.

Thanks a lot!
 
Hi everyone,

First of all: my eternal gratitude goes out to everyone who has participated in these forums.
I've learned a great deal of things while reading things that were written here.

Here's a quick sketch of the situation I'm in right now:
  • Lenovo Ideapad Z580 laptop (system details in my profile on the left of this post)
  • Installed macOS El Capitan 10.11.5 w/ Clover UEFI bootloader, updated to macOS 10.11.6 without any trouble
  • Everything works absolutely great, except for:
    • the battery indicator
    • closing the lid (the screen will not turn back on, requires a reboot)
    • bringing the system to sleep (it will not turn off -- instead, it goes straight to the login screen)
The broken things mentioned above were already broken before I updated to 10.11.6.

What I care about most right now is getting the battery indicator to work. I never really use sleep, anyway.
I've tried a number of things:
  • I installed ACPIBatteryManager.kext from RehabMan's Github.
    This did not make any visible difference.
  • I patched the system DSDT with this battery patch.
    As the patch was made for this exact system and MaciASL had no particular problems with the patch, it seems to me like it should work. (I've tried patches for other, similar systems, but MaciASL obviously threw errors as it couldn't find devices mentioned in the patch.)
    This patch did not make any visible difference.
  • I executed the instructions in headings #5 and #9 on this page, patching AppleIntelCPUPowerManagement.kext and the SSDT.
    Interestingly, AICPUPMI_grep_before.txt and AICPUPMI_grep_after.txt (results from the SSDT patch in #9) both showed up as an empty (zero byte) file.
    Again: no visible difference.
The instructions on that last page are for macOS 10.10.0, so there's a good chance that was just lost time on patches that simply won't work for El Capitan. But a man can dream, eh? ;-)

I was wondering if someone could point me in the right direction, or shout at me for doing everything wrong (and then tell me how to do it right), or tell me that it just won't work. I'd just like to hear it from someone more experienced like you.

Thanks a lot!

Battery patching: http://www.tonymacx86.com/threads/guide-how-to-patch-dsdt-for-working-battery-status.116102/
 
Thanks, I am aware of that page ;-)
As mentioned, I have applied a patch from https://github.com/RehabMan/Laptop-DSDT-Patch as there is one for this particular system. This did not work.

I will be very realistic and say that I am not skilled enough to figure out my own DSDT patch. Is anyone out there (maybe you, RehabMan?) who would like to help me with that?
I would be more than happy to share the findings with the community.

Thanks again,
Daan
 
  1. Patchmatic: attatched as Patchmatic.zip
  2. IOreg: attatched as IOreg.zip
  3. Terminal outputs: attatched as terminal.zip
  4. EFI/Clover: attatched as Clover.zip
 

Attachments

  • IOreg.zip
    466.9 KB · Views: 113
  • Patchmatic.zip
    18 KB · Views: 122
  • terminal.zip
    1.3 KB · Views: 117
  • Clover.zip
    1.3 MB · Views: 121
Last edited:
Note for battery, your EC region objects that need to be patched are:
- SMD0, 256-bit.
- MCUR, 16-bit.
- MBRM, 16-bit.
- MBVG, 16-bit.
- B1FC, 16-bit.
- DICP, 16-bit.
- DIV0, 16-bit.
- B1FC, 16-bit.
- SBDN, 128-bit.
- SBMN, 128-bit.
 
Last edited:
Well, RehabMan might want to check "battery_Lenovo-Ux10-Z580.txt" file in his repo, it states that it works for Z580 but it clearly leaves 'SMD0' unpatched...
 
Well, RehabMan might want to check "battery_Lenovo-Ux10-Z580.txt" file in his repo, it states that it works for Z580 but it clearly leaves 'SMD0' unpatched...

SMD0 appears to be not accessed:
- SMWR uses it, but SMWR is not called
- BFWL uses it, and BFWL is called from MHPF (two different ones), but MHPF (either one) is not called
 
Oh sorry then. It should work fine...
 
Status
Not open for further replies.
Back
Top