Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH] thermal: mediatek: add sensors-support
@ 2021-03-20  8:06 Frank Wunderlich
  2021-04-18 12:03 ` Aw: " Frank Wunderlich
  2021-04-20 12:07 ` Daniel Lezcano
  0 siblings, 2 replies; 7+ messages in thread
From: Frank Wunderlich @ 2021-03-20  8:06 UTC (permalink / raw)
  To: linux-mediatek
  Cc: Frank Wunderlich, Zhang Rui, Daniel Lezcano, Amit Kucheria,
	Matthias Brugger, linux-pm, linux-arm-kernel, linux-kernel

From: Frank Wunderlich <frank-w@public-files.de>

add HWMON-support to mediateks thermanl driver to allow lm-sensors
userspace tools read soc temperature

Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
---
 drivers/thermal/mtk_thermal.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/drivers/thermal/mtk_thermal.c b/drivers/thermal/mtk_thermal.c
index 149c6d7fd5a0..e22d77d57458 100644
--- a/drivers/thermal/mtk_thermal.c
+++ b/drivers/thermal/mtk_thermal.c
@@ -23,6 +23,8 @@
 #include <linux/reset.h>
 #include <linux/types.h>
 
+#include "thermal_hwmon.h"
+
 /* AUXADC Registers */
 #define AUXADC_CON1_SET_V	0x008
 #define AUXADC_CON1_CLR_V	0x00c
@@ -983,6 +985,13 @@ static void mtk_thermal_release_periodic_ts(struct mtk_thermal *mt,
 	writel((tmp & (~0x10e)), mt->thermal_base + TEMP_MSRCTL1);
 }
 
+static void mtk_thermal_hwmon_action(void *data)
+{
+	struct thermal_zone_device *zone = data;
+
+	thermal_remove_hwmon_sysfs(zone);
+}
+
 static int mtk_thermal_probe(struct platform_device *pdev)
 {
 	int ret, i, ctrl_id;
@@ -1087,6 +1096,19 @@ static int mtk_thermal_probe(struct platform_device *pdev)
 		goto err_disable_clk_peri_therm;
 	}
 
+#ifdef CONFIG_THERMAL_HWMON
+	tzdev->tzp->no_hwmon = false;
+	ret = thermal_add_hwmon_sysfs(tzdev);
+	if (ret)
+		dev_err(&pdev->dev, "error in thermal_add_hwmon_sysfs");
+
+	ret = devm_add_action(&pdev->dev, mtk_thermal_hwmon_action, tzdev);
+	if (ret) {
+		dev_err(&pdev->dev, "error in devm_add_action");
+		mtk_thermal_hwmon_action(tzdev);
+	}
+#endif
+
 	return 0;
 
 err_disable_clk_peri_therm:
-- 
2.25.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Aw: [PATCH] thermal: mediatek: add sensors-support
  2021-03-20  8:06 [PATCH] thermal: mediatek: add sensors-support Frank Wunderlich
@ 2021-04-18 12:03 ` Frank Wunderlich
  2021-04-20 12:07 ` Daniel Lezcano
  1 sibling, 0 replies; 7+ messages in thread
From: Frank Wunderlich @ 2021-04-18 12:03 UTC (permalink / raw)
  To: Frank Wunderlich
  Cc: linux-mediatek, Zhang Rui, Daniel Lezcano, Amit Kucheria,
	Matthias Brugger, linux-pm, linux-arm-kernel, linux-kernel

Hi,

any opinion (except typo)?

thermanl => thermal

regards Frank


