]> xenbits.xensource.com Git - people/julieng/linux-arm.git/commitdiff
regulator: da9211: update for supporting da9223/4/5
authorJames Ban <James.Ban.opensource@diasemi.com>
Mon, 30 Oct 2017 02:32:38 +0000 (11:32 +0900)
committerMark Brown <broonie@kernel.org>
Tue, 31 Oct 2017 11:01:14 +0000 (11:01 +0000)
This is update for supporting additional devices da9223/4/5.
Only device strings is added because only package type is different.

Signed-off-by: James Ban <James.Ban..opensource@diasemi.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Documentation/devicetree/bindings/regulator/da9211.txt
drivers/regulator/Kconfig
drivers/regulator/da9211-regulator.c
drivers/regulator/da9211-regulator.h
include/linux/regulator/da9211.h

index 0f2a6f8fcafdb988dfc93042e7b5d700ee5ac206..27717e816e7134460a6aca8b691d51235d9bb09a 100644 (file)
@@ -1,8 +1,9 @@
-* Dialog Semiconductor DA9211/DA9212/DA9213/DA9214/DA9215 Voltage Regulator
+* Dialog Semiconductor DA9211/DA9212/DA9213/DA9223/DA9214/DA9224/DA9215/DA9225
+ Voltage Regulator
 
 Required properties:
-- compatible: "dlg,da9211" or "dlg,da9212" or "dlg,da9213"
-  or "dlg,da9214" or "dlg,da9215"
+- compatible: "dlg,da9211" or "dlg,da9212" or "dlg,da9213" or "dlg,da9223"
+  or "dlg,da9214" or "dlg,da9224" or "dlg,da9215" or "dlg,da9225"
 - reg: I2C slave address, usually 0x68.
 - interrupts: the interrupt outputs of the controller
 - regulators: A node that houses a sub-node for each regulator within the
@@ -16,7 +17,6 @@ Optional properties:
 - Any optional property defined in regulator.txt
 
 Example 1) DA9211
-
        pmic: da9211@68 {
                compatible = "dlg,da9211";
                reg = <0x68>;
@@ -35,7 +35,6 @@ Example 1) DA9211
        };
 
 Example 2) DA9212
-
        pmic: da9212@68 {
                compatible = "dlg,da9212";
                reg = <0x68>;
@@ -79,7 +78,25 @@ Example 3) DA9213
                };
        };
 
-Example 4) DA9214
+Example 4) DA9223
+       pmic: da9223@68 {
+               compatible = "dlg,da9223";
+               reg = <0x68>;
+               interrupts = <3 27>;
+
+               regulators {
+                       BUCKA {
+                               regulator-name = "VBUCKA";
+                               regulator-min-microvolt = < 300000>;
+                               regulator-max-microvolt = <1570000>;
+                               regulator-min-microamp  = <3000000>;
+                               regulator-max-microamp  = <6000000>;
+                               enable-gpios = <&gpio 27 0>;
+                       };
+               };
+       };
+
+Example 5) DA9214
        pmic: da9214@68 {
                compatible = "dlg,da9214";
                reg = <0x68>;
@@ -105,7 +122,33 @@ Example 4) DA9214
                };
        };
 
-Example 5) DA9215
+Example 6) DA9224
+       pmic: da9224@68 {
+               compatible = "dlg,da9224";
+               reg = <0x68>;
+               interrupts = <3 27>;
+
+               regulators {
+                       BUCKA {
+                               regulator-name = "VBUCKA";
+                               regulator-min-microvolt = < 300000>;
+                               regulator-max-microvolt = <1570000>;
+                               regulator-min-microamp  = <3000000>;
+                               regulator-max-microamp  = <6000000>;
+                               enable-gpios = <&gpio 27 0>;
+                       };
+                       BUCKB {
+                               regulator-name = "VBUCKB";
+                               regulator-min-microvolt = < 300000>;
+                               regulator-max-microvolt = <1570000>;
+                               regulator-min-microamp  = <3000000>;
+                               regulator-max-microamp  = <6000000>;
+                               enable-gpios = <&gpio 17 0>;
+                       };
+               };
+       };
+
+Example 7) DA9215
        pmic: da9215@68 {
                compatible = "dlg,da9215";
                reg = <0x68>;
@@ -131,3 +174,28 @@ Example 5) DA9215
                };
        };
 
