mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-16 08:44:21 +08:00
power: supply: ltc2941-battery-gauge: Fix temperature units
Temperature is measured in tenths of degree Celsius.
Fixes: 085bc24d15
("Add LTC2941/LTC2943 Battery Gauge Driver")
Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
This commit is contained in:
parent
7928b2cbe5
commit
dde5953f05
@ -317,15 +317,15 @@ static int ltc294x_get_temperature(const struct ltc294x_info *info, int *val)
|
||||
|
||||
if (info->id == LTC2942_ID) {
|
||||
reg = LTC2942_REG_TEMPERATURE_MSB;
|
||||
value = 60000; /* Full-scale is 600 Kelvin */
|
||||
value = 6000; /* Full-scale is 600 Kelvin */
|
||||
} else {
|
||||
reg = LTC2943_REG_TEMPERATURE_MSB;
|
||||
value = 51000; /* Full-scale is 510 Kelvin */
|
||||
value = 5100; /* Full-scale is 510 Kelvin */
|
||||
}
|
||||
ret = ltc294x_read_regs(info->client, reg, &datar[0], 2);
|
||||
value *= (datar[0] << 8) | datar[1];
|
||||
/* Convert to centidegrees */
|
||||
*val = value / 0xFFFF - 27215;
|
||||
/* Convert to tenths of degree Celsius */
|
||||
*val = value / 0xFFFF - 2722;
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user