devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] thermal: of: Introduce governor selection in dts
@ 2015-08-07  7:09 Chung-Yih Wang (王崇懿)
  2015-08-07  7:18 ` Krzysztof Kozlowski
       [not found] ` <CAM2ehZYXsqCoS9ygXNfPHxt9-b5cFxH_ovrgjvM-BfDO6REcUg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 2 replies; 7+ messages in thread
From: Chung-Yih Wang (王崇懿) @ 2015-08-07  7:09 UTC (permalink / raw)
  To: linux-kernel
  Cc: Zhang Rui, Eduardo Valentin, Rob Herring, Pawel Moll,
	Mark Rutland, Ian Campbell, Kumar Gala, linux-pm, devicetree,
	Chung-yih Wang

As there could be more thermal zones on a system and
more variety in thermal governors provided in kernel,
this patch provides flexibility of governor selection
for a thermal zone declared in device tree.

Change-Id: Ie4a75d762709cbbe9f1806dae325d13f71982e78
Signed-off-by: Chung-yih Wang <cywang@chromium.org>
---
 Documentation/devicetree/bindings/thermal/thermal.txt |  9 +++++++++
 drivers/thermal/of-thermal.c                          | 10 ++++++++++
 2 files changed, 19 insertions(+)

diff --git a/Documentation/devicetree/bindings/thermal/thermal.txt
b/Documentation/devicetree/bindings/thermal/thermal.txt
index 8a49362..30a5d41 100644
--- a/Documentation/devicetree/bindings/thermal/thermal.txt
+++ b/Documentation/devicetree/bindings/thermal/thermal.txt
@@ -174,6 +174,13 @@ Optional property:
                        2000mW, while on a 10'' tablet is around
                        4500mW.

+- thermal-governor-name:       The name of governor used to control the
+                               thermal zone instead of the default one
+                               specified in kernel config. For reference, if
+                               default governor is step_wise, one could
+                               select power_allocator for cpu_thermal zone
+                               in dts.
+
 Note: The delay properties are bound to the maximum dT/dt (temperature
 derivative over time) in two situations for a thermal zone:
 (i)  - when passive cooling is activated (polling-delay-passive); and
@@ -555,6 +562,8 @@ thermal-zones {

                sustainable-power = <2500>;

+               thermal-governor-name = "power_allocator";
+
                trips {
                        /* Trips are based on resulting linear equation */
                        cpu_trip: cpu-trip {
diff --git a/drivers/thermal/of-thermal.c b/drivers/thermal/of-thermal.c
index b295b2b..45570ac 100644
--- a/drivers/thermal/of-thermal.c
+++ b/drivers/thermal/of-thermal.c
@@ -882,6 +882,7 @@ int __init of_parse_thermal_zones(void)
        }

        for_each_child_of_node(np, child) {
+               const char *governor_name;
                struct thermal_zone_device *zone;
                struct thermal_zone_params *tzp;
                int i, mask = 0;
@@ -909,6 +910,15 @@ int __init of_parse_thermal_zones(void)
                        goto exit_free;
                }

+               /* Select a preferred governor if declared */
+               if (!of_property_read_string(child,
+                                            "thermal-governor-name",
+                                            &governor_name)) {
+                       strncpy(tzp->governor_name,
+                               governor_name,
+                               sizeof(tzp->governor_name) - 1);
+               }
+
                /* No hwmon because there might be hwmon drivers registering */
                tzp->no_hwmon = true;

--
2.1.2

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

end of thread, other threads:[~2015-11-02 21:24 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-07  7:09 [PATCH] thermal: of: Introduce governor selection in dts Chung-Yih Wang (王崇懿)
2015-08-07  7:18 ` Krzysztof Kozlowski
     [not found] ` <CAM2ehZYXsqCoS9ygXNfPHxt9-b5cFxH_ovrgjvM-BfDO6REcUg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-08-07 10:31   ` Mark Rutland
2015-08-10  8:00     ` Chung-Yih Wang (王崇懿)
2015-08-10 17:47       ` Javi Merino
2015-08-11  9:07         ` Sudeep Holla
     [not found]           ` <55C9BB53.1090001-5wv7dgnIgG8@public.gmane.org>
2015-11-02 21:24             ` Eduardo Valentin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).