+Example 8) DA9225
+       pmic: da9225@68 {
+               compatible = "dlg,da9225";
+               reg = <0x68>;
+               interrupts = <3 27>;
+
+               regulators {
+                       BUCKA {
+                               regulator-name = "VBUCKA";
+                               regulator-min-microvolt = < 300000>;
+                               regulator-max-microvolt = <1570000>;
+                               regulator-min-microamp  = <4000000>;
+                               regulator-max-microamp  = <7000000>;
+                               enable-gpios = <&gpio 27 0>;
+                       };
+                       BUCKB {
+                               regulator-name = "VBUCKB";
+                               regulator-min-microvolt = < 300000>;
+                               regulator-max-microvolt = <1570000>;
+                               regulator-min-microamp  = <4000000>;
+                               regulator-max-microamp  = <7000000>;
+                               enable-gpios = <&gpio 17 0>;
+                       };
+               };
+       };
index 0fd6195601baa6f0f53c858a532a6b6b37999c4f..96cd55f9e3c5ca77d4a64e27c45d755b3ef23743 100644 (file)
@@ -244,7 +244,7 @@ config REGULATOR_DA9210
          interface.
 
 config REGULATOR_DA9211
-       tristate "Dialog Semiconductor DA9211/DA9212/DA9213/DA9214/DA9215 regulator"
+       tristate "Dialog Semiconductor DA9211/DA9212/DA9213/DA9223/DA9214/DA9224/DA9215/DA9225 regulator"
        depends on I2C
        select REGMAP_I2C
        help
index aa47280efd323a62f1f5b416c82e9a2d8edfa22e..9b8f476177249dac41a83e6e3121aaabd9f51f3d 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * da9211-regulator.c - Regulator device driver for DA9211/DA9212
- * /DA9213/DA9214/DA9215
+ * /DA9213/DA9223/DA9214/DA9224/DA9215/DA9225
  * Copyright (C) 2015  Dialog Semiconductor Ltd.
  *
  * This library is free software; you can redistribute it and/or
@@ -496,8 +496,11 @@ static const struct i2c_device_id da9211_i2c_id[] = {
        {"da9211", DA9211},
        {"da9212", DA9212},
        {"da9213", DA9213},
+       {"da9223", DA9223},
        {"da9214", DA9214},
+       {"da9224", DA9224},
        {"da9215", DA9215},
+       {"da9225", DA9225},
        {},
 };
 MODULE_DEVICE_TABLE(i2c, da9211_i2c_id);
@@ -507,8 +510,11 @@ static const struct of_device_id da9211_dt_ids[] = {
        { .compatible = "dlg,da9211", .data = &da9211_i2c_id[0] },
        { .compatible = "dlg,da9212", .data = &da9211_i2c_id[1] },
        { .compatible = "dlg,da9213", .data = &da9211_i2c_id[2] },
-       { .compatible = "dlg,da9214", .data = &da9211_i2c_id[3] },
-       { .compatible = "dlg,da9215", .data = &da9211_i2c_id[4] },
+       { .compatible = "dlg,da9223", .data = &da9211_i2c_id[3] },
+       { .compatible = "dlg,da9214", .data = &da9211_i2c_id[4] },
+       { .compatible = "dlg,da9224", .data = &da9211_i2c_id[5] },
+       { .compatible = "dlg,da9215", .data = &da9211_i2c_id[6] },
+       { .compatible = "dlg,da9225", .data = &da9211_i2c_id[7] },
        {},
 };
 MODULE_DEVICE_TABLE(of, da9211_dt_ids);
@@ -526,5 +532,5 @@ static struct i2c_driver da9211_regulator_driver = {
 module_i2c_driver(da9211_regulator_driver);
 
 MODULE_AUTHOR("James Ban <James.Ban.opensource@diasemi.com>");
-MODULE_DESCRIPTION("DA9211/DA9212/DA9213/DA9214/DA9215 regulator driver");
+MODULE_DESCRIPTION("DA9211/DA9212/DA9213/DA9223/DA9214/DA9224/DA9215/DA9225 regulator driver");
 MODULE_LICENSE("GPL");
index b841bbf330cc3a9e25ca91c1012149be7803830d..2cb32aab4f825163b19236974461bda367d3b0ed 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * da9211-regulator.h - Regulator definitions for DA9211/DA9212
- * /DA9213/DA9214/DA9215
+ * /DA9213/DA9223/DA9214/DA9224/DA9215/DA9225
  * Copyright (C) 2015  Dialog Semiconductor Ltd.
  *
  * This program is free software; you can redistribute it and/or
index 80cb40b7c88d44e966f07db9aa67f1b98c9fe43f..f2fd2d3bf58f7755afbbfb4faabffaa46bd90841 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * da9211.h - Regulator device driver for DA9211/DA9212
- * /DA9213/DA9214/DA9215
+ * /DA9213/DA9223/DA9214/DA9224/DA9215/DA9225
  * Copyright (C) 2015  Dialog Semiconductor Ltd.
  *
  * This program is free software; you can redistribute it and/or
@@ -25,8 +25,11 @@ enum da9211_chip_id {
        DA9211,
        DA9212,
        DA9213,
+       DA9223,
        DA9214,
+       DA9224,
        DA9215,
+       DA9225,
 };
 
 struct da9211_pdata {