All of lore.kernel.org
 help / color / mirror / Atom feed
* Mobile Celeron
@ 2007-03-12 20:20 Ralf Meyer
  2007-03-13  1:38 ` markus reichelt
  0 siblings, 1 reply; 10+ messages in thread
From: Ralf Meyer @ 2007-03-12 20:20 UTC (permalink / raw)
  To: cpufreq

Hi,

is a Mobile Celeron supposed to be able to do CPU frequency scaling?

$ cat /proc/cpuinfo
---
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 11
model name      : Mobile Intel(R) Celeron(TM) CPU          733MHz
stepping        : 4
cpu MHz         : 730.993
cache size      : 256 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 mmx fxsr sse up
bogomips        : 1463.43
---

Thanks for any pointers.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Mobile Celeron
  2007-03-12 20:20 Mobile Celeron Ralf Meyer
@ 2007-03-13  1:38 ` markus reichelt
  2007-03-13 18:14   ` Ralf Meyer
  0 siblings, 1 reply; 10+ messages in thread
From: markus reichelt @ 2007-03-13  1:38 UTC (permalink / raw)
  To: cpufreq


[-- Attachment #1.1: Type: text/plain, Size: 274 bytes --]

* Ralf Meyer <ranfyy@gmail.com> wrote:

> is a Mobile Celeron supposed to be able to do CPU frequency
> scaling?

run cpuid and check for something like Enhanced Intel SpeedStep
Technology

cpuid @ http://www.etallen.com/cpuid.html


-- 
left blank, right bald

[-- Attachment #1.2: Type: application/pgp-signature, Size: 189 bytes --]

[-- Attachment #2: Type: text/plain, Size: 147 bytes --]

_______________________________________________
Cpufreq mailing list
Cpufreq@lists.linux.org.uk
http://lists.linux.org.uk/mailman/listinfo/cpufreq

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Mobile Celeron
  2007-03-13  1:38 ` markus reichelt
@ 2007-03-13 18:14   ` Ralf Meyer
  2007-03-13 19:01     ` Dave Jones
  0 siblings, 1 reply; 10+ messages in thread
From: Ralf Meyer @ 2007-03-13 18:14 UTC (permalink / raw)
  To: cpufreq

On 3/13/07, markus reichelt <ml@mareichelt.de> wrote:
> * Ralf Meyer <ranfyy@gmail.com> wrote:
>
> > is a Mobile Celeron supposed to be able to do CPU frequency
> > scaling?
>
> run cpuid and check for something like Enhanced Intel SpeedStep
> Technology
>
> cpuid @ http://www.etallen.com/cpuid.html

Thanks. I didn't know this tool.

$ cpuid | grep -i speed     # gave me:
---
      Enhanced Intel SpeedStep Technology    = false
---

Its man page led me to the Datasheet (29851706.pdf). In the Power
Management chapter there is no mention of speedstep or enhanced
speedstep but something called Quickstart. I never heard about this
before.

Does Quickstart work all by itself?

My original question should have been clearer in that I wanted to know
if the hardware is capable of frequency scaling of some sort.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Mobile Celeron
  2007-03-13 18:14   ` Ralf Meyer
@ 2007-03-13 19:01     ` Dave Jones
  2007-03-13 19:33       ` Ralf Meyer
  0 siblings, 1 reply; 10+ messages in thread
From: Dave Jones @ 2007-03-13 19:01 UTC (permalink / raw)
  To: Ralf Meyer; +Cc: cpufreq

On Tue, Mar 13, 2007 at 07:14:16PM +0100, Ralf Meyer wrote:
 > On 3/13/07, markus reichelt <ml@mareichelt.de> wrote:
 > > * Ralf Meyer <ranfyy@gmail.com> wrote:
 > >
 > > > is a Mobile Celeron supposed to be able to do CPU frequency
 > > > scaling?
 > >
 > > run cpuid and check for something like Enhanced Intel SpeedStep
 > > Technology
 > >
 > > cpuid @ http://www.etallen.com/cpuid.html
 > 
 > Thanks. I didn't know this tool.
 > 
 > $ cpuid | grep -i speed     # gave me:
 > ---
 >       Enhanced Intel SpeedStep Technology    = false
 > ---
 > 
 > Its man page led me to the Datasheet (29851706.pdf). In the Power
 > Management chapter there is no mention of speedstep or enhanced
 > speedstep but something called Quickstart. I never heard about this
 > before.
 > 
 > Does Quickstart work all by itself?

iirc, quickstart is just a c-state, that (providing your BIOS has
an ACPI implementation that works) should 'just work'.

 > My original question should have been clearer in that I wanted to know
 > if the hardware is capable of frequency scaling of some sort.

I don't recall any celerons having frequency scaling.

	Dave

-- 
http://www.codemonkey.org.uk

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Mobile Celeron
  2007-03-13 19:01     ` Dave Jones
