hwmon: (lm70) Add a name attribute
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@linux-fr.org> Acked-by: Hans de Goede <j.w.r.degoede@hhs.nl> Acked-by: Kaiwan <kaiwan@designergraphix.com> Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
This commit is contained in:
parent
471c606827
commit
67f921d164
|
@ -81,7 +81,7 @@ static ssize_t lm70_sense_temp(struct device *dev,
|
||||||
* So it's equivalent to multiplying by 0.25 * 1000 = 250.
|
* So it's equivalent to multiplying by 0.25 * 1000 = 250.
|
||||||
*/
|
*/
|
||||||
val = ((int)raw/32) * 250;
|
val = ((int)raw/32) * 250;
|
||||||
status = sprintf(buf, "%+d\n", val); /* millidegrees Celsius */
|
status = sprintf(buf, "%d\n", val); /* millidegrees Celsius */
|
||||||
out:
|
out:
|
||||||
up(&p_lm70->sem);
|
up(&p_lm70->sem);
|
||||||
return status;
|
return status;
|
||||||
|
@ -89,6 +89,14 @@ out:
|
||||||
|
|
||||||
static DEVICE_ATTR(temp1_input, S_IRUGO, lm70_sense_temp, NULL);
|
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)
|
static int __devinit lm70_probe(struct spi_device *spi)
|
||||||
|
@ -115,7 +123,8 @@ static int __devinit lm70_probe(struct spi_device *spi)
|
||||||
}
|
}
|
||||||
dev_set_drvdata(&spi->dev, p_lm70);
|
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");
|
dev_dbg(&spi->dev, "device_create_file failure.\n");
|
||||||
goto out_dev_create_file_failed;
|
goto out_dev_create_file_failed;
|
||||||
}
|
}
|
||||||
|
@ -123,6 +132,7 @@ static int __devinit lm70_probe(struct spi_device *spi)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
out_dev_create_file_failed:
|
out_dev_create_file_failed:
|
||||||
|
device_remove_file(&spi->dev, &dev_attr_temp1_input);
|
||||||
hwmon_device_unregister(p_lm70->cdev);
|
hwmon_device_unregister(p_lm70->cdev);
|
||||||
out_dev_reg_failed:
|
out_dev_reg_failed:
|
||||||
dev_set_drvdata(&spi->dev, NULL);
|
dev_set_drvdata(&spi->dev, NULL);
|
||||||
|
@ -135,6 +145,7 @@ static int __devexit lm70_remove(struct spi_device *spi)
|
||||||
struct lm70 *p_lm70 = dev_get_drvdata(&spi->dev);
|
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_temp1_input);
|
||||||
|
device_remove_file(&spi->dev, &dev_attr_name);
|
||||||
hwmon_device_unregister(p_lm70->cdev);
|
hwmon_device_unregister(p_lm70->cdev);
|
||||||
dev_set_drvdata(&spi->dev, NULL);
|
dev_set_drvdata(&spi->dev, NULL);
|
||||||
kfree(p_lm70);
|
kfree(p_lm70);
|
||||||
|
|
Reference in New Issue