Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
mach-s5pv310: cpufreq smooth scaling
When a cpufreq governor policy requires to switch from a very low frequency to a very high frequency, the low lever driver may jump to a frequency lower than the target value requested by the higher layers, according to the configuration of the cpufreq step up sequence. For example, with the 2-step selection (CONFIG_FREQ_STEP_UP_L2_L0=y) a change from L3 to L0 (500MHz to 1200MHz) would jump to 800MHz, instead of the requested 1200MHz. To satisfy the requirements of the higher cpufreq layers introduce a smooth scaling mechanism that allows to switch to the target frequency incrementally in multiple steps. So, if it's not possible to switch to the target frequency in a single step, schedule an additional frequency step later in the future (after 0.5sec by default) using a delayed workqueue. The additional step is performed by the low-level driver and it's totally transparent for the higher layers. Signed-off-by: Andrea Righi <andrea@betterlinux.com>
- Loading branch information