Commit ff54bbd1 authored by Wei Wang's avatar Wei Wang Committed by Zhang Rui
Browse files

thermal: core: skip update disabled thermal zones after suspend



It is unnecessary to update disabled thermal zones post suspend and
sometimes leads error/warning in bad behaved thermal drivers.

Signed-off-by: default avatarWei Wang <wvw@google.com>
Signed-off-by: default avatarZhang Rui <rui.zhang@intel.com>
parent f991de53
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -1494,6 +1494,7 @@ static int thermal_pm_notify(struct notifier_block *nb,
			     unsigned long mode, void *_unused)
{
	struct thermal_zone_device *tz;
	enum thermal_device_mode tz_mode;

	switch (mode) {
	case PM_HIBERNATION_PREPARE:
@@ -1506,6 +1507,13 @@ static int thermal_pm_notify(struct notifier_block *nb,
	case PM_POST_SUSPEND:
		atomic_set(&in_suspend, 0);
		list_for_each_entry(tz, &thermal_tz_list, node) {
			tz_mode = THERMAL_DEVICE_ENABLED;
			if (tz->ops->get_mode)
				tz->ops->get_mode(tz, &tz_mode);

			if (tz_mode == THERMAL_DEVICE_DISABLED)
				continue;

			thermal_zone_device_init(tz);
			thermal_zone_device_update(tz,
						   THERMAL_EVENT_UNSPECIFIED);