diff options
author | Liu Xiang <liu.xiang6@zte.com.cn> | 2018-07-22 09:33:56 -0400 |
---|---|---|
committer | Sebastian Reichel <sre@kernel.org> | 2018-09-20 05:35:40 -0400 |
commit | 457b42f0aa1c397745ada6083bf81b9479ab19fe (patch) | |
tree | f36d97a95326d25eb7a66ada2147365ce1628fee | |
parent | 1c3d7b0364f0730a8a64801dd07a589bbac06671 (diff) |
power: supply: bq27xxx: Add support for BQ27411
According to the datasheet, bq27411 is similar to bq27421.
Signed-off-by: Liu Xiang <liu.xiang6@zte.com.cn>
Reviewed-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
-rw-r--r-- | Documentation/devicetree/bindings/power/supply/bq27xxx.txt | 1 | ||||
-rw-r--r-- | drivers/power/supply/bq27xxx_battery.c | 9 | ||||
-rw-r--r-- | drivers/power/supply/bq27xxx_battery_i2c.c | 2 | ||||
-rw-r--r-- | include/linux/power/bq27xxx_battery.h | 1 |
4 files changed, 13 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/power/supply/bq27xxx.txt b/Documentation/devicetree/bindings/power/supply/bq27xxx.txt index 37994fdb18ca..4fa8e08df2b6 100644 --- a/Documentation/devicetree/bindings/power/supply/bq27xxx.txt +++ b/Documentation/devicetree/bindings/power/supply/bq27xxx.txt | |||
@@ -23,6 +23,7 @@ Required properties: | |||
23 | * "ti,bq27546" - BQ27546 | 23 | * "ti,bq27546" - BQ27546 |
24 | * "ti,bq27742" - BQ27742 | 24 | * "ti,bq27742" - BQ27742 |
25 | * "ti,bq27545" - BQ27545 | 25 | * "ti,bq27545" - BQ27545 |
26 | * "ti,bq27411" - BQ27411 | ||
26 | * "ti,bq27421" - BQ27421 | 27 | * "ti,bq27421" - BQ27421 |
27 | * "ti,bq27425" - BQ27425 | 28 | * "ti,bq27425" - BQ27425 |
28 | * "ti,bq27426" - BQ27426 | 29 | * "ti,bq27426" - BQ27426 |
diff --git a/drivers/power/supply/bq27xxx_battery.c b/drivers/power/supply/bq27xxx_battery.c index f022e1b550df..6dbbe95844a3 100644 --- a/drivers/power/supply/bq27xxx_battery.c +++ b/drivers/power/supply/bq27xxx_battery.c | |||
@@ -432,6 +432,7 @@ static u8 | |||
432 | [BQ27XXX_REG_AP] = 0x18, | 432 | [BQ27XXX_REG_AP] = 0x18, |
433 | BQ27XXX_DM_REG_ROWS, | 433 | BQ27XXX_DM_REG_ROWS, |
434 | }; | 434 | }; |
435 | #define bq27411_regs bq27421_regs | ||
435 | #define bq27425_regs bq27421_regs | 436 | #define bq27425_regs bq27421_regs |
436 | #define bq27426_regs bq27421_regs | 437 | #define bq27426_regs bq27421_regs |
437 | #define bq27441_regs bq27421_regs | 438 | #define bq27441_regs bq27421_regs |
@@ -665,6 +666,7 @@ static enum power_supply_property bq27421_props[] = { | |||
665 | POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN, | 666 | POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN, |
666 | POWER_SUPPLY_PROP_MANUFACTURER, | 667 | POWER_SUPPLY_PROP_MANUFACTURER, |
667 | }; | 668 | }; |
669 | #define bq27411_props bq27421_props | ||
668 | #define bq27425_props bq27421_props | 670 | #define bq27425_props bq27421_props |
669 | #define bq27426_props bq27421_props | 671 | #define bq27426_props bq27421_props |
670 | #define bq27441_props bq27421_props | 672 | #define bq27441_props bq27421_props |
@@ -725,6 +727,12 @@ static struct bq27xxx_dm_reg bq27545_dm_regs[] = { | |||
725 | #define bq27545_dm_regs 0 | 727 | #define bq27545_dm_regs 0 |
726 | #endif | 728 | #endif |
727 | 729 | ||
730 | static struct bq27xxx_dm_reg bq27411_dm_regs[] = { | ||
731 | [BQ27XXX_DM_DESIGN_CAPACITY] = { 82, 10, 2, 0, 32767 }, | ||
732 | [BQ27XXX_DM_DESIGN_ENERGY] = { 82, 12, 2, 0, 32767 }, | ||
733 | [BQ27XXX_DM_TERMINATE_VOLTAGE] = { 82, 16, 2, 2800, 3700 }, | ||
734 | }; | ||
735 | |||
728 | static struct bq27xxx_dm_reg bq27421_dm_regs[] = { | 736 | static struct bq27xxx_dm_reg bq27421_dm_regs[] = { |
729 | [BQ27XXX_DM_DESIGN_CAPACITY] = { 82, 10, 2, 0, 8000 }, | 737 | [BQ27XXX_DM_DESIGN_CAPACITY] = { 82, 10, 2, 0, 8000 }, |
730 | [BQ27XXX_DM_DESIGN_ENERGY] = { 82, 12, 2, 0, 32767 }, | 738 | [BQ27XXX_DM_DESIGN_ENERGY] = { 82, 12, 2, 0, 32767 }, |
@@ -802,6 +810,7 @@ static struct { | |||
802 | [BQ27546] = BQ27XXX_DATA(bq27546, 0 , BQ27XXX_O_OTDC), | 810 | [BQ27546] = BQ27XXX_DATA(bq27546, 0 , BQ27XXX_O_OTDC), |
803 | [BQ27742] = BQ27XXX_DATA(bq27742, 0 , BQ27XXX_O_OTDC), | 811 | [BQ27742] = BQ27XXX_DATA(bq27742, 0 , BQ27XXX_O_OTDC), |
804 | [BQ27545] = BQ27XXX_DATA(bq27545, 0x04143672, BQ27XXX_O_OTDC), | 812 | [BQ27545] = BQ27XXX_DATA(bq27545, 0x04143672, BQ27XXX_O_OTDC), |
813 | [BQ27411] = BQ27XXX_DATA(bq27411, 0x80008000, BQ27XXX_O_UTOT | BQ27XXX_O_CFGUP | BQ27XXX_O_RAM), | ||
805 | [BQ27421] = BQ27XXX_DATA(bq27421, 0x80008000, BQ27XXX_O_UTOT | BQ27XXX_O_CFGUP | BQ27XXX_O_RAM), | 814 | [BQ27421] = BQ27XXX_DATA(bq27421, 0x80008000, BQ27XXX_O_UTOT | BQ27XXX_O_CFGUP | BQ27XXX_O_RAM), |
806 | [BQ27425] = BQ27XXX_DATA(bq27425, 0x04143672, BQ27XXX_O_UTOT | BQ27XXX_O_CFGUP), | 815 | [BQ27425] = BQ27XXX_DATA(bq27425, 0x04143672, BQ27XXX_O_UTOT | BQ27XXX_O_CFGUP), |
807 | [BQ27426] = BQ27XXX_DATA(bq27426, 0x80008000, BQ27XXX_O_UTOT | BQ27XXX_O_CFGUP | BQ27XXX_O_RAM), | 816 | [BQ27426] = BQ27XXX_DATA(bq27426, 0x80008000, BQ27XXX_O_UTOT | BQ27XXX_O_CFGUP | BQ27XXX_O_RAM), |
diff --git a/drivers/power/supply/bq27xxx_battery_i2c.c b/drivers/power/supply/bq27xxx_battery_i2c.c index 40069128ad44..2677c38a8a42 100644 --- a/drivers/power/supply/bq27xxx_battery_i2c.c +++ b/drivers/power/supply/bq27xxx_battery_i2c.c | |||
@@ -247,6 +247,7 @@ static const struct i2c_device_id bq27xxx_i2c_id_table[] = { | |||
247 | { "bq27546", BQ27546 }, | 247 | { "bq27546", BQ27546 }, |
248 | { "bq27742", BQ27742 }, | 248 | { "bq27742", BQ27742 }, |
249 | { "bq27545", BQ27545 }, | 249 | { "bq27545", BQ27545 }, |
250 | { "bq27411", BQ27411 }, | ||
250 | { "bq27421", BQ27421 }, | 251 | { "bq27421", BQ27421 }, |
251 | { "bq27425", BQ27425 }, | 252 | { "bq27425", BQ27425 }, |
252 | { "bq27426", BQ27426 }, | 253 | { "bq27426", BQ27426 }, |
@@ -279,6 +280,7 @@ static const struct of_device_id bq27xxx_battery_i2c_of_match_table[] = { | |||
279 | { .compatible = "ti,bq27546" }, | 280 | { .compatible = "ti,bq27546" }, |
280 | { .compatible = "ti,bq27742" }, | 281 | { .compatible = "ti,bq27742" }, |
281 | { .compatible = "ti,bq27545" }, | 282 | { .compatible = "ti,bq27545" }, |
283 | { .compatible = "ti,bq27411" }, | ||
282 | { .compatible = "ti,bq27421" }, | 284 | { .compatible = "ti,bq27421" }, |
283 | { .compatible = "ti,bq27425" }, | 285 | { .compatible = "ti,bq27425" }, |
284 | { .compatible = "ti,bq27426" }, | 286 | { .compatible = "ti,bq27426" }, |
diff --git a/include/linux/power/bq27xxx_battery.h b/include/linux/power/bq27xxx_battery.h index d6355f49fbae..507c5e214c42 100644 --- a/include/linux/power/bq27xxx_battery.h +++ b/include/linux/power/bq27xxx_battery.h | |||
@@ -24,6 +24,7 @@ enum bq27xxx_chip { | |||
24 | BQ27546, | 24 | BQ27546, |
25 | BQ27742, | 25 | BQ27742, |
26 | BQ27545, /* bq27545 */ | 26 | BQ27545, /* bq27545 */ |
27 | BQ27411, | ||
27 | BQ27421, /* bq27421, bq27441, bq27621 */ | 28 | BQ27421, /* bq27421, bq27441, bq27621 */ |
28 | BQ27425, | 29 | BQ27425, |
29 | BQ27426, | 30 | BQ27426, |