> Gesendet: Samstag, 20. März 2021 um 10:06 Uhr
> Von: "Frank Wunderlich" <linux@fw-web.de>
> add HWMON-support to mediateks thermanl driver to allow lm-sensors
> userspace tools read soc temperature


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] thermal: mediatek: add sensors-support
  2021-03-20  8:06 [PATCH] thermal: mediatek: add sensors-support Frank Wunderlich
  2021-04-18 12:03 ` Aw: " Frank Wunderlich
@ 2021-04-20 12:07 ` Daniel Lezcano
  2021-04-20 14:59   ` Aw: " Frank Wunderlich
  1 sibling, 1 reply; 7+ messages in thread
From: Daniel Lezcano @ 2021-04-20 12:07 UTC (permalink / raw)
  To: Frank Wunderlich, linux-mediatek
  Cc: Frank Wunderlich, Zhang Rui, Amit Kucheria, Matthias Brugger,
	linux-pm, linux-arm-kernel, linux-kernel

On 20/03/2021 09:06, Frank Wunderlich wrote:
> From: Frank Wunderlich <frank-w@public-files.de>
> 
> add HWMON-support to mediateks thermanl driver to allow lm-sensors
> userspace tools read soc temperature
> 
> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
> ---
>  drivers/thermal/mtk_thermal.c | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
> 
> diff --git a/drivers/thermal/mtk_thermal.c b/drivers/thermal/mtk_thermal.c
> index 149c6d7fd5a0..e22d77d57458 100644
> --- a/drivers/thermal/mtk_thermal.c
> +++ b/drivers/thermal/mtk_thermal.c
> @@ -23,6 +23,8 @@
>  #include <linux/reset.h>
>  #include <linux/types.h>
>  
> +#include "thermal_hwmon.h"
> +
>  /* AUXADC Registers */
>  #define AUXADC_CON1_SET_V	0x008
>  #define AUXADC_CON1_CLR_V	0x00c
> @@ -983,6 +985,13 @@ static void mtk_thermal_release_periodic_ts(struct mtk_thermal *mt,
>  	writel((tmp & (~0x10e)), mt->thermal_base + TEMP_MSRCTL1);
>  }
>  
> +static void mtk_thermal_hwmon_action(void *data)
> +{
> +	struct thermal_zone_device *zone = data;
> +
> +	thermal_remove_hwmon_sysfs(zone);
> +}
> +
>  static int mtk_thermal_probe(struct platform_device *pdev)
>  {
>  	int ret, i, ctrl_id;
> @@ -1087,6 +1096,19 @@ static int mtk_thermal_probe(struct platform_device *pdev)
>  		goto err_disable_clk_peri_therm;
>  	}
>  
> +#ifdef CONFIG_THERMAL_HWMON

No #ifdef in C file.

> +	tzdev->tzp->no_hwmon = false;
> +	ret = thermal_add_hwmon_sysfs(tzdev);
> +	if (ret)
> +		dev_err(&pdev->dev, "error in thermal_add_hwmon_sysfs");
> +
> +	ret = devm_add_action(&pdev->dev, mtk_thermal_hwmon_action, tzdev);

devm_thermal_add_hwmon_sysfs() ?

> +	if (ret) {
> +		dev_err(&pdev->dev, "error in devm_add_action");
> +		mtk_thermal_hwmon_action(tzdev);
> +	}
> +#endif
> +
>  	return 0;
>  
>  err_disable_clk_peri_therm:
> 


-- 
<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

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Aw: Re: [PATCH] thermal: mediatek: add sensors-support
  2021-04-20 12:07 ` Daniel Lezcano
@ 2021-04-20 14:59   ` Frank Wunderlich
  2021-04-20 15:18     ` Daniel Lezcano
  0 siblings, 1 reply; 7+ messages in thread
From: Frank Wunderlich @ 2021-04-20 14:59 UTC (permalink / raw)
  To: Daniel Lezcano
  Cc: Frank Wunderlich, linux-mediatek, Zhang Rui, Amit Kucheria,
	Matthias Brugger, linux-pm, linux-arm-kernel, linux-kernel

Hi,

> Gesendet: Dienstag, 20. April 2021 um 14:07 Uhr
> Von: "Daniel Lezcano" <daniel.lezcano@linaro.org>

> No #ifdef in C file.
...

> devm_thermal_add_hwmon_sysfs() ?

based on your comments this should be enough/right?

#if IS_ENABLED(CONFIG_THERMAL_HWMON)
    tzdev->tzp->no_hwmon = false;
    ret = devm_thermal_add_hwmon_sysfs(tzdev);
    if (ret)
        dev_err(&pdev->dev, "error in thermal_add_hwmon_sysfs");
#endif

if yes i send out v2, at least it works on my device

