Loading drivers/hwmon/ad7314.c +7 −41 Original line number Diff line number Diff line Loading @@ -37,7 +37,6 @@ enum ad7314_variant { struct ad7314_data { struct spi_device *spi_dev; struct device *hwmon_dev; u16 rx ____cacheline_aligned; }; Loading Loading @@ -88,62 +87,30 @@ static ssize_t ad7314_show_temperature(struct device *dev, } } static ssize_t ad7314_show_name(struct device *dev, struct device_attribute *devattr, char *buf) { return sprintf(buf, "%s\n", to_spi_device(dev)->modalias); } static DEVICE_ATTR(name, S_IRUGO, ad7314_show_name, NULL); static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, ad7314_show_temperature, NULL, 0); static struct attribute *ad7314_attributes[] = { &dev_attr_name.attr, static struct attribute *ad7314_attrs[] = { &sensor_dev_attr_temp1_input.dev_attr.attr, NULL, }; static const struct attribute_group ad7314_group = { .attrs = ad7314_attributes, }; ATTRIBUTE_GROUPS(ad7314); static int ad7314_probe(struct spi_device *spi_dev) { int ret; struct ad7314_data *chip; struct device *hwmon_dev; chip = devm_kzalloc(&spi_dev->dev, sizeof(*chip), GFP_KERNEL); if (chip == NULL) return -ENOMEM; spi_set_drvdata(spi_dev, chip); ret = sysfs_create_group(&spi_dev->dev.kobj, &ad7314_group); if (ret < 0) return ret; chip->hwmon_dev = hwmon_device_register(&spi_dev->dev); if (IS_ERR(chip->hwmon_dev)) { ret = PTR_ERR(chip->hwmon_dev); goto error_remove_group; } chip->spi_dev = spi_dev; return 0; error_remove_group: sysfs_remove_group(&spi_dev->dev.kobj, &ad7314_group); return ret; } static int ad7314_remove(struct spi_device *spi_dev) { struct ad7314_data *chip = spi_get_drvdata(spi_dev); hwmon_device_unregister(chip->hwmon_dev); sysfs_remove_group(&spi_dev->dev.kobj, &ad7314_group); return 0; hwmon_dev = devm_hwmon_device_register_with_groups(&spi_dev->dev, spi_dev->modalias, chip, ad7314_groups); return PTR_ERR_OR_ZERO(hwmon_dev); } static const struct spi_device_id ad7314_id[] = { Loading @@ -159,7 +126,6 @@ static struct spi_driver ad7314_driver = { .name = "ad7314", }, .probe = ad7314_probe, .remove = ad7314_remove, .id_table = ad7314_id, }; Loading Loading
drivers/hwmon/ad7314.c +7 −41 Original line number Diff line number Diff line Loading @@ -37,7 +37,6 @@ enum ad7314_variant { struct ad7314_data { struct spi_device *spi_dev; struct device *hwmon_dev; u16 rx ____cacheline_aligned; }; Loading Loading @@ -88,62 +87,30 @@ static ssize_t ad7314_show_temperature(struct device *dev, } } static ssize_t ad7314_show_name(struct device *dev, struct device_attribute *devattr, char *buf) { return sprintf(buf, "%s\n", to_spi_device(dev)->modalias); } static DEVICE_ATTR(name, S_IRUGO, ad7314_show_name, NULL); static SENSOR_DEVICE_ATTR(temp1_input, S_IRUGO, ad7314_show_temperature, NULL, 0); static struct attribute *ad7314_attributes[] = { &dev_attr_name.attr, static struct attribute *ad7314_attrs[] = { &sensor_dev_attr_temp1_input.dev_attr.attr, NULL, }; static const struct attribute_group ad7314_group = { .attrs = ad7314_attributes, }; ATTRIBUTE_GROUPS(ad7314); static int ad7314_probe(struct spi_device *spi_dev) { int ret; struct ad7314_data *chip; struct device *hwmon_dev; chip = devm_kzalloc(&spi_dev->dev, sizeof(*chip), GFP_KERNEL); if (chip == NULL) return -ENOMEM; spi_set_drvdata(spi_dev, chip); ret = sysfs_create_group(&spi_dev->dev.kobj, &ad7314_group); if (ret < 0) return ret; chip->hwmon_dev = hwmon_device_register(&spi_dev->dev); if (IS_ERR(chip->hwmon_dev)) { ret = PTR_ERR(chip->hwmon_dev); goto error_remove_group; } chip->spi_dev = spi_dev; return 0; error_remove_group: sysfs_remove_group(&spi_dev->dev.kobj, &ad7314_group); return ret; } static int ad7314_remove(struct spi_device *spi_dev) { struct ad7314_data *chip = spi_get_drvdata(spi_dev); hwmon_device_unregister(chip->hwmon_dev); sysfs_remove_group(&spi_dev->dev.kobj, &ad7314_group); return 0; hwmon_dev = devm_hwmon_device_register_with_groups(&spi_dev->dev, spi_dev->modalias, chip, ad7314_groups); return PTR_ERR_OR_ZERO(hwmon_dev); } static const struct spi_device_id ad7314_id[] = { Loading @@ -159,7 +126,6 @@ static struct spi_driver ad7314_driver = { .name = "ad7314", }, .probe = ad7314_probe, .remove = ad7314_remove, .id_table = ad7314_id, }; Loading