diff mbox

[RESEND,3/3] Documentation: Add documentation for rt5033 multifunction device

Message ID 1420523117-6814-4-git-send-email-beomho.seo@samsung.com
State Superseded, archived
Headers show

Commit Message

Beomho Seo Jan. 6, 2015, 5:45 a.m. UTC
This patch device tree binding documentation for rt5033 multifunction device.

Cc: Sebastian Reichel <sre@kernel.org>
Cc: Lee Jones <lee.jones@linaro.org>
Cc: Mark Brown <broonie@kernel.org>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Pawel Moll <pawel.moll@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Ian campbell <ijc+devicetree@hellion.org.uk>
Cc: Kumar Gala <galak@codeaurora.org>
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
Acked-by: Chanwoo Choi <cw00.choi@samsung.com>
---
 Documentation/devicetree/bindings/mfd/rt5033.txt   |  108 ++++++++++++++++++++
 .../devicetree/bindings/vendor-prefixes.txt        |    1 +
 2 files changed, 109 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mfd/rt5033.txt

Comments

Rob Herring Jan. 6, 2015, 4:54 p.m. UTC | #1
On Mon, Jan 5, 2015 at 11:45 PM, Beomho Seo <beomho.seo@samsung.com> wrote:
> This patch device tree binding documentation for rt5033 multifunction device.
>
> Cc: Sebastian Reichel <sre@kernel.org>
> Cc: Lee Jones <lee.jones@linaro.org>
> Cc: Mark Brown <broonie@kernel.org>
> Cc: Rob Herring <robh+dt@kernel.org>
> Cc: Pawel Moll <pawel.moll@arm.com>
> Cc: Mark Rutland <mark.rutland@arm.com>
> Cc: Ian campbell <ijc+devicetree@hellion.org.uk>
> Cc: Kumar Gala <galak@codeaurora.org>
> Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
> Acked-by: Chanwoo Choi <cw00.choi@samsung.com>
> ---
>  Documentation/devicetree/bindings/mfd/rt5033.txt   |  108 ++++++++++++++++++++
>  .../devicetree/bindings/vendor-prefixes.txt        |    1 +
>  2 files changed, 109 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/mfd/rt5033.txt
>
> diff --git a/Documentation/devicetree/bindings/mfd/rt5033.txt b/Documentation/devicetree/bindings/mfd/rt5033.txt
> new file mode 100644
> index 0000000..52a6d33
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/rt5033.txt
> @@ -0,0 +1,108 @@
> +Richtek RT5033 Power management Integrated Circuit
> +
> +RT5033 is a Multifunction device which includes battery charger, fuel gauge,
> +flash LED current source, LDO and synchronous Buck converter for portable
> +applications. It is interfaced to host controller using i2c interface.
> +
> +Required properties:
> +- compatible : Must be "richtek,rt5033"
> +- reg : Specifies the i2c slave address of general part.
> +- interrupts : This i2c devices has an IRQ line connected to the main SoC.
> +- interrupt-parent : The parent interrupt controller.
> +
> +Optional node:
> +Regulators: The regulators of RT5033 have to be instantiated under sub-node
> +named "regulators" usinge the following format.

s/usinge/using/

> +
> +       regulators {
> +               regulator-name {
> +                       regulator-name = LDO/BUCK
> +                       regulator subnodes called X, Y and Z
> +               };
> +       };
> +       refer Documentation/devicetree/bindings/regulator/regulator.txt
> +
> +
> +Battery charger: There battery charger of RT5033 have to be instantiated under
> +sub-node named "charger" using the following format.
> +
> +Required properties:
> +- compatible : Must be "richtek,rt5033-charger".
> +- richtek,pre-uamp : Current of pre-charge mode. The pre-charge current levels
> +  are 350 mA to 650 mA programmed by I2C per 100 mA.
> +- richtek,pre-threshold-uvolt : Voltage of threshold pre-charge mode. Battery
> +  voltage is below pre-charge threshold voltage, the charger is in pre-charge
> +  mode with pre-charge current. Its levels are 2.3 V  to 3.8 V programmed
> +  by I2C per 0.1 V.
> +- richtek,fast-uamp : Current of fast-charge mode. The fast-charge current
> +  levels are 700 mA to 2000 mA programmed by I2C per 100 mA.
> +- richtek,const-uvolt :  Battery regulation voltage of constant voltage mode.
> +  This voltage level 3.65 V to 4.4 V bye I2C per 0.025 V.
> +- richtek,eoc-uamp : This property is end of charge current. Its level 150 mA
> +  to 200 mA.

