Skip to content

CPUFreq: set policy->cur in cpufreq core instead of

Viresh Kumar cpufreq linux-pm linux-sh lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest37 patches 5 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/37cpufreq: call cpufreq_driver->get() after calling ->init()drivers/cpufreq/cpufreq.c+11 -00 replies
2/37cpufreq: acpi: don't initialize part of policy that is set by core toodrivers/cpufreq/acpi-cpufreq.c+0 -10 replies
3/37cpufreq: arm_big_little: don't initialize part of policy that is set by core toodrivers/cpufreq/arm_big_little.c+0 -20 replies
4/37cpufreq: at32ap: don't initialize part of policy that is set by core toodrivers/cpufreq/at32ap-cpufreq.c+4 -83 replies
5/37cpufreq: blackfin: don't initialize part of policy that is set by core toodrivers/cpufreq/blackfin-cpufreq.c+0 -10 replies
6/37cpufreq: cpu0: don't initialize part of policy that is set by core toodrivers/cpufreq/cpufreq-cpu0.c+0 -10 replies
7/37cpufreq: nforce2: don't initialize part of policy that is set by core toodrivers/cpufreq/cpufreq-nforce2.c+0 -10 replies
8/37cpufreq: cris: don't initialize part of policy that is set by core toodrivers/cpufreq/cris-artpec3-cpufreq.c drivers/cpufreq/cris-etraxfs-cpufreq.c+0 -20 replies
9/37cpufreq: davinci: don't initialize part of policy that is set by core toodrivers/cpufreq/davinci-cpufreq.c+0 -20 replies
10/37cpufreq: dbx500: don't initialize part of policy that is set by core toodrivers/cpufreq/dbx500-cpufreq.c+0 -50 replies
11/37cpufreq: e_powersaver: don't initialize part of policy that is set by core toodrivers/cpufreq/e_powersaver.c+0 -10 replies
12/37cpufreq: elanfreq: don't initialize part of policy that is set by core toodrivers/cpufreq/elanfreq.c+0 -10 replies
13/37cpufreq: exynos: don't initialize part of policy that is set by core toodrivers/cpufreq/exynos-cpufreq.c drivers/cpufreq/exynos5440-cpufreq.c+0 -32 replies
14/37cpufreq: gx: don't initialize part of policy that is set by core toodrivers/cpufreq/gx-suspmod.c+1 -40 replies
15/37cpufreq: ia64-acpi: don't initialize part of policy that is set by core toodrivers/cpufreq/ia64-acpi-cpufreq.c+0 -10 replies
16/37cpufreq: imx6q: don't initialize part of policy that is set by core toodrivers/cpufreq/imx6q-cpufreq.c+0 -10 replies
17/37cpufreq: integrator: don't initialize part of policy that is set by core toodrivers/cpufreq/integrator-cpufreq.c+2 -30 replies
18/37cpufreq: kirkwood: don't initialize part of policy that is set by core toodrivers/cpufreq/kirkwood-cpufreq.c+0 -10 replies
19/37cpufreq: longhaul: don't initialize part of policy that is set by core toodrivers/cpufreq/longhaul.c+0 -10 replies
20/37cpufreq: loongson2: don't initialize part of policy that is set by core toodrivers/cpufreq/loongson2_cpufreq.c+0 -20 replies
21/37cpufreq: maple: don't initialize part of policy that is set by core toodrivers/cpufreq/maple-cpufreq.c+0 -10 replies
22/37cpufreq: omap: don't initialize part of policy that is set by core toodrivers/cpufreq/omap-cpufreq.c+0 -40 replies
23/37cpufreq: p4: don't initialize part of policy that is set by core toodrivers/cpufreq/p4-clockmod.c+0 -10 replies
24/37cpufreq: pcc: don't initialize part of policy that is set by core toodrivers/cpufreq/pcc-cpufreq.c+0 -70 replies
25/37cpufreq: pmac: don't initialize part of policy that is set by core toodrivers/cpufreq/pmac32-cpufreq.c drivers/cpufreq/pmac64-cpufreq.c+0 -20 replies
26/37cpufreq: powernow: don't initialize part of policy that is set by core toodrivers/cpufreq/powernow-k6.c drivers/cpufreq/powernow-k7.c drivers/cpufreq/powernow-k8.c+0 -60 replies
27/37cpufreq: ppc: don't initialize part of policy that is set by core toodrivers/cpufreq/ppc-corenet-cpufreq.c+0 -20 replies
28/37cpufreq: pxa: don't initialize part of policy that is set by core toodrivers/cpufreq/pxa2xx-cpufreq.c drivers/cpufreq/pxa3xx-cpufreq.c+3 -60 replies
29/37cpufreq: s3c: don't initialize part of policy that is set by core toodrivers/cpufreq/s3c2416-cpufreq.c drivers/cpufreq/s3c24xx-cpufreq.c drivers/cpufreq/s3c64xx-cpufreq.c+0 -90 replies
30/37cpufreq: s5pv210: don't initialize part of policy that is set by core toodrivers/cpufreq/s5pv210-cpufreq.c+0 -20 replies
31/37cpufreq: sa11x0: don't initialize part of policy that is set by core toodrivers/cpufreq/sa1100-cpufreq.c drivers/cpufreq/sa1110-cpufreq.c+0 -20 replies
32/37cpufreq: sc520_freq: don't initialize part of policy that is set by core toodrivers/cpufreq/sc520_freq.c+0 -10 replies
33/37cpufreq: sh: don't initialize part of policy that is set by core toodrivers/cpufreq/sh-cpufreq.c+0 -20 replies
34/37cpufreq: spear: don't initialize part of policy that is set by core toodrivers/cpufreq/spear-cpufreq.c+0 -20 replies
35/37cpufreq: speedstep: don't initialize part of policy that is set by core toodrivers/cpufreq/speedstep-centrino.c drivers/cpufreq/speedstep-ich.c drivers/cpufreq/speedstep-smi.c+1 -320 replies
36/37cpufreq: tegra: don't initialize part of policy that is set by core toodrivers/cpufreq/tegra-cpufreq.c+1 -20 replies
37/37cpufreq: unicore2: don't initialize part of policy that is set by core toodrivers/cpufreq/unicore2-cpufreq.c+0 -10 replies

