diff --git a/driver/battery/max17055.c b/driver/battery/max17055.c index f5c3e52400..c676ce22a5 100644 --- a/driver/battery/max17055.c +++ b/driver/battery/max17055.c @@ -237,7 +237,7 @@ void battery_get_params(struct batt_params *batt) if (max17055_read(REG_TEMPERATURE, ®)) batt->flags |= BATT_FLAG_BAD_TEMPERATURE; - batt->temperature = TEMPERATURE_CONV(reg); + batt->temperature = TEMPERATURE_CONV((int16_t)reg); if (max17055_read(REG_STATE_OF_CHARGE, ®) && fake_state_of_charge < 0) @@ -254,7 +254,7 @@ void battery_get_params(struct batt_params *batt) if (max17055_read(REG_AVERAGE_CURRENT, ®)) batt->flags |= BATT_FLAG_BAD_CURRENT; - batt->current = CURRENT_CONV(reg); + batt->current = CURRENT_CONV((int16_t)reg); /* Default to not desiring voltage and current */ batt->desired_voltage = batt->desired_current = 0;