thermal: rcar_thermal: don't call thermal_zone_device_unregister when USE_OF_THERMAL
authorBui Duc Phuc <bd-phuc@jinso.co.jp>
Mon, 22 Aug 2016 03:19:49 +0000 (03:19 +0000)
committerZhang Rui <rui.zhang@intel.com>
Tue, 27 Sep 2016 06:02:16 +0000 (14:02 +0800)
devm_thermal_zone_of_sensor_register() case doesn't need to call
thermal_zone_device_unregister().
Otherwise, rcar-thermal can't register thermal zone again after rebind.
This patch fixes it.

Signed-off-by: Bui Duc Phuc <bd-phuc@jinso.co.jp>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
drivers/thermal/rcar_thermal.c

index 4d07644da64935c7592f1356b8296511e2c95be5..b5c6442d82d62b09024eca874a8ffb6b4065b1aa 100644 (file)
@@ -419,9 +419,10 @@ static int rcar_thermal_remove(struct platform_device *pdev)
 
        rcar_thermal_for_each_priv(priv, common) {
                rcar_thermal_irq_disable(priv);
-               thermal_zone_device_unregister(priv->zone);
                if (rcar_use_of_thermal(dev))
                        thermal_remove_hwmon_sysfs(priv->zone);
+               else
+                       thermal_zone_device_unregister(priv->zone);
        }
 
        pm_runtime_put(dev);