thermal: core: Add upper and lower limits to power_actor_set_power
authorMichael Kao <michael.kao@mediatek.com>
Wed, 7 Oct 2020 02:43:32 +0000 (10:43 +0800)
committerDaniel Lezcano <daniel.lezcano@linaro.org>
Mon, 26 Oct 2020 18:46:35 +0000 (19:46 +0100)
The upper and lower limits of thermal throttle state in the
DT do not apply to the Intelligent Power Allocation (IPA) governor.
Add the clamping for cooling device upper and lower limits in the
power_actor_set_power() used by IPA.

Signed-off-by: Michael Kao <michael.kao@mediatek.com>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Tested-by: Lukasz Luba <lukasz.luba@arm.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20201007024332.30322-1-michael.kao@mediatek.com
drivers/thermal/thermal_core.c

index c6d74bc1c90bb8be4ae2ee91e774281d1616c0c8..2ea3633b5d66333395fc0bc4c2a3356e948c91d0 100644 (file)
@@ -672,7 +672,7 @@ int power_actor_set_power(struct thermal_cooling_device *cdev,
        if (ret)
                return ret;
 
-       instance->target = state;
+       instance->target = clamp_val(state, instance->lower, instance->upper);
        mutex_lock(&cdev->lock);
        cdev->updated = false;
        mutex_unlock(&cdev->lock);