|
@@ -72,8 +72,25 @@ Required sub-node properties:
|
|
- compatible : should be "arm,juno-scp-shmem" for Non-secure SRAM based
|
|
- compatible : should be "arm,juno-scp-shmem" for Non-secure SRAM based
|
|
shared memory on Juno platforms
|
|
shared memory on Juno platforms
|
|
|
|
|
|
|
|
+Sensor bindings for the sensors based on SCPI Message Protocol
|
|
|
|
+--------------------------------------------------------------
|
|
|
|
+SCPI provides an API to access the various sensors on the SoC.
|
|
|
|
+
|
|
|
|
+Required properties:
|
|
|
|
+- compatible : should be "arm,scpi-sensors".
|
|
|
|
+- #thermal-sensor-cells: should be set to 1. This property follows the
|
|
|
|
+ thermal device tree bindings[2].
|
|
|
|
+
|
|
|
|
+ Valid cell values are raw identifiers (Sensor
|
|
|
|
+ ID) as used by the firmware. Refer to
|
|
|
|
+ platform documentation for your
|
|
|
|
+ implementation for the IDs to use. For Juno
|
|
|
|
+ R0 and Juno R1 refer to [3].
|
|
|
|
+
|
|
[0] http://infocenter.arm.com/help/topic/com.arm.doc.dui0922b/index.html
|
|
[0] http://infocenter.arm.com/help/topic/com.arm.doc.dui0922b/index.html
|
|
[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
|
|
[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
|
|
|
|
+[2] Documentation/devicetree/bindings/thermal/thermal.txt
|
|
|
|
+[3] http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0922b/apas03s22.html
|
|
|
|
|
|
Example:
|
|
Example:
|
|
|
|
|
|
@@ -122,6 +139,11 @@ scpi_protocol: scpi@2e000000 {
|
|
clock-output-names = "pxlclk0", "pxlclk1";
|
|
clock-output-names = "pxlclk0", "pxlclk1";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
+
|
|
|
|
+ scpi_sensors0: sensors {
|
|
|
|
+ compatible = "arm,scpi-sensors";
|
|
|
|
+ #thermal-sensor-cells = <1>;
|
|
|
|
+ };
|
|
};
|
|
};
|
|
|
|
|
|
cpu@0 {
|
|
cpu@0 {
|
|
@@ -136,6 +158,17 @@ hdlcd@7ff60000 {
|
|
clocks = <&scpi_clk 4>;
|
|
clocks = <&scpi_clk 4>;
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+thermal-zones {
|
|
|
|
+ soc_thermal {
|
|
|
|
+ polling-delay-passive = <100>;
|
|
|
|
+ polling-delay = <1000>;
|
|
|
|
+
|
|
|
|
+ /* sensor ID */
|
|
|
|
+ thermal-sensors = <&scpi_sensors0 3>;
|
|
|
|
+ ...
|
|
|
|
+ };
|
|
|
|
+};
|
|
|
|
+
|
|
In the above example, the #clock-cells is set to 1 as required.
|
|
In the above example, the #clock-cells is set to 1 as required.
|
|
scpi_dvfs has 3 output clocks namely: atlclk, aplclk, and gpuclk with 0,
|
|
scpi_dvfs has 3 output clocks namely: atlclk, aplclk, and gpuclk with 0,
|
|
1 and 2 as clock-indices. scpi_clk has 2 output clocks namely: pxlclk0
|
|
1 and 2 as clock-indices. scpi_clk has 2 output clocks namely: pxlclk0
|
|
@@ -148,3 +181,8 @@ scpi_dvfs i.e. "atlclk".
|
|
Similarly the second example is hdlcd@7ff60000 and it has pxlclk1 as input
|
|
Similarly the second example is hdlcd@7ff60000 and it has pxlclk1 as input
|
|
clock. '4' in the clock specifier here points to the second entry
|
|
clock. '4' in the clock specifier here points to the second entry
|
|
in the output clocks of scpi_clocks i.e. "pxlclk1"
|
|
in the output clocks of scpi_clocks i.e. "pxlclk1"
|
|
|
|
+
|
|
|
|
+The thermal-sensors property in the soc_thermal node uses the
|
|
|
|
+temperature sensor provided by SCP firmware to setup a thermal
|
|
|
|
+zone. The ID "3" is the sensor identifier for the temperature sensor
|
|
|
|
+as used by the firmware.
|