Jump to content

New 9.2.0 beta kernel with Realtime Clock fix with SpeedStep


17 posts in this topic

Recommended Posts

9.2.0 Universal Kernel BETA (with RealTime Clock fix)

 

This is a universal kernel compiled from source, based on ToH patches.

It has been tested on 10.5.1, and should work with 10.5.2 as well. No guarantees about 10.5.3 and above (give it a try).

 

The major improvement is that the realtime clock no longer loses sync when speedstep is enabled, for SSE2 based CPUs (those with no constant_tsc). This includes Pentium M processors. Most newer processors (SSE3 enabled) should see no difference, however those with older processor will not experience any clock/timer slow-down or stuttering GUI/audio etc.

 

Features: SSE2 support, SpeedStep support. Sleep/resume probably won't work.

 

Limitation: Can only throttle up to a minimum of 1 GHz. Clock speeds below 1 GHz are not supported (yet) due to a bug in the kernel code causing a panic.

 

How to use -

 

This assumes you have a working speedstep system (ie. the .kext and the speedstep gui).

 

1. Copy mach_kernel to /machrtc

2. Copy ACPICPUThrottle.kext to /Library/StartupItems/ACPICPUThrottle/ (or SpeedStep folder -- find where your version of the kext is, and then replace it with the one bundled in this package).

3. Change permission and ownership of ACPICPUThrottle.kext: sudo chmod -R root:wheel /Library/StartupItems/ACPICPUThrottle/ACPICPUThrottle.kext && sudo chmod -R 644 /Library/StartupItems/ACPICPUThrottle/ACPICPUThrottle.kext

 

Then reboot, at the bootloader, type machrtc to boot this kernel. To verify you are running this kernel, open Terminal.app and type:

uname -a

You should get the following version string:

Darwin matrix.local 9.2.0 Darwin Kernel Version 9.2.0: Wed Jul 30 03:20:06 IST 2008; mercurysquad; based on ToH kernel:xnu-1228.3.13/BUILD/obj/RELEASE_I386 i386

 

IMPORTANT: Make sure you are NOT using ACPICPUThrottle.kext version 1.04. This kext allows throttling below 1Ghz which at present will cause a kernel panic. Use only version 1.02.

 

NOTICE: No liability of any kind. This is a beta kernel. Post experiences here.

 

Download Link

Link to comment
Share on other sites

Hi,

is speedstep supported by the bios or must it be (also) supported by kernel/.kext ?

 

Does vanilla (10.5.4) not have that ?

 

Are there other kernels araound (i know modbin 10.5.4 , i think without speedstep) who have speedstep ?

 

My CPU; 4400 C2D cools down when nothing to do , but i dont know how - by C1E ? (also an temp downer) in BIOS enabled, or perhaps Speedstep in Bios enabled.

Does C1E works without support from kernel/OSX , means BIOS/HW make that alone and speedstep is more an software thing ?

 

I hope that questions may clear that whats what also for others here.

 

 

HINT getting CPU temps: There is a new speedit.kext for Leopard 10.5.X available !

Is also used by some cputemp tools.

http://www.increw.com/en/news/speedit-leopard.html

Link to comment
Share on other sites

Hi,

 

For SpeedStep to work on supported processors:

 

1) It should be enabled in BIOS

2) You should be using a kernel which supports speedstep (this one does)

3) You need ACPICPUThrottle.kext (preferably version 1.02)

4) You need a userspace app to control the frequencies (like CPUThrottle2 or SpeedStep.app)

 

There are a lot of speedstep kernels around, but all of them suffer from the timing problem on processors which don't support a constant timestamp counter rate. This means most sse2 cpus and pentium m processors.

 

For speedstep to work, it must be supported by the operating system also, BIOS on its own will not throttle the CPU frequency. Your CPU gets cool when its idle because that's normal for the processor even at the highest frequency. Speedstep will make it go further down by decreasing the core frequency when nothing demanding is going on.

Link to comment
Share on other sites

Thanks for clearing the details.

 

I tried yesterday Modbin 10.5.4 (first without ACPICPUThrottle.kext) , but it didnt realize that my CPU has 64 Bit. (C2D E4400).

The apple vanilla does. SO i stay with vanillla.

Does Apple didnt use speedstep - even for the portable Mac ?

 

 

For test 64 Bit : run geekbench-64 Bit (it complains that CPU inst 64 Bit) or sysctl -a (look for 64 ).

Link to comment
Share on other sites

Apple uses speedstep of course. The kext is called AppleIntelCPUPowerManagement.kext

But apparently it doesn't work well with hackintoshes (soon about to change, stay tuned..)

Thanka again !

 

So this .kext, which is very problematic for us must be patched.

Of course an working other speedstep tool/kernel /.kext is also great.

Perhaps, if in the future the AppleIntelCPUPowerManagement.kext is unterstand (GDB ...) it may be easier to use that, than create kernel+AHCITrottler+Speedstep App.

 

Because al lot of things with Leo are fixed, know now from the professinal Darwin codes, i hope they get also AppleIntelCPUPowerManagement.kext fixed - at least for using vanilla + C2D CPU.

Link to comment
Share on other sites

ooo i'm all tingly inside, woo wooo

There is a new kernel + kext in the works which will replace AppleIntelCPUPowerManagement.kext.

It will work also with existing sleep kernels. Preliminary testing on a real macbook has showed that the kext performs better than Apple's own kext, temperatures go about 15º to 20ºC lower, and sleep will work together with speedstep.

 

if in the future the AppleIntelCPUPowerManagement.kext is unterstand (GDB ...) it may be easier to use [...] i hope they get also AppleIntelCPUPowerManagement.kext fixed - at least for using vanilla + C2D CPU.

That is the route being taken now. The new kext will be a drop-in replacement for apple's cpu pm kext. Sleep or vanilla kernels + updated acpicputhrottler kext already works well for Core or better processors but if not being released until all testing is done. Cheers.

Link to comment
Share on other sites

loving this kernel. thought i was going crazy with the sound issues.

 

it works flawlessly on my inspiron 6000. heres hoping to a version with 800mhz support.

 

wow...this thing just flies now. apps used to take forever to load when the cpu throttled and now....like lightning.

 

thanks so much!

Link to comment
Share on other sites

  • 3 weeks later...

hey, i posted in the other thread about the issues i was having using this kernel with enhancedspeedstep.kext but after doing some tinkering i am certain now that the issue is with this kernel and not with the kext.

 

i tried both this kernel and your 9.4 kernel on my pentium m 1.6 overclocked to 2.13 and under either i was completely unable to change the cpu frequency. it would always stick at 800 (or 1067 with 9.2) once i switched to a regular 9.2 sleep kernel it was able to throttle normally.

 

any ideas on how we might fix this?

 

EDIT: strike that again, fixed it by using modbins system.kext instead of the original apple one. seems to work fine now. thanks for all your great work!

Link to comment
Share on other sites

  • 11 months later...
 Share

×
×
  • Create New...