All of lore.kernel.org
 help / color / mirror / Atom feed
From: Leonard Crestez <leonard.crestez@nxp.com>
To: Viresh Kumar <viresh.kumar@linaro.org>
Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>,
	"Stephen Boyd" <sboyd@kernel.org>,
	"Artur Świgoń" <a.swigon@partner.samsung.com>,
	"Saravana Kannan" <saravanak@google.com>,
	"Krzysztof Kozlowski" <krzk@kernel.org>,
	"Georgi Djakov" <georgi.djakov@linaro.org>,
	"Chanwoo Choi" <cw00.choi@samsung.com>,
	"MyungJoo Ham" <myungjoo.ham@samsung.com>,
	"Kyungmin Park" <kyungmin.park@samsung.com>,
	"Alexandre Bailon" <abailon@baylibre.com>,
	linux-pm@vger.kernel.org
Subject: [RFC 0/4] opp: Parse required-opp as dev_pm_qos_request
Date: Tue,  6 Aug 2019 14:12:24 +0300	[thread overview]
Message-ID: <cover.1565089196.git.leonard.crestez@nxp.com> (raw)

The "required-opps" property can be placed on any device and point to
any OPP table according to bindings doc but this is not fully
implemented. In practice it can only point from the opp table of a
device to the opp table of a power domain.

As part of my investingating QOS mechanisms I implemented support for
parsing "required-opps" into a DEV_PM_QOS_MIN_FREQUENCY
dev_pm_qos_request. Since OPPs can be shared between devices this only
works when OPP tables are unshared.

This would need to be called from a device probe function and any
suspend/resume handling (which likely means disabling the QOS requests)
would also be handled manually by each driver.

This is RFC mostly because I plan to use the "interconnect" framework
for device requests instead. In theory this could be used if you don't
care about implementing smart aggregation and just want to "set bus freq
to high".

Devfreq support for dev_pm_qos is here: https://patchwork.kernel.org/patch/11078475/

Leonard Crestez (4):
  opp: Drop const from opp_device struct device
  opp: Add dev_pm_opp_table_get_device
  opp: Add dev_pm_parse_required_opp_as_qos
  PM / QoS: Add dev_pm_qos_get_curr_value

 drivers/base/power/qos.c | 59 +++++++++++++++++++++++++-----------
 drivers/opp/core.c       | 34 +++++++++++++++++++--
 drivers/opp/of.c         | 65 ++++++++++++++++++++++++++++++++++++++++
 drivers/opp/opp.h        |  4 +--
 include/linux/pm_opp.h   | 15 ++++++++++
 include/linux/pm_qos.h   |  1 +
 6 files changed, 157 insertions(+), 21 deletions(-)

-- 
2.17.1


             reply	other threads:[~2019-08-06 11:12 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-06 11:12 Leonard Crestez [this message]
2019-08-06 11:12 ` [RFC 1/4] opp: Drop const from opp_device struct device Leonard Crestez
2019-08-06 11:12 ` [RFC 2/4] opp: Add dev_pm_opp_table_get_device Leonard Crestez
2019-08-06 11:12 ` [RFC 3/4] opp: Add dev_pm_parse_required_opp_as_qos Leonard Crestez
2019-08-06 11:12 ` [RFC 4/4] PM / QoS: Add dev_pm_qos_get_curr_value Leonard Crestez
2019-08-20  6:52 ` [RFC 0/4] opp: Parse required-opp as dev_pm_qos_request Viresh Kumar
2019-08-20  9:02   ` Leonard Crestez
2019-08-20  9:22     ` Viresh Kumar
2019-08-20 15:48       ` Leonard Crestez
2019-08-21  5:18         ` Viresh Kumar

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.1565089196.git.leonard.crestez@nxp.com \
    --to=leonard.crestez@nxp.com \
    --cc=a.swigon@partner.samsung.com \
    --cc=abailon@baylibre.com \
    --cc=cw00.choi@samsung.com \
    --cc=georgi.djakov@linaro.org \
    --cc=krzk@kernel.org \
    --cc=kyungmin.park@samsung.com \
    --cc=linux-pm@vger.kernel.org \
    --cc=myungjoo.ham@samsung.com \
    --cc=rjw@rjwysocki.net \
    --cc=saravanak@google.com \
    --cc=sboyd@kernel.org \
    --cc=viresh.kumar@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.