Reviews trailers per patch

2 of 37 patches have a Reviewed-by or Acked-by.

PatchHans-Christian EgtvedtAmit Daniel KachhapKukjin Kim
1/37
2/37
3/37
4/37A-b
5/37
6/37
7/37
8/37
9/37
10/37
11/37
12/37
13/37A-b A-b
14/37
15/37
16/37
17/37
18/37
19/37
20/37
21/37
22/37
23/37
24/37
25/37
26/37
27/37
28/37
29/37
30/37
31/37
32/37
33/37
34/37
35/37
36/37
37/37

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 3 reviewers.

Read the v1 thread

Cover letter [PATCH 00/37] CPUFreq: set policy->cur in cpufreq core instead of

Almost all drivers set policy->cur with current cpu frequency in their ->init() part. This can be done for all of them at core level and so they wouldn't need to do it.

This patchset adds supporting code in cpufreq core for calling get() after we have called init() for a policy. Also fixes all drivers accordingly.

These drivers were still doing some stuff which isn't required and was done by core already. And that is cleaned as well.

This is Fourth part of my cleanup work for CPUFreq, first three are (And obviously its rebased over them):

1: cpufreq: Introduce cpufreq_table_validate_and_show()
https://lkml.org/lkml/2013/8/8/263

2: cpufreq: define generic routines for cpufreq drivers
https://lkml.org/lkml/2013/8/10/48

3. CPUFreq: Implement light weight ->target(): for 3.13
https://lkml.org/lkml/2013/8/13/349

All these are pushed here:
https://git.linaro.org/gitweb?p=people/vireshk/linux.git;a=shortlog;h=refs/heads/for-v3.13

--
viresh

Cc Andrew Lunn <[email protected]>
Cc David S. Miller <[email protected]>
Cc Dmitry Eremin-Solenikov <[email protected]>
Cc Eric Miao <[email protected]>
Cc Hans-Christian Egtvedt <[email protected]>
Cc Jesper Nilsson <[email protected]>
Cc John Crispin <[email protected]>
Cc Kukjin Kim <[email protected]>
Cc Linus Walleij <[email protected]>
Cc Mikael Starvik <[email protected]>
Cc Paul Mundt <[email protected]>
Cc Russell King <[email protected]>
Cc Santosh Shilimkar <[email protected]>
Cc Sekhar Nori <[email protected]>
Cc Shawn Guo <[email protected]>
Cc Stephen Warren <[email protected]>
Cc Steven Miao <[email protected]>
Cc Tony Luck <[email protected]>