@ 2007-03-13 19:33       ` Ralf Meyer
  2007-03-13 19:37         ` Ralf Meyer
  2007-03-13 19:42         ` Dave Jones
  0 siblings, 2 replies; 10+ messages in thread
From: Ralf Meyer @ 2007-03-13 19:33 UTC (permalink / raw)
  To: Dave Jones; +Cc: cpufreq

On 3/13/07, Dave Jones <davej@redhat.com> wrote:

> I don't recall any celerons having frequency scaling.

That's what I read all over the place by goo^W$searchengine_ing around.

The funny thing thing is there is something called
"Intel830.PDK.V5.1.1Gold" from Intel which contains some small patches
to speedstep-smi and speedstep-lib which mention "Mobile Celeron" in
the comments. I's against a 2.6.10. But quite small.

-- 
bye
  ranf

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Mobile Celeron
  2007-03-13 19:33       ` Ralf Meyer
@ 2007-03-13 19:37         ` Ralf Meyer
  2007-03-13 19:42         ` Dave Jones
  1 sibling, 0 replies; 10+ messages in thread
From: Ralf Meyer @ 2007-03-13 19:37 UTC (permalink / raw)
  To: cpufreq

On 3/13/07, I wrote:
> The funny thing thing is there is something called
> "Intel830.PDK.V5.1.1Gold" from Intel which contains some small patches
> to speedstep-smi and speedstep-lib which mention "Mobile Celeron" in

Argh: that is speedstep-ich

> the comments. I's against a 2.6.10. But quite small.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Mobile Celeron
  2007-03-13 19:33       ` Ralf Meyer
  2007-03-13 19:37         ` Ralf Meyer
@ 2007-03-13 19:42         ` Dave Jones
  2007-03-13 19:47           ` Ralf Meyer
  1 sibling, 1 reply; 10+ messages in thread
From: Dave Jones @ 2007-03-13 19:42 UTC (permalink / raw)
  To: Ralf Meyer; +Cc: cpufreq

On Tue, Mar 13, 2007 at 08:33:52PM +0100, Ralf Meyer wrote:
 > On 3/13/07, Dave Jones <davej@redhat.com> wrote:
 > 
 > > I don't recall any celerons having frequency scaling.
 > 
 > That's what I read all over the place by goo^W$searchengine_ing around.
 > 
 > The funny thing thing is there is something called
 > "Intel830.PDK.V5.1.1Gold" from Intel which contains some small patches
 > to speedstep-smi and speedstep-lib which mention "Mobile Celeron" in
 > the comments. I's against a 2.6.10. But quite small.

Not heard of this. Post the diff ?
Might be something useful in it.

	Dave

