Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

thermal: bang-bang governor: act on lower trip boundary

With interrupt driven thermal zones we pass the lower and upper
temperature on which shall be acted, so in the governor we have to act on
the exact lower temperature to be consistent. Otherwise an interrupt maybe
generated on the exact lower temperature, but the bang bang governor does
not react since The polling driven zones have to be one step cooler before
the governor reacts.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Eduardo Valentin <edubezval@gmail.com>
Cc: linux-pm@vger.kernel.org
Acked-by: Peter Feuerer <peter@piie.net>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>

authored by

Sascha Hauer and committed by
Zhang Rui
897e7210 e78eaf45

+1 -1
+1 -1
drivers/thermal/gov_bang_bang.c
··· 65 65 if (instance->target == 0 && tz->temperature >= trip_temp) 66 66 instance->target = 1; 67 67 else if (instance->target == 1 && 68 - tz->temperature < trip_temp - trip_hyst) 68 + tz->temperature <= trip_temp - trip_hyst) 69 69 instance->target = 0; 70 70 71 71 dev_dbg(&instance->cdev->device, "target=%d\n",