From patchwork Mon Jan 21 12:03:42 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lee Jones X-Patchwork-Id: 2011541 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) by patchwork2.kernel.org (Postfix) with ESMTP id 15DDCDF23A for ; Mon, 21 Jan 2013 12:08:45 +0000 (UTC) Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1TxG8j-0006ia-EU; Mon, 21 Jan 2013 12:06:13 +0000 Received: from mail-wg0-f44.google.com ([74.125.82.44]) by merlin.infradead.org with esmtps (Exim 4.76 #1 (Red Hat Linux)) id 1TxG86-0006Z2-RK for linux-arm-kernel@lists.infradead.org; Mon, 21 Jan 2013 12:05:39 +0000 Received: by mail-wg0-f44.google.com with SMTP id dr12so3707219wgb.35 for ; Mon, 21 Jan 2013 04:04:28 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:from:to:cc:subject:date:message-id:x-mailer:in-reply-to :references:x-gm-message-state; bh=30/s3y0miBarKDatIdzBWcslc2C7eocF053OlxMKyhc=; b=drkUtsUYtBH4lIDj4q+moJ4AgYTuZDEuM7Ybeb4XDYdLfyljN0AK4hmbahxWRkduQe kOKQq2owMCR0WoQ2hvd8olzawfig+kDTi+K+RPysp6QLxdNnuL1q5SYqYrshuaLXb6w6 JBAmWmg6BBR2Qb6IPRve1o9Byl596skCJYZ/BsFHoRDgdrNrA5gw4u0IyB7yrANyMaJS xQsuk1mvTNn/burTfnFGrZtwwQ0XpuPQYeUjwwk+6Yz4EO6NGU+AXRk5cztDOg5bcFAz L5sLt5ufg3JTfNTTlp6aBnWpc6eCKqniDWQ7lV8wdm//d1DcZrk3lJr5ohwpFoQzmGuL YANw== X-Received: by 10.194.235.100 with SMTP id ul4mr26051226wjc.7.1358769868402; Mon, 21 Jan 2013 04:04:28 -0800 (PST) Received: from localhost.localdomain (cpc34-aztw25-2-0-cust250.18-1.cable.virginmedia.com. [86.16.136.251]) by mx.google.com with ESMTPS id i2sm16575305wiw.3.2013.01.21.04.04.26 (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 21 Jan 2013 04:04:27 -0800 (PST) From: Lee Jones To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 06/24] ab8500-chargalg: Update battery health on safety timer exp Date: Mon, 21 Jan 2013 12:03:42 +0000 Message-Id: <1358769840-4763-7-git-send-email-lee.jones@linaro.org> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1358769840-4763-1-git-send-email-lee.jones@linaro.org> References: <1358769840-4763-1-git-send-email-lee.jones@linaro.org> X-Gm-Message-State: ALoCoQkk2iUaOhXadXwTly396qbsXmrAsl/olEAtfTdYdJ05+56oKJQGXFX0zJXUcE8rAe95VVJ2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20130121_070535_000017_985ACD7A X-CRM114-Status: GOOD ( 12.68 ) X-Spam-Score: -2.6 (--) X-Spam-Report: SpamAssassin version 3.3.2 on merlin.infradead.org summary: Content analysis details: (-2.6 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [74.125.82.44 listed in list.dnswl.org] -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] Cc: anton.vorontsov@linaro.org, Lee Jones , linus.walleij@stericsson.com, arnd@arndb.de, cbou@mail.ru X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: linux-arm-kernel-bounces@lists.infradead.org Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org When the charging safety timer elapses, the battery health is shown as "Good". This is misleading and also makes it difficult to distinguish issues relating to discharging despite the fact that the charger is still connected. When in actual fact a safety timer elapse is an indication of a fault in the battery. Here we make this clearer by reporting POWER_SUPPLY_HEALTH_UNSPEC_FAILURE instead. Signed-off-by: Lee Jones --- drivers/power/abx500_chargalg.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/power/abx500_chargalg.c b/drivers/power/abx500_chargalg.c index 830b2dd..2463fa0 100644 --- a/drivers/power/abx500_chargalg.c +++ b/drivers/power/abx500_chargalg.c @@ -1628,6 +1628,9 @@ static int abx500_chargalg_get_property(struct power_supply *psy, val->intval = POWER_SUPPLY_HEALTH_COLD; else val->intval = POWER_SUPPLY_HEALTH_OVERHEAT; + } else if (di->charge_state == STATE_SAFETY_TIMER_EXPIRED || + di->charge_state == STATE_SAFETY_TIMER_EXPIRED_INIT) { + val->intval = POWER_SUPPLY_HEALTH_UNSPEC_FAILURE; } else { val->intval = POWER_SUPPLY_HEALTH_GOOD; }