Thermal: core: Ask .get_trip_temp() to register thermal zone device.
authorJonghwa Lee <jonghwa3.lee@samsung.com>
Sat, 18 May 2013 09:50:26 +0000 (09:50 +0000)
committerChanho Park <chanho61.park@samsung.com>
Tue, 18 Nov 2014 02:45:08 +0000 (11:45 +0900)
This patch adds a requirement needing .get_trip_temp() callback
function for registering thermal zone device. This function is
used when thermal zone is updated and essential where thermal core
handles thermal trip based only polling way not hw interrupt.

Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Acked-by: Durgadoss R <durgadoss.r@intel.com>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
drivers/thermal/thermal_core.c

index 4ab8f38..cd9faa8 100644 (file)
@@ -1683,7 +1683,7 @@ struct thermal_zone_device *thermal_zone_device_register(const char *type,
        if (!ops || !ops->get_temp)
                return ERR_PTR(-EINVAL);
 
-       if (trips > 0 && !ops->get_trip_type)
+       if (trips > 0 && (!ops->get_trip_type || !ops->get_trip_temp))
                return ERR_PTR(-EINVAL);
 
        tz = kzalloc(sizeof(struct thermal_zone_device), GFP_KERNEL);