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>
}
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;
}