|
@@ -92,6 +92,7 @@ struct w1_therm_family_converter
|
|
int (*convert)(u8 rom[9]);
|
|
int (*convert)(u8 rom[9]);
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+/* The return value is millidegrees Centigrade. */
|
|
static inline int w1_DS18B20_convert_temp(u8 rom[9]);
|
|
static inline int w1_DS18B20_convert_temp(u8 rom[9]);
|
|
static inline int w1_DS18S20_convert_temp(u8 rom[9]);
|
|
static inline int w1_DS18S20_convert_temp(u8 rom[9]);
|
|
|
|
|
|
@@ -113,7 +114,7 @@ static struct w1_therm_family_converter w1_therm_families[] = {
|
|
static inline int w1_DS18B20_convert_temp(u8 rom[9])
|
|
static inline int w1_DS18B20_convert_temp(u8 rom[9])
|
|
{
|
|
{
|
|
s16 t = (rom[1] << 8) | rom[0];
|
|
s16 t = (rom[1] << 8) | rom[0];
|
|
- t /= 16;
|
|
|
|
|
|
+ t = t*1000/16;
|
|
return t;
|
|
return t;
|
|
}
|
|
}
|
|
|
|
|