linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Lezcano <daniel.lezcano@linexp.org>
To: daniel.lezcano@linaro.org, rafael@kernel.org
Cc: rui.zhang@intel.com, linux-pm@vger.kernel.org,
	linux-kernel@vger.kernel.org, khilman@baylibre.com,
	abailon@baylibre.com, lukasz.luba@arm.com,
	Amit Kucheria <amitk@kernel.org>
Subject: [PATCH v5 08/12] thermal/core: Add thermal_trip in thermal_zone
Date: Sun, 10 Jul 2022 14:35:08 +0200	[thread overview]
Message-ID: <20220710123512.1714714-10-daniel.lezcano@linexp.org> (raw)
In-Reply-To: <20220710123512.1714714-1-daniel.lezcano@linexp.org>

The thermal trip points are properties of a thermal zone and the
different sub systems should be able to save them in the thermal zone
structure instead of having their own definition.

Give the opportunity to the drivers to create a thermal zone with
thermal trips which will be accessible directly from the thermal core
framework.

Cc: Alexandre Bailon <abailon@baylibre.com>
Cc: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linexp.org>
---
 drivers/thermal/thermal_core.h | 10 ++++++++++
 include/linux/thermal.h        |  2 ++
 2 files changed, 12 insertions(+)

diff --git a/drivers/thermal/thermal_core.h b/drivers/thermal/thermal_core.h
index c991bb290512..a4e730391cab 100644
--- a/drivers/thermal/thermal_core.h
+++ b/drivers/thermal/thermal_core.h
@@ -113,6 +113,16 @@ int thermal_build_list_of_policies(char *buf);
 /* Helpers */
 void thermal_zone_set_trips(struct thermal_zone_device *tz);
 
+static inline struct thermal_trip *thermal_zone_get_trips(struct thermal_zone_device *tz)
+{
+	return tz->trips;
+}
+
+static inline int thermal_zone_get_num_trips(struct thermal_zone_device *tz)
+{
+	return tz->num_trips;
+}
+
 /* sysfs I/F */
 int thermal_zone_create_device_groups(struct thermal_zone_device *, int);
 void thermal_zone_destroy_device_groups(struct thermal_zone_device *);
diff --git a/include/linux/thermal.h b/include/linux/thermal.h
index 03e968d61471..c7fcb9e2a4fc 100644
--- a/include/linux/thermal.h
+++ b/include/linux/thermal.h
@@ -125,6 +125,7 @@ struct thermal_cooling_device {
  * @trip_hyst_attrs:	attributes for trip points for sysfs: trip hysteresis
  * @mode:		current mode of this thermal zone
  * @devdata:	private pointer for device private data
+ * @trips:	an array of struct thermal_trip
  * @num_trips:	number of trip points the thermal zone supports
  * @trips_disabled;	bitmap for disabled trips
  * @passive_delay_jiffies: number of jiffies to wait between polls when
@@ -165,6 +166,7 @@ struct thermal_zone_device {
 	struct thermal_attr *trip_hyst_attrs;
 	enum thermal_device_mode mode;
 	void *devdata;
+	struct thermal_trip *trips;
 	int num_trips;
 	unsigned long trips_disabled;	/* bitmap for disabled trips */
 	unsigned long passive_delay_jiffies;
-- 
2.25.1


  parent reply	other threads:[~2022-07-10 12:36 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-10 12:34 [PATCH v5 00/12] thermal OF rework Daniel Lezcano
2022-07-10 12:35 ` [PATCH v5 01/12] thermal/core: Remove duplicate information when an error occurs Daniel Lezcano
2022-07-10 12:35 ` [PATCH v5 02/12] thermal/of: Replace device node match with device node search Daniel Lezcano
2022-07-10 12:35 ` [PATCH v5 03/12] thermal/of: Remove the device node pointer for thermal_trip Daniel Lezcano
2022-07-10 12:35 ` [PATCH v5 04/12] thermal/of: Move thermal_trip structure to thermal.h Daniel Lezcano
2022-07-10 12:35 ` [PATCH v5 05/12] thermal/core: Remove unneeded EXPORT_SYMBOLS Daniel Lezcano
2022-07-10 12:35 ` [PATCH v5 06/12] thermal/core: Move thermal_set_delay_jiffies to static Daniel Lezcano
2022-07-10 12:35 ` [PATCH v5 07/12] thermal/core: Rename trips to ntrips Daniel Lezcano
2022-07-19 18:15   ` Rafael J. Wysocki
2022-07-10 12:35 ` [PATCH v5 07/12] thermal/core: Rename 'trips' to 'num_trips' Daniel Lezcano
2022-07-19 18:16   ` Rafael J. Wysocki
2022-07-10 12:35 ` Daniel Lezcano [this message]
2022-07-19 18:18   ` [PATCH v5 08/12] thermal/core: Add thermal_trip in thermal_zone Rafael J. Wysocki
2022-07-10 12:35 ` [PATCH v5 09/12] thermal/core: Register with the trip points Daniel Lezcano
2022-07-10 12:35 ` [PATCH v5 10/12] thermal/of: Store the trips in the thermal zone Daniel Lezcano
2022-07-19 18:24   ` Rafael J. Wysocki
2022-07-21 21:31     ` Daniel Lezcano
2022-07-22 16:59       ` Rafael J. Wysocki
2022-07-10 12:35 ` [PATCH v5 11/12] thermal/of: Use thermal trips stored " Daniel Lezcano
2022-07-19 18:26   ` Rafael J. Wysocki
2022-07-21 21:29     ` Daniel Lezcano
2022-07-22 16:50       ` Rafael J. Wysocki
2022-07-22 17:25         ` Daniel Lezcano
2022-07-10 12:35 ` [PATCH v5 12/12] thermal/of: Initialize trip points separately Daniel Lezcano
2022-07-16 21:56 ` [PATCH v5 00/12] thermal OF rework Daniel Lezcano

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=20220710123512.1714714-10-daniel.lezcano@linexp.org \
    --to=daniel.lezcano@linexp.org \
    --cc=abailon@baylibre.com \
    --cc=amitk@kernel.org \
    --cc=daniel.lezcano@linaro.org \
    --cc=khilman@baylibre.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=lukasz.luba@arm.com \
    --cc=rafael@kernel.org \
    --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;
as well as URLs for NNTP newsgroup(s).