Thermal: Fix bug on cpu_cooling, cooling device's id conflict problem.
Jonghwa Lee [Wed, 26 Sep 2012 00:43:31 +0000 (09:43 +0900)]
This patch fixes small bug on cpu_cooling. CPU cooling device has own
id generated with idr mathod. However in the previous version, it swapped
to all same id at last stage of probing as 0. This makes id's collision and
also occures error when it releases that id.

bug 1059470

Change-Id: I6e3ccbf7d7350cb0ebd71946445aee793992470c
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Reviewed-on: http://git-master/r/160237
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Joshua Primero <jprimero@nvidia.com>
Tested-by: Joshua Primero <jprimero@nvidia.com>
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>

drivers/thermal/cpu_cooling.c

index 99a5d75..9050c1b 100644 (file)
@@ -351,7 +351,7 @@ struct thermal_cooling_device *cpufreq_cooling_register(
        struct cpufreq_cooling_device *cpufreq_dev = NULL;
        unsigned int cpufreq_dev_count = 0, min = 0, max = 0;
        char dev_name[THERMAL_NAME_LENGTH];
-       int ret = 0, id = 0, i;
+       int ret = 0, i;
        struct cpufreq_policy policy;
 
        list_for_each_entry(cpufreq_dev, &cooling_cpufreq_list, node)
@@ -396,7 +396,6 @@ struct thermal_cooling_device *cpufreq_cooling_register(
                kfree(cpufreq_dev);
                return ERR_PTR(-EINVAL);
        }
-       cpufreq_dev->id = id;
        cpufreq_dev->cool_dev = cool_dev;
        cpufreq_dev->cpufreq_state = 0;
        mutex_lock(&cooling_cpufreq_lock);