Contribute
Register

[Guide] Native Power Management for Laptops

I have first generation i7 processor, to be precise i7 740QM. Full config in my sig. And I use clover.

1. Even though I have Dell laptop, I can do 'AsusAICPUPM' in clover? (this starts with ASUS, so my doubt is is it applied to ASUS only or to any laptop brand)

2. What is 'no rollbacks of AppleACPIPlatform.kext'? I should not install this kext?

3. How to do this step for my proccy/laptop? : Processor objects declared in Scope (_SB) or Scope (_PR) in DSDT (pretty rare not to have them in OEM DSDT)

4. Following check list sounds good?

- patched AppleIntelCPUPowerManagement via AsusAICPUPM=true
- KernelLapic=true in clover
- it's a pre sandybride proccy, as per tutorial, I have to: GeneratePStates=Y GenerateCStates=Y DropSSDT=Y.
- using SMBIOS: MacBook Pro 6,2
- Drop OEM SSDT: SSDT/DropOem=true
- NullCPU kext NOT installed
 
I have first generation i7 processor, to be precise i7 740QM. Full config in my sig. And I use clover.

1. Even though I have Dell laptop, I can do 'AsusAICPUPM' in clover? (this starts with ASUS, so my doubt is is it applied to ASUS only or to any laptop brand)

The AsusAICPUPM is poorly named. What it does has nothing to do with ASUS.

2. What is 'no rollbacks of AppleACPIPlatform.kext'? I should not install this kext?

Rolling back AppleACPIPlatform.kext to a previous version breaks power management for newer chips (Ivy, Haswell) and can cause other problems. No need to 'install' it as the system comes with one which works just fine.

3. How to do this step for my proccy/laptop? : Processor objects declared in Scope (_SB) or Scope (_PR) in DSDT (pretty rare not to have them in OEM DSDT)

Look in your DSDT for 'Processor'.

- it's a pre sandybride proccy, as per tutorial, I have to: GeneratePStates=Y GenerateCStates=Y DropSSDT=Y.

Clover config.plist uses different names for the same thing...
ACPI/SSDT/Generate/PStates=true
ACPI/SSDT/Generate/CStates=true
ACPI/SSDT/DropOem=true
 
Thank you very much!!! I made changes and I find less RAM memory usage and more CPU. And fan is bit slower. So thats nice!

Earlier - More RAM usage, for example, even if I open 1-2 tabs in Chrome, RAM usage was around 700-750. Now its 450-500MB. CPU was usage was 1-2% (strange!). Fan used to run at high speed and would shut down eventually later on.


Now - Less RAM usage, now 450-500MB. CPU usage 5-6%. But fan is running at low speed and a lot less noisy. Hope it remains same!

I have attached the changes config.
 

Attachments

  • Screen Shot 2014-12-25 at 10.13.09 am.png
    Screen Shot 2014-12-25 at 10.13.09 am.png
    283.8 KB · Views: 235
  • Screen Shot 2014-12-25 at 10.13.37 am.png
    Screen Shot 2014-12-25 at 10.13.37 am.png
    267 KB · Views: 241
I need some help getting my thinkpad x1 carbon to wake from sleep. I have applied all your patches. When I put the laptop to sleep, I cannot wake it up. The power button blinks slowly, but I cannot wake it up.

Please see the attached dsdt, ssdt, ioreg, and kextstat extracts. Thanks bunch.
 

Attachments

  • RehaMan-X1C.zip
    393.1 KB · Views: 98
I need some help getting my thinkpad x1 carbon to wake from sleep. I have applied all your patches. When I put the laptop to sleep, I cannot wake it up. The power button blinks slowly, but I cannot wake it up.

Please see the attached dsdt, ssdt, ioreg, and kextstat extracts. Thanks bunch.

What happens when you press the power button after entering sleep?
 
RM:
I was browsing the recent changes in your u430 repo, and specifically the commit regarding using native PM ssdts. Could you expand a little bit on how to determine if the native PM ssdts are appropriately patched to use in osx? Anything in particular to look for?
 
RM:
I was browsing the recent changes in your u430 repo, and specifically the commit regarding using native PM ssdts. Could you expand a little bit on how to determine if the native PM ssdts are appropriately patched to use in osx? Anything in particular to look for?

In the case of the u430, I simply fixed the errors and included them as-is. Any dynamic SSDTs (/sys/firmware/acpi/tables/dynamic or suffixed with 'x' via Clover F4) should be excluded as they will load dynamically via code in DSDT or SSDTs via ACPI 'Load'.

At that point, you can exclude the "Fix PNOT/PPNT" patch as that DSDT patch is only required due to the OEM SSDTs being eliminated in the first place. And no need to generate _PSS/_CST via Clover, since these objects are now provided by the OEM SSDTs. You still need a generated SSDT.aml via ssdtPRgen.sh to add what appear to be Apple/legacy objects such as APSS/ACST/APLF/APSN, and of course "plugin-type"=1 injection.
 
If I press it for a sec, it does nothing. If I hold it down a few, keyboard backlights come up, then nothing. Nothing in the system.log. If I hold it down for 6+ secs, it reboots and I think it restores the state. What I mean here is that I have disabled initial login but screen lock is on. So, when it reboots, instead of login automatically, it prompts a login screen.

I did another experience. I put the computer to sleep and within a few secs, before it goes to deep sleep (blinking power button), I pressed the power button. Then, it comes back live. The log shows entering sleep and waking up.

So, when it is in deep sleep, it's not detecting the power button press.
 
Back
Top