linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Lezcano <daniel.lezcano@linaro.org>
To: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
	Eduardo Valentin <edubezval@gmail.com>
Cc: Zhang Rui <rui.zhang@intel.com>,
	Krzysztof Kozlowski <krzk@kernel.org>,
	Kukjin Kim <kgene@kernel.org>,
	linux-samsung-soc@vger.kernel.org, linux-pm@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	Marek Szyprowski <m.szyprowski@samsung.com>
Subject: Re: [PATCH 02/14] thermal: exynos: Propagate error value from tmu_read()
Date: Mon, 16 Apr 2018 14:16:56 +0200	[thread overview]
Message-ID: <39e461aa-2a60-f3cf-d116-fc7e97f9da2e@linaro.org> (raw)
In-Reply-To: <1523873525-23718-3-git-send-email-b.zolnierkie@samsung.com>

On 16/04/2018 12:11, Bartlomiej Zolnierkiewicz wrote:
> From: Marek Szyprowski <m.szyprowski@samsung.com>
> 
> tmu_read() in case of Exynos4210 might return error for out of bound
> values. Current code ignores such value, what leads to reporting critical
> temperature value. Add proper error code propagation to exynos_get_temp()
> function.

For me the comment in the function exynos4210_tmu_read

/* "temp_code" should range between 75 and 175 */

... is strange. I would double check this assertion before dealing with
the error value.

> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> CC: stable@vger.kernel.org # v4.6+
> Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
> ---
>  drivers/thermal/samsung/exynos_tmu.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/thermal/samsung/exynos_tmu.c b/drivers/thermal/samsung/exynos_tmu.c
> index 986cbd0..ac83f72 100644
> --- a/drivers/thermal/samsung/exynos_tmu.c
> +++ b/drivers/thermal/samsung/exynos_tmu.c
> @@ -892,6 +892,7 @@ static void exynos7_tmu_control(struct platform_device *pdev, bool on)
>  static int exynos_get_temp(void *p, int *temp)
>  {
>  	struct exynos_tmu_data *data = p;
> +	int value, ret = 0;
>  
>  	if (!data || !data->tmu_read || !data->enabled)
>  		return -EINVAL;
> @@ -899,12 +900,16 @@ static int exynos_get_temp(void *p, int *temp)
>  	mutex_lock(&data->lock);
>  	clk_enable(data->clk);
>  
> -	*temp = code_to_temp(data, data->tmu_read(data)) * MCELSIUS;
> +	value = data->tmu_read(data);
> +	if (value < 0)
> +		ret = value;
> +	else
> +		*temp = code_to_temp(data, value) * MCELSIUS;
>  
>  	clk_disable(data->clk);
>  	mutex_unlock(&data->lock);
>  
> -	return 0;
> +	return ret;
>  }
>  
>  #ifdef CONFIG_THERMAL_EMULATION
> 