Please align -uamp and -uvolt names with regulator binding suffixes.

> +       charger {
> +               compatible = "richtek,rt5033-charger";
> +               richtek,pre-uamp = <350000>;
> +               richtek,pre-threshold-uvolt = <3400000>;
> +               richtek,fast-uamp = <2000000>;
> +               richtek,const-uvolt = <4350000>;
> +               richtek,eoc-uamp = <250000>;
> +       };
> +
> +
> +Fuelgauge: There fuelgauge of RT5033 to be instantiated node named "fuelgauge"
> +using the following format.
> +
> +Required properties:
> +- compatible = Must be "richtek,rt5033-battery".
> +
> +       i2c_fuel: i2c@1 {

Drop the @1.

> +               compatible = "i2c-gpio";
> +               standard i2c-gpio constraints...
> +               fuelgauge {
> +                       compatible = "richtek,rt5033-battery".
> +               };
> +       };

I'm a bit confused by this. The fuelgauge is an i2c device hanging off
the rt5033 or a 2nd i2c slave on the rt5033?

> +
> +
> +Example:
> +
> +               rt5033@34 {
> +                       compatible = "richtek,rt5033";
> +                       reg = <0x34>;
> +                       interrupt-parent = <&gpx1>;
> +                       interrupts = <5 0>;
> +
> +                       regulators {
> +                               buck_reg: BUCK {
> +                                       regulator-name = "BUCK";
> +                                       regulator-min-microvolt = <1200000>;
> +                                       regulator-max-microvolt = <1200000>;
> +                                       regulator-always-on;
> +                               };
> +                       };
> +
> +                       charger {
> +                               compatible = "richtek,rt5033-charger";
> +                               richtek,pre-uamp = <350000>;
> +                               richtek,pre-threshold-uvolt = <3400000>;
> +                               richtek,fast-uamp = <2000000>;
> +                               richtek,const-uvolt = <4350000>;
> +                               richtek,eoc-uamp = <250000>;
> +                       };
> +
> +               };
> +
> +               i2c_fuel: i2c@10 {
> +                       compatible = "i2c-gpio";
> +                       gpios = <&gpm3 1 0
> +                               &gpm3 0 0>;
> +
> +                       fuel: rt5033-battery@35 {
> +                               compatible = "richtek,rt5033-battery";
> +                               interrupt-parent = <&gpx2>;
> +                               interrupts = <3 0>;
> +                               reg = <0x35>;
> +                       };
> +               };
> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
> index 723999d..611b543 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
> @@ -124,6 +124,7 @@ ralink      Mediatek/Ralink Technology Corp.
>  ramtron        Ramtron International
>  realtek Realtek Semiconductor Corp.
>  renesas        Renesas Electronics Corporation
> +richtek        Richtek Technology Corporation
>  ricoh  Ricoh Co. Ltd.
>  rockchip       Fuzhou Rockchip Electronics Co., Ltd
>  samsung        Samsung Semiconductor
> --
> 1.7.9.5
>
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Beomho Seo Jan. 6, 2015, 11:34 p.m. UTC | #2
Thank you for review.

