Re: [PATCH] Bugfix for ds620.c (sign error)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Roland,

On Wed, 2011-09-21 at 12:36 -0400, Roland Stigge wrote:
> Bugfix for ds620.c: Signed temperatures were not handled appropriately
> 
> Signed-off-by: Roland Stigge <stigge@xxxxxxxxx>
> 
> 
> diff --git a/drivers/hwmon/ds620.c b/drivers/hwmon/ds620.c
> index 257957c..92e39fa 100644
> --- a/drivers/hwmon/ds620.c
> +++ b/drivers/hwmon/ds620.c
> @@ -72,7 +72,7 @@ struct ds620_data {
>  	char valid;		/* !=0 if following fields are valid */
>  	unsigned long last_updated;	/* In jiffies */
>  
> -	u16 temp[3];		/* Register values, word */
> +	s16 temp[3];		/* Register values, word */
>  };
>  
>  /*
> @@ -169,7 +169,8 @@ static ssize_t show_temp(struct device *dev, struct device_attribute *da,
>  	if (IS_ERR(data))
>  		return PTR_ERR(data);
>  
> -	return sprintf(buf, "%d\n", ((data->temp[attr->index] / 8) * 625) / 10);
> +	return sprintf(buf, "%d\n",
> +			(((int)data->temp[attr->index] / 8) * 625) / 10);

since data->temp is now already signed, you do not need the typecast to
int here (conversion from s16 to int is automatic).

Thanks,
Guenter



_______________________________________________
lm-sensors mailing list
lm-sensors@xxxxxxxxxxxxxx
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors


[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux