# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/mfd/rockchip,rk808.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: RK808 Power Management Integrated Circuit

maintainers:
  - Chris Zhong <zyw@rock-chips.com>
  - Zhang Qing <zhangqing@rock-chips.com>

description: |
  Rockchip RK808 series PMIC. This device consists of an i2c controlled MFD
  that includes regulators, an RTC, and a power button.

properties:
  compatible:
    enum:
      - rockchip,rk808

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  '#clock-cells':
    description:
      See <dt-bindings/clock/rockchip,rk808.h> for clock IDs.
    const: 1

  clock-output-names:
    description:
      From common clock binding to override the default output clock name.
    maxItems: 2

  rockchip,system-power-controller:
    type: boolean
    description:
      Telling whether or not this PMIC is controlling the system power.

  wakeup-source:
    type: boolean
    description:
      Device can be used as a wakeup source.

  vcc1-supply:
    description:
      The input supply for DCDC_REG1.

  vcc2-supply:
    description:
      The input supply for DCDC_REG2.

  vcc3-supply:
    description:
      The input supply for DCDC_REG3.

  vcc4-supply:
    description:
      The input supply for DCDC_REG4.

  vcc6-supply:
    description:
      The input supply for LDO_REG1 and LDO_REG2.

  vcc7-supply:
    description:
      The input supply for LDO_REG3 and LDO_REG7.

  vcc8-supply:
    description:
      The input supply for SWITCH_REG1.

  vcc9-supply:
    description:
      The input supply for LDO_REG4 and LDO_REG5.

  vcc10-supply:
    description:
      The input supply for LDO_REG6.

  vcc11-supply:
    description:
      The input supply for LDO_REG8.

  vcc12-supply:
    description:
      The input supply for SWITCH_REG2.

  vddio-supply:
    description:
      The input supply for digital IO.

  dvs-gpios:
    description: |
      buck1/2 can be controlled by gpio dvs, this is GPIO specifiers for
      2 host gpio's used for dvs. The format of the gpio specifier
      depends in the gpio controller. If DVS GPIOs aren't present,
      voltage changes will happen very quickly with no slow ramp time.
    maxItems: 2

  regulators:
    type: object
    patternProperties:
      "^(DCDC_REG[1-4]|LDO_REG[1-8]|SWITCH_REG[1-2])$":
        type: object
        $ref: ../regulator/regulator.yaml#
    unevaluatedProperties: false

required:
  - compatible
  - reg
  - interrupts
  - "#clock-cells"

additionalProperties: false

examples:
  - |
    #include <dt-bindings/pinctrl/rockchip.h>
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/gpio/gpio.h>
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        rk808: pmic@1b {
            compatible = "rockchip,rk808";
            clock-output-names = "xin32k", "rk808-clkout2";
            interrupt-parent = <&gpio0>;
            interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
            pinctrl-names = "default";
            pinctrl-0 = <&pmic_int &dvs_1 &dvs_2>;
            dvs-gpios = <&gpio7 11 GPIO_ACTIVE_HIGH>,
                <&gpio7 15 GPIO_ACTIVE_HIGH>;
            reg = <0x1b>;
            rockchip,system-power-controller;
            wakeup-source;
            #clock-cells = <1>;

            vcc8-supply = <&vcc_18>;
            vcc9-supply = <&vcc_io>;
            vcc10-supply = <&vcc_io>;
            vcc12-supply = <&vcc_io>;
            vddio-supply = <&vccio_pmu>;

            regulators {
                vdd_cpu: DCDC_REG1 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <750000>;
                    regulator-max-microvolt = <1300000>;
                    regulator-name = "vdd_arm";
                };

                vdd_gpu: DCDC_REG2 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <850000>;
                    regulator-max-microvolt = <1250000>;
                    regulator-name = "vdd_gpu";
                };

                vcc_ddr: DCDC_REG3 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-name = "vcc_ddr";
                };

                vcc_io: DCDC_REG4 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <3300000>;
                    regulator-max-microvolt = <3300000>;
                    regulator-name = "vcc_io";
                };

                vccio_pmu: LDO_REG1 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <3300000>;
                    regulator-max-microvolt = <3300000>;
                    regulator-name = "vccio_pmu";
                };

                vcc_tp: LDO_REG2 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <3300000>;
                    regulator-max-microvolt = <3300000>;
                    regulator-name = "vcc_tp";
                };

                vdd_10: LDO_REG3 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <1000000>;
                    regulator-max-microvolt = <1000000>;
                    regulator-name = "vdd_10";
                };

                vcc18_lcd: LDO_REG4 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <1800000>;
                    regulator-max-microvolt = <1800000>;
                    regulator-name = "vcc18_lcd";
                };

                vccio_sd: LDO_REG5 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <1800000>;
                    regulator-max-microvolt = <3300000>;
                    regulator-name = "vccio_sd";
                };

                vdd10_lcd: LDO_REG6 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <1000000>;
                    regulator-max-microvolt = <1000000>;
                    regulator-name = "vdd10_lcd";
                };

                vcc_18: LDO_REG7 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <1800000>;
                    regulator-max-microvolt = <1800000>;
                    regulator-name = "vcc_18";
                };

                vcca_codec: LDO_REG8 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-min-microvolt = <3300000>;
                    regulator-max-microvolt = <3300000>;
                    regulator-name = "vcca_codec";
                };

                vcc_wl: SWITCH_REG1 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-name = "vcc_wl";
                };

                vcc_lcd: SWITCH_REG2 {
                    regulator-always-on;
                    regulator-boot-on;
                    regulator-name = "vcc_lcd";
                };
            };
        };
    };
