RE: [EXT] Re: [PATCH v5] arm64: dts: ls1088a: add one more thermal zone node

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
> Sent: 2019年4月12日 20:19
> To: Andy Tang <andy.tang@xxxxxxx>; shawnguo@xxxxxxxxxx
> Cc: Leo Li <leoyang.li@xxxxxxx>; robh+dt@xxxxxxxxxx; mark.rutland@xxxxxxx;
> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx;
> linux-kernel@xxxxxxxxxxxxxxx; linux-pm@xxxxxxxxxxxxxxx; rui.zhang@xxxxxxxxx;
> edubezval@xxxxxxxxx
> Subject: Re: [EXT] Re: [PATCH v5] arm64: dts: ls1088a: add one more thermal
> zone node
> 
> WARNING: This email was created outside of NXP. DO NOT CLICK links or
> attachments unless you recognize the sender and know the content is safe.
> 
> 
> 
> On 12/04/2019 09:47, Andy Tang wrote:
> >
> >> -----Original Message-----
> >> From: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
> >> Sent: 2019年4月12日 3:15
> >> To: Andy Tang <andy.tang@xxxxxxx>; shawnguo@xxxxxxxxxx
> >> Cc: Leo Li <leoyang.li@xxxxxxx>; robh+dt@xxxxxxxxxx;
> >> mark.rutland@xxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx;
> >> devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> >> linux-pm@xxxxxxxxxxxxxxx; rui.zhang@xxxxxxxxx; edubezval@xxxxxxxxx
> >> Subject: [EXT] Re: [PATCH v5] arm64: dts: ls1088a: add one more
> >> thermal zone node
> >>
> >> WARNING: This email was created outside of NXP. DO NOT CLICK links or
> >> attachments unless you recognize the sender and know the content is safe.
> >>
> >>
> >>
> >> On 11/04/2019 10:32, Yuantian Tang wrote:
> >>> Ls1088a has 2 thermal sensors, core cluster and SoC platform. Core
> >>> cluster sensor is used to monitor the temperature of core and SoC
> >>> platform is for platform. The current dts only support the first sensor.
> >>> This patch adds the second sensor node to dts to enable it.
> >>>
> >>> Signed-off-by: Yuantian Tang <andy.tang@xxxxxxx>
> >>> ---
> >>> v5:
> >>>       - update the thermal zone name due to the length limitation
> >>>       - remove cooling map in platform zone
> >>> v4:
> >>>       - use hyphen instead of underscore in node name
> >>> v3:
> >>>       - use more descriptive name for each zone
> >>> v2:
> >>>       - Add more information about sensors to description
> >>>  arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi |   28
> >> ++++++++++++++++++++---
> >>>  1 files changed, 24 insertions(+), 4 deletions(-)
> >>>
> >>> diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
> >>> b/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
> >>> index de93b42..de39672 100644
> >>> --- a/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
> >>> +++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
> >>> @@ -129,19 +129,19 @@
> >>>       };
> >>>
> >>>       thermal-zones {
> >>> -             cpu_thermal: cpu-thermal {
> >>> +             core-cluster {
> >>>                       polling-delay-passive = <1000>;
> >>>                       polling-delay = <5000>;
> >>>                       thermal-sensors = <&tmu 0>;
> >>>
> >>>                       trips {
> >>> -                             cpu_alert: cpu-alert {
> >>> +                             core_cluster_alert: core-cluster-alert
> >>> + {
> >>>                                       temperature = <85000>;
> >>>                                       hysteresis = <2000>;
> >>>                                       type = "passive";
> >>>                               };
> >>>
> >>> -                             cpu_crit: cpu-crit {
> >>> +                             core_cluster_crit: core-cluster-crit {
> >>>                                       temperature = <95000>;
> >>>                                       hysteresis = <2000>;
> >>>                                       type = "critical"; @@ -150,7
> >>> +150,7 @@
> >>>
> >>>                       cooling-maps {
> >>>                               map0 {
> >>> -                                     trip = <&cpu_alert>;
> >>> +                                     trip = <&core_cluster_alert>;
> >>>                                       cooling-device =
> >>>                                               <&cpu0
> >> THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
> >>>                                               <&cpu1
> >> THERMAL_NO_LIMIT
> >>> THERMAL_NO_LIMIT>, @@ -163,6 +163,26 @@
> >>>                               };
> >>>                       };
> >>>               };
> >>> +
> >>> +             platform {
> >>> +                     polling-delay-passive = <1000>;
> >>> +                     polling-delay = <5000>;
> >>> +                     thermal-sensors = <&tmu 1>;
> >>> +
> >>> +                     trips {
> >>> +                             platform-alert {
> >>> +                                     temperature = <85000>;
> >>> +                                     hysteresis = <2000>;
> >>> +                                     type = "passive";
> >>> +                             };
> >>> +
> >>> +                             platform-crit {
> >>> +                                     temperature = <95000>;
> >>> +                                     hysteresis = <2000>;
> >>> +                                     type = "critical";
> >>> +                             };
> >>> +                     };
> >>> +             };
> >>
> >>
> >> Unfortunately, the documentation says the thermal zone node must
> >> contain a "cooling-maps" entry.
> > That's a question.
> > If I add "cooling-maps", then multiple zones will use same cooling device.
> > If I don't, documentation says it is a " Required properties".
> > I am wondering how it was dealt with on other platform supporting multiple
> zones.
> 
> I think the problem comes from the fact there are no governors capable of
> handling multiple thermal zones.
> 
> The additional cooling device is the devfreq but as the mali driver is not
> upstream, the cooling map for this device does not appear. We can find the
> definitions and the driver in the AOSP [1].
> 
> Moreover, the power is usually managed by the IPA governor, but this one can
> not handle multiple thermal zones, so the cooling devices are joined together
> into a single thermal zone with their contribution to the cooling effect.
> 
> Other definitions I have seen upstream are incomplete or broken.
> 
> [1]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fandroid.g
> ooglesource.com%2Fkernel%2Fhikey-linaro%2F%2B%2Frefs%2Fheads%2Fandr
> oid-hikey-linaro-4.14%2Farch%2Farm64%2Fboot%2Fdts%2Fhisilicon%2Fhi3660.
> dtsi%231340&amp;data=02%7C01%7Candy.tang%40nxp.com%7C559218b1622e
> 4603251908d6bf410e4b%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7
> C636906683466836985&amp;sdata=952xIcrr11g%2B0nl2lgKrG18SlRVgGV6L%2
> BMBL3U6UaiQ%3D&amp;reserved=0
Interesting. I think we have to accept the imperfect for now.

Hi Shawn,
Any comments?

BR,
Andy
> 
> > Hi Shawn,
> > What's your opinions about this?
> 
> 
> 
> --
> 
> <https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.lin
> aro.org%2F&amp;data=02%7C01%7Candy.tang%40nxp.com%7C559218b1622e4
> 603251908d6bf410e4b%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C
> 636906683466836985&amp;sdata=AJvIX8XJ7j1JkpWgD1GuEcP2keO0R1muAzt9
> n2qgU3A%3D&amp;reserved=0> Linaro.org │ Open source software for ARM
> SoCs
> 
> Follow Linaro:
> <https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.fac
> ebook.com%2Fpages%2FLinaro&amp;data=02%7C01%7Candy.tang%40nxp.com
> %7C559218b1622e4603251908d6bf410e4b%7C686ea1d3bc2b4c6fa92cd99c5c30
> 1635%7C0%7C0%7C636906683466836985&amp;sdata=cSUB5H7sqpUP%2B0EP
> HgXEgaRZxYit%2FGN9Vt6XrQuy0DA%3D&amp;reserved=0> Facebook |
> <https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftwitter.c
> om%2F%23!%2Flinaroorg&amp;data=02%7C01%7Candy.tang%40nxp.com%7C5
> 59218b1622e4603251908d6bf410e4b%7C686ea1d3bc2b4c6fa92cd99c5c301635
> %7C0%7C0%7C636906683466836985&amp;sdata=OH7w3%2FUwMEAuBS5%2
> BwPfJl9USz9gT6LpTIw1ORmMeaXA%3D&amp;reserved=0> Twitter |
> <https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.lin
> aro.org%2Flinaro-blog%2F&amp;data=02%7C01%7Candy.tang%40nxp.com%7C
> 559218b1622e4603251908d6bf410e4b%7C686ea1d3bc2b4c6fa92cd99c5c30163
> 5%7C0%7C0%7C636906683466836985&amp;sdata=LtyQn%2BVliawr2tuRhCB84
> WH1RMEio3aFQ2ExCfKn7ok%3D&amp;reserved=0> Blog





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux