Re: [PATCH v7 4/7] arm64: dts: meson: g12: Add minimal thermal zone

From: guillaume La Roque
Date: Wed Oct 16 2019 - 05:00:19 EST


Hi,

On 10/16/19 1:20 AM, Amit Kucheria wrote:
> On Fri, Oct 4, 2019 at 2:31 PM Guillaume La Roque <glaroque@xxxxxxxxxxxx> wrote:
>> Add minimal thermal zone for two temperature sensor
>> One is located close to the DDR and the other one is
>> located close to the PLLs (between the CPU and GPU)
>>
>> Acked-by: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>
>> Reviewed-by: Neil Armstrong <narmstrong@xxxxxxxxxxxx>
>> Tested-by: Christian Hewitt <christianshewitt@xxxxxxxxx>
>> Tested-by: Kevin Hilman <khilman@xxxxxxxxxxxx>
>> Signed-off-by: Guillaume La Roque <glaroque@xxxxxxxxxxxx>
>> ---
>> .../boot/dts/amlogic/meson-g12-common.dtsi | 57 +++++++++++++++++++
>> 1 file changed, 57 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
>> index 0660d9ef6a86..a98c16e163c2 100644
>> --- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
>> +++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
>> @@ -12,6 +12,7 @@
>> #include <dt-bindings/interrupt-controller/arm-gic.h>
>> #include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h>
>> #include <dt-bindings/reset/amlogic,meson-g12a-reset.h>
>> +#include <dt-bindings/thermal/thermal.h>
>>
>> / {
>> interrupt-parent = <&gic>;
>> @@ -94,6 +95,61 @@
>> #size-cells = <2>;
>> ranges;
>>
>> + thermal-zones {
>> + cpu_thermal: cpu-thermal {
>> + polling-delay = <1000>;
>> + polling-delay-passive = <100>;
> Ordinarily, you would need to set these delays to 0 in interrupt mode
> to prevent polling overhead. I've just submitted a patch to of-thermal
> that should fix this requirement. Could you check if it works for you?

it's working for me.

thanks for your review.

>> + thermal-sensors = <&cpu_temp>;
>> +
>> + trips {
>> + cpu_passive: cpu-passive {
>> + temperature = <85000>; /* millicelsius */
>> + hysteresis = <2000>; /* millicelsius */
>> + type = "passive";
>> + };
>> +
>> + cpu_hot: cpu-hot {
>> + temperature = <95000>; /* millicelsius */
>> + hysteresis = <2000>; /* millicelsius */
>> + type = "hot";
>> + };
>> +
>> + cpu_critical: cpu-critical {
>> + temperature = <110000>; /* millicelsius */
>> + hysteresis = <2000>; /* millicelsius */
>> + type = "critical";
>> + };
>> + };
>> + };
>> +
>> + ddr_thermal: ddr-thermal {
>> + polling-delay = <1000>;
>> + polling-delay-passive = <100>;
>> + thermal-sensors = <&ddr_temp>;
>> +
>> + trips {
>> + ddr_passive: ddr-passive {
>> + temperature = <85000>; /* millicelsius */
>> + hysteresis = <2000>; /* millicelsius */
>> + type = "passive";
>> + };
>> +
>> + ddr_critical: ddr-critical {
>> + temperature = <110000>; /* millicelsius */
>> + hysteresis = <2000>; /* millicelsius */
>> + type = "critical";
>> + };
>> + };
>> +
>> + cooling-maps {
>> + map {
>> + trip = <&ddr_passive>;
>> + cooling-device = <&mali THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
>> + };
>> + };
>> + };
>> + };
>> +
>> ethmac: ethernet@ff3f0000 {
>> compatible = "amlogic,meson-axg-dwmac",
>> "snps,dwmac-3.70a",
>> @@ -2412,6 +2468,7 @@
>> assigned-clock-rates = <0>, /* Do Nothing */
>> <800000000>,
>> <0>; /* Do Nothing */
>> + #cooling-cells = <2>;
>> };
>> };
>>
>> --
>> 2.17.1
>>