devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Shawn Guo <shawnguo@kernel.org>
To: Andy Tang <andy.tang@nxp.com>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>,
	Leo Li <leoyang.li@nxp.com>,
	"robh+dt@kernel.org" <robh+dt@kernel.org>,
	"mark.rutland@arm.com" <mark.rutland@arm.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
	"rui.zhang@intel.com" <rui.zhang@intel.com>,
	"edubezval@gmail.com" <edubezval@gmail.com>
Subject: Re: [EXT] Re: [PATCH v5] arm64: dts: ls1088a: add one more thermal zone node
Date: Sun, 21 Apr 2019 14:45:19 +0800	[thread overview]
Message-ID: <20190421064517.GA19962@dragon> (raw)
In-Reply-To: <VI1PR04MB4333D0D121B60E2CDCE820BEF3260@VI1PR04MB4333.eurprd04.prod.outlook.com>

On Thu, Apr 18, 2019 at 03:28:56AM +0000, Andy Tang wrote:
> 
> > -----Original Message-----
> > From: Daniel Lezcano <daniel.lezcano@linaro.org>
> > Sent: 2019年4月12日 20:19
> > To: Andy Tang <andy.tang@nxp.com>; shawnguo@kernel.org
> > Cc: Leo Li <leoyang.li@nxp.com>; robh+dt@kernel.org; mark.rutland@arm.com;
> > linux-arm-kernel@lists.infradead.org; devicetree@vger.kernel.org;
> > linux-kernel@vger.kernel.org; linux-pm@vger.kernel.org; rui.zhang@intel.com;
> > edubezval@gmail.com
> > 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@linaro.org>
> > >> Sent: 2019年4月12日 3:15
> > >> To: Andy Tang <andy.tang@nxp.com>; shawnguo@kernel.org
> > >> Cc: Leo Li <leoyang.li@nxp.com>; robh+dt@kernel.org;
> > >> mark.rutland@arm.com; linux-arm-kernel@lists.infradead.org;
> > >> devicetree@vger.kernel.org; linux-kernel@vger.kernel.org;
> > >> linux-pm@vger.kernel.org; rui.zhang@intel.com; edubezval@gmail.com
> > >> 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@nxp.com>
> > >>> ---
> > >>> 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?

Sorry.  I'm not going to take a DTS change that contradicts with
bindings.  If you think bindings is not reasonable, change the bindings
first.

Shawn

      reply	other threads:[~2019-04-21  6:45 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-11  8:32 [PATCH v5] arm64: dts: ls1088a: add one more thermal zone node Yuantian Tang
2019-04-11 19:14 ` Daniel Lezcano
2019-04-12  7:47   ` [EXT] " Andy Tang
2019-04-12 12:19     ` Daniel Lezcano
2019-04-18  3:28       ` Andy Tang
2019-04-21  6:45         ` Shawn Guo [this message]

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=20190421064517.GA19962@dragon \
    --to=shawnguo@kernel.org \
    --cc=andy.tang@nxp.com \
    --cc=daniel.lezcano@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=edubezval@gmail.com \
    --cc=leoyang.li@nxp.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=robh+dt@kernel.org \
    --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).