If we're well below the target temperature, increase gpu engine speed back to maximum in case we have gotten lost between profiles during an idle period.
diff --git a/adl.c b/adl.c
index 114ed3e..daf3980 100644
--- a/adl.c
+++ b/adl.c
@@ -1079,6 +1079,8 @@ void gpu_autotune(int gpu, enum dev_enable *denable)
/* Only try to tune engine speed up if this GPU is not disabled */
} else if (temp < ga->targettemp && engine < ga->maxspeed && *denable == DEV_ENABLED) {
applog(LOG_DEBUG, "Temperature below target, increasing clock speed");
+ if (temp < ga->targettemp - opt_hysteresis)
+ newengine = ga->maxspeed;
newengine = engine + ga->lpOdParameters.sEngineClock.iStep;
} else if (temp < ga->targettemp && *denable == DEV_RECOVER && opt_restart) {
applog(LOG_NOTICE, "Device recovered to temperature below target, re-enabling");