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/mfd/rockchip,rk808.yaml# 5d5b0e70fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6d5b0e70fSEmmanuel Vadot 7d5b0e70fSEmmanuel Vadottitle: RK808 Power Management Integrated Circuit 8d5b0e70fSEmmanuel Vadot 9d5b0e70fSEmmanuel Vadotmaintainers: 10d5b0e70fSEmmanuel Vadot - Chris Zhong <zyw@rock-chips.com> 11d5b0e70fSEmmanuel Vadot - Zhang Qing <zhangqing@rock-chips.com> 12d5b0e70fSEmmanuel Vadot 13d5b0e70fSEmmanuel Vadotdescription: | 14d5b0e70fSEmmanuel Vadot Rockchip RK808 series PMIC. This device consists of an i2c controlled MFD 15d5b0e70fSEmmanuel Vadot that includes regulators, an RTC, and a power button. 16d5b0e70fSEmmanuel Vadot 17d5b0e70fSEmmanuel Vadotproperties: 18d5b0e70fSEmmanuel Vadot compatible: 19d5b0e70fSEmmanuel Vadot enum: 20d5b0e70fSEmmanuel Vadot - rockchip,rk808 21d5b0e70fSEmmanuel Vadot 22d5b0e70fSEmmanuel Vadot reg: 23d5b0e70fSEmmanuel Vadot maxItems: 1 24d5b0e70fSEmmanuel Vadot 25d5b0e70fSEmmanuel Vadot interrupts: 26d5b0e70fSEmmanuel Vadot maxItems: 1 27d5b0e70fSEmmanuel Vadot 28d5b0e70fSEmmanuel Vadot '#clock-cells': 29d5b0e70fSEmmanuel Vadot description: 30d5b0e70fSEmmanuel Vadot See <dt-bindings/clock/rockchip,rk808.h> for clock IDs. 31d5b0e70fSEmmanuel Vadot const: 1 32d5b0e70fSEmmanuel Vadot 33d5b0e70fSEmmanuel Vadot clock-output-names: 34d5b0e70fSEmmanuel Vadot description: 35d5b0e70fSEmmanuel Vadot From common clock binding to override the default output clock name. 36d5b0e70fSEmmanuel Vadot maxItems: 2 37d5b0e70fSEmmanuel Vadot 38d5b0e70fSEmmanuel Vadot rockchip,system-power-controller: 39d5b0e70fSEmmanuel Vadot type: boolean 40*84943d6fSEmmanuel Vadot deprecated: true 41d5b0e70fSEmmanuel Vadot description: 42d5b0e70fSEmmanuel Vadot Telling whether or not this PMIC is controlling the system power. 43d5b0e70fSEmmanuel Vadot 44*84943d6fSEmmanuel Vadot system-power-controller: true 45*84943d6fSEmmanuel Vadot 46d5b0e70fSEmmanuel Vadot wakeup-source: 47d5b0e70fSEmmanuel Vadot type: boolean 48d5b0e70fSEmmanuel Vadot description: 49d5b0e70fSEmmanuel Vadot Device can be used as a wakeup source. 50d5b0e70fSEmmanuel Vadot 51d5b0e70fSEmmanuel Vadot vcc1-supply: 52d5b0e70fSEmmanuel Vadot description: 53d5b0e70fSEmmanuel Vadot The input supply for DCDC_REG1. 54d5b0e70fSEmmanuel Vadot 55d5b0e70fSEmmanuel Vadot vcc2-supply: 56d5b0e70fSEmmanuel Vadot description: 57d5b0e70fSEmmanuel Vadot The input supply for DCDC_REG2. 58d5b0e70fSEmmanuel Vadot 59d5b0e70fSEmmanuel Vadot vcc3-supply: 60d5b0e70fSEmmanuel Vadot description: 61d5b0e70fSEmmanuel Vadot The input supply for DCDC_REG3. 62d5b0e70fSEmmanuel Vadot 63d5b0e70fSEmmanuel Vadot vcc4-supply: 64d5b0e70fSEmmanuel Vadot description: 65d5b0e70fSEmmanuel Vadot The input supply for DCDC_REG4. 66d5b0e70fSEmmanuel Vadot 67d5b0e70fSEmmanuel Vadot vcc6-supply: 68d5b0e70fSEmmanuel Vadot description: 69d5b0e70fSEmmanuel Vadot The input supply for LDO_REG1 and LDO_REG2. 70d5b0e70fSEmmanuel Vadot 71d5b0e70fSEmmanuel Vadot vcc7-supply: 72d5b0e70fSEmmanuel Vadot description: 73d5b0e70fSEmmanuel Vadot The input supply for LDO_REG3 and LDO_REG7. 74d5b0e70fSEmmanuel Vadot 75d5b0e70fSEmmanuel Vadot vcc8-supply: 76d5b0e70fSEmmanuel Vadot description: 77d5b0e70fSEmmanuel Vadot The input supply for SWITCH_REG1. 78d5b0e70fSEmmanuel Vadot 79d5b0e70fSEmmanuel Vadot vcc9-supply: 80d5b0e70fSEmmanuel Vadot description: 81d5b0e70fSEmmanuel Vadot The input supply for LDO_REG4 and LDO_REG5. 82d5b0e70fSEmmanuel Vadot 83d5b0e70fSEmmanuel Vadot vcc10-supply: 84d5b0e70fSEmmanuel Vadot description: 85d5b0e70fSEmmanuel Vadot The input supply for LDO_REG6. 86d5b0e70fSEmmanuel Vadot 87d5b0e70fSEmmanuel Vadot vcc11-supply: 88d5b0e70fSEmmanuel Vadot description: 89d5b0e70fSEmmanuel Vadot The input supply for LDO_REG8. 90d5b0e70fSEmmanuel Vadot 91d5b0e70fSEmmanuel Vadot vcc12-supply: 92d5b0e70fSEmmanuel Vadot description: 93d5b0e70fSEmmanuel Vadot The input supply for SWITCH_REG2. 94d5b0e70fSEmmanuel Vadot 95d5b0e70fSEmmanuel Vadot vddio-supply: 96d5b0e70fSEmmanuel Vadot description: 97d5b0e70fSEmmanuel Vadot The input supply for digital IO. 98d5b0e70fSEmmanuel Vadot 99d5b0e70fSEmmanuel Vadot dvs-gpios: 100d5b0e70fSEmmanuel Vadot description: | 101d5b0e70fSEmmanuel Vadot buck1/2 can be controlled by gpio dvs, this is GPIO specifiers for 102d5b0e70fSEmmanuel Vadot 2 host gpio's used for dvs. The format of the gpio specifier 103d5b0e70fSEmmanuel Vadot depends in the gpio controller. If DVS GPIOs aren't present, 104d5b0e70fSEmmanuel Vadot voltage changes will happen very quickly with no slow ramp time. 105d5b0e70fSEmmanuel Vadot maxItems: 2 106d5b0e70fSEmmanuel Vadot 107d5b0e70fSEmmanuel Vadot regulators: 108d5b0e70fSEmmanuel Vadot type: object 109d5b0e70fSEmmanuel Vadot patternProperties: 110d5b0e70fSEmmanuel Vadot "^(DCDC_REG[1-4]|LDO_REG[1-8]|SWITCH_REG[1-2])$": 111d5b0e70fSEmmanuel Vadot type: object 112d5b0e70fSEmmanuel Vadot $ref: ../regulator/regulator.yaml# 113d5b0e70fSEmmanuel Vadot unevaluatedProperties: false 114*84943d6fSEmmanuel Vadot unevaluatedProperties: false 115d5b0e70fSEmmanuel Vadot 116d5b0e70fSEmmanuel Vadotrequired: 117d5b0e70fSEmmanuel Vadot - compatible 118d5b0e70fSEmmanuel Vadot - reg 119d5b0e70fSEmmanuel Vadot - interrupts 120d5b0e70fSEmmanuel Vadot - "#clock-cells" 121d5b0e70fSEmmanuel Vadot 122d5b0e70fSEmmanuel VadotadditionalProperties: false 123d5b0e70fSEmmanuel Vadot 124d5b0e70fSEmmanuel Vadotexamples: 125d5b0e70fSEmmanuel Vadot - | 126d5b0e70fSEmmanuel Vadot #include <dt-bindings/pinctrl/rockchip.h> 127d5b0e70fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 128d5b0e70fSEmmanuel Vadot #include <dt-bindings/gpio/gpio.h> 129d5b0e70fSEmmanuel Vadot i2c { 130d5b0e70fSEmmanuel Vadot #address-cells = <1>; 131d5b0e70fSEmmanuel Vadot #size-cells = <0>; 132d5b0e70fSEmmanuel Vadot 133d5b0e70fSEmmanuel Vadot rk808: pmic@1b { 134d5b0e70fSEmmanuel Vadot compatible = "rockchip,rk808"; 135d5b0e70fSEmmanuel Vadot clock-output-names = "xin32k", "rk808-clkout2"; 136d5b0e70fSEmmanuel Vadot interrupt-parent = <&gpio0>; 137d5b0e70fSEmmanuel Vadot interrupts = <4 IRQ_TYPE_LEVEL_LOW>; 138d5b0e70fSEmmanuel Vadot pinctrl-names = "default"; 139d5b0e70fSEmmanuel Vadot pinctrl-0 = <&pmic_int &dvs_1 &dvs_2>; 140d5b0e70fSEmmanuel Vadot dvs-gpios = <&gpio7 11 GPIO_ACTIVE_HIGH>, 141d5b0e70fSEmmanuel Vadot <&gpio7 15 GPIO_ACTIVE_HIGH>; 142d5b0e70fSEmmanuel Vadot reg = <0x1b>; 143d5b0e70fSEmmanuel Vadot rockchip,system-power-controller; 144d5b0e70fSEmmanuel Vadot wakeup-source; 145d5b0e70fSEmmanuel Vadot #clock-cells = <1>; 146d5b0e70fSEmmanuel Vadot 147d5b0e70fSEmmanuel Vadot vcc8-supply = <&vcc_18>; 148d5b0e70fSEmmanuel Vadot vcc9-supply = <&vcc_io>; 149d5b0e70fSEmmanuel Vadot vcc10-supply = <&vcc_io>; 150d5b0e70fSEmmanuel Vadot vcc12-supply = <&vcc_io>; 151d5b0e70fSEmmanuel Vadot vddio-supply = <&vccio_pmu>; 152d5b0e70fSEmmanuel Vadot 153d5b0e70fSEmmanuel Vadot regulators { 154d5b0e70fSEmmanuel Vadot vdd_cpu: DCDC_REG1 { 155d5b0e70fSEmmanuel Vadot regulator-always-on; 156d5b0e70fSEmmanuel Vadot regulator-boot-on; 157d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <750000>; 158d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <1300000>; 159d5b0e70fSEmmanuel Vadot regulator-name = "vdd_arm"; 160d5b0e70fSEmmanuel Vadot }; 161d5b0e70fSEmmanuel Vadot 162d5b0e70fSEmmanuel Vadot vdd_gpu: DCDC_REG2 { 163d5b0e70fSEmmanuel Vadot regulator-always-on; 164d5b0e70fSEmmanuel Vadot regulator-boot-on; 165d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <850000>; 166d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <1250000>; 167d5b0e70fSEmmanuel Vadot regulator-name = "vdd_gpu"; 168d5b0e70fSEmmanuel Vadot }; 169d5b0e70fSEmmanuel Vadot 170d5b0e70fSEmmanuel Vadot vcc_ddr: DCDC_REG3 { 171d5b0e70fSEmmanuel Vadot regulator-always-on; 172d5b0e70fSEmmanuel Vadot regulator-boot-on; 173d5b0e70fSEmmanuel Vadot regulator-name = "vcc_ddr"; 174d5b0e70fSEmmanuel Vadot }; 175d5b0e70fSEmmanuel Vadot 176d5b0e70fSEmmanuel Vadot vcc_io: DCDC_REG4 { 177d5b0e70fSEmmanuel Vadot regulator-always-on; 178d5b0e70fSEmmanuel Vadot regulator-boot-on; 179d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <3300000>; 180d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 181d5b0e70fSEmmanuel Vadot regulator-name = "vcc_io"; 182d5b0e70fSEmmanuel Vadot }; 183d5b0e70fSEmmanuel Vadot 184d5b0e70fSEmmanuel Vadot vccio_pmu: LDO_REG1 { 185d5b0e70fSEmmanuel Vadot regulator-always-on; 186d5b0e70fSEmmanuel Vadot regulator-boot-on; 187d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <3300000>; 188d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 189d5b0e70fSEmmanuel Vadot regulator-name = "vccio_pmu"; 190d5b0e70fSEmmanuel Vadot }; 191d5b0e70fSEmmanuel Vadot 192d5b0e70fSEmmanuel Vadot vcc_tp: LDO_REG2 { 193d5b0e70fSEmmanuel Vadot regulator-always-on; 194d5b0e70fSEmmanuel Vadot regulator-boot-on; 195d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <3300000>; 196d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 197d5b0e70fSEmmanuel Vadot regulator-name = "vcc_tp"; 198d5b0e70fSEmmanuel Vadot }; 199d5b0e70fSEmmanuel Vadot 200d5b0e70fSEmmanuel Vadot vdd_10: LDO_REG3 { 201d5b0e70fSEmmanuel Vadot regulator-always-on; 202d5b0e70fSEmmanuel Vadot regulator-boot-on; 203d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <1000000>; 204d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <1000000>; 205d5b0e70fSEmmanuel Vadot regulator-name = "vdd_10"; 206d5b0e70fSEmmanuel Vadot }; 207d5b0e70fSEmmanuel Vadot 208d5b0e70fSEmmanuel Vadot vcc18_lcd: LDO_REG4 { 209d5b0e70fSEmmanuel Vadot regulator-always-on; 210d5b0e70fSEmmanuel Vadot regulator-boot-on; 211d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 212d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <1800000>; 213d5b0e70fSEmmanuel Vadot regulator-name = "vcc18_lcd"; 214d5b0e70fSEmmanuel Vadot }; 215d5b0e70fSEmmanuel Vadot 216d5b0e70fSEmmanuel Vadot vccio_sd: LDO_REG5 { 217d5b0e70fSEmmanuel Vadot regulator-always-on; 218d5b0e70fSEmmanuel Vadot regulator-boot-on; 219d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 220d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 221d5b0e70fSEmmanuel Vadot regulator-name = "vccio_sd"; 222d5b0e70fSEmmanuel Vadot }; 223d5b0e70fSEmmanuel Vadot 224d5b0e70fSEmmanuel Vadot vdd10_lcd: LDO_REG6 { 225d5b0e70fSEmmanuel Vadot regulator-always-on; 226d5b0e70fSEmmanuel Vadot regulator-boot-on; 227d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <1000000>; 228d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <1000000>; 229d5b0e70fSEmmanuel Vadot regulator-name = "vdd10_lcd"; 230d5b0e70fSEmmanuel Vadot }; 231d5b0e70fSEmmanuel Vadot 232d5b0e70fSEmmanuel Vadot vcc_18: LDO_REG7 { 233d5b0e70fSEmmanuel Vadot regulator-always-on; 234d5b0e70fSEmmanuel Vadot regulator-boot-on; 235d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 236d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <1800000>; 237d5b0e70fSEmmanuel Vadot regulator-name = "vcc_18"; 238d5b0e70fSEmmanuel Vadot }; 239d5b0e70fSEmmanuel Vadot 240d5b0e70fSEmmanuel Vadot vcca_codec: LDO_REG8 { 241d5b0e70fSEmmanuel Vadot regulator-always-on; 242d5b0e70fSEmmanuel Vadot regulator-boot-on; 243d5b0e70fSEmmanuel Vadot regulator-min-microvolt = <3300000>; 244d5b0e70fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 245d5b0e70fSEmmanuel Vadot regulator-name = "vcca_codec"; 246d5b0e70fSEmmanuel Vadot }; 247d5b0e70fSEmmanuel Vadot 248d5b0e70fSEmmanuel Vadot vcc_wl: SWITCH_REG1 { 249d5b0e70fSEmmanuel Vadot regulator-always-on; 250d5b0e70fSEmmanuel Vadot regulator-boot-on; 251d5b0e70fSEmmanuel Vadot regulator-name = "vcc_wl"; 252d5b0e70fSEmmanuel Vadot }; 253d5b0e70fSEmmanuel Vadot 254d5b0e70fSEmmanuel Vadot vcc_lcd: SWITCH_REG2 { 255d5b0e70fSEmmanuel Vadot regulator-always-on; 256d5b0e70fSEmmanuel Vadot regulator-boot-on; 257d5b0e70fSEmmanuel Vadot regulator-name = "vcc_lcd"; 258d5b0e70fSEmmanuel Vadot }; 259d5b0e70fSEmmanuel Vadot }; 260d5b0e70fSEmmanuel Vadot }; 261d5b0e70fSEmmanuel Vadot }; 262