-- 
http://www.codemonkey.org.uk

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Mobile Celeron
  2007-03-13 19:42         ` Dave Jones
@ 2007-03-13 19:47           ` Ralf Meyer
  2007-03-13 20:27             ` Dave Jones
  0 siblings, 1 reply; 10+ messages in thread
From: Ralf Meyer @ 2007-03-13 19:47 UTC (permalink / raw)
  To: cpufreq

On 3/13/07, Dave Jones <davej@redhat.com> wrote:
> On Tue, Mar 13, 2007 at 08:33:52PM +0100, Ralf Meyer wrote:
>  > On 3/13/07, Dave Jones <davej@redhat.com> wrote:
>  >
>  > > I don't recall any celerons having frequency scaling.
>  >
>  > That's what I read all over the place by goo^W$searchengine_ing around.
>  >
>  > The funny thing thing is there is something called
>  > "Intel830.PDK.V5.1.1Gold" from Intel which contains some small patches
>  > to speedstep-smi and speedstep-lib which mention "Mobile Celeron" in
>  > the comments. I's against a 2.6.10. But quite small.
>
> Not heard of this. Post the diff ?
> Might be something useful in it.

No problem:
---
diff -urN linux-2.6.10/arch/i386/kernel/cpu/cpufreq/speedstep-ich.c
linux-2.6.10-8xx/arch/i386/kernel/cpu/cpufreq/speedstep-ich.c
--- linux-2.6.10/arch/i386/kernel/cpu/cpufreq/speedstep-ich.c	2004-12-25
05:33:48.000000000 +0800
+++ linux-2.6.10-8xx/arch/i386/kernel/cpu/cpufreq/speedstep-ich.c	2005-08-26
10:24:23.000000000 +0800
@@ -53,6 +53,7 @@


 #define dprintk(msg...) cpufreq_debug_printk(CPUFREQ_DEBUG_DRIVER,
"speedstep-ich", msg)
+//#define dprintk(msg...) printk("speedstep-ich " msg)


 /**
@@ -171,6 +172,16 @@
 		return 4; /* 4-M */

 	speedstep_chipset_dev = pci_get_subsys(PCI_VENDOR_ID_INTEL,
+			      PCI_DEVICE_ID_INTEL_82801DB_5,
+			      PCI_ANY_ID,
+			      PCI_ANY_ID,
+			      NULL);
+	if (speedstep_chipset_dev)
+	{
+		return 4; /* 4-M */
+	}
+
+	speedstep_chipset_dev = pci_get_subsys(PCI_VENDOR_ID_INTEL,
 			      PCI_DEVICE_ID_INTEL_82801CA_12,
 			      PCI_ANY_ID,
 			      PCI_ANY_ID,
diff -urN linux-2.6.10/arch/i386/kernel/cpu/cpufreq/speedstep-lib.c
linux-2.6.10-8xx/arch/i386/kernel/cpu/cpufreq/speedstep-lib.c
--- linux-2.6.10/arch/i386/kernel/cpu/cpufreq/speedstep-lib.c	2004-12-25
05:35:27.000000000 +0800
+++ linux-2.6.10-8xx/arch/i386/kernel/cpu/cpufreq/speedstep-lib.c	2005-08-26
10:24:56.000000000 +0800
@@ -20,6 +20,7 @@
 #include "speedstep-lib.h"

 #define dprintk(msg...) cpufreq_debug_printk(CPUFREQ_DEBUG_DRIVER,
"speedstep-lib", msg)
+//#define dprintk(msg...) printk("speedstep-lib " msg)

 #ifdef CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK
 static int relaxed_check = 0;
@@ -53,6 +54,7 @@
 		{ 85, 0x26 },
 		{ 90, 0x20 },
 		{ 100, 0x2b },
+		{ 95, 0x24 },  // Workaround
 		{ 0, 0xff }     /* error or unknown value */
 	};

@@ -79,6 +81,7 @@
 	/* decode the FSB */
 	msr_tmp &= 0x00c0000;
 	msr_tmp >>= 18;
+	dprintk("msr_tmp=0x%x\n", msr_tmp);
 	while (msr_tmp != msr_decode_fsb[i].bitmap) {
 		if (msr_decode_fsb[i].bitmap == 0xff)
 			return 0;
@@ -92,12 +95,17 @@
 	} else
 		msr_lo &= 0x0bc00000;
 	msr_lo >>= 22;
+	dprintk("msr_lo=0x%x\n", msr_lo);
 	while (msr_lo != msr_decode_mult[j].bitmap) {
 		if (msr_decode_mult[j].bitmap == 0xff)
+		{
+			dprintk("not found\n");
 			return 0;
+		}
 		j++;
 	}

+	dprintk("ratio=%d, fsb=%d\n", msr_decode_mult[j].ratio,
msr_decode_fsb[i].value);
 	dprintk("speed is %u\n", (msr_decode_mult[j].ratio *
msr_decode_fsb[i].value * 100));

 	return (msr_decode_mult[j].ratio * msr_decode_fsb[i].value * 100);
@@ -199,6 +207,12 @@

 	dprintk("x86: %x, model: %x\n", c->x86, c->x86_model);

+	// workaround for Celeron-M
+	if (c->x86 == 6 && c->x86_model == 9) {
+		dprintk("Pentium-M/Celeron-M processor detected\n");
+		return SPEEDSTEP_PROCESSOR_PM;
+	}
+
 	if ((c->x86_vendor != X86_VENDOR_INTEL) ||
 	    ((c->x86 != 6) && (c->x86 != 0xF)))
 		return 0;
@@ -268,6 +282,12 @@

 		ebx &= 0x000000FF;

+		// Workaround for Mobile Celeron
+		if (ebx == 7)
+		{
+			dprintk("Mobile Celeron\n");
+			return SPEEDSTEP_PROCESSOR_PIII_T;
+		}
 		if (ebx != 0x06)
 			return 0;

@@ -341,6 +361,7 @@
 	set_state(SPEEDSTEP_LOW);
 	*low_speed = speedstep_get_processor_frequency(processor);
 	if (!*low_speed) {
+		dprintk("set to low speed failed!\n");
 		ret = -EIO;
 		goto out;
 	}
@@ -351,6 +372,7 @@
 	set_state(SPEEDSTEP_HIGH);
 	*high_speed = speedstep_get_processor_frequency(processor);
 	if (!*high_speed) {
+		dprintk("set to high speed failed!\n");
 		ret = -EIO;
 		goto out;
 	}
@@ -358,7 +380,9 @@
 	dprintk("high seped is %u\n", *high_speed);

 	if (*low_speed == *high_speed) {
-		ret = -ENODEV;
+		dprintk("low speed is same as high speed?\n");
+		/* Workaround for celeron-M */
+		//ret = -ENODEV;
 		goto out;
 	}
---

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Mobile Celeron
  2007-03-13 19:47           ` Ralf Meyer
