# [ACPI] Processor promotion/demotion (C1, C2, C3)

## LostControl

Hi,

I have some small questions related to unit "processor" acpi.  

1/ Is it normal that when I do to turn a soft that loads the CPU (nbench for example), the processor passes the biggest party of his time in the state C2?  Not should it be in the state C1?  Or then is it in the state C0 (cf. doc ACPI)?

2/ When I connect my mouse USB, "bus master activity" remains constantly to "ffffffff" but as soon as I disconnect it, the values begin at last to vary and the processeur can pass in C3.  Normal behavior?

Thanks  :Wink: 

----------

## Earthwings

 *LostControl wrote:*   

> 
> 
> 1/ Is it normal that when I do to turn a soft that loads the CPU (nbench for example), the processor passes the biggest party of his time in the state C2?  Not should it be in the state C1?  Or then is it in the state C0 (cf. doc ACPI)?
> 
> 

 

It will be in fact in C0. The "*"-marked line you see and "active state" from "cat /proc/acpi/processor/CPU/state" do not necessarily tell you which state is currently active, but which one will be active when the system is idle. Quoting the docs:

"*: this is the currently active idling state. This does not mean the system is currently idle. It only reflects which processor sleep state is called when the system becomes idle."

 *Quote:*   

> 
> 
> 2/ When I connect my mouse USB, "bus master activity" remains constantly to "ffffffff" but as soon as I disconnect it, the values begin at last to vary and the processeur can pass in C3.  Normal behavior?
> 
> 

 

Yes, that's normal behaviour. Normal until "USB selective suspend" gets implemented in the kernel (correct me if it already is, I searched for it but found nothing). The problem is that with your USB mouse plugged in there's a periodically poll which prevents your processor from going into C3. USB selective suspend would block that poll when a device is not active thus allowing the C3 state. Hopefully it gets implemented in the near future.

----------

## LostControl

Many thanks for your reply  :Very Happy: 

I understand better what happens !!! I still get problems ("Loosing too many ticks") using processor.ko and acpi.ko for speedstepping with my 2.6.4-rc1. But using speedstep_centrino.ko works great so just wait on new kernel to try again...

But this is an other story...Last edited by LostControl on Wed Mar 24, 2004 6:58 pm; edited 1 time in total

----------

## Earthwings

Maybe this helps, too...

 *make menuconfig wrote:*   

> 
> 
> CONFIG_X86_PM_TIMER:                                                                         ?
> 
>   ?                                                                                              ?
> ...

 

That's "Power Management Timer Support" in the ACPI section.

----------

## LostControl

I already try this but I still have a wrong cpu speed reported in /proc/cpuinfo. I try a new version of ipw2100 and to some tests with and without processor.ko.

A+

----------

