From: Mikko Perttunen <mikko.perttunen@kapsi.fi>
To: Sascha Hauer <s.hauer@pengutronix.de>
Cc: linux-pm@vger.kernel.org, Zhang Rui <rui.zhang@intel.com>,
Eduardo Valentin <edubezval@gmail.com>,
linux-kernel@vger.kernel.org,
Stephen Warren <swarren@wwwdotorg.org>,
kernel@pengutronix.de, linux-mediatek@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
Brian Norris <computersforpeace@gmail.com>
Subject: Re: [PATCH 01/15] thermal: consistently use int for temperatures
Date: Wed, 20 May 2015 11:42:31 +0300 [thread overview]
Message-ID: <555C48F7.4050009@kapsi.fi> (raw)
In-Reply-To: <20150520083454.GM6325@pengutronix.de>
On 05/20/15 11:34, Sascha Hauer wrote:
> On Wed, May 20, 2015 at 10:12:44AM +0300, Mikko Perttunen wrote:
>> On 05/13/15 11:52, Sascha Hauer wrote:
>>> The thermal code uses int, long and unsigned long for temperatures
>>> in different places. Using an unsigned type limits the thermal framework
>>> to positive temperatures without need. 'long' is 64bit on several
>>> architectures which is not needed. Consistently use a plain 'int'
>>> for temperatures.
>>>
>>> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
>>> ---
>>> ...
>>
>> It looks like some longs remain in db8500_thermal.c, int340x_thermal/*,
>> intel_soc_dts_thermal.c, kirkwood_thermal.c, rockchip_thermal.c and
>> samsung/exynos_tmu.c. (found by 'grep -R long drivers/thermal/*)
>
> I looked over it again and found the following. Sorry, I really thought
> I had compile tested all drivers. I found nothing in db8500_thermal.c,
> intel_soc_dts_thermal.c and rockchip_thermal.c though. There are some
> (unsigned)longs used as temperatures in these files, but I haven't
> changed them on purpose to not make the patch bigger as necessary. I
> only changed the places where (unsigned)longs are used as pointers.
> Do you think it's necessary to change all temperatures, even the ones
> only used internally in drivers?
>
> Sascha
I guess changing just the framework interface would be fine for now,
though I don't think there are that many internal uses remaining either.
Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
Cheers,
Mikko.
>
> -----------------------8<------------------
>
>>From 4cf8fe3b3ef1bd9db6090305ea2b9995f0dbffa4 Mon Sep 17 00:00:00 2001
> From: Sascha Hauer <s.hauer@pengutronix.de>
> Date: Wed, 20 May 2015 10:28:39 +0200
> Subject: [PATCH] fixup! thermal: consistently use int for temperatures
>
> ---
> drivers/thermal/int340x_thermal/int3400_thermal.c | 4 ++--
> drivers/thermal/int340x_thermal/processor_thermal_device.c | 4 ++--
> drivers/thermal/kirkwood_thermal.c | 2 +-
> drivers/thermal/samsung/exynos_tmu.c | 2 +-
> 4 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/thermal/int340x_thermal/int3400_thermal.c b/drivers/thermal/int340x_thermal/int3400_thermal.c
> index 96bdf8a..5836e55 100644
> --- a/drivers/thermal/int340x_thermal/int3400_thermal.c
> +++ b/drivers/thermal/int340x_thermal/int3400_thermal.c
> @@ -186,7 +186,7 @@ static int int3400_thermal_run_osc(acpi_handle handle,
> }
>
> static int int3400_thermal_get_temp(struct thermal_zone_device *thermal,
> - unsigned long *temp)
> + int *temp)
> {
> *temp = 20 * 1000; /* faked temp sensor with 20C */
> return 0;
> @@ -231,7 +231,7 @@ static int int3400_thermal_set_mode(struct thermal_zone_device *thermal,
> return result;
> }
>
> -static const struct thermal_zone_device_ops int3400_thermal_ops = {
> +static struct thermal_zone_device_ops int3400_thermal_ops = {
> .get_temp = int3400_thermal_get_temp,
> };
>
> diff --git a/drivers/thermal/int340x_thermal/processor_thermal_device.c b/drivers/thermal/int340x_thermal/processor_thermal_device.c
> index 5e8d8e9..c8afd34 100644
> --- a/drivers/thermal/int340x_thermal/processor_thermal_device.c
> +++ b/drivers/thermal/int340x_thermal/processor_thermal_device.c
> @@ -139,7 +139,7 @@ static int get_tjmax(void)
> return -EINVAL;
> }
>
> -static int read_temp_msr(unsigned long *temp)
> +static int read_temp_msr(int *temp)
> {
> int cpu;
> u32 eax, edx;
> @@ -171,7 +171,7 @@ err_ret:
> }
>
> static int proc_thermal_get_zone_temp(struct thermal_zone_device *zone,
> - unsigned long *temp)
> + int *temp)
> {
> int ret;
>
> diff --git a/drivers/thermal/kirkwood_thermal.c b/drivers/thermal/kirkwood_thermal.c
> index abba3e2..5bcdbd6 100644
> --- a/drivers/thermal/kirkwood_thermal.c
> +++ b/drivers/thermal/kirkwood_thermal.c
> @@ -33,7 +33,7 @@ struct kirkwood_thermal_priv {
> };
>
> static int kirkwood_get_temp(struct thermal_zone_device *thermal,
> - unsigned long *temp)
> + int *temp)
> {
> unsigned long reg;
> struct kirkwood_thermal_priv *priv = thermal->devdata;
> diff --git a/drivers/thermal/samsung/exynos_tmu.c b/drivers/thermal/samsung/exynos_tmu.c
> index 29eaf4d..ed55fd9 100644
> --- a/drivers/thermal/samsung/exynos_tmu.c
> +++ b/drivers/thermal/samsung/exynos_tmu.c
> @@ -812,7 +812,7 @@ out:
> #else
> #define exynos4412_tmu_set_emulation NULL
> #define exynos5440_tmu_set_emulation NULL
> -static int exynos_tmu_set_emulation(void *drv_data, unsigned long temp)
> +static int exynos_tmu_set_emulation(void *drv_data, int temp)
> { return -EINVAL; }
> #endif /* CONFIG_THERMAL_EMULATION */
>
>
WARNING: multiple messages have this Message-ID (diff)
From: mikko.perttunen@kapsi.fi (Mikko Perttunen)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 01/15] thermal: consistently use int for temperatures
Date: Wed, 20 May 2015 11:42:31 +0300 [thread overview]
Message-ID: <555C48F7.4050009@kapsi.fi> (raw)
In-Reply-To: <20150520083454.GM6325@pengutronix.de>
On 05/20/15 11:34, Sascha Hauer wrote:
> On Wed, May 20, 2015 at 10:12:44AM +0300, Mikko Perttunen wrote:
>> On 05/13/15 11:52, Sascha Hauer wrote:
>>> The thermal code uses int, long and unsigned long for temperatures
>>> in different places. Using an unsigned type limits the thermal framework
>>> to positive temperatures without need. 'long' is 64bit on several
>>> architectures which is not needed. Consistently use a plain 'int'
>>> for temperatures.
>>>
>>> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
>>> ---
>>> ...
>>
>> It looks like some longs remain in db8500_thermal.c, int340x_thermal/*,
>> intel_soc_dts_thermal.c, kirkwood_thermal.c, rockchip_thermal.c and
>> samsung/exynos_tmu.c. (found by 'grep -R long drivers/thermal/*)
>
> I looked over it again and found the following. Sorry, I really thought
> I had compile tested all drivers. I found nothing in db8500_thermal.c,
> intel_soc_dts_thermal.c and rockchip_thermal.c though. There are some
> (unsigned)longs used as temperatures in these files, but I haven't
> changed them on purpose to not make the patch bigger as necessary. I
> only changed the places where (unsigned)longs are used as pointers.
> Do you think it's necessary to change all temperatures, even the ones
> only used internally in drivers?
>
> Sascha
I guess changing just the framework interface would be fine for now,
though I don't think there are that many internal uses remaining either.
Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
Cheers,
Mikko.
>
> -----------------------8<------------------
>
>>From 4cf8fe3b3ef1bd9db6090305ea2b9995f0dbffa4 Mon Sep 17 00:00:00 2001
> From: Sascha Hauer <s.hauer@pengutronix.de>
> Date: Wed, 20 May 2015 10:28:39 +0200
> Subject: [PATCH] fixup! thermal: consistently use int for temperatures
>
> ---
> drivers/thermal/int340x_thermal/int3400_thermal.c | 4 ++--
> drivers/thermal/int340x_thermal/processor_thermal_device.c | 4 ++--
> drivers/thermal/kirkwood_thermal.c | 2 +-
> drivers/thermal/samsung/exynos_tmu.c | 2 +-
> 4 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/thermal/int340x_thermal/int3400_thermal.c b/drivers/thermal/int340x_thermal/int3400_thermal.c
> index 96bdf8a..5836e55 100644
> --- a/drivers/thermal/int340x_thermal/int3400_thermal.c
> +++ b/drivers/thermal/int340x_thermal/int3400_thermal.c
> @@ -186,7 +186,7 @@ static int int3400_thermal_run_osc(acpi_handle handle,
> }
>
> static int int3400_thermal_get_temp(struct thermal_zone_device *thermal,
> - unsigned long *temp)
> + int *temp)
> {
> *temp = 20 * 1000; /* faked temp sensor with 20C */
> return 0;
> @@ -231,7 +231,7 @@ static int int3400_thermal_set_mode(struct thermal_zone_device *thermal,
> return result;
> }
>
> -static const struct thermal_zone_device_ops int3400_thermal_ops = {
> +static struct thermal_zone_device_ops int3400_thermal_ops = {
> .get_temp = int3400_thermal_get_temp,
> };
>
> diff --git a/drivers/thermal/int340x_thermal/processor_thermal_device.c b/drivers/thermal/int340x_thermal/processor_thermal_device.c
> index 5e8d8e9..c8afd34 100644
> --- a/drivers/thermal/int340x_thermal/processor_thermal_device.c
> +++ b/drivers/thermal/int340x_thermal/processor_thermal_device.c
> @@ -139,7 +139,7 @@ static int get_tjmax(void)
> return -EINVAL;
> }
>
> -static int read_temp_msr(unsigned long *temp)
> +static int read_temp_msr(int *temp)
> {
> int cpu;
> u32 eax, edx;
> @@ -171,7 +171,7 @@ err_ret:
> }
>
> static int proc_thermal_get_zone_temp(struct thermal_zone_device *zone,
> - unsigned long *temp)
> + int *temp)
> {
> int ret;
>
> diff --git a/drivers/thermal/kirkwood_thermal.c b/drivers/thermal/kirkwood_thermal.c
> index abba3e2..5bcdbd6 100644
> --- a/drivers/thermal/kirkwood_thermal.c
> +++ b/drivers/thermal/kirkwood_thermal.c
> @@ -33,7 +33,7 @@ struct kirkwood_thermal_priv {
> };
>
> static int kirkwood_get_temp(struct thermal_zone_device *thermal,
> - unsigned long *temp)
> + int *temp)
> {
> unsigned long reg;
> struct kirkwood_thermal_priv *priv = thermal->devdata;
> diff --git a/drivers/thermal/samsung/exynos_tmu.c b/drivers/thermal/samsung/exynos_tmu.c
> index 29eaf4d..ed55fd9 100644
> --- a/drivers/thermal/samsung/exynos_tmu.c
> +++ b/drivers/thermal/samsung/exynos_tmu.c
> @@ -812,7 +812,7 @@ out:
> #else
> #define exynos4412_tmu_set_emulation NULL
> #define exynos5440_tmu_set_emulation NULL
> -static int exynos_tmu_set_emulation(void *drv_data, unsigned long temp)
> +static int exynos_tmu_set_emulation(void *drv_data, int temp)
> { return -EINVAL; }
> #endif /* CONFIG_THERMAL_EMULATION */
>
>
next prev parent reply other threads:[~2015-05-20 8:42 UTC|newest]
Thread overview: 69+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-13 8:52 [PATCH v3] Thermal hardware trip points and Mediatek thermal driver Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-13 8:52 ` [PATCH 01/15] thermal: consistently use int for temperatures Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-20 7:12 ` Mikko Perttunen
2015-05-20 7:12 ` Mikko Perttunen
2015-05-20 8:34 ` Sascha Hauer
2015-05-20 8:34 ` Sascha Hauer
2015-05-20 8:42 ` Mikko Perttunen [this message]
2015-05-20 8:42 ` Mikko Perttunen
2015-05-13 8:52 ` [PATCH 02/15] thermal: trivial: fix typo in comment Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-13 8:52 ` [PATCH 03/15] thermal: remove useless call to thermal_zone_device_set_polling Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-13 8:52 ` [PATCH 04/15] thermal: Use IS_ENABLED instead of #ifdef Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-13 8:52 ` [PATCH 05/15] thermal: Add comment explaining test for critical temperature Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-20 7:18 ` Mikko Perttunen
2015-05-20 7:18 ` Mikko Perttunen
2015-05-13 8:52 ` [PATCH 06/15] thermal: inline only once used function Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-20 7:28 ` Mikko Perttunen
2015-05-20 7:28 ` Mikko Perttunen
2015-05-13 8:52 ` [PATCH 07/15] thermal: streamline get_trend callbacks Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-13 8:52 ` [PATCH 08/15] thermal: Allow sensor ops to fail with -ENOSYS Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-13 8:52 ` [PATCH 09/15] thermal: of: always set sensor related callbacks Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-13 8:52 ` [PATCH 10/15] thermal: Make struct thermal_zone_device_ops const Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-13 8:52 ` [PATCH 11/15] thermal: thermal: Add support for hardware-tracked trip points Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-18 9:06 ` Mikko Perttunen
2015-05-18 9:06 ` Mikko Perttunen
2015-05-18 12:09 ` Sascha Hauer
2015-05-18 12:09 ` Sascha Hauer
2015-05-18 18:44 ` Brian Norris
2015-05-18 18:44 ` Brian Norris
2015-05-18 19:13 ` Mikko Perttunen
2015-05-18 19:13 ` Mikko Perttunen
2015-05-18 20:28 ` Brian Norris
2015-05-18 20:28 ` Brian Norris
2015-05-19 12:43 ` Mikko Perttunen
2015-05-19 12:43 ` Mikko Perttunen
2015-05-19 14:05 ` Sascha Hauer
2015-05-19 14:05 ` Sascha Hauer
2015-05-19 13:58 ` Sascha Hauer
2015-05-19 13:58 ` Sascha Hauer
2015-05-19 14:05 ` Mikko Perttunen
2015-05-19 14:05 ` Mikko Perttunen
2015-05-20 13:21 ` Sascha Hauer
2015-05-20 13:21 ` Sascha Hauer
2015-05-13 8:52 ` [PATCH 12/15] thermal: of: implement .set_trips for device tree thermal zones Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-18 9:09 ` Mikko Perttunen
2015-05-18 9:09 ` Mikko Perttunen
2015-05-13 8:52 ` [PATCH 13/15] dt-bindings: thermal: Add binding document for Mediatek thermal controller Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-13 8:52 ` [PATCH 14/15] thermal: Add Mediatek thermal controller support Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-14 9:52 ` Paul Bolle
2015-05-14 9:52 ` Paul Bolle
[not found] ` <CABicQ-XxXbMMnYyFAst=Xk1HMOXc6N1-J1bvyutMFY_=iNd0fg@mail.gmail.com>
2015-05-15 6:12 ` Sascha Hauer
2015-05-15 6:12 ` Sascha Hauer
[not found] ` <1431507163-19933-1-git-send-email-s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2015-05-13 8:52 ` [PATCH 15/15] ARM64: dts: mt8173: Add thermal/auxadc device nodes Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
2015-05-13 8:52 ` Sascha Hauer
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=555C48F7.4050009@kapsi.fi \
--to=mikko.perttunen@kapsi.fi \
--cc=computersforpeace@gmail.com \
--cc=edubezval@gmail.com \
--cc=kernel@pengutronix.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-pm@vger.kernel.org \
--cc=rui.zhang@intel.com \
--cc=s.hauer@pengutronix.de \
--cc=swarren@wwwdotorg.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.