On 01/07/2015 01:54 AM, Rob Herring wrote:
> On Mon, Jan 5, 2015 at 11:45 PM, Beomho Seo <beomho.seo@samsung.com> wrote:
>> This patch device tree binding documentation for rt5033 multifunction device.
>>
>> Cc: Sebastian Reichel <sre@kernel.org>
>> Cc: Lee Jones <lee.jones@linaro.org>
>> Cc: Mark Brown <broonie@kernel.org>
>> Cc: Rob Herring <robh+dt@kernel.org>
>> Cc: Pawel Moll <pawel.moll@arm.com>
>> Cc: Mark Rutland <mark.rutland@arm.com>
>> Cc: Ian campbell <ijc+devicetree@hellion.org.uk>
>> Cc: Kumar Gala <galak@codeaurora.org>
>> Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
>> Acked-by: Chanwoo Choi <cw00.choi@samsung.com>
>> ---
>>  Documentation/devicetree/bindings/mfd/rt5033.txt   |  108 ++++++++++++++++++++
>>  .../devicetree/bindings/vendor-prefixes.txt        |    1 +
>>  2 files changed, 109 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/mfd/rt5033.txt
>>
>> diff --git a/Documentation/devicetree/bindings/mfd/rt5033.txt b/Documentation/devicetree/bindings/mfd/rt5033.txt
>> new file mode 100644
>> index 0000000..52a6d33
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/mfd/rt5033.txt
>> @@ -0,0 +1,108 @@
>> +Richtek RT5033 Power management Integrated Circuit
>> +
>> +RT5033 is a Multifunction device which includes battery charger, fuel gauge,
>> +flash LED current source, LDO and synchronous Buck converter for portable
>> +applications. It is interfaced to host controller using i2c interface.
>> +
>> +Required properties:
>> +- compatible : Must be "richtek,rt5033"
>> +- reg : Specifies the i2c slave address of general part.
>> +- interrupts : This i2c devices has an IRQ line connected to the main SoC.
>> +- interrupt-parent : The parent interrupt controller.
>> +
>> +Optional node:
>> +Regulators: The regulators of RT5033 have to be instantiated under sub-node
>> +named "regulators" usinge the following format.
> 
> s/usinge/using/
> 

I will fix wrong typo.

>> +
>> +       regulators {
>> +               regulator-name {
>> +                       regulator-name = LDO/BUCK
>> +                       regulator subnodes called X, Y and Z
>> +               };
>> +       };
>> +       refer Documentation/devicetree/bindings/regulator/regulator.txt
>> +
>> +
>> +Battery charger: There battery charger of RT5033 have to be instantiated under
>> +sub-node named "charger" using the following format.
>> +
>> +Required properties:
>> +- compatible : Must be "richtek,rt5033-charger".
>> +- richtek,pre-uamp : Current of pre-charge mode. The pre-charge current levels
>> +  are 350 mA to 650 mA programmed by I2C per 100 mA.
>> +- richtek,pre-threshold-uvolt : Voltage of threshold pre-charge mode. Battery
>> +  voltage is below pre-charge threshold voltage, the charger is in pre-charge
>> +  mode with pre-charge current. Its levels are 2.3 V  to 3.8 V programmed
>> +  by I2C per 0.1 V.
>> +- richtek,fast-uamp : Current of fast-charge mode. The fast-charge current
>> +  levels are 700 mA to 2000 mA programmed by I2C per 100 mA.
>> +- richtek,const-uvolt :  Battery regulation voltage of constant voltage mode.
>> +  This voltage level 3.65 V to 4.4 V bye I2C per 0.025 V.
>> +- richtek,eoc-uamp : This property is end of charge current. Its level 150 mA
>> +  to 200 mA.
> 
> Please align -uamp and -uvolt names with regulator binding suffixes.
> 

OK. I will fix it.

>> +       charger {
>> +               compatible = "richtek,rt5033-charger";
>> +               richtek,pre-uamp = <350000>;
>> +               richtek,pre-threshold-uvolt = <3400000>;
>> +               richtek,fast-uamp = <2000000>;
>> +               richtek,const-uvolt = <4350000>;
>> +               richtek,eoc-uamp = <250000>;
>> +       };
>> +
>> +
>> +Fuelgauge: There fuelgauge of RT5033 to be instantiated node named "fuelgauge"
>> +using the following format.
>> +
>> +Required properties:
>> +- compatible = Must be "richtek,rt5033-battery".
>> +
>> +       i2c_fuel: i2c@1 {
> 
> Drop the @1.
> 

OK. I will fix it.

>> +               compatible = "i2c-gpio";
>> +               standard i2c-gpio constraints...
>> +               fuelgauge {
>> +                       compatible = "richtek,rt5033-battery".
>> +               };
>> +       };
> 
> I'm a bit confused by this. The fuelgauge is an i2c device hanging off
> the rt5033 or a 2nd i2c slave on the rt5033?
>

