Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1553987

[PATCH v3 03/11] power: supplies: bq275xx: adds specific support for bq27500/1 revision.

Path csiph.com!aioe.org!bofh.it!news.nic.it!robomod
From Chris Lapa <chris@lapa.com.au>
Newsgroups linux.kernel
Subject [PATCH v3 03/11] power: supplies: bq275xx: adds specific support for bq27500/1 revision.
Date Mon, 09 Jan 2017 01:50:01 +0100
Message-ID <sXwjT-5mL-5@gated-at.bofh.it> (permalink)
References <sR0mJ-2AR-5@gated-at.bofh.it> <sXwjT-5mL-3@gated-at.bofh.it>
X-Original-To pali.rohar@gmail.com, afd@ti.com, sre@kernel.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org
Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=lapa-com-au.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=owDTHgt0tDiBcQU/4hyONJhSHrp1o4sx0bCNAonUC9c=; b=yA0p+TnkxdNRfnZYz3DnXMH1gBdYuouSs3O5Npnh8I9zB7s1T5LdewId9pW64KEI4A WlRcgKCj6UHwt1+/6aTF5xC4QqlDYi71vHfuToX/7m5HoJcH2EofutYFyIZpw7gscOx9 Qbu6/MYgZdJ8HdMEFPBca93SCujGl5zCqM5MZf9+E+GdubETy5fGejUQSTV8lDvWdbdB dEMe/qU7WTMMPNH058sY2bdNFKq3nnYMZCZDNpdIWmyeP22iumK/aMUAlwYU47LRnkgB oNwS/AeVNeKhfGtWWPvcSsPm9PIR2IeMfk++vtT5iqynw4F3lzcb+jUlfMk0qdupxv2a pVVA==
X-Google-Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=owDTHgt0tDiBcQU/4hyONJhSHrp1o4sx0bCNAonUC9c=; b=V/eHCUCNhPHMetavigPJTMPqZsrQ5qpSZCg610aYSGA+GwLe/+4Wq9WhxTLgs0f5Fi nUUPjf+BhZ9w4Ot9A/woctaSU6BOli9SBweRmpApNCiYXc6j8ZeKtXsARpu+lMeSDJ+r +02H3be0R5jlbu+f8X7n0T+zx1JHE7gmnb/1RPIKE1idzKPgqjSsvETGbVPghW/mXMmb pUl71Elu3CXj36QrRa7tX/thUyBXwTaqMzVvgDmMWkq37408et8ryn4hQscmf1pixSoM oLktBeOguLo89bRLdVGVBbDkjqJtCy5n2bznF40iCnPQfUc9xi9Dkt/yyZMUNbLskg1n jjww==
X-Gm-Message-State AIkVDXIUflS7nZWqxcdMBRPOC36GBaK0YnzG8rPrJaXKGPRDQzKlsrWMlJaslMrpcaLPlw==
X-Received by 10.84.168.129 with SMTP id f1mr191317552plb.42.1483922880959; Sun, 08 Jan 2017 16:48:00 -0800 (PST)
X-Google-Original-From Chris Lapa
X-Mailer git-send-email 2.1.4
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 122
Organization linux.* mail to news gateway
X-Original-Cc Chris Lapa <chris@lapa.com.au>
X-Original-Date Mon, 9 Jan 2017 11:47:37 +1100
X-Original-Message-ID <1483922865-96321-4-git-send-email-chris@lapa.com.au>
X-Original-References <1482369743-79764-1-git-send-email-chris@lapa.com.au> <1483922865-96321-1-git-send-email-chris@lapa.com.au>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1553987

Show key headers only | View raw


From: Chris Lapa <chris@lapa.com.au>

This commit adds the BQ27500 chip definition to specifically match the
bq27500/1 functionality as described in the datasheet.

tested: no

Signed-off-by: Chris Lapa <chris@lapa.com.au>
---
 drivers/power/supply/bq27xxx_battery.c     | 42 ++++++++++++++++++++++++++++++
 drivers/power/supply/bq27xxx_battery_i2c.c |  2 ++
 include/linux/power/bq27xxx_battery.h      |  1 +
 3 files changed, 45 insertions(+)

diff --git a/drivers/power/supply/bq27xxx_battery.c b/drivers/power/supply/bq27xxx_battery.c
index b94091e..485e1f0 100644
--- a/drivers/power/supply/bq27xxx_battery.c
+++ b/drivers/power/supply/bq27xxx_battery.c
@@ -164,6 +164,25 @@ static u8 bq27xxx_regs[][BQ27XXX_REG_MAX] = {
 		[BQ27XXX_REG_DCAP] = 0x3c,
 		[BQ27XXX_REG_AP] = INVALID_REG_ADDR,
 	},
