The asus-wmi driver doesn't implement the thermal device functionality directly, so including <linux/thermal.h> just for DECI_KELVIN_TO_CELSIUS() is a bit odd. This switches the asus-wmi driver to use deci_kelvin_to_millicelsius() in <linux/units.h>. The format string is changed from %d to %ld due to function returned type. Cc: Sujith Thomas <sujith.thomas@xxxxxxxxx> Cc: Darren Hart <dvhart@xxxxxxxxxxxxx> Cc: Andy Shevchenko <andy@xxxxxxxxxxxxx> Cc: Zhang Rui <rui.zhang@xxxxxxxxx> Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx> Cc: Amit Kucheria <amit.kucheria@xxxxxxxxxxxxx> Cc: Jean Delvare <jdelvare@xxxxxxxx> Cc: Guenter Roeck <linux@xxxxxxxxxxxx> Cc: Keith Busch <kbusch@xxxxxxxxxx> Cc: Jens Axboe <axboe@xxxxxx> Cc: Christoph Hellwig <hch@xxxxxx> Cc: Sagi Grimberg <sagi@xxxxxxxxxxx> Acked-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx> Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx> --- * v4 - change include order drivers/platform/x86/asus-wmi.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c index 821b08e..b254f9f 100644 --- a/drivers/platform/x86/asus-wmi.c +++ b/drivers/platform/x86/asus-wmi.c @@ -33,9 +33,9 @@ #include <linux/seq_file.h> #include <linux/platform_data/x86/asus-wmi.h> #include <linux/platform_device.h> -#include <linux/thermal.h> #include <linux/acpi.h> #include <linux/dmi.h> +#include <linux/units.h> #include <acpi/battery.h> #include <acpi/video.h> @@ -1512,9 +1512,8 @@ static ssize_t asus_hwmon_temp1(struct device *dev, if (err < 0) return err; - value = DECI_KELVIN_TO_CELSIUS((value & 0xFFFF)) * 1000; - - return sprintf(buf, "%d\n", value); + return sprintf(buf, "%ld\n", + deci_kelvin_to_millicelsius(value & 0xFFFF)); } /* Fan1 */ -- 2.7.4