All of lore.kernel.org
 help / color / mirror / Atom feed
* Intel Core2Duo mobile - how does the VID get set?
@ 2008-02-19 12:19 Brian Morrison
       [not found] ` <924EFEDD5F540B4284297C4DC59F3DEE90C8BD@orsmsx423.amr.corp.intel.com>
  2008-02-19 19:12 ` Wes Felter
  0 siblings, 2 replies; 4+ messages in thread
From: Brian Morrison @ 2008-02-19 12:19 UTC (permalink / raw)
  To: kernel

After a fair bit of Googling and reading around, I'm none the wiser 
about exactly how Linux 2.6.x sets the processor VID (or for that matter 
how it decides the FID settings) when using the ondemand governor and 
cpufreq stuff.

Can anyone tell me a) whether this is obtained from the BIOS, something 
in the MSR of the processor or elsewhere and b) whether there is an 
interface in /proc or /sys where one can find out what is set and modify it?

I'm not subscribed to the list so a Cc: would be appreciated, cheers!

-- 

Brian Morrison

bdm@fenrir.org.uk


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

* Re: Intel Core2Duo mobile - how does the VID get set?
       [not found] ` <924EFEDD5F540B4284297C4DC59F3DEE90C8BD@orsmsx423.amr.corp.intel.com>
@ 2008-02-19 18:33   ` Brian Morrison
  0 siblings, 0 replies; 4+ messages in thread
From: Brian Morrison @ 2008-02-19 18:33 UTC (permalink / raw)
  To: linux-kernel

Pallipadi, Venkatesh wrote:

>> After a fair bit of Googling and reading around, I'm none the wiser 
>> about exactly how Linux 2.6.x sets the processor VID (or for 
>> that matter 
>> how it decides the FID settings) when using the ondemand governor and 
>> cpufreq stuff.
>>
>> Can anyone tell me a) whether this is obtained from the BIOS, 
>> something 
>> in the MSR of the processor or elsewhere and
> 
> Yes. The freq and voltage supported comes from the platform BIOS. BIOS
> exports this in an ACPI table which is handled by acpi-cpufreq driver in
> Linux kernel.
> 

OK, thanks for that.

>  
>> b) whether there is an 
>> interface in /proc or /sys where one can find out what is set 
>> and modify it?
> 
> There is no way of modifying and using new VIDs etc in Linux kernel
> (other than exporting your own DSDT and hacking the related code).

Is there a way of viewing the ACPI table contents relating to the VIDs
and FIDs?

-- 

Brian Morrison

bdm@fenrir.org.uk


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

* Re: Intel Core2Duo mobile - how does the VID get set?
  2008-02-19 12:19 Brian Morrison
       [not found] ` <924EFEDD5F540B4284297C4DC59F3DEE90C8BD@orsmsx423.amr.corp.intel.com>
@ 2008-02-19 19:12 ` Wes Felter
  1 sibling, 0 replies; 4+ messages in thread
From: Wes Felter @ 2008-02-19 19:12 UTC (permalink / raw)
  To: Brian Morrison; +Cc: cpufreq

Brian Morrison wrote:
> After a fair bit of Googling and reading around, I'm none the wiser 
> about exactly how Linux 2.6.x sets the processor VID (or for that matter 
> how it decides the FID settings) when using the ondemand governor and 
> cpufreq stuff.
> 
> Can anyone tell me a) whether this is obtained from the BIOS, something 
> in the MSR of the processor or elsewhere and b) whether there is an 
> interface in /proc or /sys where one can find out what is set and modify 
> it?

There is an ACPI table created by the BIOS that lists all the P-states; 
a P-state is a <frequency, opaque value> tuple where the opaque value 
contains the FID and VID but Intel pretends it is magic. The 
acpi-cpufreq driver reads this table and uses it to change states by 
writing the opaque value into the appropriate MSR.

The Intel 64 and IA-32 Architectures Software Developer’s Manual, Volume 
3A, chapter 13 describes the hardware (vaguely).

If you want to see what is going on under the hood, try Linux-PHC: 
http://phc.athousandnights.de/

(Setting followup to cpufreq list.)

Wes Felter - wesley@felter.org

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

* Re: Intel Core2Duo mobile - how does the VID get set?
       [not found]   ` <fa.2QH6xosNob5B2/8HmS0yYeHCvG4@ifi.uio.no>
@ 2008-02-19 23:52     ` Robert Hancock
  0 siblings, 0 replies; 4+ messages in thread
From: Robert Hancock @ 2008-02-19 23:52 UTC (permalink / raw)
  To: Brian Morrison; +Cc: linux-kernel

Brian Morrison wrote:
> Pallipadi, Venkatesh wrote:
> 
>>> After a fair bit of Googling and reading around, I'm none the wiser 
>>> about exactly how Linux 2.6.x sets the processor VID (or for that 
>>> matter how it decides the FID settings) when using the ondemand 
>>> governor and cpufreq stuff.
>>>
>>> Can anyone tell me a) whether this is obtained from the BIOS, 
>>> something in the MSR of the processor or elsewhere and
>>
>> Yes. The freq and voltage supported comes from the platform BIOS. BIOS
>> exports this in an ACPI table which is handled by acpi-cpufreq driver in
>> Linux kernel.
>>
> 
> OK, thanks for that.
> 
>>  
>>> b) whether there is an interface in /proc or /sys where one can find 
>>> out what is set and modify it?
>>
>> There is no way of modifying and using new VIDs etc in Linux kernel
>> (other than exporting your own DSDT and hacking the related code).
> 
> Is there a way of viewing the ACPI table contents relating to the VIDs
> and FIDs?

Viewing the decompiled ACPI DSDT may provide some hints, however the 
kernel itself knows nothing about VID/FID settings for acpi-cpufreq, 
basically the kernel writes to magic ACPI registers and the BIOS or 
hardware take over to do what's required..

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

end of thread, other threads:[~2008-02-19 23:53 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <fa.PElYyuLIylS1JDURm06DXLz2hAs@ifi.uio.no>
     [not found] ` <fa.pELF6tZ3LC4Qymp4Nyy0opWOQCE@ifi.uio.no>
     [not found]   ` <fa.2QH6xosNob5B2/8HmS0yYeHCvG4@ifi.uio.no>
2008-02-19 23:52     ` Intel Core2Duo mobile - how does the VID get set? Robert Hancock
2008-02-19 12:19 Brian Morrison
     [not found] ` <924EFEDD5F540B4284297C4DC59F3DEE90C8BD@orsmsx423.amr.corp.intel.com>
2008-02-19 18:33   ` Brian Morrison
2008-02-19 19:12 ` Wes Felter

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.