From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Zhong Subject: [PATCH v5 1/5] dt-bindings: Add RK808 device tree bindings document Date: Mon, 25 Aug 2014 21:29:22 +0800 Message-ID: <1408973362-21355-1-git-send-email-zyw@rock-chips.com> Return-path: Sender: linux-kernel-owner@vger.kernel.org To: robh+dt@kernel.org, pawel.moll@arm.com, mark.rutland@arm.com, ijc+devicetree@hellion.org.uk, galak@codeaurora.org, sameo@linux.intel.com, lee.jones@linaro.org, lgirdwood@gmail.com, broonie@kernel.org, a.zummo@towertech.it, mturquette@linaro.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, rtc-linux@googlegroups.com, grant.likely@linaro.org, hl@rock-chips.com, huangtao@rock-chips.com, cf@rock-chips.com, zhangqing@rock-chips.com, xxx@rock-chips.com, dianders@chromium.org, heiko@sntech.de, olof@lixom.net, sonnyrao@chromium.org, dtor@chromium.org, javier.martinez@collabora.co.uk, kever.yang@rock-chips.com, Chris Zhong List-Id: devicetree@vger.kernel.org Add device tree bindings documentation and a header file for rockchip's RK808 pmic. Signed-off-by: Chris Zhong --- Changes in v5: Adviced by doug - add some error checking in probe - move "rockchip,rk808.h" into the patch about dt-bindings Changes in v4: Adviced by doug - add "clock-output-names" propertiey - add a header file "rockchip,rk808.h" Changes in v3: - fix compile err Changes in v2: Adviced by javier.martinez - separated from rtc-rk808.c Documentation/devicetree/bindings/mfd/rk808.txt | 142 +++++++++++++++++++++++ include/dt-bindings/clock/rockchip,rk808.h | 11 ++ 2 files changed, 153 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/rk808.txt create mode 100644 include/dt-bindings/clock/rockchip,rk808.h diff --git a/Documentation/devicetree/bindings/mfd/rk808.txt b/Documentation/devicetree/bindings/mfd/rk808.txt new file mode 100644 index 0000000..e5786e9 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/rk808.txt @@ -0,0 +1,142 @@ +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. +- pinctrl-names: Should contain only one value - "default". +- pinctrl-0: Should specify pin control groups used for this controller. +- regulators: This is the list of child nodes that specify the regulator + initialization data for defined regulators. Not all regulators for the given + device need to be present. The definition for each of these nodes is defined + using the standard binding for regulators found at + Documentation/devicetree/bindings/regulator/regulator.txt. +- #clock-cells: the value should be 1 +- The following are the names of the regulators that the rk808 pmic block + supports. Note: The 'n' below represents the number as per the 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. + +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. + +Example: +rk808: pmic@1b { + compatible = "rockchip,rk808"; + interrupt-parent = <&gpio0>; + interrupts = <4 IRQ_TYPE_EDGE_FALLING>; + pinctrl-names = "default"; + pinctrl-0 = <&pmic_int>; + reg = <0x1b>; + #clock-cells = <1>; + clock-output-names = "xin32k0", "xin32k1"; + rockchip,system-power-controller; + + regulators { + rk808_dcdc1_reg: DCDC_REG1 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + regulator-name = "vdd_arm"; + }; + + rk808_dcdc2_reg: DCDC_REG2 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <850000>; + regulator-max-microvolt = <1250000>; + regulator-name = "vdd_gpu"; + }; + + rk808_dcdc3_reg: DCDC_REG3 { + regulator-always-on; + regulator-boot-on; + regulator-name = "vdd_ddr"; + }; + + rk808_dcdc4_reg: DCDC_REG4 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-name = "vccio"; + }; + + rk808_ldo1_reg: LDO_REG1 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; + + rk808_ldo2_reg: LDO_REG2 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; + + rk808_ldo3_reg: LDO_REG3 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + regulator-name = "LDO_REG3"; + }; + + rk808_ldo4_reg: LDO_REG4 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + + rk808_ldo5_reg: LDO_REG5 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + }; + + rk808_ldo6_reg: LDO_REG6 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + }; + + rk808_ldo7_reg: LDO_REG7 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + + rk808_ldo8_reg: LDO_REG8 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; + + rk808_switch1_reg: SWITCH_REG1 { + regulator-always-on; + regulator-boot-on; + }; + + rk808_switch2_reg: SWITCH_REG2 { + regulator-always-on; + regulator-boot-on; + }; + }; + }; diff --git a/include/dt-bindings/clock/rockchip,rk808.h b/include/dt-bindings/clock/rockchip,rk808.h new file mode 100644 index 0000000..1a87343 --- /dev/null +++ b/include/dt-bindings/clock/rockchip,rk808.h @@ -0,0 +1,11 @@ +/* + * This header provides constants clk index RK808 pmic clkout + */ +#ifndef _CLK_ROCKCHIP_RK808 +#define _CLK_ROCKCHIP_RK808 + +/* CLOCKOUT index */ +#define RK808_CLKOUT0 0 +#define RK808_CLKOUT1 1 + +#endif -- 1.7.9.5