ret = uclass_get_device(UCLASS_THERMAL, 0, &thermal_dev);
if (!ret) {
ret = thermal_get_temp(thermal_dev, &cpu_tmp);
+ cpu_tmp /= 1000;
if (!ret)
printf(" at %dC", cpu_tmp);
if (!ret) {
ret = thermal_get_temp(udev, &temp);
if (!ret)
- printf("CPU current temperature: %dC\n", temp);
+ printf("CPU current temperature: %dC\n", temp / 1000);
else
debug(" - failed to get CPU current temperature\n");
} else {
if (ret)
return CMD_RET_FAILURE;
- printf("%s: %d C\n", dev->name, temp);
+ printf("%s: %d mC\n", dev->name, temp);
return CMD_RET_SUCCESS;
}
return 0xdeadbeef;
}
- return cpu_tmp;
+ return cpu_tmp / 1000;
}
#else
static int cpu_imx_get_temp(struct cpu_imx_plat *plat)
printf("Couldn't get temperature for tuning\n");
return ret;
}
+ temperature /= 1000;
val = readl(&mmc_base->dll);
val |= DLL_SWT;
writel(val, &mmc_base->dll);
break;
}
- *temp = cpu_temp / 1000;
+ *temp = cpu_temp;
return 0;
}
cpu_tmp = read_cpu_temperature(dev);
}
- *temp = cpu_tmp;
+ *temp = cpu_tmp * 1000;
return 0;
}
return ret;
}
- *temp = cpu_tmp / 1000;
+ *temp = cpu_tmp;
return 0;
}
const struct equation_set_coef *coef;
int adj, decicelsius, reg, thcode;
- /* Read register and convert to degree Celsius */
+ /* Read register and convert to millidegree Celsius */
reg = rcar_gen3_thermal_read(tsc, REG_GEN3_TEMP) & CTEMP_MASK;
if (reg < tsc->thcode[1]) {
/* Guaranteed operating range is -40C to 125C. */
- /* Reporting is done in degree Celsius */
- *temp = (decicelsius * 100 + adj * 1000) / 1000;
+ /* Reporting is done in millidegree Celsius */
+ *temp = decicelsius * 100 + adj * 1000;
return 0;
}
static int sandbox_thermal_get_temp(struct udevice *dev, int *temp)
{
/* Simply return 100 deg C */
- *temp = 100;
+ *temp = 100 * 1000;
return 0;
}
struct ti_bandgap *bgp = dev_get_priv(dev);
bgp->adc_val = 0x3ff & readl(bgp->base + CTRL_CORE_TEMP_SENSOR_MPU);
- *temp = dra752_adc_to_temp[bgp->adc_val - DRA752_ADC_START_VALUE];
+ *temp = dra752_adc_to_temp[bgp->adc_val - DRA752_ADC_START_VALUE] * 1000;
return 0;
}
raw = ((buf[0] << 8) + buf[1]) >> 3;
- *temp = (((int)raw * 125) + 1000) / 2000;
+ *temp = (((int)raw * 125) + 1000) / 2;
return 0;
}
* It will enable and initialize any Thermal hardware as necessary.
*
* @dev: The Thermal device
- * @temp: pointer that returns the measured temperature
+ * @temp: pointer that returns the measured temperature in millidegree Celsius
*/
int (*get_temp)(struct udevice *dev, int *temp);
};
/* Test that "temperature get thermal" returns expected value */
console_record_reset();
ut_assertok(run_command("temperature get thermal", 0));
- ut_assert_nextline("thermal: 100 C");
+ ut_assert_nextline("thermal: 100000 mC");
ut_assert_console_end();
return 0;