0001 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/mfd/rockchip,rk805.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: RK805 Power Management Integrated Circuit
0008
0009 maintainers:
0010 - Chris Zhong <zyw@rock-chips.com>
0011 - Zhang Qing <zhangqing@rock-chips.com>
0012
0013 description: |
0014 Rockchip RK805 series PMIC. This device consists of an i2c controlled MFD
0015 that includes multiple switchable regulators.
0016
0017 properties:
0018 compatible:
0019 enum:
0020 - rockchip,rk805
0021
0022 reg:
0023 maxItems: 1
0024
0025 interrupts:
0026 maxItems: 1
0027
0028 '#clock-cells':
0029 description:
0030 See <dt-bindings/clock/rockchip,rk808.h> for clock IDs.
0031 minimum: 0
0032 maximum: 1
0033
0034 clock-output-names:
0035 description:
0036 From common clock binding to override the default output clock name.
0037
0038 gpio-controller: true
0039
0040 '#gpio-cells':
0041 const: 2
0042
0043 rockchip,system-power-controller:
0044 type: boolean
0045 description:
0046 Telling whether or not this PMIC is controlling the system power.
0047
0048 wakeup-source:
0049 type: boolean
0050 description:
0051 Device can be used as a wakeup source.
0052
0053 vcc1-supply:
0054 description:
0055 The input supply for DCDC_REG1.
0056
0057 vcc2-supply:
0058 description:
0059 The input supply for DCDC_REG2.
0060
0061 vcc3-supply:
0062 description:
0063 The input supply for DCDC_REG3.
0064
0065 vcc4-supply:
0066 description:
0067 The input supply for DCDC_REG4.
0068
0069 vcc5-supply:
0070 description:
0071 The input supply for LDO_REG1 and LDO_REG2.
0072
0073 vcc6-supply:
0074 description:
0075 The input supply for LDO_REG3.
0076
0077 regulators:
0078 type: object
0079 patternProperties:
0080 "^(DCDC_REG[1-4]|LDO_REG[1-3])$":
0081 type: object
0082 $ref: ../regulator/regulator.yaml#
0083 unevaluatedProperties: false
0084
0085 allOf:
0086 - if:
0087 properties:
0088 '#clock-cells':
0089 const: 0
0090
0091 then:
0092 properties:
0093 clock-output-names:
0094 maxItems: 1
0095
0096 else:
0097 properties:
0098 clock-output-names:
0099 maxItems: 2
0100
0101 required:
0102 - compatible
0103 - reg
0104 - interrupts
0105 - "#clock-cells"
0106
0107 additionalProperties: false
0108
0109 examples:
0110 - |
0111 #include <dt-bindings/pinctrl/rockchip.h>
0112 #include <dt-bindings/interrupt-controller/irq.h>
0113 #include <dt-bindings/gpio/gpio.h>
0114 i2c {
0115 #address-cells = <1>;
0116 #size-cells = <0>;
0117
0118 pmic@18 {
0119 compatible = "rockchip,rk805";
0120 reg = <0x18>;
0121 interrupt-parent = <&gpio2>;
0122 interrupts = <RK_PA6 IRQ_TYPE_LEVEL_LOW>;
0123 pinctrl-names = "default";
0124 pinctrl-0 = <&pmic_int_l>;
0125 rockchip,system-power-controller;
0126 wakeup-source;
0127 #clock-cells = <0>;
0128
0129 vcc1-supply = <&vcc_sys>;
0130 vcc2-supply = <&vcc_sys>;
0131 vcc3-supply = <&vcc_sys>;
0132 vcc4-supply = <&vcc_sys>;
0133 vcc5-supply = <&vcc_io>;
0134 vcc6-supply = <&vcc_io>;
0135
0136 regulators {
0137 vdd_logic: DCDC_REG1 {
0138 regulator-name = "vdd_logic";
0139 regulator-min-microvolt = <700000>;
0140 regulator-max-microvolt = <1350000>;
0141 regulator-always-on;
0142 regulator-boot-on;
0143 regulator-state-mem {
0144 regulator-on-in-suspend;
0145 regulator-suspend-microvolt = <1000000>;
0146 };
0147 };
0148
0149 vdd_arm: DCDC_REG2 {
0150 regulator-name = "vdd_arm";
0151 regulator-min-microvolt = <700000>;
0152 regulator-max-microvolt = <1350000>;
0153 regulator-always-on;
0154 regulator-boot-on;
0155 regulator-state-mem {
0156 regulator-on-in-suspend;
0157 regulator-suspend-microvolt = <950000>;
0158 };
0159 };
0160
0161 vcc_ddr: DCDC_REG3 {
0162 regulator-name = "vcc_ddr";
0163 regulator-always-on;
0164 regulator-boot-on;
0165 regulator-state-mem {
0166 regulator-on-in-suspend;
0167 };
0168 };
0169
0170 vcc_io: DCDC_REG4 {
0171 regulator-name = "vcc_io";
0172 regulator-min-microvolt = <3300000>;
0173 regulator-max-microvolt = <3300000>;
0174 regulator-always-on;
0175 regulator-boot-on;
0176 regulator-state-mem {
0177 regulator-on-in-suspend;
0178 regulator-suspend-microvolt = <3300000>;
0179 };
0180 };
0181
0182 vdd_18: LDO_REG1 {
0183 regulator-name = "vdd_18";
0184 regulator-min-microvolt = <1800000>;
0185 regulator-max-microvolt = <1800000>;
0186 regulator-always-on;
0187 regulator-boot-on;
0188 regulator-state-mem {
0189 regulator-on-in-suspend;
0190 regulator-suspend-microvolt = <1800000>;
0191 };
0192 };
0193
0194 vcc18_emmc: LDO_REG2 {
0195 regulator-name = "vcc_18emmc";
0196 regulator-min-microvolt = <1800000>;
0197 regulator-max-microvolt = <1800000>;
0198 regulator-always-on;
0199 regulator-boot-on;
0200 regulator-state-mem {
0201 regulator-on-in-suspend;
0202 regulator-suspend-microvolt = <1800000>;
0203 };
0204 };
0205
0206 vdd_11: LDO_REG3 {
0207 regulator-name = "vdd_11";
0208 regulator-min-microvolt = <1100000>;
0209 regulator-max-microvolt = <1100000>;
0210 regulator-always-on;
0211 regulator-boot-on;
0212 regulator-state-mem {
0213 regulator-on-in-suspend;
0214 regulator-suspend-microvolt = <1100000>;
0215 };
0216 };
0217 };
0218 };
0219 };