[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <997af7f23e4cf174b6fed34abfed9c972c50ff77.camel@mediatek.com>
Date: Tue, 29 Nov 2022 11:53:58 +0000
From: Henry Yen (顏修溫) <Henry.Yen@...iatek.com>
To: "linux-mediatek@...ts.infradead.org"
<linux-mediatek@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"rui.zhang@...el.com" <rui.zhang@...el.com>,
"linux-pm@...r.kernel.org" <linux-pm@...r.kernel.org>,
"daniel.lezcano@...aro.org" <daniel.lezcano@...aro.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"amitk@...nel.org" <amitk@...nel.org>,
"rafael@...nel.org" <rafael@...nel.org>,
"matthias.bgg@...il.com" <matthias.bgg@...il.com>,
"daniel@...rotopia.org" <daniel@...rotopia.org>
CC: Steven Liu (劉人豪)
<steven.liu@...iatek.com>,
Henry Yen (顏修溫) <Henry.Yen@...iatek.com>,
Xing Fang (方兴) <Xing.Fang@...iatek.com>
Subject: Re: [PATCH 1/2] thermal: mediatek: add support for MT7986 and MT7981
On Mon, 2022-10-31 at 23:07 +0000, Daniel Golle wrote:
> diff --git a/drivers/thermal/mtk_thermal.c
> b/drivers/thermal/mtk_thermal.c
>
> +static int raw_to_mcelsius_v3(struct mtk_thermal *mt, int sensno,
> s32 raw)
> +{
> + s32 tmp;
> +
> + if (raw == 0)
> + return 0;
> +
> + raw &= 0xfff;
> + tmp = 100000 * 15 / 16 * 10000;
> + tmp /= 4096 - 512 + mt->adc_ge;
> + tmp /= 1490;
> + tmp *= raw - mt->vts[sensno] - 2900 - mt->adc_oe + 512;
Hi Daniel,
Regarding the conversion formula, I would suggest following the
original one, i.e., discarding "adc_oe" parameter as shown in [1].
This equation is derived based on hardware-specific theory, so any
arbitrary change could possibly lead to incorrect temperature output.
Thanks.
[1]
https://git01.mediatek.com/plugins/gitiles/openwrt/feeds/mtk-openwrt-feeds/+/baf36c7eef477aae1f8f2653b6c29e2caf48475b%5E%21/#F0
Henry
> +
> + return mt->degc_cali * 500 - tmp;
> +}
> +
> /**
> * mtk_thermal_get_bank - get bank
> * @bank: The bank
Powered by blists - more mailing lists