[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3b94b423-ca26-b96f-90fa-2662dbc523d8@linaro.org>
Date: Sat, 11 Jan 2020 18:32:48 +0100
From: Daniel Lezcano <daniel.lezcano@...aro.org>
To: Rob Herring <robh@...nel.org>
Cc: Mark Rutland <mark.rutland@....com>,
Amit Kucheria <amit.kucheria@...aro.org>,
Geert Uytterhoeven <geert+renesas@...der.be>,
Mauro Carvalho Chehab <mchehab+samsung@...nel.org>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@...r.kernel.org>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/2] DT: bindings: Add cooling cells for idle states
Hi Rob,
On Wed, 8 Jan 2020 at 15:03, Rob Herring <robh@...nel.org> wrote:
>
> On Thu, Dec 19, 2019 at 11:19:27PM +0100, Daniel Lezcano wrote:
> > Add DT documentation to add an idle state as a cooling device. The CPU
> > is actually the cooling device but the definition is already used by
> > frequency capping. As we need to make cpufreq capping and idle
> > injection to co-exist together on the system in order to mitigate at
> > different trip points, the CPU can not be used as the cooling device
> > for idle injection. The idle state can be seen as an hardware feature
> > and therefore as a component for the passive mitigation.
> >
> > Signed-off-by: Daniel Lezcano <daniel.lezcano@...aro.org>
> > ---
> > Documentation/devicetree/bindings/arm/idle-states.txt | 11 +++++++++++
> > 1 file changed, 11 insertions(+)
>
> This is now a schema in my tree. Can you rebase on that and I'll pick up
> the binding change.
Mmh, I'm now having some doubts about this binding because it will
restrict any improvement of the cooling device for the future.
It looks like adding a node to the CPU for the cooling device is more
adequate.
eg:
CPU0: cpu@300 {
device_type = "cpu";
compatible = "arm,cortex-a9";
reg = <0x300>;
/* cpufreq controls */
operating-points = <998400 0
800000 0
400000 0
200000 0>;
clocks = <&prcmu_clk PRCMU_ARMSS>;
clock-names = "cpu";
clock-latency = <20000>;
#cooling-cells = <2>;
thermal-idle {
#cooling-cells = <2>;
};
};
[ ... ]
cooling-device = <&{/cpus/cpu@.../thermal-idle}
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
A quick test with different configurations combination shows it is much
more flexible and it is open for future changes.
What do you think?
Powered by blists - more mailing lists