1d5b0e70fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2d5b0e70fSEmmanuel Vadot%YAML 1.2 3d5b0e70fSEmmanuel Vadot--- 4d5b0e70fSEmmanuel Vadot$id: http://devicetree.org/schemas/clock/qcom,rpmcc.yaml# 5d5b0e70fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6d5b0e70fSEmmanuel Vadot 7d5b0e70fSEmmanuel Vadottitle: Qualcomm RPM Clock Controller 8d5b0e70fSEmmanuel Vadot 9d5b0e70fSEmmanuel Vadotmaintainers: 10d5b0e70fSEmmanuel Vadot - Bjorn Andersson <bjorn.andersson@linaro.org> 11d5b0e70fSEmmanuel Vadot - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> 12d5b0e70fSEmmanuel Vadot 13d5b0e70fSEmmanuel Vadotdescription: | 14d5b0e70fSEmmanuel Vadot The clock enumerators are defined in <dt-bindings/clock/qcom,rpmcc.h> and 15d5b0e70fSEmmanuel Vadot come in pairs:: FOO_CLK followed by FOO_A_CLK. The latter clock is 16d5b0e70fSEmmanuel Vadot an "active" clock, which means that the consumer only care that the clock is 17d5b0e70fSEmmanuel Vadot available when the apps CPU subsystem is active, i.e. not suspended or in 18d5b0e70fSEmmanuel Vadot deep idle. If it is important that the clock keeps running during system 19d5b0e70fSEmmanuel Vadot suspend, you need to specify the non-active clock, the one not containing 20d5b0e70fSEmmanuel Vadot *_A_* in the enumerator name. 21d5b0e70fSEmmanuel Vadot 22d5b0e70fSEmmanuel Vadotproperties: 23d5b0e70fSEmmanuel Vadot compatible: 24d5b0e70fSEmmanuel Vadot items: 25d5b0e70fSEmmanuel Vadot - enum: 26d5b0e70fSEmmanuel Vadot - qcom,rpmcc-apq8060 27d5b0e70fSEmmanuel Vadot - qcom,rpmcc-apq8064 28d5b0e70fSEmmanuel Vadot - qcom,rpmcc-ipq806x 29d5b0e70fSEmmanuel Vadot - qcom,rpmcc-mdm9607 30d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8226 31d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8660 327ef62cebSEmmanuel Vadot - qcom,rpmcc-msm8909 33d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8916 34fac71e4eSEmmanuel Vadot - qcom,rpmcc-msm8917 35d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8936 36d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8953 37d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8974 38d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8976 39d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8992 40d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8994 41d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8996 42d5b0e70fSEmmanuel Vadot - qcom,rpmcc-msm8998 43d5b0e70fSEmmanuel Vadot - qcom,rpmcc-qcm2290 44d5b0e70fSEmmanuel Vadot - qcom,rpmcc-qcs404 45d5b0e70fSEmmanuel Vadot - qcom,rpmcc-sdm660 46d5b0e70fSEmmanuel Vadot - qcom,rpmcc-sm6115 47d5b0e70fSEmmanuel Vadot - qcom,rpmcc-sm6125 487ef62cebSEmmanuel Vadot - qcom,rpmcc-sm6375 49d5b0e70fSEmmanuel Vadot - const: qcom,rpmcc 50d5b0e70fSEmmanuel Vadot 51d5b0e70fSEmmanuel Vadot '#clock-cells': 52d5b0e70fSEmmanuel Vadot const: 1 53d5b0e70fSEmmanuel Vadot 54d5b0e70fSEmmanuel Vadot clocks: 55b97ee269SEmmanuel Vadot minItems: 1 56b97ee269SEmmanuel Vadot maxItems: 2 57d5b0e70fSEmmanuel Vadot 58d5b0e70fSEmmanuel Vadot clock-names: 59b97ee269SEmmanuel Vadot minItems: 1 60b97ee269SEmmanuel Vadot maxItems: 2 61d5b0e70fSEmmanuel Vadot 62d5b0e70fSEmmanuel Vadotrequired: 63d5b0e70fSEmmanuel Vadot - compatible 64d5b0e70fSEmmanuel Vadot - '#clock-cells' 65d5b0e70fSEmmanuel Vadot 66b97ee269SEmmanuel VadotallOf: 67b97ee269SEmmanuel Vadot - if: 68b97ee269SEmmanuel Vadot properties: 69b97ee269SEmmanuel Vadot compatible: 70b97ee269SEmmanuel Vadot contains: 71b97ee269SEmmanuel Vadot enum: 72b97ee269SEmmanuel Vadot - qcom,rpmcc-apq8060 73b97ee269SEmmanuel Vadot - qcom,rpmcc-ipq806x 74b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8660 75b97ee269SEmmanuel Vadot 76b97ee269SEmmanuel Vadot then: 77b97ee269SEmmanuel Vadot properties: 78b97ee269SEmmanuel Vadot clocks: 79b97ee269SEmmanuel Vadot items: 80b97ee269SEmmanuel Vadot - description: pxo clock 81b97ee269SEmmanuel Vadot 82b97ee269SEmmanuel Vadot clock-names: 83b97ee269SEmmanuel Vadot items: 84b97ee269SEmmanuel Vadot - const: pxo 85b97ee269SEmmanuel Vadot 86b97ee269SEmmanuel Vadot - if: 87b97ee269SEmmanuel Vadot properties: 88b97ee269SEmmanuel Vadot compatible: 89b97ee269SEmmanuel Vadot contains: 90b97ee269SEmmanuel Vadot const: qcom,rpmcc-apq8064 91b97ee269SEmmanuel Vadot then: 92b97ee269SEmmanuel Vadot properties: 93b97ee269SEmmanuel Vadot clocks: 94b97ee269SEmmanuel Vadot items: 95b97ee269SEmmanuel Vadot - description: pxo clock 96b97ee269SEmmanuel Vadot - description: cxo clock 97b97ee269SEmmanuel Vadot 98b97ee269SEmmanuel Vadot clock-names: 99b97ee269SEmmanuel Vadot items: 100b97ee269SEmmanuel Vadot - const: pxo 101b97ee269SEmmanuel Vadot - const: cxo 102b97ee269SEmmanuel Vadot 103b97ee269SEmmanuel Vadot - if: 104b97ee269SEmmanuel Vadot properties: 105b97ee269SEmmanuel Vadot compatible: 106b97ee269SEmmanuel Vadot contains: 107b97ee269SEmmanuel Vadot enum: 108b97ee269SEmmanuel Vadot - qcom,rpmcc-mdm9607 109b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8226 110b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8916 111fac71e4eSEmmanuel Vadot - qcom,rpmcc-msm8917 112b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8936 113b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8953 114b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8974 115b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8976 116b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8992 117b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8994 118b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8996 119b97ee269SEmmanuel Vadot - qcom,rpmcc-msm8998 120b97ee269SEmmanuel Vadot - qcom,rpmcc-qcm2290 121b97ee269SEmmanuel Vadot - qcom,rpmcc-qcs404 122b97ee269SEmmanuel Vadot - qcom,rpmcc-sdm660 123b97ee269SEmmanuel Vadot - qcom,rpmcc-sm6115 124b97ee269SEmmanuel Vadot - qcom,rpmcc-sm6125 125b97ee269SEmmanuel Vadot 126b97ee269SEmmanuel Vadot then: 127b97ee269SEmmanuel Vadot properties: 128b97ee269SEmmanuel Vadot clocks: 129b97ee269SEmmanuel Vadot items: 130b97ee269SEmmanuel Vadot - description: xo clock 131b97ee269SEmmanuel Vadot 132b97ee269SEmmanuel Vadot clock-names: 133b97ee269SEmmanuel Vadot items: 134b97ee269SEmmanuel Vadot - const: xo 135b97ee269SEmmanuel Vadot 136d5b0e70fSEmmanuel VadotadditionalProperties: false 137d5b0e70fSEmmanuel Vadot 138d5b0e70fSEmmanuel Vadotexamples: 139d5b0e70fSEmmanuel Vadot - | 140d5b0e70fSEmmanuel Vadot rpm { 141d5b0e70fSEmmanuel Vadot rpm-requests { 142*b2d2a78aSEmmanuel Vadot compatible = "qcom,rpm-msm8916", "qcom,smd-rpm"; 143d5b0e70fSEmmanuel Vadot qcom,smd-channels = "rpm_requests"; 144d5b0e70fSEmmanuel Vadot 145d5b0e70fSEmmanuel Vadot clock-controller { 146d5b0e70fSEmmanuel Vadot compatible = "qcom,rpmcc-msm8916", "qcom,rpmcc"; 147d5b0e70fSEmmanuel Vadot #clock-cells = <1>; 148d5b0e70fSEmmanuel Vadot }; 149d5b0e70fSEmmanuel Vadot }; 150d5b0e70fSEmmanuel Vadot }; 151b97ee269SEmmanuel Vadot 152b97ee269SEmmanuel Vadot - | 153b97ee269SEmmanuel Vadot rpm { 154b97ee269SEmmanuel Vadot clock-controller { 155b97ee269SEmmanuel Vadot compatible = "qcom,rpmcc-ipq806x", "qcom,rpmcc"; 156b97ee269SEmmanuel Vadot #clock-cells = <1>; 157b97ee269SEmmanuel Vadot clocks = <&pxo_board>; 158b97ee269SEmmanuel Vadot clock-names = "pxo"; 159b97ee269SEmmanuel Vadot }; 160b97ee269SEmmanuel Vadot }; 161