.. | .. |
---|
6 | 6 | and performance functions. |
---|
7 | 7 | |
---|
8 | 8 | This binding is intended to define the interface the firmware implementing |
---|
9 | | -the SCMI as described in ARM document number ARM DUI 0922B ("ARM System Control |
---|
| 9 | +the SCMI as described in ARM document number ARM DEN 0056A ("ARM System Control |
---|
10 | 10 | and Management Interface Platform Design Document")[0] provide for OSPM in |
---|
11 | 11 | the device tree. |
---|
12 | 12 | |
---|
.. | .. |
---|
14 | 14 | |
---|
15 | 15 | The scmi node with the following properties shall be under the /firmware/ node. |
---|
16 | 16 | |
---|
17 | | -- compatible : shall be "arm,scmi" |
---|
| 17 | +- compatible : shall be "arm,scmi" or "arm,scmi-smc" for smc/hvc transports |
---|
18 | 18 | - mboxes: List of phandle and mailbox channel specifiers. It should contain |
---|
19 | 19 | exactly one or two mailboxes, one for transmitting messages("tx") |
---|
20 | 20 | and another optional for receiving the notifications("rx") if |
---|
.. | .. |
---|
25 | 25 | protocol identifier for a given sub-node. |
---|
26 | 26 | - #size-cells : should be '0' as 'reg' property doesn't have any size |
---|
27 | 27 | associated with it. |
---|
| 28 | +- arm,smc-id : SMC id required when using smc or hvc transports |
---|
28 | 29 | |
---|
29 | 30 | Optional properties: |
---|
30 | 31 | |
---|
31 | 32 | - mbox-names: shall be "tx" or "rx" depending on mboxes entries. |
---|
| 33 | + |
---|
| 34 | +- interrupts : when using smc or hvc transports, this optional |
---|
| 35 | + property indicates that msg completion by the platform is indicated |
---|
| 36 | + by an interrupt rather than by the return of the smc call. This |
---|
| 37 | + should not be used except when the platform requires such behavior. |
---|
| 38 | + |
---|
| 39 | +- interrupt-names : if "interrupts" is present, interrupt-names must also |
---|
| 40 | + be present and have the value "a2p". |
---|
32 | 41 | |
---|
33 | 42 | See Documentation/devicetree/bindings/mailbox/mailbox.txt for more details |
---|
34 | 43 | about the generic mailbox controller and client driver bindings. |
---|
.. | .. |
---|
61 | 70 | - #power-domain-cells : Should be 1. Contains the device or the power |
---|
62 | 71 | domain ID value used by SCMI commands. |
---|
63 | 72 | |
---|
| 73 | +Regulator bindings for the SCMI Regulator based on SCMI Message Protocol |
---|
| 74 | +------------------------------------------------------------ |
---|
| 75 | +An SCMI Regulator is permanently bound to a well defined SCMI Voltage Domain, |
---|
| 76 | +and should be always positioned as a root regulator. |
---|
| 77 | +It does not support any current operation. |
---|
| 78 | + |
---|
| 79 | +SCMI Regulators are grouped under a 'regulators' node which in turn is a child |
---|
| 80 | +of the SCMI Voltage protocol node inside the desired SCMI instance node. |
---|
| 81 | + |
---|
| 82 | +This binding uses the common regulator binding[6]. |
---|
| 83 | + |
---|
| 84 | +Required properties: |
---|
| 85 | + - reg : shall identify an existent SCMI Voltage Domain. |
---|
| 86 | + |
---|
64 | 87 | Sensor bindings for the sensors based on SCMI Message Protocol |
---|
65 | 88 | -------------------------------------------------------------- |
---|
66 | 89 | SCMI provides an API to access the various sensors on the SoC. |
---|
.. | .. |
---|
72 | 95 | Valid cell values are raw identifiers (Sensor ID) |
---|
73 | 96 | as used by the firmware. Refer to platform details |
---|
74 | 97 | for your implementation for the IDs to use. |
---|
| 98 | + |
---|
| 99 | +Reset signal bindings for the reset domains based on SCMI Message Protocol |
---|
| 100 | +------------------------------------------------------------ |
---|
| 101 | + |
---|
| 102 | +This binding for the SCMI reset domain providers uses the generic reset |
---|
| 103 | +signal binding[5]. |
---|
| 104 | + |
---|
| 105 | +Required properties: |
---|
| 106 | + - #reset-cells : Should be 1. Contains the reset domain ID value used |
---|
| 107 | + by SCMI commands. |
---|
75 | 108 | |
---|
76 | 109 | SRAM and Shared Memory for SCMI |
---|
77 | 110 | ------------------------------- |
---|
.. | .. |
---|
90 | 123 | |
---|
91 | 124 | [0] http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/index.html |
---|
92 | 125 | [1] Documentation/devicetree/bindings/clock/clock-bindings.txt |
---|
93 | | -[2] Documentation/devicetree/bindings/power/power_domain.txt |
---|
94 | | -[3] Documentation/devicetree/bindings/thermal/thermal.txt |
---|
95 | | -[4] Documentation/devicetree/bindings/sram/sram.txt |
---|
| 126 | +[2] Documentation/devicetree/bindings/power/power-domain.yaml |
---|
| 127 | +[3] Documentation/devicetree/bindings/thermal/thermal*.yaml |
---|
| 128 | +[4] Documentation/devicetree/bindings/sram/sram.yaml |
---|
| 129 | +[5] Documentation/devicetree/bindings/reset/reset.txt |
---|
| 130 | +[6] Documentation/devicetree/bindings/regulator/regulator.yaml |
---|
96 | 131 | |
---|
97 | 132 | Example: |
---|
98 | 133 | |
---|
.. | .. |
---|
152 | 187 | reg = <0x15>; |
---|
153 | 188 | #thermal-sensor-cells = <1>; |
---|
154 | 189 | }; |
---|
| 190 | + |
---|
| 191 | + scmi_reset: protocol@16 { |
---|
| 192 | + reg = <0x16>; |
---|
| 193 | + #reset-cells = <1>; |
---|
| 194 | + }; |
---|
| 195 | + |
---|
| 196 | + scmi_voltage: protocol@17 { |
---|
| 197 | + reg = <0x17>; |
---|
| 198 | + |
---|
| 199 | + regulators { |
---|
| 200 | + regulator_devX: regulator@0 { |
---|
| 201 | + reg = <0x0>; |
---|
| 202 | + regulator-max-microvolt = <3300000>; |
---|
| 203 | + }; |
---|
| 204 | + |
---|
| 205 | + regulator_devY: regulator@9 { |
---|
| 206 | + reg = <0x9>; |
---|
| 207 | + regulator-min-microvolt = <500000>; |
---|
| 208 | + regulator-max-microvolt = <4200000>; |
---|
| 209 | + }; |
---|
| 210 | + |
---|
| 211 | + ... |
---|
| 212 | + }; |
---|
| 213 | + }; |
---|
155 | 214 | }; |
---|
156 | 215 | }; |
---|
157 | 216 | |
---|
.. | .. |
---|
166 | 225 | reg = <0 0x7ff60000 0 0x1000>; |
---|
167 | 226 | clocks = <&scmi_clk 4>; |
---|
168 | 227 | power-domains = <&scmi_devpd 1>; |
---|
| 228 | + resets = <&scmi_reset 10>; |
---|
169 | 229 | }; |
---|
170 | 230 | |
---|
171 | 231 | thermal-zones { |
---|