Enhanced SpeedStep driver available

Patrick Hurrelmann outi at bytephobia.de
Wed Aug 18 00:30:20 PDT 2004


On Wed, 18 Aug 2004 04:31:11 +0400
Anton Nikiforov <anton at nikiforov.ru> wrote:

> Toxa wrote:
> > On Mon, Aug 16, 2004 at 08:06:30AM -0700, Colin Percival wrote:
> > 
> >>  Thanks to everyone who has been sending me data about their
> >>processors (and in particular, the 90nm versions), I now have
> >>a first draft of a Enhanced SpeedStep driver available.  For
> >>people with the appropriate processors (Pentium M only), this
> >>makes it possible to adjust the cpu frequency via a new sysctl
> >>(hw.est_curfreq), and have the cpu voltage adjusted at the
> >>same time.
> >>  I've also put together a very simple control daemon which
> >>reads kern.cp_time every second and adjusts the cpu frequency
> >>based on the fraction of cpu time which is idle.  This increases
> >>my laptop's battery life by around 40%.
> >>  All the code is online at
> >>http://www.daemonology.net/freebsd-est/
> >>  Assuming I don't hear any major bug reports in the next few
> >>days, I'll package these into ports and hopefully get them into
> >>the ports tree in time for 5.3-RELEASE.
> > 
> > 
> > I'm curious about processor's name. My laptop (sony vaio pcg-v505bx) has a Pentium 4 M, but not Centrino (which name is... Pentium 4 M too), afaik it's capable to support speedsted, (enhanced or not?). When loading your module:
> > 
> > [(3:40)(85.32%)(p1):~/tmp/est ] sudo kldload ./est.ko 
> > [(3:40)(85.32%)(p1):~/tmp/est ] kldstat|grep est
> > 27    1 0xc23cd000 2000     est.ko
> > [(3:40)(85.32%)(p1):~/tmp/est ] sysctl hw.est_curfreq
> > [(3:40)(85.32%)(p1):~/tmp/est ] sysctl hw.est_freqs 
> > hw.est_freqs: 
> > 
> > e.g. nothing
> > Is this for Centrino processors only? 
> > 
> > p.s.: from dmesg:
> > 
> > CPU: Mobile Intel(R) Pentium(R) 4 - M CPU 2.00GHz (1193.11-MHz
> > 686-class CPU)
> >   Origin = "GenuineIntel"  Id = 0xf27  Stepping = 7
> >     Features=0xbfebf9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
> > 
> I have COMPAQ Presario 2585 and have absolutley the same problem.
> My processor also supports for speedstep and dmesg looks like:
> #dmesg|grep CPU
> CPU: Mobile Intel(R) Pentium(R) 4     CPU 2.30GHz (2224.01-MHz 686-class 
> CPU)
> in the est.c code i found out the followig:
> .......
> err = kernel_sysctlbyname(curthread, "hw.model", hwmodel,
>                      &modellen, NULL, 0, NULL);
> .......
> if (strncmp(hwmodel, "Intel(R) Pentium(R) M processor", 31)
> 
> but my sysctl hw.model returns
> hw.model: Mobile Intel(R) Pentium(R) 4     CPU 2.30GHz
> The same as in dmesg. Changing the code to find a substring Mobile in 
> hw.model delivers system stuck at the module load time.
> 

Guys...

Pentium 4 M is the mobile version of a Pentium 4 and capable of speed step.
Pentium M is a complete new processor and not a mobile version of any other. Indeed it is based on the Pentium 3 layout (but only based ;) ).

Centrino is no processor at all. Centrino is the name for a hardware bundle:
 - Intel Pentium M (no Pentium 4!)
 - Intel Chipset (with or without onboard graphic)
 - Intel Wireless-LAN adapter

If one of this partsis missing on a system it must not be called Centrino (that's Intel politics).

I hope i could achieve clarification. This discussions are seen anywhere and many don't really know the diferences ;)

If I'm wrong in any part, please let me know.


-- 
===========================================================================
Patrick Hurrelmann         | "Programming today is a race between software
Mannheim, Germany          |  engineers striving to build bigger and better 
                           |  idiot-proof programs, and the Universe trying
outi at bytephobia.de      |  to produce bigger and better idiots. So far,
www.bytephobia.de          |  the Universe is winning."         - Rich Cook


More information about the freebsd-mobile mailing list