regards Frank



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Aw: Re: [PATCH] thermal: mediatek: add sensors-support
  2021-04-20 14:59   ` Aw: " Frank Wunderlich
@ 2021-04-20 15:18     ` Daniel Lezcano
  2021-04-20 15:24       ` Frank Wunderlich
  0 siblings, 1 reply; 7+ messages in thread
From: Daniel Lezcano @ 2021-04-20 15:18 UTC (permalink / raw)
  To: Frank Wunderlich
  Cc: Frank Wunderlich, linux-mediatek, Zhang Rui, Amit Kucheria,
	Matthias Brugger, linux-pm, linux-arm-kernel, linux-kernel


Hi Frank,

On 20/04/2021 16:59, Frank Wunderlich wrote:
> Hi,
> 
>> Gesendet: Dienstag, 20. April 2021 um 14:07 Uhr
>> Von: "Daniel Lezcano" <daniel.lezcano@linaro.org>
> 
>> No #ifdef in C file.
> ...
> 
>> devm_thermal_add_hwmon_sysfs() ?
> 
> based on your comments this should be enough/right?
> 
> #if IS_ENABLED(CONFIG_THERMAL_HWMON)
>     tzdev->tzp->no_hwmon = false;>     ret = devm_thermal_add_hwmon_sysfs(tzdev);
>     if (ret)
>         dev_err(&pdev->dev, "error in thermal_add_hwmon_sysfs");
> #endif
> 
> if yes i send out v2, at least it works on my device

just the following lines should work:

	ret = devm_thermal_add_hwmon_sysfs(tzdev);
	if (ret)
		dev_err(&pdev->dev, "error in thermal_add_hwmon_sysfs");


The no_hwmon usage is a bit fuzzy in the thermal core code.


-- 
<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

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Aw: Re: [PATCH] thermal: mediatek: add sensors-support
  2021-04-20 15:18     ` Daniel Lezcano
@ 2021-04-20 15:24       ` Frank Wunderlich
  2021-04-20 15:27         ` Daniel Lezcano
  0 siblings, 1 reply; 7+ messages in thread
From: Frank Wunderlich @ 2021-04-20 15:24 UTC (permalink / raw)
  To: linux-mediatek, Daniel Lezcano
  Cc: Frank Wunderlich, Zhang Rui, Amit Kucheria, Matthias Brugger,
	linux-pm, linux-arm-kernel, linux-kernel

Am 20. April 2021 17:18:32 MESZ schrieb Daniel Lezcano <daniel.lezcano@linaro.org>:
>
>Hi Frank,

>The no_hwmon usage is a bit fuzzy in the thermal core code.

Maybe add depency in Kconfig? Else we can get undefined symbols on linking

regards Frank

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Aw: Re: [PATCH] thermal: mediatek: add sensors-support
  2021-04-20 15:24       ` Frank Wunderlich
@ 2021-04-20 15:27         ` Daniel Lezcano
  0 siblings, 0 replies; 7+ messages in thread
From: Daniel Lezcano @ 2021-04-20 15:27 UTC (permalink / raw)
  To: frank-w, linux-mediatek
  Cc: Frank Wunderlich, Zhang Rui, Amit Kucheria, Matthias Brugger,
	linux-pm, linux-arm-kernel, linux-kernel

On 20/04/2021 17:24, Frank Wunderlich wrote:
> Am 20. April 2021 17:18:32 MESZ schrieb Daniel Lezcano <daniel.lezcano@linaro.org>:
>>
>> Hi Frank,
> 
>> The no_hwmon usage is a bit fuzzy in the thermal core code.
> 
> Maybe add depency in Kconfig? Else we can get undefined symbols on linking
> 
> regards Frank

Nope, there are the stubs in thermal_hwmon.h



-- 
<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

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, back to index

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-20  8:06 [PATCH] thermal: mediatek: add sensors-support Frank Wunderlich
2021-04-18 12:03 ` Aw: " Frank Wunderlich
2021-04-20 12:07 ` Daniel Lezcano
2021-04-20 14:59   ` Aw: " Frank Wunderlich
2021-04-20 15:18     ` Daniel Lezcano
2021-04-20 15:24       ` Frank Wunderlich
2021-04-20 15:27         ` Daniel Lezcano

Linux-ARM-Kernel Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-arm-kernel/0 linux-arm-kernel/git/0.git
	git clone --mirror https://lore.kernel.org/linux-arm-kernel/1 linux-arm-kernel/git/1.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-arm-kernel linux-arm-kernel/ https://lore.kernel.org/linux-arm-kernel \
		linux-arm-kernel@lists.infradead.org
	public-inbox-index linux-arm-kernel

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.infradead.lists.linux-arm-kernel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git