From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758356AbcB1QGT (ORCPT ); Sun, 28 Feb 2016 11:06:19 -0500 Received: from relay5-d.mail.gandi.net ([217.70.183.197]:39902 "EHLO relay5-d.mail.gandi.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758035AbcB1QGS (ORCPT ); Sun, 28 Feb 2016 11:06:18 -0500 X-Greylist: delayed 2613 seconds by postgrey-1.27 at vger.kernel.org; Sun, 28 Feb 2016 11:06:18 EST X-Originating-IP: 88.159.34.112 From: Maarten ter Huurne To: Lars-Peter Clausen Cc: Sebastian Reichel , Dmitry Eremin-Solenikov , David Woodhouse , linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Maarten ter Huurne Subject: [PATCH] jz4740-battery: Correct voltage change check Date: Sun, 28 Feb 2016 17:05:48 +0100 Message-Id: <1456675548-16692-1-git-send-email-maarten@treewalker.org> X-Mailer: git-send-email 2.6.2 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The check is supposed to avoid redundant update notifications, so it should check for the difference between old and new voltage exceeding a threshold. Also make sure the result of a failed read is never stored. Signed-off-by: Maarten ter Huurne --- drivers/power/jz4740-battery.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/power/jz4740-battery.c b/drivers/power/jz4740-battery.c index abdfc21..88f04f4 100644 --- a/drivers/power/jz4740-battery.c +++ b/drivers/power/jz4740-battery.c @@ -208,7 +208,7 @@ static void jz_battery_update(struct jz_battery *jz_battery) } voltage = jz_battery_read_voltage(jz_battery); - if (abs(voltage - jz_battery->voltage) < 50000) { + if (voltage >= 0 && abs(voltage - jz_battery->voltage) > 50000) { jz_battery->voltage = voltage; has_changed = true; } -- 2.6.2