On Fri, 2022-09-02 at 07:16 -0700, Dixit, Ashutosh wrote: > On Fri, 02 Sep 2022 02:51:26 -0700, Rodrigo Vivi wrote: > > > > diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c > > b/drivers/gpu/drm/i915/gt/intel_rps.c > > index 6fadde4ee7bf..c29652281f2e 100644 > > --- a/drivers/gpu/drm/i915/gt/intel_rps.c > > +++ b/drivers/gpu/drm/i915/gt/intel_rps.c > > @@ -1960,6 +1960,9 @@ void gen5_rps_irq_handler(struct intel_rps > > *rps) > > > > void intel_rps_init_early(struct intel_rps *rps) > > { > > + if (rps_uses_slpc(rps)) > > + return; > > + > > Hi Rodrigo, Let me double check with you, this works correctly at > this > place, correct? Looks like things to make this work should get > initialized > in intel_uc_init_early() which is called just before > intel_rps_init_early() > so looks ok (can't tell for sure with all those uc macros :/): yeap, I hate those uc macros as well! In theory it should work well since @ static void __intel_gt_init_early(struct intel_gt *gt) intel_uc_init_early(>->uc); intel_rps_init_early(>->rps); } And it works well when slpc is enabled... But our CI showed this is a disaster when SLPC is not used. I will have to fix that. > Reviewed-by: Ashutosh Dixit <ashutosh.dixit@xxxxxxxxx> > > > mutex_init(&rps->lock); > > mutex_init(&rps->power.mutex); > > > > -- > > 2.37.2 > >