Re: [PATCH v5 3/3] dts: hi6220: enable thermal sensor for hisilicon SoC

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

 





On 2015/5/20 12:51, Eduardo Valentin wrote:
> On Mon, May 18, 2015 at 03:11:49PM +0800, Xinwei Kong wrote:
>> From: kongxinwei <kong.kongxinwei@xxxxxxxxxxxxx>
>>
>> Dts includes two part: the first part is related with thermal sensor;
>> the second part is related with thermal zones, in this part it will
>> define the thermal zones and which sensor device should be bound to.
>> it also need specify the polling interval for every thermal zone.
>>
>> Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
>> Signed-off-by: kongxinwei <kong.kongxinwei@xxxxxxxxxxxxx>
>> ---
>>  arch/arm64/boot/dts/hisilicon/hi6220.dtsi | 127 ++++++++++++++++++++++++++++++
>>  1 file changed, 127 insertions(+)
>>  create mode 100644 arch/arm64/boot/dts/hisilicon/hi6220.dtsi
>>
>> diff --git a/arch/arm64/boot/dts/hisilicon/hi6220.dtsi b/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
>> new file mode 100644
>> index 0000000..82f213d
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
>> @@ -0,0 +1,127 @@
>> +
>> +#include <dt-bindings/thermal/thermal.h>
>> +
>> +/ {
>> +
>> +	tsensor: tsensor@0,f7030700 {
>> +		compatible = "hisilicon,tsensor";
>> +		reg = <0x0 0xf7030700 0x0 0x1000>;
>> +		interrupts = <0 7 0x4>;
>> +		clocks = <&clock_sys HI6220_TSENSOR_CLK>;
>> +		clock-names = "thermal_clk";
>> +		#thermal-sensor-cells = <1>;

 		}

oh, my god. I miss it. add "}".
>> +
>> +	thermal-zones {
> 
> The thermal-zones node is typically in the root node, not inside the
> sensor node.
> 
>> +		local: local {
>> +			/* milliseconds */
>> +			polling-delay-passive = <1000>;
>> +			/* milliseconds */
>> +			polling-delay = <5000>;
>> +
>> +			/* sensor	ID */
>> +			thermal-sensors = <&tsensor  0>;
>> +
>> +			trips {
>> +				local_alert: local_alert {
>> +					/* millicelsius */
>> +					temperature = <70000>;
>> +					/* millicelsius */
>> +					hysteresis = <2000>;
>> +					type = "passive";
>> +				};
>> +				local_crit: local_crit {
>> +					temperature = <90000>;
>> +					hysteresis = <2000>;
>> +					type = "critical";
>> +				};
>> +			};
>> +
>> +			cooling-maps {
>> +				/* There are currently no cooling maps
>> +				because there are no cooling devices */
> 
> Not even cpufreq? in your driver you mention about cpufreq cooling.
> 
> Do you have cpufreq-dt driver  properly setup in your board?
> 
>> +			};
>> +		};
>> +
>> +		cluster1: cluster1 {
>> +			polling-delay-passive = <1000>;
>> +			polling-delay = <5000>;
>> +
>> +			/* sensor	ID */
>> +			thermal-sensors = <&tsensor  1>;
>> +
>> +			trips {
>> +				cluster1_alert: cluster1_alert {
>> +					temperature = <70000>;
>> +					hysteresis = <2000>;
>> +					type = "passive";
>> +				};
>> +				cluster1_crit: cluster1_crit {
>> +					temperature = <90000>;
>> +					hysteresis = <2000>;
>> +					type = "critical";
>> +				};
>> +			};
>> +
>> +			cooling-maps {
>> +				/* There are currently no cooling maps
>> +				because there are no cooling devices */
>> +			};
>> +		};
>> +
>> +		cluster0: cluster0 {
>> +			polling-delay-passive = <1000>;
>> +			polling-delay = <5000>;
>> +
>> +			/* sensor	ID */
>> +			thermal-sensors = <&tsensor  2>;
>> +
>> +			trips {
>> +				cluster0_alert: cluster0_alert {
>> +					temperature = <70000>;
>> +					hysteresis = <2000>;
>> +					type = "passive";
>> +				};
>> +				cluster0_crit: cluster0_crit {
>> +					temperature = <90000>;
>> +					hysteresis = <2000>;
>> +					type = "critical";
>> +				};
>> +			};
>> +
>> +			cooling-maps {
>> +				map0 {
>> +					trip = <&cluster0_alert>;
>> +					cooling-device =
>> +					    <&cpu0 THERMAL_NO_LIMIT
>> +						THERMAL_NO_LIMIT>;
>> +				};
>> +			};
>> +		};
>> +
>> +		gpu: gpu {
>> +			polling-delay-passive = <1000>;
>> +			polling-delay = <5000>;
>> +
>> +			/* sensor	ID */
>> +			thermal-sensors = <&tsensor  3>;
>> +
>> +			trips {
>> +				gpu_alert: gpu_alert {
>> +					temperature = <70000>;
>> +					hysteresis = <2000>;
>> +					type = "passive";
>> +				};
>> +				gpu_crit: gpu_crit {
>> +					temperature = <90000>;
>> +					hysteresis = <2000>;
>> +					type = "critical";
>> +				};
>> +			};
>> +
>> +			cooling-maps {
>> +				/* There are currently no cooling maps
>> +				because there are no cooling devices */
>> +			};
>> +		};
>> +	};
>> +}
> 
> Are you sure this DT file works? I think it misses a closing \}.

I will re-varify  this driver and enable or use this tsensor based
mainline kernel  4.1-rc1.
> 
>> -- 
>> 1.9.1
>>
>>

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[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