Re: [PATCH 1/2] DT: bindings: Add cooling cells for idle states

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

 



Hi Rob,


On Wed, 8 Jan 2020 at 15:03, Rob Herring <robh@xxxxxxxxxx> 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@xxxxxxxxxx>
> > ---
> >  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@300/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?




[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