-- 
 <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

  reply	other threads:[~2018-04-16 12:16 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20180416101225epcas2p42e345645d822cd869dbdb449becf1c7a@epcas2p4.samsung.com>
2018-04-16 10:11 ` [PATCH 00/14] thermal: exynos: pending fixes and cleanups Bartlomiej Zolnierkiewicz
     [not found]   ` <CGME20180416101339epcas2p171d462b70a85a6fff3bb939fca6d469d@epcas2p1.samsung.com>
2018-04-16 10:11     ` [PATCH 01/14] thermal: exynos: Reading temperature makes sense only when TMU is turned on Bartlomiej Zolnierkiewicz
2018-04-16 12:06       ` Daniel Lezcano
     [not found]         ` <CGME20180416121746eucas1p1de1cf16bcf7d8fdccd87ac41db735ef6@eucas1p1.samsung.com>
2018-04-16 12:17           ` Bartlomiej Zolnierkiewicz
2018-04-16 12:39             ` Daniel Lezcano
     [not found]   ` <CGME20180416101350epcas1p46d9415458ec463afb2a071a9f765f0ed@epcas1p4.samsung.com>
2018-04-16 10:11     ` [PATCH 02/14] thermal: exynos: Propagate error value from tmu_read() Bartlomiej Zolnierkiewicz
2018-04-16 12:16       ` Daniel Lezcano [this message]
     [not found]         ` <CGME20180416123502eucas1p1113fb99938a09a6f425e0ed6bfa6be60@eucas1p1.samsung.com>
2018-04-16 12:35           ` Bartlomiej Zolnierkiewicz
2018-04-16 12:41             ` Daniel Lezcano
     [not found]               ` <CGME20180416124956eucas1p17636602f59e7ad83088253ed369e7894@eucas1p1.samsung.com>
2018-04-16 12:49                 ` Bartlomiej Zolnierkiewicz
2018-04-16 12:54                   ` Daniel Lezcano
     [not found]                     ` <CGME20180416130254eucas1p24732958e5b202cacaddc69cde747a478@eucas1p2.samsung.com>
2018-04-16 13:02                       ` Bartlomiej Zolnierkiewicz
     [not found]   ` <CGME20180416101353epcas2p1793d6079b1a1fbb8b4841ee562b22155@epcas2p1.samsung.com>
2018-04-16 10:11     ` [PATCH 03/14] thermal: exynos: Read soc_type from match data Bartlomiej Zolnierkiewicz
2018-04-16 12:19       ` Daniel Lezcano
     [not found]         ` <CGME20180416124129eucas1p1545c737e0feb0f9f2c327b8597c46bce@eucas1p1.samsung.com>
2018-04-16 12:41           ` Bartlomiej Zolnierkiewicz
2018-04-16 12:47             ` Daniel Lezcano
     [not found]   ` <CGME20180416101357epcas2p16992f345f7dcebd90e3d4e50afbeeb88@epcas2p1.samsung.com>
2018-04-16 10:11     ` [PATCH 04/14] thermal: exynos: remove unused "type" field from struct exynos_tmu_platform_data Bartlomiej Zolnierkiewicz
2018-04-16 12:50       ` Daniel Lezcano
     [not found]   ` <CGME20180416101400epcas1p45e65b37b922a5d0265de7879eeb1df87@epcas1p4.samsung.com>
2018-04-16 10:11     ` [PATCH 05/14] thermal: exynos: remove parsing of samsung,tmu_default_temp_offset property Bartlomiej Zolnierkiewicz
2018-04-16 12:55       ` Daniel Lezcano
     [not found]   ` <CGME20180416101403epcas2p23c050a54c2cc8af9c8be76061d560937@epcas2p2.samsung.com>
2018-04-16 10:11     ` [PATCH 06/14] thermal: exynos: remove parsing of samsung,tmu_[first,second]_point_trim properties Bartlomiej Zolnierkiewicz
2018-04-16 12:57       ` Daniel Lezcano
     [not found]   ` <CGME20180416101406epcas2p267a664bb26a00bdca6c4c176f9ce08ed@epcas2p2.samsung.com>
2018-04-16 10:11     ` [PATCH 07/14] thermal: exynos: remove parsing of samsung,tmu_noise_cancel_mode property Bartlomiej Zolnierkiewicz
2018-04-16 13:03       ` Daniel Lezcano
     [not found]   ` <CGME20180416101409epcas1p4f8e0279a94322d1cc423ced6dfce3362@epcas1p4.samsung.com>
2018-04-16 10:11     ` [PATCH 08/14] thermal: exynos: remove parsing of samsung,tmu[_min,_max]_efuse_value properties Bartlomiej Zolnierkiewicz
2018-04-16 13:15       ` Daniel Lezcano
     [not found]   ` <CGME20180416101412epcas2p241ac78d221c7c288e79fc410dd90d6ab@epcas2p2.samsung.com>
2018-04-16 10:12     ` [PATCH 09/14] thermal: exynos: remove parsing of samsung,tmu_reference_voltage property Bartlomiej Zolnierkiewicz
2018-04-16 13:16       ` Daniel Lezcano
     [not found]   ` <CGME20180416101415epcas1p1b1108c9d654a7b2832179b5c1f49ff4a@epcas1p1.samsung.com>
2018-04-16 10:12     ` [PATCH 10/14] thermal: exynos: remove parsing of samsung,tmu_gain property Bartlomiej Zolnierkiewicz
2018-04-16 13:18       ` Daniel Lezcano
     [not found]   ` <CGME20180416101419epcas2p17dfedf3e376603baa8a4e52ffc82f0cb@epcas2p1.samsung.com>
2018-04-16 10:12     ` [PATCH 11/14] thermal: exynos: remove parsing of samsung,tmu_cal_type property Bartlomiej Zolnierkiewicz
2018-04-16 13:19       ` Daniel Lezcano
     [not found]   ` <CGME20180416101422epcas2p34c80b64c6c762b98ae4fecfe6a4db4f8@epcas2p3.samsung.com>
2018-04-16 10:12     ` [PATCH 12/14] thermal: exynos: remove separate exynos_tmu.h header file Bartlomiej Zolnierkiewicz
2018-04-16 13:24       ` Daniel Lezcano
     [not found]         ` <CGME20180416142452eucas1p2feb091d3ba51e78f42e93e184eb01291@eucas1p2.samsung.com>
2018-04-16 14:24           ` Bartlomiej Zolnierkiewicz
     [not found]   ` <CGME20180416101425epcas1p46ab4d827e3a64c5c16b32a17f63dd9d0@epcas1p4.samsung.com>
2018-04-16 10:12     ` [PATCH 13/14] ARM: dts: exynos: remove no longer needed samsung thermal properties Bartlomiej Zolnierkiewicz
2018-04-16 12:16       ` Krzysztof Kozlowski
2018-06-20 19:17       ` Krzysztof Kozlowski
     [not found]   ` <CGME20180416101428epcas1p1d9646bf1b56f0512a3fa3a6301b793c6@epcas1p1.samsung.com>
2018-04-16 10:12     ` [PATCH 14/14] arm64: " Bartlomiej Zolnierkiewicz
2018-04-16 13:02       ` Daniel Lezcano
     [not found]         ` <CGME20180416130917eucas1p10012e5d79bf59adc677e7e2364bae589@eucas1p1.samsung.com>
2018-04-16 13:09           ` Bartlomiej Zolnierkiewicz
2018-04-16 13:10             ` Daniel Lezcano
2018-06-20 19:19       ` Krzysztof Kozlowski

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=39e461aa-2a60-f3cf-d116-fc7e97f9da2e@linaro.org \
    --to=daniel.lezcano@linaro.org \
    --cc=b.zolnierkie@samsung.com \
    --cc=edubezval@gmail.com \
    --cc=kgene@kernel.org \
    --cc=krzk@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=m.szyprowski@samsung.com \
    --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).