It is 2nd i2c slave on the rt5033.

>> +
>> +
>> +Example:
>> +
>> +               rt5033@34 {
>> +                       compatible = "richtek,rt5033";
>> +                       reg = <0x34>;
>> +                       interrupt-parent = <&gpx1>;
>> +                       interrupts = <5 0>;
>> +
>> +                       regulators {
>> +                               buck_reg: BUCK {
>> +                                       regulator-name = "BUCK";
>> +                                       regulator-min-microvolt = <1200000>;
>> +                                       regulator-max-microvolt = <1200000>;
>> +                                       regulator-always-on;
>> +                               };
>> +                       };
>> +
>> +                       charger {
>> +                               compatible = "richtek,rt5033-charger";
>> +                               richtek,pre-uamp = <350000>;
>> +                               richtek,pre-threshold-uvolt = <3400000>;
>> +                               richtek,fast-uamp = <2000000>;
>> +                               richtek,const-uvolt = <4350000>;
>> +                               richtek,eoc-uamp = <250000>;
>> +                       };
>> +
>> +               };
>> +
>> +               i2c_fuel: i2c@10 {
>> +                       compatible = "i2c-gpio";
>> +                       gpios = <&gpm3 1 0
>> +                               &gpm3 0 0>;
>> +
>> +                       fuel: rt5033-battery@35 {
>> +                               compatible = "richtek,rt5033-battery";
>> +                               interrupt-parent = <&gpx2>;
>> +                               interrupts = <3 0>;
>> +                               reg = <0x35>;
>> +                       };
>> +               };
>> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
>> index 723999d..611b543 100644
>> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
>> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
>> @@ -124,6 +124,7 @@ ralink      Mediatek/Ralink Technology Corp.
>>  ramtron        Ramtron International
>>  realtek Realtek Semiconductor Corp.
>>  renesas        Renesas Electronics Corporation
>> +richtek        Richtek Technology Corporation
>>  ricoh  Ricoh Co. Ltd.
>>  rockchip       Fuzhou Rockchip Electronics Co., Ltd
>>  samsung        Samsung Semiconductor
>> --
>> 1.7.9.5
>>
> 

Best regards,
Beomho Seo

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Rob Herring Jan. 7, 2015, 12:02 a.m. UTC | #3
On Tue, Jan 6, 2015 at 5:34 PM, Beomho Seo <beomho.seo@samsung.com> wrote:
> Thank you for review.
>
> On 01/07/2015 01:54 AM, Rob Herring wrote:
>> On Mon, Jan 5, 2015 at 11:45 PM, Beomho Seo <beomho.seo@samsung.com> wrote:
>>> This patch device tree binding documentation for rt5033 multifunction device.

[...]

>>> +               compatible = "i2c-gpio";
>>> +               standard i2c-gpio constraints...
>>> +               fuelgauge {
>>> +                       compatible = "richtek,rt5033-battery".
>>> +               };
>>> +       };
>>
>> I'm a bit confused by this. The fuelgauge is an i2c device hanging off
>> the rt5033 or a 2nd i2c slave on the rt5033?
>>
>
> It is 2nd i2c slave on the rt5033.

Okay, then you should leave out i2c-gpio from the example. The type of
i2c host is not relevant. You could for example have both slaves
attached to the same master. So just this (at the same level as
rt5033@34)

rt5033@35 {
        compatible = "richtek,rt5033-battery";
        interrupt-parent = <&gpx2>;
        interrupts = <3 0>;
        reg = <0x35>;
};