Viresh Kumar (37):
cpufreq: call cpufreq_driver->get() after calling ->init()
cpufreq: acpi: don't initialize part of policy that is set by core
too
cpufreq: arm_big_little: don't initialize part of policy that is set
by core too
cpufreq: at32ap: don't initialize part of policy that is set by core
too
cpufreq: blackfin: don't initialize part of policy that is set by
core too
cpufreq: cpu0: don't initialize part of policy that is set by core
too
cpufreq: nforce2: don't initialize part of policy that is set by core
too
cpufreq: cris: don't initialize part of policy that is set by core
too
cpufreq: davinci: don't initialize part of policy that is set by core
too
cpufreq: dbx500: don't initialize part of policy that is set by core
too
cpufreq: e_powersaver: don't initialize part of policy that is set by
core too
cpufreq: elanfreq: don't initialize part of policy that is set by
core too
cpufreq: exynos: don't initialize part of policy that is set by core
too
cpufreq: gx: don't initialize part of policy that is set by core too
cpufreq: ia64-acpi: don't initialize part of policy that is set by
core too
cpufreq: imx6q: don't initialize part of policy that is set by core
too
cpufreq: integrator: don't initialize part of policy that is set by
core too
cpufreq: kirkwood: don't initialize part of policy that is set by
core too
cpufreq: longhaul: don't initialize part of policy that is set by
core too
cpufreq: loongson2: don't initialize part of policy that is set by
core too
cpufreq: maple: don't initialize part of policy that is set by core
too
cpufreq: omap: don't initialize part of policy that is set by core
too
cpufreq: p4: don't initialize part of policy that is set by core too
cpufreq: pcc: don't initialize part of policy that is set by core too
cpufreq: pmac: don't initialize part of policy that is set by core
too
cpufreq: powernow: don't initialize part of policy that is set by
core too
cpufreq: ppc: don't initialize part of policy that is set by core too
cpufreq: pxa: don't initialize part of policy that is set by core too
cpufreq: s3c: don't initialize part of policy that is set by core too
cpufreq: s5pv210: don't initialize part of policy that is set by core
too
cpufreq: sa11x0: don't initialize part of policy that is set by core
too
cpufreq: sc520_freq: don't initialize part of policy that is set by
core too
cpufreq: sh: don't initialize part of policy that is set by core too
cpufreq: spear: don't initialize part of policy that is set by core
too
cpufreq: speedstep: don't initialize part of policy that is set by
core too
cpufreq: tegra: don't initialize part of policy that is set by core
too
cpufreq: unicore2: don't initialize part of policy that is set by
core too

 drivers/cpufreq/acpi-cpufreq.c         |  1 -
 drivers/cpufreq/arm_big_little.c       |  2 --
 drivers/cpufreq/at32ap-cpufreq.c       | 12 ++++--------
 drivers/cpufreq/blackfin-cpufreq.c     |  1 -
 drivers/cpufreq/cpufreq-cpu0.c         |  1 -
 drivers/cpufreq/cpufreq-nforce2.c      |  1 -
 drivers/cpufreq/cpufreq.c              | 11 +++++++++++
 drivers/cpufreq/cris-artpec3-cpufreq.c |  1 -
 drivers/cpufreq/cris-etraxfs-cpufreq.c |  1 -
 drivers/cpufreq/davinci-cpufreq.c      |  2 --
 drivers/cpufreq/dbx500-cpufreq.c       |  5 -----
 drivers/cpufreq/e_powersaver.c         |  1 -
 drivers/cpufreq/elanfreq.c             |  1 -
 drivers/cpufreq/exynos-cpufreq.c       |  2 --
 drivers/cpufreq/exynos5440-cpufreq.c   |  1 -
 drivers/cpufreq/gx-suspmod.c           |  5 +----
 drivers/cpufreq/ia64-acpi-cpufreq.c    |  1 -
 drivers/cpufreq/imx6q-cpufreq.c        |  1 -
 drivers/cpufreq/integrator-cpufreq.c   |  5 ++---
 drivers/cpufreq/kirkwood-cpufreq.c     |  1 -
 drivers/cpufreq/longhaul.c             |  1 -
 drivers/cpufreq/loongson2_cpufreq.c    |  2 --
 drivers/cpufreq/maple-cpufreq.c        |  1 -
 drivers/cpufreq/omap-cpufreq.c         |  4 ----
 drivers/cpufreq/p4-clockmod.c          |  1 -
 drivers/cpufreq/pcc-cpufreq.c          |  7 -------
 drivers/cpufreq/pmac32-cpufreq.c       |  1 -
 drivers/cpufreq/pmac64-cpufreq.c       |  1 -
 drivers/cpufreq/powernow-k6.c          |  1 -
 drivers/cpufreq/powernow-k7.c          |  2 --
 drivers/cpufreq/powernow-k8.c          |  3 ---
 drivers/cpufreq/ppc-corenet-cpufreq.c  |  2 --
 drivers/cpufreq/pxa2xx-cpufreq.c       |  2 --
 drivers/cpufreq/pxa3xx-cpufreq.c       |  7 +++----
 drivers/cpufreq/s3c2416-cpufreq.c      |  2 --
 drivers/cpufreq/s3c24xx-cpufreq.c      |  5 -----
 drivers/cpufreq/s3c64xx-cpufreq.c      |  2 --
 drivers/cpufreq/s5pv210-cpufreq.c      |  2 --
 drivers/cpufreq/sa1100-cpufreq.c       |  1 -
 drivers/cpufreq/sa1110-cpufreq.c       |  1 -
 drivers/cpufreq/sc520_freq.c           |  1 -
 drivers/cpufreq/sh-cpufreq.c           |  2 --
 drivers/cpufreq/spear-cpufreq.c        |  2 --
 drivers/cpufreq/speedstep-centrino.c   |  5 -----
 drivers/cpufreq/speedstep-ich.c        | 15 +--------------
 drivers/cpufreq/speedstep-smi.c        | 13 -------------
 drivers/cpufreq/tegra-cpufreq.c        |  3 +--
 drivers/cpufreq/unicore2-cpufreq.c     |  1 -
 48 files changed, 23 insertions(+), 123 deletions(-)
Signature · 1 line
1.7.12.rc2.18.g61b472e