[Intel-gfx] [PATCH] drm/i915: Let's avoid even early init if SLPC is used.
Rodrigo Vivi
rodrigo.vivi at intel.com
Tue Sep 6 20:33:49 UTC 2022
SLPC has its own waiboost variables and lock mechanism.
No need for these extra stuff, in special no need for the
timer.
v2: At early stages we can't use uc's 'uses' function, but the
'wants' ones in order to make those decisions.
Cc: Ashutosh Dixit <ashutosh.dixit at intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
---
drivers/gpu/drm/i915/gt/intel_rps.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c b/drivers/gpu/drm/i915/gt/intel_rps.c
index 28b399fa1abe..f0c75f088c88 100644
--- a/drivers/gpu/drm/i915/gt/intel_rps.c
+++ b/drivers/gpu/drm/i915/gt/intel_rps.c
@@ -57,6 +57,13 @@ static bool rps_uses_slpc(struct intel_rps *rps)
return intel_uc_uses_guc_slpc(>->uc);
}
+static bool rps_wants_slpc(struct intel_rps *rps)
+{
+ struct intel_gt *gt = rps_to_gt(rps);
+
+ return intel_uc_wants_guc_slpc(>->uc);
+}
+
static u32 rps_pm_sanitize_mask(struct intel_rps *rps, u32 mask)
{
return mask & ~rps->pm_intrmsk_mbz;
@@ -1955,6 +1962,9 @@ void gen5_rps_irq_handler(struct intel_rps *rps)
void intel_rps_init_early(struct intel_rps *rps)
{
+ if (rps_wants_slpc(rps))
+ return;
+
mutex_init(&rps->lock);
mutex_init(&rps->power.mutex);
--
2.37.2
More information about the Intel-gfx
mailing list