I think as part of the CPU frequency control options you should be able to select a CPU governor to use for AC mode and battery mode. Currently the CPU frequency control is handled behind the scenes and it seems to just lower the maximum cpu frequency. The Dell XPS M1330 has a quirk where the bios kicks about 10 seconds after the AC is unplugged and resets the upper CPU frequency to its maximum. One way around this seems to be switching to the powersave governor when on AC, because this doesn't allow the CPU to exceed it's minimum frequency.
This was reported before, note that in version 0.8.* we wanted to avoid exposing the CPU governor to the user, usually using ondemand on ac and powersave on battery is good enough, but for some hardware cpu governor handling may be problematic, that's why we have the option to disabled CPU freq scaling in the extended tab. *** This bug has been marked as a duplicate of bug 5402 ***
(In reply to comment #1) > This was reported before, note that in version 0.8.* we wanted to avoid > exposing the CPU governor to the user, usually using ondemand on ac and > powersave on battery is good enough, but for some hardware cpu governor > handling may be problematic, that's why we have the option to disabled CPU freq > scaling in the extended tab. > It's strange that's the default behavior, yet that isn't what's happening in my case. I have the CPU frequency control option selected, but the governor always stays on performance mode and never changes to ondemand when the AC is disconnected. I'm using arch linux and xfce-power-manager-0.8.3.1-1. I used to run Gentoo on my laptop until recently and I never had issues with xfce-power-manager not scaling the CPU down when the AC adapter was unplugged.
(In reply to comment #2) > > I used to run Gentoo on my laptop until recently and I never had issues with > xfce-power-manager not scaling the CPU down when the AC adapter was unplugged. Strange! permission problem, kernel upgrade? Please run the following command: dbus-send --system --print-reply \ --dest=org.freedesktop.Hal \ /org/freedesktop/Hal/devices/computer \ org.freedesktop.Hal.Device.CPUFreq.GetCPUFreqAvailableGovernors And see what governors HAL has? If you see ondemand in the output list run dbus-send --system --print-reply \ --dest=org.freedesktop.Hal \ /org/freedesktop/Hal/devices/computer \ org.freedesktop.Hal.Device.CPUFreq.SetCPUFreqGovernor string:"ondemand" Let me know your findings.
My fault as usual. The governors are built as modules, in my gentoo setup they were compiled into the kernel. It's just a matter of loading the governor modules on boot. Cheers.