Jump to content

Experimental Intel SpeedStep kext


  • This topic is locked This topic is locked
290 replies to this topic

#261
mercurysquad

mercurysquad

    InsanelyMac Legend

  • Retired Developers
  • 521 posts
  • Gender:Male
  • Location:India
Hi people,

1- Those not getting proper timing, make sure you use you are using Chameleon, or another EFI bootloader (FSB is crucial). Also make sure you are using rtc fix beta kernel, and set kernel features to -1 in info.plist

2- Autothrottle saving settings - will come soon.

3- Still getting hotter CPU in osx vs. Windows or Linux? It seems cpu power management is much more than just speedstepping or undervolting. I'm currently reading the docs and they are incredibly complicated (ref. Intel System Developers Manual part 1 chapter on power management). Will try to implement as many different power management features as possible, but can't really promise anything. On my system I get about 3 to 4 șC higher temp than on Linux, and that's good enough for me. If you get more than a 10șC difference, something could be wrong, but most probably it's just the lack of more advanced PM features built into the kext (eg. it doesnt auto-halt a core if no threads are running on it. It doesn't put the CPU into another C-state, no mwait instructions are inserted etc etc). As I have mentioned before, more developers who have experience with power management, are welcome to contribute (thanks Superhai!).

Also thanks mitch_de and others who have been helping users in this thread.

#262
dakkie

dakkie

    InsanelyMac Protégé

  • Members
  • PipPip
  • 72 posts
  • Location:Cracow/planet POLAND
Works fine.. it's excellent ;-)

#263
Wiwi

Wiwi

    InsanelyMac Guy

  • Members
  • PipPipPipPip
  • 212 posts
  • Gender:Male

2- Autothrottle saving settings - will come soon.




Wouhou !!!!!!!!!!!!!!!!!!

#264
Joeandmat

Joeandmat

    InsanelyMacaholic

  • Retired
  • 3,356 posts
  • Gender:Male
  • Location:Turin (Politecnico)
finally! i'm bored to click everytime that i switch on, the autothrottle button! :D

thanks!

#265
Rakar

Rakar

    InsanelyMac Protégé

  • Members
  • Pip
  • 7 posts
Hey all, I installed this kext and it works great but the only I problem I have is that even with me not using it and it being at the lowest speed, my processor slowly gets hotter and hotter. I don't think the fans are keeping it cool at all.

On the previous page, someone said that AppleACPIThermal.kext needs to be loaded, but when I check kextstat it's not listed.

How do I get it to load or is there another way to keep my laptop cooler?

#266
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow
It is for Leo only?

kextload: extension /Off/IntelEnhancedSpeedStep.kext appears to be valid
kextload: loading extension /Off/IntelEnhancedSpeedStep.kext
46net_mercurysquad_driver_IntelEnhancedSpeedStep is not compatible with its superclass, 9IOService superclass changed?
kextload: a link/load error occured for kernel extension /Off/IntelEnhancedSpeedStep.kext
load failed for extension /Off/IntelEnhancedSpeedStep.kext
(run kextload with -t for diagnostic output)



#267
mercurysquad

mercurysquad

    InsanelyMac Legend

  • Retired Developers
  • 521 posts
  • Gender:Male
  • Location:India

It is for Leo only?


Yes, sorry I've built and tested it only on Leopard. There's no reason it shouldn't work on tiger too so whoever wants to give it a try, you're most welcome. See http://code.google.com/p/xnu-speedstep Source tab.

#268
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow

Yes, sorry I've built and tested it only on Leopard. There's no reason it shouldn't work on tiger too so whoever wants to give it a try, you're most welcome. See http://code.google.com/p/xnu-speedstep Source tab.

Thank for sources. I will it to try with my first hackintosh later.
For laptop it is impossible because of 10.4.6
/*
 * Rendezvous
 */
extern "C" void mp_rendezvous(void (*setup_func)(void *),
				  void (*action_func)(void *),
				  void (*teardown_func)(void *),
				  void *arg);
This feature present in 10.4.8 and up.

#269
mercurysquad

mercurysquad

    InsanelyMac Legend

  • Retired Developers
  • 521 posts
  • Gender:Male
  • Location:India
10.4.8 brought a lot of changes to the kernel, so it's better to target 10.4.8 and above.
I'll try to recompile it myself for Tiger+Leopard.

#270
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow
I recompile it with MacOS SDK 10.4u and kextload under Tiger 10.4.9.
Same output as in post #266.
I don't understand yet what is the problem for Tiger.

#271
asstastic

asstastic

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 319 posts
  • Gender:Male
  • Location:Austin, TX
The latest works for me using 10.5.5 on vanilla kernel however i've been getting kernel panics when using it with the beta SpeedStep.app. I'd like to trace the problem but I don't know where to start. In addition, it'd be nice to see a per-frequency/p-state voltage adjustment available in the next version of SpeedStep.app, something similar to the undervolting options available in CoolBook or RMClock. That way I can keep my 2.16C2D at a nice and cool 1.0v.

#272
PeteRock

PeteRock

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 108 posts
I think I am getting the same problem as you asstastic, the kext loads fine on bootup but when I go to use speedstep or use sysctl to change the speed it creates a kernel panic.

Would love to get this working fully under 10.5.5 and sleep too so here's hoping!

#273
mercurysquad

mercurysquad

    InsanelyMac Legend

  • Retired Developers
  • 521 posts
  • Gender:Male
  • Location:India
Guys -- PLEASE read the first page as well as the google code Wiki pages.

-- You CAN set per-frequency voltages (the SpeedStep app is not my creation and it doesnt have the feature, so you will either have to edit the kext's Info.plist or change the voltage manually using sysctl -w kern.cputhrottle_voltage=xyz)

-- Kernel Panic: if you get KP, edit the Info.plist inside the kext and change KernelFeatures to 0. You can also try 1,2 and 3. -1 means auto-detect, which sometimes doesnt work.

-- The loading issues on Tiger: try to change the versions of the components inside OSBundleRequired array of the Info.plist, change em to 8.4.1 or similar and try again.

#274
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow
Already done
<key>OSBundleLibraries</key>
	<dict>
		<key>com.apple.kernel.bsd</key>
		<string>7.9.9</string>
		<key>com.apple.kernel.iokit</key>
		<string>6.9.9</string>
		<key>com.apple.kernel.libkern</key>
		<string>6.9.9</string>
		<key>com.apple.kernel.mach</key>
		<string>6.9.9</string>
		<key>com.apple.kpi.bsd</key>
		<string>8.4.1</string>
		<key>com.apple.kpi.unsupported</key>
		<string>8.4.1</string>
	</dict>
Compare
Index Refs Address	Size	   Wired	  Name (Version) <Linked Against>
	1	1 0x0		0x0		0x0		com.apple.kernel (8.4.1)
	2   14 0x0		0x0		0x0		com.apple.kpi.bsd (8.4.1)
	3   21 0x0		0x0		0x0		com.apple.kpi.iokit (8.4.1)
	4   23 0x0		0x0		0x0		com.apple.kpi.libkern (8.4.1)
	5   21 0x0		0x0		0x0		com.apple.kpi.mach (8.4.1)
	6   14 0x0		0x0		0x0		com.apple.kpi.unsupported (8.4.1)
	7	1 0x0		0x0		0x0		com.apple.iokit.IONVRAMFamily (8.4.1)
	8	1 0x0		0x0		0x0		com.apple.driver.AppleNMI (8.4.1)
	9	1 0x0		0x0		0x0		com.apple.iokit.IOSystemManagementFamily (8.4.1)
   10	1 0x0		0x0		0x0		com.apple.iokit.ApplePlatformFamily (8.4.1)
   11   38 0x0		0x0		0x0		com.apple.kernel.6.0 (7.9.9)
   12	1 0x0		0x0		0x0		com.apple.kernel.bsd (7.9.9)
   13	1 0x0		0x0		0x0		com.apple.kernel.iokit (7.9.9)
   14	1 0x0		0x0		0x0		com.apple.kernel.libkern (7.9.9)
   15	1 0x0		0x0		0x0		com.apple.kernel.mach (7.9.9)
I see no mismatching!

#275
PeteRock

PeteRock

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 108 posts

Guys -- PLEASE read the first page as well as the google code Wiki pages.

-- You CAN set per-frequency voltages (the SpeedStep app is not my creation and it doesnt have the feature, so you will either have to edit the kext's Info.plist or change the voltage manually using sysctl -w kern.cputhrottle_voltage=xyz)

-- Kernel Panic: if you get KP, edit the Info.plist inside the kext and change KernelFeatures to 0. You can also try 1,2 and 3. -1 means auto-detect, which sometimes doesnt work.

-- The loading issues on Tiger: try to change the versions of the components inside OSBundleRequired array of the Info.plist, change em to 8.4.1 or similar and try again.


I tried changing the KernelFeatures field and rebooted each time I did so and unfortunately each one resulted in a KP, is there anything I can supply you with to maybe help?

#276
mercurysquad

mercurysquad

    InsanelyMac Legend

  • Retired Developers
  • 521 posts
  • Gender:Male
  • Location:India

I tried changing the KernelFeatures field and rebooted each time I did so and unfortunately each one resulted in a KP, is there anything I can supply you with to maybe help?


After changing Info.plist you have to do before rebooting :
sudo touch /System/Library/Extensions

Also try booting with -f -v option. If that doesn't help, please boot using -s option, then at the command prompt, type kextload /System/Library/Extensions/IntelEnhancedSpeedStep.kext, and if you get a KP, note down the error message and post here.

#277
lemon

lemon

    InsanelyMac Protégé

  • Members
  • Pip
  • 27 posts
It didnt even load the kext =)
Intel D945 GNT
Pentium D930
supposed to support speedstep


The app says kext not loadet

I use XNU Kernel by ToH.

Ill try on a other Install if I get it to work

#278
PeteRock

PeteRock

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 108 posts
Here is an output from dmesg to do with the p-states for cpu throttling, is it something to do with the returns state 0xffffffff?

ACPI_SMC_CtrlLoop::initCPUCtrlLoop - pmCPUControl (PMIOCSETPSTATETABLE) returned 0xffffffff
Physical address is f0610000
TCR = 24800000
ApplePS2Trackpad: Synaptics TouchPad v7.0
GFX0: family specific matching fails
display: family specific matching fails
GFX0: family specific matching fails
ALCinject: Starting.
ALCinject: Setting built-in=<data not shown>
ALCinject: Setting layout-id=<data not shown>
GFX0: family specific matching fails
Alkor: Starting.
Chosen model GMA 950
Alkor: Setting built-in=<data not shown>
Alkor: Setting AAPL,HasPanel=<data not shown>
Alkor: Setting AAPL,SelfRefreshSupported=<data not shown>
Alkor: Setting AAPL,NumFramebuffers=<data not shown>
Alkor: Setting AAPL,NumDisplays=<data not shown>
Alkor: Setting AAPL01,Depth=<data not shown>
Alkor: Setting AAPL01,Pipe=<data not shown>
Alkor: Setting AAPL01,DataJustify=<data not shown>
GFX0: match category IOFramebuffer exists
dsmos: Initializing...
dsmos: Hook and decryption contexts set!
IntelEnhancedSpeedStep: INFO Initializing version 1.3.2 © Prashant Vaibhav <mercurysquad@yahoo.com>
dsmos: Starting...
IntelEnhancedSpeedStep: INFO On your processor, voltages can be changed in 12.5 mV steps
IntelEnhancedSpeedStep: INFO Using 4 PStates.

#279
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow
First good result in 10.4.6
kextload: extension /Off/IntelEnhancedSpeedStep.kext appears to be valid
kextload: loading extension /Off/IntelEnhancedSpeedStep.kext
I disable mp_rendezvous so I don't see if it work or no
//Slice - I have no rendezvous	
//	mp_rendezvous(disableInterrupts, throttleCPU, enableInterrupts, &p);
	disableInterrupts(&p);
	throttleCPU(&p);
	enableInterrupts(&p);
//
10.4.6 is not good system for that.

Attached Files



#280
mercurysquad

mercurysquad

    InsanelyMac Legend

  • Retired Developers
  • 521 posts
  • Gender:Male
  • Location:India

First good result in 10.4.6

kextload: extension /Off/IntelEnhancedSpeedStep.kext appears to be valid
kextload: loading extension /Off/IntelEnhancedSpeedStep.kext
I disable mp_rendezvous so I don't see if it work or no
//Slice - I have no rendezvous	
//	mp_rendezvous(disableInterrupts, throttleCPU, enableInterrupts, &p);
	disableInterrupts(&p);
	throttleCPU(&p);
	enableInterrupts(&p);
//
10.4.6 is not good system for that.


Hmm, that would mean the kext will only work reliably for uni-processor systems. Can't say about systems with more than 1 processor. Does 10.4.6 support multiprocessor systems??





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy