Re: [PATCH v5 1/5] dt-bindings: Add RK808 device tree bindings document

From: Mark Rutland
Date: Tue Aug 26 2014 - 05:42:24 EST


On Mon, Aug 25, 2014 at 02:29:22PM +0100, Chris Zhong wrote:
> Add device tree bindings documentation and a header file
> for rockchip's RK808 pmic.
>
> Signed-off-by: Chris Zhong <zyw@xxxxxxxxxxxxxx>
>
> ---
>
> 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

It would be nice to have a description of the valid values.

They look to be 0 and 1 in include/dt-bindings/clock/rockchip,rk808.h.

Thanks,
Mark.

> +- 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
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe devicetree" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/