Rob
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/Documentation/devicetree/bindings/mfd/rt5033.txt b/Documentation/devicetree/bindings/mfd/rt5033.txt
new file mode 100644
index 0000000..52a6d33
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/rt5033.txt
@@ -0,0 +1,108 @@ 
+Richtek RT5033 Power management Integrated Circuit
+
+RT5033 is a Multifunction device which includes battery charger, fuel gauge,
+flash LED current source, LDO and synchronous Buck converter for portable
+applications. It is interfaced to host controller using i2c interface.
+
+Required properties:
+- compatible : Must be "richtek,rt5033"
+- reg : Specifies the i2c slave address of general part.
+- interrupts : This i2c devices has an IRQ line connected to the main SoC.
+- interrupt-parent : The parent interrupt controller.
+
+Optional node:
+Regulators: The regulators of RT5033 have to be instantiated under sub-node
+named "regulators" usinge the following format.
+
+	regulators {
+		regulator-name {
+			regulator-name = LDO/BUCK
+			regulator subnodes called X, Y and Z
+		};
+	};
+	refer Documentation/devicetree/bindings/regulator/regulator.txt
+
+
+Battery charger: There battery charger of RT5033 have to be instantiated under
+sub-node named "charger" using the following format.
+
+Required properties:
+- compatible : Must be "richtek,rt5033-charger".
+- richtek,pre-uamp : Current of pre-charge mode. The pre-charge current levels
+  are 350 mA to 650 mA programmed by I2C per 100 mA.
+- richtek,pre-threshold-uvolt : Voltage of threshold pre-charge mode. Battery
+  voltage is below pre-charge threshold voltage, the charger is in pre-charge
+  mode with pre-charge current. Its levels are 2.3 V  to 3.8 V programmed
+  by I2C per 0.1 V.
+- richtek,fast-uamp : Current of fast-charge mode. The fast-charge current
+  levels are 700 mA to 2000 mA programmed by I2C per 100 mA.
+- richtek,const-uvolt :  Battery regulation voltage of constant voltage mode.
+  This voltage level 3.65 V to 4.4 V bye I2C per 0.025 V.
+- richtek,eoc-uamp : This property is end of charge current. Its level 150 mA
+  to 200 mA.
+
+	charger {
+		compatible = "richtek,rt5033-charger";
+		richtek,pre-uamp = <350000>;
+		richtek,pre-threshold-uvolt = <3400000>;
+		richtek,fast-uamp = <2000000>;
+		richtek,const-uvolt = <4350000>;
+		richtek,eoc-uamp = <250000>;
+	};
+
+
+Fuelgauge: There fuelgauge of RT5033 to be instantiated node named "fuelgauge"
+using the following format.
+
+Required properties:
+- compatible = Must be "richtek,rt5033-battery".
+
+	i2c_fuel: i2c@1 {
+		compatible = "i2c-gpio";
+		standard i2c-gpio constraints...
+		fuelgauge {
+			compatible = "richtek,rt5033-battery".
+		};
+	};
+
+
+Example:
+
+		rt5033@34 {
+			compatible = "richtek,rt5033";
+			reg = <0x34>;
+			interrupt-parent = <&gpx1>;
+			interrupts = <5 0>;
+
+			regulators {
+				buck_reg: BUCK {
+					regulator-name = "BUCK";
+					regulator-min-microvolt = <1200000>;
+					regulator-max-microvolt = <1200000>;
+					regulator-always-on;
+				};
+			};
+
+			charger {
+				compatible = "richtek,rt5033-charger";
+				richtek,pre-uamp = <350000>;
+				richtek,pre-threshold-uvolt = <3400000>;
+				richtek,fast-uamp = <2000000>;
+				richtek,const-uvolt = <4350000>;
+				richtek,eoc-uamp = <250000>;
+			};
+
+		};
+
+		i2c_fuel: i2c@10 {
+			compatible = "i2c-gpio";
+			gpios = <&gpm3 1 0
+				&gpm3 0 0>;
+
+			fuel: rt5033-battery@35 {
+				compatible = "richtek,rt5033-battery";
+				interrupt-parent = <&gpx2>;
+				interrupts = <3 0>;
+				reg = <0x35>;
+			};
+		};
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 723999d..611b543 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -124,6 +124,7 @@  ralink	Mediatek/Ralink Technology Corp.
 ramtron	Ramtron International
 realtek Realtek Semiconductor Corp.
 renesas	Renesas Electronics Corporation
+richtek	Richtek Technology Corporation
 ricoh	Ricoh Co. Ltd.
 rockchip	Fuzhou Rockchip Electronics Co., Ltd
 samsung	Samsung Semiconductor