Jump to content
Sign in to follow this  
kaid

Lenovo G560: The (almost) perfect Hackbook, now please help me get speedstep working!

Recommended Posts

I have a Lenovo G560, 0679 model with Core i5 450M, Geforce 310M, 4GB RAM, HM55 Nortbridge.

It works pretty much perfectly with OS X (10.6.8, all latest updates), with the Kextpack from here and the Synaptics Pack i have pretty much everything working. Only the Ethernet and Webcam (why? wtf? I didn't even install a driver for it!) will not work with x64, but i386 is all dandy: WLAN, Ethernet, Webcam, VGA-out, Multimedia-Keys, Brightness/Volume-Keys, Sleep (only with charger unplugged, but i simply unplug it, send it to sleep and plug it back in!), GPU (CI,QE, the works), Powerbutton, reboot etc...

I only have these mods to plain vanilla (used iB{censored} to install)

- Whitelist BIOS v2.15 (if I ever see the need for faster Broadcom WLAN!)

- VoodooHDA2.7.2 (Audio), RealtekR1000.kext (Ethernet), IO80211Family 3.1.2 (WLAN), AppleACPIPS2Nub.kext/ApplePS2Controller (1.1.5) (Touchpad/Keyboard) and VoodooBattery.kext (fixes sleep or shutdown, can't remember) in /S/L/E

- FakeSMC 3.1.0 rev493, IntelThermal 1.0 (/E/E)

oh, and there's Kext_MSRTools.kext in /L/E, dunno how that got there!

The only issue is that it disconnects USB-devices when it goes to sleep, but i think that's a hardware issue, since Windows 7 also does that (i have perfect triple boot with Ubuntu 11.10, took me some work to get there! ;-)

...and also Speedstep does not work. I just noticed this because I ran Cinebench/Geekbench on Windows and OSX and the OSX result is less than half! Everything in OSX tells me I have a 2.4 GHz Core i5, just like it's supposed to be, but apparently in reality it constantly runs at the lowest Speedstep setting (1.2 GHz from what I gathered), not speed-cycling at all!

The Bus MHz is reported wrong in most tools (not anymore in Apples CPU prefpane since I upgraded Chameleon to the latest 2.1), CPU-X tells me the CPU's Code Name is "Unknown" and that it sits in a Socket 778 (it's PGA988), it also tells me the multiplier is x0.0 (i have set busratio=18 in the bootflags!) and the bus Speed is 8450 MHz, while the FSB is 33800 MHz. Also, apparently it can run 16 Threads on its 2 cores! ;-) In the system log AppleIntelCPUPowermanagement says the Turbo Bus Ratio is 0000.. The P/C-States in SMC Profiler look fine (MHz is good, Potency is all 0, Transition/Bus Master latency is all 10, PERF_CTL and PERF_STATE contain varying values for the individual states - Is that supposed to look like that?

So how do I get Speedstep working? I've searched and read around a lot and I don't know which path I should take, there's all kinds of approaches: Patching the DSDT? How would I go about that, I have no clue, I just took the DSDT from the Kextpack above (which might have been from a slightly different machine!). I do have DSDTSE here to edit and generate my own DSDTs... Or patching AppleIntelCPUPowermanagement? If yes: How??? Or would VoodooPstate.kext, VoodooPower.kext or VoodooPowerMini.kext be a better approach? I did try installing VoodooPstate.kext, but the VoodooPstate controller (and System Profiler) say it's not loaded... And what about the IntelThermal-Plugin from FakeSMC? Can I modify this to give me Speedstep?

I'm willing to work hard to get this one 100% running, and I'm *that* close!.. Would be great if any of the skilled people could help me by just telling me HOW... <:-) Thanks in advance (in general to everyone here bringing OSX to regular PCs! ;-)..

Okay, I just checked, MSRtools installs the Kext_MSRTools.kext into /L/E

