From: Viresh Kumar <viresh.kumar@linaro.org>
To: Rafael Wysocki <rjw@rjwysocki.net>, sboyd@codeaurora.org
Cc: linaro-kernel@lists.linaro.org, linux-pm@vger.kernel.org,
rob.herring@linaro.org, arnd.bergmann@linaro.org, nm@ti.com,
broonie@kernel.org, mturquette@baylibre.com,
Sudeep.Holla@arm.com, viswanath.puttagunta@linaro.org,
l.stach@pengutronix.de, thomas.petazzoni@free-electrons.com,
linux-arm-kernel@lists.infradead.org, ta.omasab@gmail.com,
kesavan.abhilash@gmail.com, khilman@linaro.org,
santosh.shilimkar@oracle.com, b.zolnierkie@samsung.com,
Viresh Kumar <viresh.kumar@linaro.org>
Subject: [PATCH V3 00/16] OPP: Add code to support operating-points-v2 bindings
Date: Wed, 29 Jul 2015 16:22:55 +0530 [thread overview]
Message-ID: <cover.1438166099.git.viresh.kumar@linaro.org> (raw)
Hi Guys,
Resending this again because:
- opp-hz is now 64 bit long and so that required a binding update.
- There is another 4 patch series that as updating turbo OPP support,
along with updates to cpufreq core and cpufreq-dt driver.
- A minor bug-fix in V2 4/11, which caused false positive for duplicate
OPPs in some cases.
Tested this on dual-core exynos board with the driver inbuilt as well as
a module. Tried multiple insertion/removals of the module. Have tested
cpufreq-dt driver with both old and new bindings.
Also tried by sending some dummy OPPs that contained opp-hz greater than
what can be captured by u32, to test the u64 updates.
----------x-----------------x-------------
This adds code to support operating-points-v2 bindings. Not everything
is supported yet, but most of the basic stuff is.
Pushed here as well for reference:
ssh://git@git.linaro.org/people/viresh.kumar/linux.git opp/v2
V2->V3:
- Update to opp-hz binding to make it pass u64 value instead of 32 bit
value. This is done to support clock rates greater than 4 GHz.
- Merged two inter-related series, opp-v2 and turbo mode updates.
- Fixed 4/11 from opp-v2 series, which cased false positive for
duplicate OPPs in some cases.
- Add a separate comment in _opp_add_dynamic() (5/16), to clearly
specify that we pass &dev_opp->opp_list to list_for_each_entry_rcu()
and not pass 'head' which contains the same value. Because head will
get modified by the code and that may result in an infinite loop.
- Accumulate more RBY tags.
V1->V2:
- 1/11 is a new patch which moves the bindings file into opp specific
folder.
- 'opp-suspend' binding got updated and is part of individual OPPs now,
instead of a phandle present in the opp table.
- Some more minor reformatting as suggested by Bartlomiej and Stephen,
they were already posted as reply to earlier patches in V1.
Bartlomiej Zolnierkiewicz (2):
PM / OPP: add dev_pm_opp_is_turbo() helper
cpufreq: Update boost flag while initializing freq table from OPPs
Viresh Kumar (14):
PM / OPP: Update bindings to make opp-hz a 64 bit value
PM / OPP: Create a directory for opp bindings
PM / OPP: Relocate few routines
PM / OPP: Create _remove_device_opp() for freeing dev_opp
PM / OPP: Allocate dev_opp from _add_device_opp()
PM / OPP: Break _opp_add_dynamic() into smaller functions
PM / OPP: Add support to parse "operating-points-v2" bindings
PM / OPP: Add clock-latency-ns support
PM / OPP: Add OPP sharing information to OPP library
PM / OPP: Add support for opp-suspend
PM / OPP: Add helpers for initializing CPU OPPs
cpufreq: Allow drivers to enable boost support after registering
driver
cpufreq: dt: Add support for operating-points-v2 bindings
cpufreq: dt: Add support for turbo/boost mode
.../devicetree/bindings/power/{ => opp}/opp.txt | 40 +-
drivers/base/power/opp.c | 1084 ++++++++++++++++----
drivers/cpufreq/cpufreq-dt.c | 64 +-
drivers/cpufreq/cpufreq.c | 68 +-
drivers/cpufreq/cpufreq_opp.c | 4 +
drivers/cpufreq/freq_table.c | 15 +
include/linux/cpufreq.h | 12 +
include/linux/pm_opp.h | 36 +
8 files changed, 1049 insertions(+), 274 deletions(-)
rename Documentation/devicetree/bindings/power/{ => opp}/opp.txt (93%)
--
2.4.0
WARNING: multiple messages have this Message-ID (diff)
From: viresh.kumar@linaro.org (Viresh Kumar)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V3 00/16] OPP: Add code to support operating-points-v2 bindings
Date: Wed, 29 Jul 2015 16:22:55 +0530 [thread overview]
Message-ID: <cover.1438166099.git.viresh.kumar@linaro.org> (raw)
Hi Guys,
Resending this again because:
- opp-hz is now 64 bit long and so that required a binding update.
- There is another 4 patch series that as updating turbo OPP support,
along with updates to cpufreq core and cpufreq-dt driver.
- A minor bug-fix in V2 4/11, which caused false positive for duplicate
OPPs in some cases.
Tested this on dual-core exynos board with the driver inbuilt as well as
a module. Tried multiple insertion/removals of the module. Have tested
cpufreq-dt driver with both old and new bindings.
Also tried by sending some dummy OPPs that contained opp-hz greater than
what can be captured by u32, to test the u64 updates.
----------x-----------------x-------------
This adds code to support operating-points-v2 bindings. Not everything
is supported yet, but most of the basic stuff is.
Pushed here as well for reference:
ssh://git at git.linaro.org/people/viresh.kumar/linux.git opp/v2
V2->V3:
- Update to opp-hz binding to make it pass u64 value instead of 32 bit
value. This is done to support clock rates greater than 4 GHz.
- Merged two inter-related series, opp-v2 and turbo mode updates.
- Fixed 4/11 from opp-v2 series, which cased false positive for
duplicate OPPs in some cases.
- Add a separate comment in _opp_add_dynamic() (5/16), to clearly
specify that we pass &dev_opp->opp_list to list_for_each_entry_rcu()
and not pass 'head' which contains the same value. Because head will
get modified by the code and that may result in an infinite loop.
- Accumulate more RBY tags.
V1->V2:
- 1/11 is a new patch which moves the bindings file into opp specific
folder.
- 'opp-suspend' binding got updated and is part of individual OPPs now,
instead of a phandle present in the opp table.
- Some more minor reformatting as suggested by Bartlomiej and Stephen,
they were already posted as reply to earlier patches in V1.
Bartlomiej Zolnierkiewicz (2):
PM / OPP: add dev_pm_opp_is_turbo() helper
cpufreq: Update boost flag while initializing freq table from OPPs
Viresh Kumar (14):
PM / OPP: Update bindings to make opp-hz a 64 bit value
PM / OPP: Create a directory for opp bindings
PM / OPP: Relocate few routines
PM / OPP: Create _remove_device_opp() for freeing dev_opp
PM / OPP: Allocate dev_opp from _add_device_opp()
PM / OPP: Break _opp_add_dynamic() into smaller functions
PM / OPP: Add support to parse "operating-points-v2" bindings
PM / OPP: Add clock-latency-ns support
PM / OPP: Add OPP sharing information to OPP library
PM / OPP: Add support for opp-suspend
PM / OPP: Add helpers for initializing CPU OPPs
cpufreq: Allow drivers to enable boost support after registering
driver
cpufreq: dt: Add support for operating-points-v2 bindings
cpufreq: dt: Add support for turbo/boost mode
.../devicetree/bindings/power/{ => opp}/opp.txt | 40 +-
drivers/base/power/opp.c | 1084 ++++++++++++++++----
drivers/cpufreq/cpufreq-dt.c | 64 +-
drivers/cpufreq/cpufreq.c | 68 +-
drivers/cpufreq/cpufreq_opp.c | 4 +
drivers/cpufreq/freq_table.c | 15 +
include/linux/cpufreq.h | 12 +
include/linux/pm_opp.h | 36 +
8 files changed, 1049 insertions(+), 274 deletions(-)
rename Documentation/devicetree/bindings/power/{ => opp}/opp.txt (93%)
--
2.4.0
next reply other threads:[~2015-07-29 10:53 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-29 10:52 Viresh Kumar [this message]
2015-07-29 10:52 ` [PATCH V3 00/16] OPP: Add code to support operating-points-v2 bindings Viresh Kumar
2015-07-29 10:52 ` [PATCH V3 01/16] PM / OPP: Update bindings to make opp-hz a 64 bit value Viresh Kumar
2015-07-29 10:52 ` Viresh Kumar
2015-07-29 10:52 ` Viresh Kumar
[not found] ` <f87ca786bca8abce6261dbd79a34218550355684.1438166099.git.viresh.kumar-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-07-30 13:23 ` Rob Herring
2015-07-30 13:23 ` Rob Herring
2015-07-30 13:23 ` Rob Herring
2015-07-29 10:52 ` [PATCH V3 02/16] PM / OPP: Create a directory for opp bindings Viresh Kumar
2015-07-29 10:52 ` Viresh Kumar
2015-07-30 13:18 ` Rob Herring
2015-07-30 13:18 ` Rob Herring
2015-07-30 13:49 ` Viresh Kumar
2015-07-30 13:49 ` Viresh Kumar
2015-07-30 16:24 ` Rob Herring
2015-07-30 16:24 ` Rob Herring
2015-07-30 16:52 ` Viresh Kumar
2015-07-30 16:52 ` Viresh Kumar
2015-07-30 16:57 ` [PATCH V3 resend] " Viresh Kumar
2015-07-30 16:57 ` Viresh Kumar
2015-07-29 10:52 ` [PATCH V3 03/16] PM / OPP: Relocate few routines Viresh Kumar
2015-07-29 10:52 ` Viresh Kumar
2015-07-29 10:52 ` Viresh Kumar
2015-07-29 10:52 ` [PATCH V3 04/16] PM / OPP: Create _remove_device_opp() for freeing dev_opp Viresh Kumar
2015-07-29 10:52 ` Viresh Kumar
2015-07-29 10:52 ` Viresh Kumar
2015-07-29 10:53 ` [PATCH V3 05/16] PM / OPP: Allocate dev_opp from _add_device_opp() Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` [PATCH V3 06/16] PM / OPP: Break _opp_add_dynamic() into smaller functions Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-31 5:43 ` Stephen Boyd
2015-07-31 5:43 ` Stephen Boyd
2015-07-29 10:53 ` [PATCH V3 07/16] PM / OPP: Add support to parse "operating-points-v2" bindings Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-31 5:51 ` Stephen Boyd
2015-07-31 5:51 ` Stephen Boyd
2015-07-31 5:58 ` Viresh Kumar
2015-07-31 5:58 ` Viresh Kumar
2015-07-31 6:20 ` Stephen Boyd
2015-07-31 6:20 ` Stephen Boyd
2015-07-29 10:53 ` [PATCH V3 08/16] PM / OPP: Add clock-latency-ns support Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` [PATCH V3 09/16] PM / OPP: Add OPP sharing information to OPP library Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` [PATCH V3 10/16] PM / OPP: Add support for opp-suspend Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-31 6:24 ` Stephen Boyd
2015-07-31 6:24 ` Stephen Boyd
2015-07-31 6:26 ` Viresh Kumar
2015-07-31 6:26 ` Viresh Kumar
2015-07-29 10:53 ` [PATCH V3 11/16] PM / OPP: Add helpers for initializing CPU OPPs Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-31 6:07 ` Stephen Boyd
2015-07-31 6:07 ` Stephen Boyd
2015-07-31 6:13 ` Viresh Kumar
2015-07-31 6:13 ` Viresh Kumar
2015-07-29 10:53 ` [PATCH V3 12/16] PM / OPP: add dev_pm_opp_is_turbo() helper Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-31 6:10 ` Stephen Boyd
2015-07-31 6:10 ` Stephen Boyd
2015-07-31 6:17 ` Viresh Kumar
2015-07-31 6:17 ` Viresh Kumar
2015-07-29 10:53 ` [PATCH V3 13/16] cpufreq: Update boost flag while initializing freq table from OPPs Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-31 6:11 ` Stephen Boyd
2015-07-31 6:11 ` Stephen Boyd
2015-07-29 10:53 ` [PATCH V3 14/16] cpufreq: Allow drivers to enable boost support after registering driver Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-31 6:12 ` Stephen Boyd
2015-07-31 6:12 ` Stephen Boyd
2015-07-29 10:53 ` [PATCH V3 15/16] cpufreq: dt: Add support for operating-points-v2 bindings Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-31 6:15 ` Stephen Boyd
2015-07-31 6:15 ` Stephen Boyd
2015-07-29 10:53 ` [PATCH V3 16/16] cpufreq: dt: Add support for turbo/boost mode Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-29 10:53 ` Viresh Kumar
2015-07-31 6:16 ` Stephen Boyd
2015-07-31 6:16 ` Stephen Boyd
2015-07-31 18:55 ` [PATCH V3 00/16] OPP: Add code to support operating-points-v2 bindings Bartlomiej Zolnierkiewicz
2015-07-31 18:55 ` Bartlomiej Zolnierkiewicz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1438166099.git.viresh.kumar@linaro.org \
--to=viresh.kumar@linaro.org \
--cc=Sudeep.Holla@arm.com \
--cc=arnd.bergmann@linaro.org \
--cc=b.zolnierkie@samsung.com \
--cc=broonie@kernel.org \
--cc=kesavan.abhilash@gmail.com \
--cc=khilman@linaro.org \
--cc=l.stach@pengutronix.de \
--cc=linaro-kernel@lists.linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-pm@vger.kernel.org \
--cc=mturquette@baylibre.com \
--cc=nm@ti.com \
--cc=rjw@rjwysocki.net \
--cc=rob.herring@linaro.org \
--cc=santosh.shilimkar@oracle.com \
--cc=sboyd@codeaurora.org \
--cc=ta.omasab@gmail.com \
--cc=thomas.petazzoni@free-electrons.com \
--cc=viswanath.puttagunta@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.