From: Maarten ter Huurne <maarten@treewalker.org>
Date: Sun, 28 Feb 2016 16:05:48 +0000 (+0100)
Subject: jz4740-battery: Correct voltage change check
X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=754645342a35e422782f7a59545448ff9e933739;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git

jz4740-battery: Correct voltage change check

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 <maarten@treewalker.org>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
---

diff --git a/drivers/power/jz4740-battery.c b/drivers/power/jz4740-battery.c
index abdfc21ec13f..88f04f4d1a70 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;
 	}