MSRtools btw reports the MHz correctly as 1.2GHz (current and doesn't change ever, max. is listed as 2.4GHz)

the other stuff it says: Speedstep: on TM1: on TM2: off

Threshold, FORCEPR#, Out of spec, Custom Trigger 0/1: Not Tripped

Tj Max Guess: 100 Celsius, Core Temp TjMax - varies

Trigger0/1 Temp: TjMax - 0.0 (100.0 guess)

Manual Throttle: Disabled 50.0%

Target Mult: 0.0, Target Voltage: 0.2V

Actual Mult: 0.0 Actual Voltage 0.844V

Edited by kaid

Share this post


Link to post
Share on other sites

I did some testing, threw out AppleIntelCPUManagement.kext (plus the client one) and lo and behold: All of a sudden this thing was FAST! Faster than in Windows actually, because it seems now it was running at the Turbo frequency (2.66 GHz) permanently according to MSRtools (which was the only tool that had been right before about the constant 1.2 GHz! ;-). However, the battery would probably be drained in minutes like this, and also Sleep did not work anymore - which is absolutely a no-go for a mobile computer if you ask me!

I had VoodooPstates.kext installed, but it reported all kinds of errors upon booting, stuff like this:

20.10.11 02:45:26 kernel VoodooPState.kext: [Warning] Unloading

20.10.11 03:18:14 kernel Can't load kext com.insanelymac.driver.VoodooPState - requests to user space are disabled.

20.10.11 03:18:14 kernel Couldn't alloc class "VoodooPState"

However, System Profiler listed VoodooPstates as loaded, while the Pstatemenu (0.2) said it wasn't - what gives?

I threw out VoodooPstates and put AppleIntelCPUManagement back in for the time being, until this is solved...

Come on, I can't be the only one with a Core i4 450M out there that experiences this problem! ;-) *no* tool seems to be able to get the bus multiplier right (it was still zero in CPU-X and Kext Utility even when I had removed the AppleIntelCPU* kexts)! It only shows up in the bootargs....

Share this post


Link to post
Share on other sites
I did some testing, threw out AppleIntelCPUManagement.kext (plus the client one) and lo and behold: All of a sudden this thing was FAST! Faster than in Windows actually, because it seems now it was running at the Turbo frequency (2.66 GHz) permanently according to MSRtools (which was the only tool that had been right before about the constant 1.2 GHz! ;-). However, the battery would probably be drained in minutes like this, and also Sleep did not work anymore - which is absolutely a no-go for a mobile computer if you ask me!

I had VoodooPstates.kext installed, but it reported all kinds of errors upon booting, stuff like this:

20.10.11 02:45:26 kernel VoodooPState.kext: [Warning] Unloading

20.10.11 03:18:14 kernel Can't load kext com.insanelymac.driver.VoodooPState - requests to user space are disabled.

20.10.11 03:18:14 kernel Couldn't alloc class "VoodooPState"

However, System Profiler listed VoodooPstates as loaded, while the Pstatemenu (0.2) said it wasn't - what gives?

I threw out VoodooPstates and put AppleIntelCPUManagement back in for the time being, until this is solved...

Come on, I can't be the only one with a Core i4 450M out there that experiences this problem! ;-) *no* tool seems to be able to get the bus multiplier right (it was still zero in CPU-X and Kext Utility even when I had removed the AppleIntelCPU* kexts)! It only shows up in the bootargs....

Does`t need to use VoodooPState to get SpeedStep working...

Just update to latest Chameleon and add to your org.chameleon.Boot.plist GenerateCStates=Yes and GeneratePStates=Yes...

For other issues like USB, Sleep, Restat, Shutdown, Wake, try using this app to generate a patched DSDT for your machine > DSDT Editor and Patcher - Downloads - OSx86.net

If you need some explanation about that > http://www.osx86.net/guides-tutorials/11151-tips-dsdt.html

And if you need some help, ask here...

Share this post


Link to post
Share on other sites

I have the latest Chameleon I could find already installed, 2.1svn r1518, with com.Apple.Boot.plist renamed to org.chameleon.Boot.plist (btw: where can I find an updated Prefpane for that? The one I have installed is from 2.0.0 RC4 (though the installer it was in said 2.0 RC5 r650), and I'm afraid to use it since I think it doesn't know org.chameleon.Boot.plist). GeneratePStates=Yes and GenerateCStates=Yes has always been in there, so it must be something else.. Here's the contents:

<key>Default Partition</key>

<string>hd(0,2)</string>

<key>DropSSDT</key>

<string>No</string>

<key>EthernetBuiltIn</key>

<string>No</string>

<key>GenerateCStates</key>

<string>Yes</string>

<key>GeneratePStates</key>

<string>Yes</string>

<key>GraphicsEnabler</key>

<string>Yes</string>

<key>Kernel</key>

<string>mach_kernel</string>

<key>Kernel Flags</key>

<string>busratio=18 arch=i386</string>

<key>Quiet Boot</key>

<string>No</string>

<key>Timeout</key>

<string>1</string>

<key>system-type</key>

<string>1</string>

..and here's my smbios.plist, just in case that needs something:

<key>SMbiosvendor</key>

<string>Apple Inc.</string>

<key>SMbiosversion</key>

<string>IM112.88Z.0057.B00.1005031455</string>

<key>SMboardmanufacter</key>

<string>Apple Inc.</string>

<key>SMboardproduct</key>

<string>GA-H55MUSB3</string>

<key>SMfamily</key>

<string>Macbook Pro</string>

<key>SMmanufacter</key>

<string>Apple Inc.</string>

<key>SMproductname</key>

<string>MacbookPro6,2</string>

<key>SMserial</key>

<string>RM1029560XYL</string>

<key>SMsystemversion</key>

<string>1.0</string>

(I did change the default Mac Pro to MacBook Pro and also put in MacBook6,2, since that model is the closest to the G560!)

Should I empty the chameleon.boot.plist file and start rebuilding it from scratch? Which options do i absolutely need to boot?

Edited by kaid

Share this post


Link to post
Share on other sites

<key>SMboardproduct</key>

<string>GA-H55MUSB3</string>

Use Chameleon Wizard (link on my signature) to made changes to your boot file and also to set up a "right" SMBios for

a MacBook Pro 6,2...

Also, remove the key "System Type", type 1 is for Desktops... Leave without this info... You can also remove the busratio value from "Kernel Flags"...

The SMBios is one of the most important things to get native PM, so, don't change any information on the SMBios like you made on the example above... The system will not recognize this info...

Share this post


Link to post
Share on other sites

THANK YOU SO MUCH! That was it, a new smbios.plist! ;-)

I took care of getting all the info I could get (mainly from CPU-Z in Windows about the Memory!) and now it works like it's supposed to, MSR tools shows nicely how the clock cycles! ;-D

Geekbench runs like a charm (4805! that's 300 more than under Windows!) and delivers the same results like when I had removed the AppleIntelCPUManagement.kext and it ran on 2.66 GHz all the time!

There's a few things I didn't know what to enter in Chameleon Wizard. I just copied the SystemUUID from somewhere on the web and entered 1.0 for the BIOS Version. I didn't know if SMmaximalclock referred to the turbo or the stock frequency, so I put the stock frequency (2394) as max clock, and according to MSR it does overclock to 2.66 GHz like it's supposed to! ;-) For the last 3 letters of the serial i chose a MacBookPro8,1, since there was no MacbookPro6,x (7,1 with C2D came *before* 6,x with Core I, wtf is that about?)

CPU-X still doesn't know my Core i5, and reports Multiplier 0.0, Bus: 8450MHz and FSB: 33800MHz (just like Apple's CPU panel or Kext Utility - Which also does not see the L3 Cache for some reason, while CPU-X does!). CPU-X also still thinks it can run 16 threads....

I find it weird that there's no GenerateP/CStates=Yes in the plist, and it still works... Maybe that would help identify my CPU correctly? Also, there was no option for SMcputype or SMbusspeed in Chameleon Wizard, maybe setting that would help?

Again: Thanks a billion times for the pointer towards smbios.plist! ;-) Thanks to you I now have a 99,9% perfect Hackbook! You're my personal hero!

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.