I had trouble with frequency scaling in my old Pentium 4-M CPU in my laptop. It would either run at 2.2 GHz or 1.2 GHz but it would not switch between the two. In KPowersave, I could select the "performance" or "powersave" governors but when I tried to select the "dynamic" governor, it would say that it was unable to load the governor. Also, when I used Yast to configure the power settings, it would put the governor or "dynamic" but it would not scale- it would always be at the full 2.2 GHz even when idle.
Here's my fix:
1. Open up the /etc/sysconfig editor in Yast (it's under the "System" menu.)
2. Go down the menu tree to "System."
3. Expand "Powermanagement," expand "Powersave," then expand "CPU."
4. Change the CPUFREQ_CONTROL to "userspace."
5. Save changes and pull up a terminal window.
6. In the terminal window, enter:
sudo killall powersaved
7. Now enter
sudo /usr/sbin/rcpowersaved restart.
Now you have a working dynamic scaling governor