Merge tag 'renesas-boards-cleanups2-for-v3.19' of git://git.kernel.org/pub/scm/linux...
[firefly-linux-kernel-4.4.55.git] / drivers / thermal / of-thermal.c
index 4b2b999b7611cb04390dfa1c6c3b5ac208d26069..f8eb625b8400334de00ff42903d60321f6ebeba5 100644 (file)
@@ -401,6 +401,10 @@ thermal_zone_of_sensor_register(struct device *dev, int sensor_id,
                struct of_phandle_args sensor_specs;
                int ret, id;
 
+               /* Check whether child is enabled or not */
+               if (!of_device_is_available(child))
+                       continue;
+
                /* For now, thermal framework supports only 1 sensor per zone */
                ret = of_parse_phandle_with_args(child, "thermal-sensors",
                                                 "#thermal-sensor-cells",
@@ -771,6 +775,10 @@ int __init of_parse_thermal_zones(void)
                struct thermal_zone_device *zone;
                struct thermal_zone_params *tzp;
 
+               /* Check whether child is enabled or not */
+               if (!of_device_is_available(child))
+                       continue;
+
                tz = thermal_of_build_thermal_zone(child);
                if (IS_ERR(tz)) {
                        pr_err("failed to build thermal zone %s: %ld\n",
@@ -838,6 +846,10 @@ void of_thermal_destroy_zones(void)
        for_each_child_of_node(np, child) {
                struct thermal_zone_device *zone;
 
+               /* Check whether child is enabled or not */
+               if (!of_device_is_available(child))
+                       continue;
+
                zone = thermal_zone_get_zone_by_name(child->name);
                if (IS_ERR(zone))
                        continue;