From: Guenter Roeck <linux@roeck-us.net>
To: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
Cc: linux-pm@vger.kernel.org, linux-acpi@vger.kernel.org,
netdev@vger.kernel.org, linux-wireless@vger.kernel.org,
platform-driver-x86@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-renesas-soc@vger.kernel.org,
linux-rockchip@lists.infradead.org,
"Emmanuel Grumbach" <emmanuel.grumbach@intel.com>,
"Heiko Stuebner" <heiko@sntech.de>,
"Rafael J . Wysocki" <rjw@rjwysocki.net>,
"Vishal Kulkarni" <vishal@chelsio.com>,
"Luca Coelho" <luciano.coelho@intel.com>,
"Miquel Raynal" <miquel.raynal@bootlin.com>,
kernel@collabora.com, "Fabio Estevam" <festevam@gmail.com>,
"Amit Kucheria" <amit.kucheria@verdurent.com>,
"Chunyan Zhang" <zhang.lyra@gmail.com>,
"Daniel Lezcano" <daniel.lezcano@linaro.org>,
"Allison Randal" <allison@lohutok.net>,
"NXP Linux Team" <linux-imx@nxp.com>,
"Darren Hart" <dvhart@infradead.org>,
"Zhang Rui" <rui.zhang@intel.com>,
"Gayatri Kammela" <gayatri.kammela@intel.com>,
"Len Brown" <lenb@kernel.org>,
"Johannes Berg" <johannes.berg@intel.com>,
"Intel Linux Wireless" <linuxwifi@intel.com>,
"Sascha Hauer" <s.hauer@pengutronix.de>,
"Ido Schimmel" <idosch@mellanox.com>,
"Baolin Wang" <baolin.wang7@gmail.com>,
"Jiri Pirko" <jiri@mellanox.com>,
"Orson Zhai" <orsonzhai@gmail.com>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Kalle Valo" <kvalo@codeaurora.org>,
"Support Opensource" <support.opensource@diasemi.com>,
"Enrico Weigelt" <info@metux.net>,
"Peter Kaestle" <peter@piie.net>,
"Sebastian Reichel" <sre@kernel.org>,
"Bartlomiej Zolnierkiewicz" <b.zolnierkie@samsung.com>,
"Pengutronix Kernel Team" <kernel@pengutronix.de>,
"Niklas Söderlund" <niklas.soderlund@ragnatech.se>,
"Shawn Guo" <shawnguo@kernel.org>,
"David S . Miller" <davem@davemloft.net>,
"Andy Shevchenko" <andy@infradead.org>
Subject: Re: [PATCH v4 06/11] thermal: Add mode helpers
Date: Fri, 29 May 2020 08:52:06 -0700 [thread overview]
Message-ID: <20200529155206.GA158553@roeck-us.net> (raw)
On Thu, May 28, 2020 at 09:20:46PM +0200, Andrzej Pietrasiewicz wrote:
> Prepare for making the drivers not access tzd's private members.
>
> Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
> ---
> drivers/thermal/thermal_core.c | 53 ++++++++++++++++++++++++++++++++++
> include/linux/thermal.h | 13 +++++++++
> 2 files changed, 66 insertions(+)
>
> diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c
> index 14d3b1b94c4f..f2a5c5ee3455 100644
> --- a/drivers/thermal/thermal_core.c
> +++ b/drivers/thermal/thermal_core.c
> @@ -459,6 +459,59 @@ static void thermal_zone_device_reset(struct thermal_zone_device *tz)
> thermal_zone_device_init(tz);
> }
>
> +int thermal_zone_device_set_mode(struct thermal_zone_device *tz,
> + enum thermal_device_mode mode)
> +{
> + int ret = 0;
> +
> + mutex_lock(&tz->lock);
> +
> + /* do nothing if mode isn't changing */
> + if (mode == tz->mode) {
> + mutex_unlock(&tz->lock);
> +
Nit: unnecessary empty line.
> + return ret;
> + }
> +
> + if (tz->ops->set_mode)
> + ret = tz->ops->set_mode(tz, mode);
> +
> + if (!ret)
> + tz->mode = mode;
> +
> + mutex_unlock(&tz->lock);
> +
> + thermal_zone_device_update(tz, THERMAL_EVENT_UNSPECIFIED);
> +
> + return ret;
> +}
> +
> +int thermal_zone_device_enable(struct thermal_zone_device *tz)
> +{
> + return thermal_zone_device_set_mode(tz, THERMAL_DEVICE_ENABLED);
> +}
> +EXPORT_SYMBOL(thermal_zone_device_enable);
Other exports in thermal/ use EXPORT_SYMBOL_GPL.
> +
> +int thermal_zone_device_disable(struct thermal_zone_device *tz)
> +{
> + return thermal_zone_device_set_mode(tz, THERMAL_DEVICE_DISABLED);
> +}
> +EXPORT_SYMBOL(thermal_zone_device_disable);
> +
> +int thermal_zone_device_is_enabled(struct thermal_zone_device *tz)
> +{
> + enum thermal_device_mode mode;
> +
> + mutex_lock(&tz->lock);
> +
> + mode = tz->mode;
> +
> + mutex_unlock(&tz->lock);
> +
> + return mode == THERMAL_DEVICE_ENABLED;
> +}
> +EXPORT_SYMBOL(thermal_zone_device_is_enabled);
> +
> void thermal_zone_device_update(struct thermal_zone_device *tz,
> enum thermal_notify_event event)
> {
> diff --git a/include/linux/thermal.h b/include/linux/thermal.h
> index a808f6fa2777..df013c39ba9b 100644
> --- a/include/linux/thermal.h
> +++ b/include/linux/thermal.h
> @@ -416,6 +416,9 @@ int thermal_zone_get_offset(struct thermal_zone_device *tz);
>
> void thermal_cdev_update(struct thermal_cooling_device *);
> void thermal_notify_framework(struct thermal_zone_device *, int);
> +int thermal_zone_device_enable(struct thermal_zone_device *tz);
> +int thermal_zone_device_disable(struct thermal_zone_device *tz);
> +int thermal_zone_device_is_enabled(struct thermal_zone_device *tz);
> #else
> static inline struct thermal_zone_device *thermal_zone_device_register(
> const char *type, int trips, int mask, void *devdata,
> @@ -463,6 +466,16 @@ static inline void thermal_cdev_update(struct thermal_cooling_device *cdev)
> static inline void thermal_notify_framework(struct thermal_zone_device *tz,
> int trip)
> { }
> +
> +static inline int thermal_zone_device_enable(struct thermal_zone_device *tz)
> +{ return -ENODEV; }
> +
> +static inline int thermal_zone_device_disable(struct thermal_zone_device *tz)
> +{ return -ENODEV; }
> +
> +static inline int
> +thermal_zone_device_is_enabled(struct thermal_zone_device *tz)
> +{ return -ENODEV; }
> #endif /* CONFIG_THERMAL */
>
> #endif /* __THERMAL_H__ */
WARNING: multiple messages have this Message-ID (diff)
From: Guenter Roeck <linux@roeck-us.net>
To: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
Cc: linux-pm@vger.kernel.org, linux-acpi@vger.kernel.org,
netdev@vger.kernel.org, linux-wireless@vger.kernel.org,
platform-driver-x86@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-renesas-soc@vger.kernel.org,
linux-rockchip@lists.infradead.org,
Emmanuel Grumbach <emmanuel.grumbach@intel.com>,
Heiko Stuebner <heiko@sntech.de>,
"Rafael J . Wysocki" <rjw@rjwysocki.net>,
Vishal Kulkarni <vishal@chelsio.com>,
Luca Coelho <luciano.coelho@intel.com>,
Miquel Raynal <miquel.raynal@bootlin.com>,
kernel@collabora.com, Fabio Estevam <festevam@gmail.com>,
Amit Kucheria <amit.kucheria@verdurent.com>,
Chunyan Zhang <zhang.lyra@gmail.com>,
Daniel Lezcano <daniel.lezcano@linaro.org>,
Allison Randal <allison@lohutok.net>,
NXP Linux Team <linux-imx@nxp.com>
Subject: Re: [PATCH v4 06/11] thermal: Add mode helpers
Date: Fri, 29 May 2020 08:52:06 -0700 [thread overview]
Message-ID: <20200529155206.GA158553@roeck-us.net> (raw)
On Thu, May 28, 2020 at 09:20:46PM +0200, Andrzej Pietrasiewicz wrote:
> Prepare for making the drivers not access tzd's private members.
>
> Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
> ---
> drivers/thermal/thermal_core.c | 53 ++++++++++++++++++++++++++++++++++
> include/linux/thermal.h | 13 +++++++++
> 2 files changed, 66 insertions(+)
>
> diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c
> index 14d3b1b94c4f..f2a5c5ee3455 100644
> --- a/drivers/thermal/thermal_core.c
> +++ b/drivers/thermal/thermal_core.c
> @@ -459,6 +459,59 @@ static void thermal_zone_device_reset(struct thermal_zone_device *tz)
> thermal_zone_device_init(tz);
> }
>
> +int thermal_zone_device_set_mode(struct thermal_zone_device *tz,
> + enum thermal_device_mode mode)
> +{
> + int ret = 0;
> +
> + mutex_lock(&tz->lock);
> +
> + /* do nothing if mode isn't changing */
> + if (mode == tz->mode) {
> + mutex_unlock(&tz->lock);
> +
Nit: unnecessary empty line.
> + return ret;
> + }
> +
> + if (tz->ops->set_mode)
> + ret = tz->ops->set_mode(tz, mode);
> +
> + if (!ret)
> + tz->mode = mode;
> +
> + mutex_unlock(&tz->lock);
> +
> + thermal_zone_device_update(tz, THERMAL_EVENT_UNSPECIFIED);
> +
> + return ret;
> +}
> +
> +int thermal_zone_device_enable(struct thermal_zone_device *tz)
> +{
> + return thermal_zone_device_set_mode(tz, THERMAL_DEVICE_ENABLED);
> +}
> +EXPORT_SYMBOL(thermal_zone_device_enable);
Other exports in thermal/ use EXPORT_SYMBOL_GPL.
> +
> +int thermal_zone_device_disable(struct thermal_zone_device *tz)
> +{
> + return thermal_zone_device_set_mode(tz, THERMAL_DEVICE_DISABLED);
> +}
> +EXPORT_SYMBOL(thermal_zone_device_disable);
> +
> +int thermal_zone_device_is_enabled(struct thermal_zone_device *tz)
> +{
> + enum thermal_device_mode mode;
> +
> + mutex_lock(&tz->lock);
> +
> + mode = tz->mode;
> +
> + mutex_unlock(&tz->lock);
> +
> + return mode == THERMAL_DEVICE_ENABLED;
> +}
> +EXPORT_SYMBOL(thermal_zone_device_is_enabled);
> +
> void thermal_zone_device_update(struct thermal_zone_device *tz,
> enum thermal_notify_event event)
> {
> diff --git a/include/linux/thermal.h b/include/linux/thermal.h
> index a808f6fa2777..df013c39ba9b 100644
> --- a/include/linux/thermal.h
> +++ b/include/linux/thermal.h
> @@ -416,6 +416,9 @@ int thermal_zone_get_offset(struct thermal_zone_device *tz);
>
> void thermal_cdev_update(struct thermal_cooling_device *);
> void thermal_notify_framework(struct thermal_zone_device *, int);
> +int thermal_zone_device_enable(struct thermal_zone_device *tz);
> +int thermal_zone_device_disable(struct thermal_zone_device *tz);
> +int thermal_zone_device_is_enabled(struct thermal_zone_device *tz);
> #else
> static inline struct thermal_zone_device *thermal_zone_device_register(
> const char *type, int trips, int mask, void *devdata,
> @@ -463,6 +466,16 @@ static inline void thermal_cdev_update(struct thermal_cooling_device *cdev)
> static inline void thermal_notify_framework(struct thermal_zone_device *tz,
> int trip)
> { }
> +
> +static inline int thermal_zone_device_enable(struct thermal_zone_device *tz)
> +{ return -ENODEV; }
> +
> +static inline int thermal_zone_device_disable(struct thermal_zone_device *tz)
> +{ return -ENODEV; }
> +
> +static inline int
> +thermal_zone_device_is_enabled(struct thermal_zone_device *tz)
> +{ return -ENODEV; }
> #endif /* CONFIG_THERMAL */
>
> #endif /* __THERMAL_H__ */
next reply other threads:[~2020-05-29 15:52 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-29 15:52 Guenter Roeck [this message]
2020-05-29 15:52 ` [PATCH v4 06/11] thermal: Add mode helpers Guenter Roeck
2020-06-01 11:16 ` Andrzej Pietrasiewicz
2020-06-01 11:16 ` Andrzej Pietrasiewicz
2020-06-01 11:16 ` Andrzej Pietrasiewicz
2020-06-01 13:40 ` Guenter Roeck
2020-06-01 13:40 ` Guenter Roeck
2020-06-01 13:40 ` Guenter Roeck
[not found] <Message-ID: <4493c0e4-51aa-3907-810c-74949ff27ca4@samsung.com>
2020-05-28 19:20 ` [PATCH v4 00/11] Stop monitoring disabled devices Andrzej Pietrasiewicz
2020-05-28 19:20 ` [PATCH v4 06/11] thermal: Add mode helpers Andrzej Pietrasiewicz
2020-05-28 19:20 ` Andrzej Pietrasiewicz
2020-05-28 19:20 ` Andrzej Pietrasiewicz
2020-06-24 9:49 ` Bartlomiej Zolnierkiewicz
2020-06-24 9:49 ` Bartlomiej Zolnierkiewicz
2020-06-24 9:49 ` Bartlomiej Zolnierkiewicz
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=20200529155206.GA158553@roeck-us.net \
--to=linux@roeck-us.net \
--cc=allison@lohutok.net \
--cc=amit.kucheria@verdurent.com \
--cc=andrzej.p@collabora.com \
--cc=andy@infradead.org \
--cc=b.zolnierkie@samsung.com \
--cc=baolin.wang7@gmail.com \
--cc=daniel.lezcano@linaro.org \
--cc=davem@davemloft.net \
--cc=dvhart@infradead.org \
--cc=emmanuel.grumbach@intel.com \
--cc=festevam@gmail.com \
--cc=gayatri.kammela@intel.com \
--cc=heiko@sntech.de \
--cc=idosch@mellanox.com \
--cc=info@metux.net \
--cc=jiri@mellanox.com \
--cc=johannes.berg@intel.com \
--cc=kernel@collabora.com \
--cc=kernel@pengutronix.de \
--cc=kvalo@codeaurora.org \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-imx@nxp.com \
--cc=linux-pm@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-wireless@vger.kernel.org \
--cc=linuxwifi@intel.com \
--cc=luciano.coelho@intel.com \
--cc=miquel.raynal@bootlin.com \
--cc=netdev@vger.kernel.org \
--cc=niklas.soderlund@ragnatech.se \
--cc=orsonzhai@gmail.com \
--cc=peter@piie.net \
--cc=platform-driver-x86@vger.kernel.org \
--cc=rjw@rjwysocki.net \
--cc=rui.zhang@intel.com \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
--cc=sre@kernel.org \
--cc=support.opensource@diasemi.com \
--cc=tglx@linutronix.de \
--cc=vishal@chelsio.com \
--cc=zhang.lyra@gmail.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 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.