@ 2007-03-13 20:27             ` Dave Jones
  2007-03-13 20:46               ` Ralf Meyer
  0 siblings, 1 reply; 10+ messages in thread
From: Dave Jones @ 2007-03-13 20:27 UTC (permalink / raw)
  To: Ralf Meyer; +Cc: cpufreq

On Tue, Mar 13, 2007 at 08:47:00PM +0100, Ralf Meyer wrote:

This is really suspect..

 >  	if (*low_speed == *high_speed) {
 > -		ret = -ENODEV;
 > +		dprintk("low speed is same as high speed?\n");
 > +		/* Workaround for celeron-M */
 > +		//ret = -ENODEV;
 >  		goto out;
 >  	}

So it has low speed == high speed ? Then what's the point ?
Very strange.

	Dave

-- 
http://www.codemonkey.org.uk

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Mobile Celeron
  2007-03-13 20:27             ` Dave Jones
@ 2007-03-13 20:46               ` Ralf Meyer
  0 siblings, 0 replies; 10+ messages in thread
From: Ralf Meyer @ 2007-03-13 20:46 UTC (permalink / raw)
  To: Dave Jones; +Cc: cpufreq

On 3/13/07, Dave Jones <davej@redhat.com> wrote:
> On Tue, Mar 13, 2007 at 08:47:00PM +0100, Ralf Meyer wrote:
>
> This is really suspect..
>
>  >      if (*low_speed == *high_speed) {
>  > -            ret = -ENODEV;
>  > +            dprintk("low speed is same as high speed?\n");
>  > +            /* Workaround for celeron-M */
>  > +            //ret = -ENODEV;
>  >              goto out;
>  >      }
>
> So it has low speed == high speed ? Then what's the point ?
> Very strange.

I can't tell you who hacked that up. trainee (intern?) I have no idea.

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2007-03-13 20:46 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-03-12 20:20 Mobile Celeron Ralf Meyer
2007-03-13  1:38 ` markus reichelt
2007-03-13 18:14   ` Ralf Meyer
2007-03-13 19:01     ` Dave Jones
2007-03-13 19:33       ` Ralf Meyer
2007-03-13 19:37         ` Ralf Meyer
2007-03-13 19:42         ` Dave Jones
2007-03-13 19:47           ` Ralf Meyer
2007-03-13 20:27             ` Dave Jones
2007-03-13 20:46               ` Ralf Meyer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.