drm/i915/selftests: Add helper function measure_power
authorRiana Tauro <riana.tauro@intel.com>
Fri, 23 Sep 2022 11:00:42 +0000 (16:30 +0530)
committerAnshuman Gupta <anshuman.gupta@intel.com>
Thu, 29 Sep 2022 07:02:07 +0000 (12:32 +0530)
move the power measurement and the triangle filter
to a different function. No functional changes.

Signed-off-by: Riana Tauro <riana.tauro@intel.com>
Reviewed-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220923110043.789178-3-riana.tauro@intel.com
drivers/gpu/drm/i915/gt/selftest_rps.c

index cfb4708dd62e6451aa811cdd721822e4417bc8b1..99a372486fb7f6e9de643f3949fca6f327fe3a32 100644 (file)
@@ -1107,21 +1107,27 @@ static u64 __measure_power(int duration_ms)
        return div64_u64(1000 * 1000 * dE, dt);
 }
 
-static u64 measure_power_at(struct intel_rps *rps, int *freq)
+static u64 measure_power(struct intel_rps *rps, int *freq)
 {
        u64 x[5];
        int i;
 
-       *freq = rps_set_check(rps, *freq);
        for (i = 0; i < 5; i++)
                x[i] = __measure_power(5);
-       *freq = (*freq + read_cagf(rps)) / 2;
+
+       *freq = (*freq + intel_rps_read_actual_frequency(rps)) / 2;
 
        /* A simple triangle filter for better result stability */
        sort(x, 5, sizeof(*x), cmp_u64, NULL);
        return div_u64(x[1] + 2 * x[2] + x[3], 4);
 }
 
+static u64 measure_power_at(struct intel_rps *rps, int *freq)
+{
+       *freq = rps_set_check(rps, *freq);
+       return measure_power(rps, freq);
+}
+
 int live_rps_power(void *arg)
 {
        struct intel_gt *gt = arg;