Andy Gross | 7a40058 | 2015-12-14 23:30:43 -0600 | [diff] [blame] | 1 | Qualcomm Resource Power Manager (RPM) over SMD |
| 2 | |
| 3 | This driver is used to interface with the Resource Power Manager (RPM) found in |
| 4 | various Qualcomm platforms. The RPM allows each component in the system to vote |
| 5 | for state of the system resources, such as clocks, regulators and bus |
| 6 | frequencies. |
| 7 | |
| 8 | The SMD information for the RPM edge should be filled out. See qcom,smd.txt for |
| 9 | the required edge properties. All SMD related properties will reside within the |
| 10 | RPM node itself. |
| 11 | |
| 12 | = SUBDEVICES |
| 13 | |
| 14 | The RPM exposes resources to its subnodes. The rpm_requests node must be |
| 15 | present and this subnode may contain children that designate regulator |
| 16 | resources. |
| 17 | |
| 18 | - compatible: |
| 19 | Usage: required |
| 20 | Value type: <string> |
| 21 | Definition: must be one of: |
| 22 | "qcom,rpm-apq8084" |
| 23 | "qcom,rpm-msm8916" |
| 24 | "qcom,rpm-msm8974" |
| 25 | |
| 26 | - qcom,smd-channels: |
| 27 | Usage: required |
| 28 | Value type: <string> |
| 29 | Definition: must be "rpm_requests" |
| 30 | |
| 31 | Refer to Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.txt |
| 32 | for information on the regulator subnodes that can exist under the rpm_requests. |
| 33 | |
| 34 | Example: |
| 35 | |
| 36 | soc { |
| 37 | apcs: syscon@f9011000 { |
| 38 | compatible = "syscon"; |
| 39 | reg = <0xf9011000 0x1000>; |
| 40 | }; |
| 41 | }; |
| 42 | |
| 43 | smd { |
| 44 | compatible = "qcom,smd"; |
| 45 | |
| 46 | rpm { |
| 47 | interrupts = <0 168 1>; |
| 48 | qcom,ipc = <&apcs 8 0>; |
| 49 | qcom,smd-edge = <15>; |
| 50 | |
| 51 | rpm_requests { |
| 52 | compatible = "qcom,rpm-msm8974"; |
| 53 | qcom,smd-channels = "rpm_requests"; |
| 54 | |
| 55 | ... |
| 56 | }; |
| 57 | }; |
| 58 | }; |