aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/power/supply/max17042_battery.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/power/supply/max17042_battery.c b/drivers/power/supply/max17042_battery.c
index 790dfa9d0a2e..a51b2965cd5c 100644
--- a/drivers/power/supply/max17042_battery.c
+++ b/drivers/power/supply/max17042_battery.c
@@ -270,14 +270,14 @@ static int max17042_get_property(struct power_supply *psy,
270 if (ret < 0) 270 if (ret < 0)
271 return ret; 271 return ret;
272 /* LSB is Alert Minimum. In deci-centigrade */ 272 /* LSB is Alert Minimum. In deci-centigrade */
273 val->intval = (data & 0xff) * 10; 273 val->intval = sign_extend32(data & 0xff, 7) * 10;
274 break; 274 break;
275 case POWER_SUPPLY_PROP_TEMP_ALERT_MAX: 275 case POWER_SUPPLY_PROP_TEMP_ALERT_MAX:
276 ret = regmap_read(map, MAX17042_TALRT_Th, &data); 276 ret = regmap_read(map, MAX17042_TALRT_Th, &data);
277 if (ret < 0) 277 if (ret < 0)
278 return ret; 278 return ret;
279 /* MSB is Alert Maximum. In deci-centigrade */ 279 /* MSB is Alert Maximum. In deci-centigrade */
280 val->intval = (data >> 8) * 10; 280 val->intval = sign_extend32(data >> 8, 7) * 10;
281 break; 281 break;
282 case POWER_SUPPLY_PROP_TEMP_MIN: 282 case POWER_SUPPLY_PROP_TEMP_MIN:
283 val->intval = chip->pdata->temp_min; 283 val->intval = chip->pdata->temp_min;