RK8XX Power Management Integrated Circuit

The rk8xx family current members:
rk808
rk818

Required properties:
- compatible: "rockchip,rk808", "rockchip,rk818"
- reg: I2C slave address
- interrupt-parent: The parent interrupt controller.
- interrupts: the interrupt outputs of the controller.
- #clock-cells: from common clock binding; shall be set to 1 (multiple clock
  outputs). See <dt-bindings/clock/rockchip,rk808.h> for clock IDs.

Optional properties:
- clock-output-names: From common clock binding to override the
  default output clock name
- rockchip,system-power-controller: Telling whether or not this pmic is controlling
  the system power.

Optional RK808 properties:
- vcc1-supply:  The input supply for DCDC_REG1
- vcc2-supply:  The input supply for DCDC_REG2
- vcc3-supply:  The input supply for DCDC_REG3
- vcc4-supply:  The input supply for DCDC_REG4
- vcc6-supply:  The input supply for LDO_REG1 and LDO_REG2
- vcc7-supply:  The input supply for LDO_REG3 and LDO_REG7
- vcc8-supply:  The input supply for SWITCH_REG1
- vcc9-supply:  The input supply for LDO_REG4 and LDO_REG5
- vcc10-supply: The input supply for LDO_REG6
- vcc11-supply: The input supply for LDO_REG8
- vcc12-supply: The input supply for SWITCH_REG2
- dvs-gpios:  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.

Optional RK818 properties:
- vcc1-supply:  The input supply for DCDC_REG1
- vcc2-supply:  The input supply for DCDC_REG2
- vcc3-supply:  The input supply for DCDC_REG3
- vcc4-supply:  The input supply for DCDC_REG4
- boost-supply: The input supply for DCDC_BOOST
- vcc6-supply:  The input supply for LDO_REG1 and LDO_REG2
- vcc7-supply:  The input supply for LDO_REG3, LDO_REG5 and LDO_REG7
- vcc8-supply:  The input supply for LDO_REG4, LDO_REG6 and LDO_REG8
- vcc9-supply:  The input supply for LDO_REG9 and SWITCH_REG
- h_5v-supply:  The input supply for HDMI_SWITCH
- usb-supply:   The input supply for OTG_SWITCH

Regulators: All the regulators of RK8XX to be instantiated shall be
listed in a child node named 'regulators'. Each regulator is represented
by a child node of the 'regulators' node.

	regulator-name {
		/* standard regulator bindings here */
	};

Following regulators of the RK808 PMIC block are supported. Note that
the 'n' in regulator name, as in DCDC_REGn or LDOn, represents the DCDC or LDO
number as described in RK808 datasheet.

	- DCDC_REGn
		- valid values for n are 1 to 4.
	- LDO_REGn
		- valid values for n are 1 to 8.
	- SWITCH_REGn
		- valid values for n are 1 to 2

Following regulators of the RK818 PMIC block are supported. Note that
the 'n' in regulator name, as in DCDC_REGn or LDOn, represents the DCDC or LDO
number as described in RK818 datasheet.

	- DCDC_REGn
		- valid values for n are 1 to 4.
	- LDO_REGn
		- valid values for n are 1 to 9.
	- SWITCH_REG
	- HDMI_SWITCH
	- OTG_SWITCH

Standard regulator bindings are used inside regulator subnodes. Check
  Documentation/devicetree/bindings/regulator/regulator.txt
for more details

Example:
	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";
			};
		};
	};
