mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Amit Daniel Kachhap <amit.daniel@samsung.com>
To: linux-pm@vger.kernel.org, linux-acpi@vger.kernel.org
Cc: Zhang Rui <rui.zhang@intel.com>,
	linux-kernel@vger.kernel.org, amit.kachhap@gmail.com,
	edubezval@gmail.com, rjw@rjwysocki.net,
	linux-arm-kernel@lists.infradead.org, lenb@kernel.org
Subject: [PATCH v1 0/6] ACPI: thermal: Migrate cpufreq cooling to generic cpu_cooling layer
Date: Thu, 29 May 2014 13:45:28 +0530	[thread overview]
Message-ID: <1401351334-11210-1-git-send-email-amit.daniel@samsung.com> (raw)

Changes since RFC:
* Moved the cooling state notification support to thermal core from cpu cooling
  as suggested by Eduardo.
* Used per cpu notifier structure in the cpufreq cooling implementation. This
  is a fix for race condition.
* One more comment from Eduardo was to take care when multiple listeners try to
  modify the cooling state. This is however not implemented in this patch series.
  One idea is to allow only 1 set type of clients and multiple get type of clients.
  The point to consider in these case is that cooling state management logic is now
  in control of client driver and thermal governor cooling state decisions can be
  overriden.
* Fixed other minor review comments and updated documentation section.

This patch adds notification support for those clients of cpu_cooling
APIs which may want to do something extra after receiving these
cpu_cooling events shown below. The notifier structure passed is of both Set/Get type.
The notfications events can be of the following type,

1. COOLING_SET_STATE_PRE
2. COOLING_SET_STATE_POST
3. COOLING_GET_CUR_STATE
4. COOLING_GET_MAX_STATE

The advantages of these notfications is to differentiate between different
P states in the cpufreq table and the cooling states. The clients of these
events may group few P states into 1 cooling states as done by ACPI .
Also some more cooling states can be enabled when the maximum of P state is
reached. In case of ACPI processor throttling are enabled when minimum
P-state is reached. Post notification events can be used for those cases.

All these changes are tested in samsung arndale(exynos5250) with Linaro ACPI
kernel along with few tweaks. However only cpu frequency scaling down is tested
for thermal cooling and throttling is untested as this feature is not supported
in H/W. But since the functionality is not modified so expecting the changes to
work in ACPI based platform also.  

Amit Daniel Kachhap (6):
  thermal: cpu_cooling: Fix the notification mechanism by using per cpu
    structure
  thermal: cpu_cooling: Support passing driver private data.
  thermal: thermal-core: Add notifications support for the cooling
    states
  thermal: cpu_cooling: Add support to find up/low frequency levels.
  thermal: thermal_core: Remove the max cooling limit check in
    registration
  ACPI: thermal: processor: Use the generic cpufreq infrastructure


             reply	other threads:[~2014-05-29  8:15 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-29  8:15 Amit Daniel Kachhap [this message]
2014-05-29  8:15 ` [PATCH v1 1/6] thermal: cpu_cooling: Fix the notification mechanism by using per cpu structure Amit Daniel Kachhap
2014-05-29  8:15 ` [PATCH v1 2/6] thermal: cpu_cooling: Support passing driver private data Amit Daniel Kachhap
2014-05-29 12:06   ` Javi Merino
2014-06-02  9:24     ` Amit Kachhap
2014-06-02 18:57       ` Eduardo Valentin
2014-05-29  8:15 ` [PATCH v1 3/6] thermal: thermal-core: Add notifications support for the cooling states Amit Daniel Kachhap
2014-05-29 12:24   ` Javi Merino
2014-06-02  9:31     ` Amit Kachhap
2014-06-02 10:14       ` Javi Merino
2014-05-29  8:15 ` [PATCH v1 4/6] thermal: cpu_cooling: Add support to find up/low frequency levels Amit Daniel Kachhap
2014-05-29  8:15 ` [PATCH v1 5/6] thermal: thermal_core: Remove the max cooling limit check in registration Amit Daniel Kachhap
2014-05-29  8:15 ` [PATCH v1 6/6] ACPI: thermal: processor: Use the generic cpufreq infrastructure Amit Daniel Kachhap
2014-05-29 12:42   ` Javi Merino
2014-06-02  9:21     ` Amit Kachhap
2014-06-02 10:20       ` Javi Merino
2014-06-02 17:36         ` Eduardo Valentin

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=1401351334-11210-1-git-send-email-amit.daniel@samsung.com \
    --to=amit.daniel@samsung.com \
    --cc=amit.kachhap@gmail.com \
    --cc=edubezval@gmail.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=rjw@rjwysocki.net \
    --cc=rui.zhang@intel.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®