All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V2 00/16] PM / OPP: Introduce APIs to transition OPPs
@ 2016-01-28  8:20 Viresh Kumar
  2016-01-28  8:20   ` Viresh Kumar
                   ` (16 more replies)
  0 siblings, 17 replies; 54+ messages in thread
From: Viresh Kumar @ 2016-01-28  8:20 UTC (permalink / raw)
  To: Rafael Wysocki; +Cc: linaro-kernel, linux-pm, Stephen Boyd, nm, Viresh Kumar

Hi Guys,

This patchset add APIs in OPP layer to allow OPPs transitioning from
within OPP layer. Currently all OPP users need to replicate the same
code to switch between OPPs. While the same can be handled easily by
OPP-core.

The first 7 patches update the OPP core to introduce the new APIs and
the next Nine patches update cpufreq-dt for the same.

11 out of 17 are already Reviewed by Stephen, only few are left :)

@Rafael: I will send a pull request once that is done.

Testing:
- Tested on exynos 5250-arndale (dual-cortex-A15)
- Tested for both Old-V1 bindings and New V2 bindings
- Tested with regulator names as: 'cpu-supply' and 'cpu0-supply'
- Tested with Unsupported supply ranges as well, to check the
  opp-disable logic

V1->V2:
- Locking fixes as suggested by Stephen
- Made dev_pm_opp_put_regulator(), as we can't rely on dev_name() to get
  name of the supply (Stephen/Mark B.)
- Other minor modifications

Viresh Kumar (16):
  PM / OPP: get/put regulators from OPP core
  PM / OPP: Disable OPPs that aren't supported by the regulator
  PM / OPP: Introduce dev_pm_opp_get_max_volt_latency()
  PM / OPP: Introduce dev_pm_opp_get_max_transition_latency()
  PM / OPP: Parse clock-latency and voltage-tolerance for v1 bindings
  PM / OPP: Manage device clk
  PM / OPP: Add dev_pm_opp_set_rate()
  cpufreq: dt: Convert few pr_debug/err() calls to dev_dbg/err()
  cpufreq: dt: Rename 'need_update' to 'opp_v1'
  cpufreq: dt: OPP layers handles clock-latency for V1 bindings as well
  cpufreq: dt: Pass regulator name to the OPP core
  cpufreq: dt: Unsupported OPPs are already disabled
  cpufreq: dt: Reuse dev_pm_opp_get_max_transition_latency()
  cpufreq: dt: Use dev_pm_opp_set_rate() to switch frequency
  cpufreq: dt: drop references to DT node
  cpufreq: dt: No need to allocate resources anymore

 drivers/base/power/opp/core.c | 420 ++++++++++++++++++++++++++++++++++++++++++
 drivers/base/power/opp/opp.h  |  13 ++
 drivers/cpufreq/cpufreq-dt.c  | 290 ++++++++++-------------------
 include/linux/pm_opp.h        |  27 +++
 4 files changed, 555 insertions(+), 195 deletions(-)

-- 
2.7.0.79.gdc08a19


^ permalink raw reply	[flat|nested] 54+ messages in thread

end of thread, other threads:[~2016-02-09  4:22 UTC | newest]

Thread overview: 54+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-28  8:20 [PATCH V2 00/16] PM / OPP: Introduce APIs to transition OPPs Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 01/16] PM / OPP: get/put regulators from OPP core Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-02-02  2:29   ` Stephen Boyd
2016-02-02  3:23     ` Viresh Kumar
2016-02-08 22:52       ` Stephen Boyd
2016-02-09  3:53         ` Viresh Kumar
2016-02-09  3:54         ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 02/16] PM / OPP: Disable OPPs that aren't supported by the regulator Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 03/16] PM / OPP: Introduce dev_pm_opp_get_max_volt_latency() Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-02-02  2:30   ` Stephen Boyd
2016-01-28  8:20 ` [PATCH V2 04/16] PM / OPP: Introduce dev_pm_opp_get_max_transition_latency() Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 05/16] PM / OPP: Parse clock-latency and voltage-tolerance for v1 bindings Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 06/16] PM / OPP: Manage device clk Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 07/16] PM / OPP: Add dev_pm_opp_set_rate() Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-02-02  2:10   ` Stephen Boyd
2016-02-02  3:38     ` Viresh Kumar
2016-02-02 20:46       ` Stephen Boyd
2016-01-28  8:20 ` [PATCH V2 08/16] cpufreq: dt: Convert few pr_debug/err() calls to dev_dbg/err() Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 09/16] cpufreq: dt: Rename 'need_update' to 'opp_v1' Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 10/16] cpufreq: dt: OPP layers handles clock-latency for V1 bindings as well Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 11/16] cpufreq: dt: Pass regulator name to the OPP core Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-02-02  2:34   ` Stephen Boyd
2016-02-02  6:10     ` Viresh Kumar
2016-02-08 22:55       ` Stephen Boyd
2016-02-09  4:10         ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 12/16] cpufreq: dt: Unsupported OPPs are already disabled Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 13/16] cpufreq: dt: Reuse dev_pm_opp_get_max_transition_latency() Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 14/16] cpufreq: dt: Use dev_pm_opp_set_rate() to switch frequency Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 15/16] cpufreq: dt: drop references to DT node Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-02-02  6:11   ` Viresh Kumar
2016-02-08 22:56     ` Stephen Boyd
2016-02-09  4:22     ` Viresh Kumar
2016-01-28  8:20 ` [PATCH V2 16/16] cpufreq: dt: No need to allocate resources anymore Viresh Kumar
2016-01-28  8:20   ` Viresh Kumar
2016-02-02  6:12   ` Viresh Kumar
2016-02-08 22:58     ` Stephen Boyd
2016-01-30  1:48 ` [PATCH V2 00/16] PM / OPP: Introduce APIs to transition OPPs Stephen Boyd
2016-02-01  4:08   ` Viresh Kumar
2016-02-01 19:41     ` Stephen Boyd

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.