Based on kernel version 6.11
. Page generated on 2024-09-24 08:21 EST
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 | # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/soc/qcom/qcom,smd-rpm.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Qualcomm Resource Power Manager (RPM) over SMD/GLINK description: | This driver is used to interface with the Resource Power Manager (RPM) found in various Qualcomm platforms. The RPM allows each component in the system to vote for state of the system resources, such as clocks, regulators and bus frequencies. The SMD or GLINK information for the RPM edge should be filled out. See qcom,smd.yaml for the required edge properties. All SMD/GLINK related properties will reside within the RPM node itself. The RPM exposes resources to its subnodes. The rpm_requests node must be present and this subnode may contain children that designate regulator resources. Refer to Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.yaml for information on the regulator subnodes that can exist under the rpm_requests. maintainers: - Andy Gross <agross@kernel.org> - Bjorn Andersson <bjorn.andersson@linaro.org> properties: compatible: enum: - qcom,rpm-apq8084 - qcom,rpm-ipq6018 - qcom,rpm-ipq9574 - qcom,rpm-mdm9607 - qcom,rpm-msm8226 - qcom,rpm-msm8610 - qcom,rpm-msm8909 - qcom,rpm-msm8916 - qcom,rpm-msm8917 - qcom,rpm-msm8936 - qcom,rpm-msm8937 - qcom,rpm-msm8952 - qcom,rpm-msm8953 - qcom,rpm-msm8974 - qcom,rpm-msm8976 - qcom,rpm-msm8994 - qcom,rpm-msm8996 - qcom,rpm-msm8998 - qcom,rpm-qcm2290 - qcom,rpm-qcs404 - qcom,rpm-sdm660 - qcom,rpm-sm6115 - qcom,rpm-sm6125 - qcom,rpm-sm6375 clock-controller: $ref: /schemas/clock/qcom,rpmcc.yaml# unevaluatedProperties: false power-controller: $ref: /schemas/power/qcom,rpmpd.yaml# qcom,glink-channels: $ref: /schemas/types.yaml#/definitions/string-array description: Channel name used for the RPM communication items: - const: rpm_requests qcom,smd-channels: $ref: /schemas/types.yaml#/definitions/string-array description: Channel name used for the RPM communication items: - const: rpm_requests patternProperties: "^regulators(-[01])?$": $ref: /schemas/regulator/qcom,smd-rpm-regulator.yaml# unevaluatedProperties: false if: properties: compatible: contains: enum: - qcom,rpm-apq8084 - qcom,rpm-mdm9607 - qcom,rpm-msm8226 - qcom,rpm-msm8610 - qcom,rpm-msm8909 - qcom,rpm-msm8916 - qcom,rpm-msm8917 - qcom,rpm-msm8936 - qcom,rpm-msm8937 - qcom,rpm-msm8952 - qcom,rpm-msm8953 - qcom,rpm-msm8974 - qcom,rpm-msm8976 - qcom,rpm-msm8994 then: properties: qcom,glink-channels: false required: - qcom,smd-channels else: properties: qcom,smd-channels: false required: - qcom,glink-channels required: - compatible additionalProperties: false examples: - | #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/irq.h> remoteproc { compatible = "qcom,msm8916-rpm-proc", "qcom,rpm-proc"; smd-edge { interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; qcom,ipc = <&apcs 8 0>; qcom,smd-edge = <15>; rpm-requests { compatible = "qcom,rpm-msm8916"; qcom,smd-channels = "rpm_requests"; clock-controller { compatible = "qcom,rpmcc-msm8916", "qcom,rpmcc"; #clock-cells = <1>; clocks = <&xo_board>; clock-names = "xo"; }; power-controller { compatible = "qcom,msm8916-rpmpd"; #power-domain-cells = <1>; operating-points-v2 = <&rpmpd_opp_table>; rpmpd_opp_table: opp-table { compatible = "operating-points-v2"; opp-1 { opp-level = <1>; }; opp-2 { opp-level = <2>; }; }; }; }; }; }; |