+	[BQ27500] = {
+		[BQ27XXX_REG_CTRL] = 0x00,
+		[BQ27XXX_REG_TEMP] = 0x06,
+		[BQ27XXX_REG_INT_TEMP] = INVALID_REG_ADDR,
+		[BQ27XXX_REG_VOLT] = 0x08,
+		[BQ27XXX_REG_AI] = 0x14,
+		[BQ27XXX_REG_FLAGS] = 0x0a,
+		[BQ27XXX_REG_TTE] = 0x16,
+		[BQ27XXX_REG_TTF] = 0x18,
+		[BQ27XXX_REG_TTES] = 0x1c,
+		[BQ27XXX_REG_TTECP] = 0x26,
+		[BQ27XXX_REG_NAC] = 0x0c,
+		[BQ27XXX_REG_FCC] = 0x12,
+		[BQ27XXX_REG_CYCT] = 0x2a,
+		[BQ27XXX_REG_AE] = 0x22,
+		[BQ27XXX_REG_SOC] = 0x2c,
+		[BQ27XXX_REG_DCAP] = 0x3c,
+		[BQ27XXX_REG_AP] = 0x24,
+	},
 	[BQ27530] = {
 		[BQ27XXX_REG_CTRL] = 0x00,
 		[BQ27XXX_REG_TEMP] = 0x06,
@@ -302,6 +321,27 @@ static enum power_supply_property bq275xx_battery_props[] = {
 	POWER_SUPPLY_PROP_MANUFACTURER,
 };
 
+static enum power_supply_property bq27500_battery_props[] = {
+	POWER_SUPPLY_PROP_STATUS,
+	POWER_SUPPLY_PROP_PRESENT,
+	POWER_SUPPLY_PROP_VOLTAGE_NOW,
+	POWER_SUPPLY_PROP_CURRENT_NOW,
+	POWER_SUPPLY_PROP_CAPACITY,
+	POWER_SUPPLY_PROP_CAPACITY_LEVEL,
+	POWER_SUPPLY_PROP_TEMP,
+	POWER_SUPPLY_PROP_TIME_TO_EMPTY_NOW,
+	POWER_SUPPLY_PROP_TIME_TO_FULL_NOW,
+	POWER_SUPPLY_PROP_TECHNOLOGY,
+	POWER_SUPPLY_PROP_CHARGE_FULL,
+	POWER_SUPPLY_PROP_CHARGE_NOW,
+	POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN,
+	POWER_SUPPLY_PROP_CYCLE_COUNT,
+	POWER_SUPPLY_PROP_ENERGY_NOW,
+	POWER_SUPPLY_PROP_POWER_AVG,
+	POWER_SUPPLY_PROP_HEALTH,
+	POWER_SUPPLY_PROP_MANUFACTURER,
+};
+
 static enum power_supply_property bq27530_battery_props[] = {
 	POWER_SUPPLY_PROP_STATUS,
 	POWER_SUPPLY_PROP_PRESENT,
@@ -385,6 +425,7 @@ static struct {
 	BQ27XXX_PROP(BQ27000, bq27000_battery_props),
 	BQ27XXX_PROP(BQ27010, bq27010_battery_props),
 	BQ27XXX_PROP(BQ275XX, bq275xx_battery_props),
+	BQ27XXX_PROP(BQ27500, bq27500_battery_props),
 	BQ27XXX_PROP(BQ27530, bq27530_battery_props),
 	BQ27XXX_PROP(BQ27541, bq27541_battery_props),
 	BQ27XXX_PROP(BQ27545, bq27545_battery_props),
@@ -637,6 +678,7 @@ static bool bq27xxx_battery_overtemp(struct bq27xxx_device_info *di, u16 flags)
 {
 	switch (di->chip) {
 	case BQ275XX:
+	case BQ27500:
 	case BQ27541:
 	case BQ27545:
 		return flags & (BQ27XXX_FLAG_OTC | BQ27XXX_FLAG_OTD);
diff --git a/drivers/power/supply/bq27xxx_battery_i2c.c b/drivers/power/supply/bq27xxx_battery_i2c.c
index 762d96e..a01b35d 100644
--- a/drivers/power/supply/bq27xxx_battery_i2c.c
+++ b/drivers/power/supply/bq27xxx_battery_i2c.c
@@ -151,6 +151,7 @@ static const struct i2c_device_id bq27xxx_i2c_id_table[] = {
 	{ "bq27500", BQ275XX },
 	{ "bq27510", BQ275XX },
 	{ "bq27520", BQ275XX },
+	{ "bq27500-1", BQ27500 },
 	{ "bq27530", BQ27530 },
 	{ "bq27531", BQ27530 },
 	{ "bq27541", BQ27541 },
@@ -173,6 +174,7 @@ static const struct of_device_id bq27xxx_battery_i2c_of_match_table[] = {
 	{ .compatible = "ti,bq27500" },
 	{ .compatible = "ti,bq27510" },
 	{ .compatible = "ti,bq27520" },
+	{ .compatible = "ti,bq27500-1" },
 	{ .compatible = "ti,bq27530" },
 	{ .compatible = "ti,bq27531" },
 	{ .compatible = "ti,bq27541" },
diff --git a/include/linux/power/bq27xxx_battery.h b/include/linux/power/bq27xxx_battery.h
index c452b94..7d2a415 100644
--- a/include/linux/power/bq27xxx_battery.h
+++ b/include/linux/power/bq27xxx_battery.h
@@ -5,6 +5,7 @@ enum bq27xxx_chip {
 	BQ27000 = 1, /* bq27000, bq27200 */
 	BQ27010, /* bq27010, bq27210 */
 	BQ275XX, /* bq27500, bq27510, bq27520 deprecated alias */
+	BQ27500, /* bq27500/1 */
 	BQ27530, /* bq27530, bq27531 */
 	BQ27541, /* bq27541, bq27542, bq27546, bq27742 */
 	BQ27545, /* bq27545 */
-- 
2.1.4

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

[PATCH v3 03/11] power: supplies: bq275xx: adds specific support for bq27500/1 revision. Chris Lapa <chris@lapa.com.au> - 2017-01-09 01:50 +0100

csiph-web