On Wed, Mar 09, 2016 at 06:29:17PM -0800, Guenter Roeck wrote:
> On 03/09/2016 01:35 PM, Eduardo Valentin wrote:
> >This changes the driver to use the devm_ version
> >of thermal_zone_of_sensor_register and cleans
> >up the  local points and unregister calls.
> >
> >Cc: Jean Delvare <jdelv...@suse.com>
> >Cc: Guenter Roeck <li...@roeck-us.net>
> >Cc: lm-sens...@lm-sensors.org
> >Cc: linux-kernel@vger.kernel.org
> >Signed-off-by: Eduardo Valentin <edubez...@gmail.com>
> >---
> >  drivers/hwmon/scpi-hwmon.c | 41 ++++++++---------------------------------
> >  1 file changed, 8 insertions(+), 33 deletions(-)
> >
> >diff --git a/drivers/hwmon/scpi-hwmon.c b/drivers/hwmon/scpi-hwmon.c
> >index 7e20567..2309e47 100644
> >--- a/drivers/hwmon/scpi-hwmon.c
> >+++ b/drivers/hwmon/scpi-hwmon.c
> >@@ -31,10 +31,8 @@ struct sensor_data {
> >  };
> >
> >  struct scpi_thermal_zone {
> >-    struct list_head list;
> >     int sensor_id;
> >     struct scpi_sensors *scpi_sensors;
> >-    struct thermal_zone_device *tzd;
> >  };
> >
> >  struct scpi_sensors {
> >@@ -92,20 +90,6 @@ scpi_show_label(struct device *dev, struct 
> >device_attribute *attr, char *buf)
> >     return sprintf(buf, "%s\n", sensor->info.name);
> >  }
> >
> >-static void
> >-unregister_thermal_zones(struct platform_device *pdev,
> >-                     struct scpi_sensors *scpi_sensors)
> >-{
> >-    struct list_head *pos;
> >-
> >-    list_for_each(pos, &scpi_sensors->thermal_zones) {
> >-            struct scpi_thermal_zone *zone;
> >-
> >-            zone = list_entry(pos, struct scpi_thermal_zone, list);
> >-            thermal_zone_of_sensor_unregister(&pdev->dev, zone->tzd);
> >-    }
> >-}
> >-
> >  static struct thermal_zone_of_device_ops scpi_sensor_ops = {
> >     .get_temp = scpi_read_temp,
> >  };
> >@@ -224,6 +208,7 @@ static int scpi_hwmon_probe(struct platform_device *pdev)
> >     INIT_LIST_HEAD(&scpi_sensors->thermal_zones);
> >     for (i = 0; i < nr_sensors; i++) {
> >             struct sensor_data *sensor = &scpi_sensors->data[i];
> >+            struct thermal_zone_device *z;
> >             struct scpi_thermal_zone *zone;
> >
> >             if (sensor->info.class != TEMPERATURE)
> >@@ -232,42 +217,33 @@ static int scpi_hwmon_probe(struct platform_device 
> >*pdev)
> >             zone = devm_kzalloc(dev, sizeof(*zone), GFP_KERNEL);
> >             if (!zone) {
> >                     ret = -ENOMEM;
> >-                    goto unregister_tzd;
> >+                    goto mfail;
> 
>                       return -ENOMEM;
> 
> ... and drop the unnecessary label.

True. I will change as requested.

Thanks

Attachment: signature.asc
Description: Digital signature

Reply via email to