Skip to content

Commit 3e49de7

Browse files
vsbelgaumtursulin
authored andcommitted
drm/i915/guc/slpc: Apply min softlimit correctly
The scenario being fixed here is depicted in the following sequence- modprobe i915 echo 1 > /sys/class/drm/card0/gt/gt0/slpc_ignore_eff_freq echo 300 > /sys/class/drm/card0/gt_min_freq_mhz (RPn) cat /sys/class/drm/card0/gt_cur_freq_mhz --> cur == RPn as expected echo 1 > /sys/kernel/debug/dri/0/gt0/reset --> reset cat /sys/class/drm/card0/gt_min_freq_mhz --> cached freq is RPn cat /sys/class/drm/card0/gt_cur_freq_mhz --> it's not RPn, but RPe!! When SLPC reinitializes, it sets SLPC min freq to efficient frequency. Even if we disable efficient freq post that, we should restore the cached min freq (via H2G) for it to take effect. v2: Clarify commit message (Ashutosh) Fixes: 95ccf31 ("drm/i915/guc/slpc: Allow SLPC to use efficient frequency") Reviewed-by: Ashutosh Dixit <[email protected]> Signed-off-by: Vinay Belgaumkar <[email protected]> Signed-off-by: Daniele Ceraolo Spurio <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected] (cherry picked from commit da86b2b) Signed-off-by: Tvrtko Ursulin <[email protected]>
1 parent 5311892 commit 3e49de7

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -606,7 +606,7 @@ static int slpc_set_softlimits(struct intel_guc_slpc *slpc)
606606
if (unlikely(ret))
607607
return ret;
608608
slpc_to_gt(slpc)->defaults.min_freq = slpc->min_freq_softlimit;
609-
} else if (slpc->min_freq_softlimit != slpc->min_freq) {
609+
} else {
610610
return intel_guc_slpc_set_min_freq(slpc,
611611
slpc->min_freq_softlimit);
612612
}

0 commit comments

Comments
 (0)