aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPunit Agrawal <punit.agrawal@arm.com>2015-07-02 14:30:01 -0400
committerSudeep Holla <sudeep.holla@arm.com>2015-10-09 06:01:55 -0400
commitd8a44fe7b51d250c5b7a6ff85eb652f1f49f496a (patch)
treeb2e981ea1e2b8661b4e30d9ff2ff28b59053a658
parent8def31034d033961a4e1f34a80f317fd7002faee (diff)
Documentation: add DT bindings for ARM SCPI sensors
The System Control Processor (SCP) provides access to SoC sensors via the System Control and Power Interface (SCPI) Message Protocol. Add bindings to allow probing of these sensors. Also support referencing of the sensors for setting up thermal zones via the thermal DT bindings. Signed-off-by: Punit Agrawal <punit.agrawal@arm.com> Acked-by: Rob Herring <robh+dt@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Sudeep Holla <sudeep.holla@arm.com>
-rw-r--r--Documentation/devicetree/bindings/arm/arm,scpi.txt38
1 files changed, 38 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/arm/arm,scpi.txt b/Documentation/devicetree/bindings/arm/arm,scpi.txt
index f0024605f416..86302de67c2c 100644
--- a/Documentation/devicetree/bindings/arm/arm,scpi.txt
+++ b/Documentation/devicetree/bindings/arm/arm,scpi.txt
@@ -72,8 +72,25 @@ Required sub-node properties:
72- compatible : should be "arm,juno-scp-shmem" for Non-secure SRAM based 72- compatible : should be "arm,juno-scp-shmem" for Non-secure SRAM based
73 shared memory on Juno platforms 73 shared memory on Juno platforms
74 74
75Sensor bindings for the sensors based on SCPI Message Protocol
76--------------------------------------------------------------
77SCPI provides an API to access the various sensors on the SoC.
78
79Required properties:
80- compatible : should be "arm,scpi-sensors".
81- #thermal-sensor-cells: should be set to 1. This property follows the
82 thermal device tree bindings[2].
83
84 Valid cell values are raw identifiers (Sensor
85 ID) as used by the firmware. Refer to
86 platform documentation for your
87 implementation for the IDs to use. For Juno
88 R0 and Juno R1 refer to [3].
89
75[0] http://infocenter.arm.com/help/topic/com.arm.doc.dui0922b/index.html 90[0] http://infocenter.arm.com/help/topic/com.arm.doc.dui0922b/index.html
76[1] Documentation/devicetree/bindings/clock/clock-bindings.txt 91[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
92[2] Documentation/devicetree/bindings/thermal/thermal.txt
93[3] http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0922b/apas03s22.html
77 94
78Example: 95Example:
79 96
@@ -122,6 +139,11 @@ scpi_protocol: scpi@2e000000 {
122 clock-output-names = "pxlclk0", "pxlclk1"; 139 clock-output-names = "pxlclk0", "pxlclk1";
123 }; 140 };
124 }; 141 };
142
143 scpi_sensors0: sensors {
144 compatible = "arm,scpi-sensors";
145 #thermal-sensor-cells = <1>;
146 };
125}; 147};
126 148
127cpu@0 { 149cpu@0 {
@@ -136,6 +158,17 @@ hdlcd@7ff60000 {
136 clocks = <&scpi_clk 4>; 158 clocks = <&scpi_clk 4>;
137}; 159};
138 160
161thermal-zones {
162 soc_thermal {
163 polling-delay-passive = <100>;
164 polling-delay = <1000>;
165
166 /* sensor ID */
167 thermal-sensors = <&scpi_sensors0 3>;
168 ...
169 };
170};
171
139In the above example, the #clock-cells is set to 1 as required. 172In the above example, the #clock-cells is set to 1 as required.
140scpi_dvfs has 3 output clocks namely: atlclk, aplclk, and gpuclk with 0, 173scpi_dvfs has 3 output clocks namely: atlclk, aplclk, and gpuclk with 0,
1411 and 2 as clock-indices. scpi_clk has 2 output clocks namely: pxlclk0 1741 and 2 as clock-indices. scpi_clk has 2 output clocks namely: pxlclk0
@@ -148,3 +181,8 @@ scpi_dvfs i.e. "atlclk".
148Similarly the second example is hdlcd@7ff60000 and it has pxlclk1 as input 181Similarly the second example is hdlcd@7ff60000 and it has pxlclk1 as input
149clock. '4' in the clock specifier here points to the second entry 182clock. '4' in the clock specifier here points to the second entry
150in the output clocks of scpi_clocks i.e. "pxlclk1" 183in the output clocks of scpi_clocks i.e. "pxlclk1"
184
185The thermal-sensors property in the soc_thermal node uses the
186temperature sensor provided by SCP firmware to setup a thermal
187zone. The ID "3" is the sensor identifier for the temperature sensor
188as used by the firmware.