|
@@ -0,0 +1,177 @@
|
|
|
+RK808 Power Management Integrated Circuit
|
|
|
+
|
|
|
+Required properties:
|
|
|
+- compatible: "rockchip,rk808"
|
|
|
+- 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.
|
|
|
+- 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
|
|
|
+
|
|
|
+Regulators: All the regulators of RK808 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
|
|
|
+
|
|
|
+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>;
|
|
|
+ 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";
|
|
|
+ };
|
|
|
+ };
|
|
|
+ };
|