thermal/core: Use clamp() helper in the stepwise governor
[linux-2.6-microblaze.git] / drivers / thermal / gov_step_wise.c
index 12acb12..6efbfaf 100644 (file)
@@ -11,6 +11,7 @@
  */
 
 #include <linux/thermal.h>
+#include <linux/minmax.h>
 #include <trace/events/thermal.h>
 
 #include "thermal_core.h"
@@ -52,10 +53,7 @@ static unsigned long get_target_state(struct thermal_instance *instance,
 
        if (!instance->initialized) {
                if (throttle) {
-                       next_target = (cur_state + 1) >= instance->upper ?
-                                       instance->upper :
-                                       ((cur_state + 1) < instance->lower ?
-                                       instance->lower : (cur_state + 1));
+                       next_target = clamp((cur_state + 1), instance->lower, instance->upper);
                } else {
                        next_target = THERMAL_NO_TARGET;
                }
@@ -66,10 +64,7 @@ static unsigned long get_target_state(struct thermal_instance *instance,
        switch (trend) {
        case THERMAL_TREND_RAISING:
                if (throttle) {
-                       next_target = cur_state < instance->upper ?
-                                   (cur_state + 1) : instance->upper;
-                       if (next_target < instance->lower)
-                               next_target = instance->lower;
+                       next_target = clamp((cur_state + 1), instance->lower, instance->upper);
                }
                break;
        case THERMAL_TREND_RAISE_FULL:
@@ -82,9 +77,7 @@ static unsigned long get_target_state(struct thermal_instance *instance,
                                next_target = THERMAL_NO_TARGET;
                } else {
                        if (!throttle) {
-                               next_target = cur_state - 1;
-                               if (next_target > instance->upper)
-                                       next_target = instance->upper;
+                               next_target = clamp((cur_state - 1), instance->lower, instance->upper);
                        }
                }
                break;