From: "Niklas Söderlund" <niklas.soderlund@ragnatech.se>
To: Yoshihiro Kaneko <ykaneko0929@gmail.com>
Cc: linux-renesas-soc@vger.kernel.org,
Magnus Damm <magnus.damm@gmail.com>,
Simon Horman <horms@verge.net.au>,
Geert Uytterhoeven <geert@linux-m68k.org>,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH/RFT] arm64: dts: renesas: r8a7795: Create thermal zone to support IPA
Date: Thu, 10 Jan 2019 17:33:57 +0100 [thread overview]
Message-ID: <20190110163356.GF24252@bigcity.dyn.berto.se> (raw)
In-Reply-To: <1545338982-19466-1-git-send-email-ykaneko0929@gmail.com>
Hi Keneko-san,
Thanks for your work.
Comments to this patch applies to all patches in this series.
On 2018-12-21 05:49:39 +0900, Yoshihiro Kaneko wrote:
> From: Dien Pham <dien.pham.ry@renesas.com>
>
> [dien.pham.ry: arm64: dts: r8a7795: Add support IPA for CA53 core]
>
> Setup a thermal zone driven by SoC temperature sensor.
> Create passive trip points and bind them to CPUFreq cooling
> device that supports power extension.
>
> In R-Car Gen3, IPA is supportted for only one channel
> (on H3/M3/M3N board, it is channel THS3). Reason:
> Currently, IPA controls base on only CPU temperature.
> And only one thermal channel is assembled closest
> CPU cores is selected as target of IPA.
> If other channels are used, IPA controlling is not properly.
>
> Signed-off-by: Keita Kobayashi <keita.kobayashi.ym@renesas.com>
> [gaku.inami.xw: fix the trip temperature for cooling-device]
> [gaku.inami.xw: fix the power coefficient]
> Signed-off-by: Gaku Inami <gaku.inami.xw@bp.renesas.com>
> Signed-off-by: Hien Dang <hien.dang.eb@rvc.renesas.com>
> Signed-off-by: An Huynh <an.huynh.uj@rvc.renesas.com>
> [takeshi.kihara.df: fix W=1 dtc unit_address_vs_reg warnings]
> Signed-off-by: Takeshi Kihara <takeshi.kihara.df@renesas.com>
> Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com>
> ---
>
> This patch is based on the devel branch of Simon Horman's renesas tree.
>
> arch/arm64/boot/dts/renesas/r8a7795.dtsi | 64 ++++++++++++++------------------
> 1 file changed, 27 insertions(+), 37 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
> index af9605d..dd52b50 100644
> --- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi
> +++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
> @@ -155,6 +155,9 @@
> power-domains = <&sysc R8A7795_PD_CA57_CPU0>;
> next-level-cache = <&L2_CA57>;
> enable-method = "psci";
> + dynamic-power-coefficient = <854>;
> + cooling-min-level = <0>;
> + cooling-max-level = <2>;
I can't find any documentation or code which makes use of the
cooling-min-level and cooling-max-level properties on v5.0-rc1. What is
the intended usage for these properties?
> clocks = <&cpg CPG_CORE R8A7795_CLK_Z>;
> operating-points-v2 = <&cluster0_opp>;
> capacity-dmips-mhz = <1024>;
> @@ -207,6 +210,10 @@
> power-domains = <&sysc R8A7795_PD_CA53_CPU0>;
> next-level-cache = <&L2_CA53>;
> enable-method = "psci";
> + #cooling-cells = <2>;
> + dynamic-power-coefficient = <277>;
> + cooling-min-level = <0>;
> + cooling-max-level = <2>;
> clocks = <&cpg CPG_CORE R8A7795_CLK_Z2>;
> operating-points-v2 = <&cluster1_opp>;
> capacity-dmips-mhz = <535>;
> @@ -3098,58 +3105,30 @@
> polling-delay-passive = <250>;
> polling-delay = <1000>;
> thermal-sensors = <&tsc 0>;
> + sustainable-power = <6313>;
>
> trips {
> - sensor1_passive: sensor1-passive {
> - temperature = <95000>;
> - hysteresis = <1000>;
> - type = "passive";
> - };
> sensor1_crit: sensor1-crit {
> temperature = <120000>;
> hysteresis = <1000>;
> type = "critical";
> };
> };
> -
> - cooling-maps {
> - map0 {
> - trip = <&sensor1_passive>;
> - cooling-device = <&a57_0 4 4>,
> - <&a57_1 4 4>,
> - <&a57_2 4 4>,
> - <&a57_3 4 4>;
> - };
> - };
> };
>
> sensor_thermal2: sensor-thermal2 {
> polling-delay-passive = <250>;
> polling-delay = <1000>;
> thermal-sensors = <&tsc 1>;
> + sustainable-power = <6313>;
>
> trips {
> - sensor2_passive: sensor2-passive {
> - temperature = <95000>;
> - hysteresis = <1000>;
> - type = "passive";
> - };
> sensor2_crit: sensor2-crit {
> temperature = <120000>;
> hysteresis = <1000>;
> type = "critical";
> };
> };
> -
> - cooling-maps {
> - map0 {
> - trip = <&sensor2_passive>;
> - cooling-device = <&a57_0 4 4>,
> - <&a57_1 4 4>,
> - <&a57_2 4 4>,
> - <&a57_3 4 4>;
> - };
> - };
> };
>
> sensor_thermal3: sensor-thermal3 {
> @@ -3158,11 +3137,18 @@
> thermal-sensors = <&tsc 2>;
>
> trips {
> - sensor3_passive: sensor3-passive {
> - temperature = <95000>;
> + threshold: trip-point0 {
> + temperature = <90000>;
> + hysteresis = <1000>;
> + type = "passive";
> + };
What is the usage of trip-point0? The label threshold is never
referenced anywhere, or am I missing something?
> +
> + target: trip-point1 {
> + temperature = <100000>;
> hysteresis = <1000>;
> type = "passive";
> };
> +
> sensor3_crit: sensor3-crit {
> temperature = <120000>;
> hysteresis = <1000>;
> @@ -3172,11 +3158,15 @@
>
> cooling-maps {
> map0 {
> - trip = <&sensor3_passive>;
> - cooling-device = <&a57_0 4 4>,
> - <&a57_1 4 4>,
> - <&a57_2 4 4>,
> - <&a57_3 4 4>;
> + trip = <&target>;
> + cooling-device = <&a57_0 0 2>;
We have 5 (0-4) cooling states for the A57s on this SoC. Out of
curiosity why allow states 0-2 here and not force it do more cooling or
keep the to max cooling (4) as before this change as this is set to a
trip point with a rather large temperature? Not saying this is wrong
only curious :-)
> + contribution = <1024>;
> + };
> +
> + map1 {
> + trip = <&target>;
> + cooling-device = <&a53_0 0 2>;
> + contribution = <1024>;
> };
> };
> };
> --
> 1.9.1
>
--
Regards,
Niklas Söderlund
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-01-10 16:34 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-20 20:49 [PATCH/RFT] arm64: dts: renesas: r8a7795: Create thermal zone to support IPA Yoshihiro Kaneko
2018-12-20 20:49 ` [PATCH/RFT] arm64: dts: renesas: r8a7796: " Yoshihiro Kaneko
2018-12-20 20:49 ` [PATCH/RFT] arm64: dts: renesas: r8a77965: " Yoshihiro Kaneko
2018-12-20 20:49 ` [PATCH/RFT] arm64: dts: renesas: r8a77990: " Yoshihiro Kaneko
2019-01-10 16:33 ` Niklas Söderlund [this message]
2019-04-08 12:29 ` [PATCH/RFT] arm64: dts: renesas: r8a7795: " Simon Horman
2019-04-11 16:47 ` Niklas Söderlund
2019-04-24 7:17 ` Geert Uytterhoeven
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=20190110163356.GF24252@bigcity.dyn.berto.se \
--to=niklas.soderlund@ragnatech.se \
--cc=geert@linux-m68k.org \
--cc=horms@verge.net.au \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=magnus.damm@gmail.com \
--cc=ykaneko0929@gmail.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).