Increase hfa fanspeed by more if we're rising in temp above the target than if the temp is staying the same.
diff --git a/driver-hashfast.c b/driver-hashfast.c
index f4d0fa0..2e10331 100644
--- a/driver-hashfast.c
+++ b/driver-hashfast.c
@@ -1164,8 +1164,12 @@ static void hfa_temp_clock(struct cgpu_info *hashfast, struct hashfast_info *inf
(throttled && info->max_temp >= opt_hfa_target - HFA_TEMP_HYSTERESIS)) {
/* We should be trying to decrease temperature, if it's not on
* its way down. */
- if (temp_change >= 0 && info->fanspeed < opt_hfa_fan_max)
- hfa_set_fanspeed(hashfast, info, 5);
+ if (info->fanspeed < opt_hfa_fan_max) {
+ if (!temp_change)
+ hfa_set_fanspeed(hashfast, info, 5);
+ else if (temp_change > 0)
+ hfa_set_fanspeed(hashfast, info, 10);
+ }
} else if (info->max_temp >= opt_hfa_target - HFA_TEMP_HYSTERESIS) {
/* In optimal range, try and maintain the same temp */
if (temp_change > 0) {