[PATCH] hwmon/lm70: Add a name attribute

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

 



Jean Delvare wrote:
> Add a name attribute to the lm70 devices. This is required for
> libsensors to recognize them.
> 
> Also drop the "+" before the temperature value, even though it did
> not cause problems to libsensors, other hardware monitoring drivers
> don't print it, so it's more consistent that way.
> 
> Signed-off-by: Jean Delvare <khali at linux-fr.org>

Looks good to me.

Acked-by: Hans de Goede <j.w.r.degoede at hhs.nl>

> ---
>  drivers/hwmon/lm70.c |   15 +++++++++++++--
>  1 file changed, 13 insertions(+), 2 deletions(-)
> 
> --- linux-2.6.23-rc3.orig/drivers/hwmon/lm70.c	2007-07-23 16:44:35.000000000 +0200
> +++ linux-2.6.23-rc3/drivers/hwmon/lm70.c	2007-08-17 16:16:40.000000000 +0200
> @@ -81,7 +81,7 @@ static ssize_t lm70_sense_temp(struct de
>  	 * So it's equivalent to multiplying by 0.25 * 1000 = 250.
>  	 */
>  	val = ((int)raw/32) * 250;
> -	status = sprintf(buf, "%+d\n", val); /* millidegrees Celsius */
> +	status = sprintf(buf, "%d\n", val); /* millidegrees Celsius */
>  out:
>  	up(&p_lm70->sem);
>  	return status;
> @@ -89,6 +89,14 @@ out:
>  
>  static DEVICE_ATTR(temp1_input, S_IRUGO, lm70_sense_temp, NULL);
>  
> +static ssize_t lm70_show_name(struct device *dev, struct device_attribute
> +			      *devattr, char *buf)
> +{
> +	return sprintf(buf, "lm70\n");
> +}
> +
> +static DEVICE_ATTR(name, S_IRUGO, lm70_show_name, NULL);
> +
>  /*----------------------------------------------------------------------*/
>  
>  static int __devinit lm70_probe(struct spi_device *spi)
> @@ -115,7 +123,8 @@ static int __devinit lm70_probe(struct s
>  	}
>  	dev_set_drvdata(&spi->dev, p_lm70);
>  
> -	if ((status = device_create_file(&spi->dev, &dev_attr_temp1_input))) {
> +	if ((status = device_create_file(&spi->dev, &dev_attr_temp1_input))
> +	 || (status = device_create_file(&spi->dev, &dev_attr_name))) {
>  		dev_dbg(&spi->dev, "device_create_file failure.\n");
>  		goto out_dev_create_file_failed;
>  	}
> @@ -123,6 +132,7 @@ static int __devinit lm70_probe(struct s
>  	return 0;
>  
>  out_dev_create_file_failed:
> +	device_remove_file(&spi->dev, &dev_attr_temp1_input);
>  	hwmon_device_unregister(p_lm70->cdev);
>  out_dev_reg_failed:
>  	dev_set_drvdata(&spi->dev, NULL);
> @@ -135,6 +145,7 @@ static int __devexit lm70_remove(struct 
>  	struct lm70 *p_lm70 = dev_get_drvdata(&spi->dev);
>  
>  	device_remove_file(&spi->dev, &dev_attr_temp1_input);
> +	device_remove_file(&spi->dev, &dev_attr_name);
>  	hwmon_device_unregister(p_lm70->cdev);
>  	dev_set_drvdata(&spi->dev, NULL);
>  	kfree(p_lm70);
> 
> 





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

  Powered by Linux