On Thu, Jul 31, 2025 at 05:21:23PM +0300, Jani Nikula wrote: > The rps init only happens once, so it's not important to use the cached > versions, and we can drop the dependency on them.
Reviewed-by: Rodrigo Vivi <[email protected]> > > Signed-off-by: Jani Nikula <[email protected]> > --- > drivers/gpu/drm/i915/gt/intel_rps.c | 11 ++++++++--- > 1 file changed, 8 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c > b/drivers/gpu/drm/i915/gt/intel_rps.c > index 0b35fdd461d4..006042e0b229 100644 > --- a/drivers/gpu/drm/i915/gt/intel_rps.c > +++ b/drivers/gpu/drm/i915/gt/intel_rps.c > @@ -9,6 +9,7 @@ > > #include "display/intel_display.h" > #include "display/intel_display_rps.h" > +#include "soc/intel_dram.h" > #include "i915_drv.h" > #include "i915_irq.h" > #include "i915_reg.h" > @@ -276,20 +277,24 @@ static void gen5_rps_init(struct intel_rps *rps) > { > struct drm_i915_private *i915 = rps_to_i915(rps); > struct intel_uncore *uncore = rps_to_uncore(rps); > + unsigned int fsb_freq, mem_freq; > u8 fmax, fmin, fstart; > u32 rgvmodectl; > int c_m, i; > > - if (i915->fsb_freq <= 3200000) > + fsb_freq = intel_fsb_freq(i915); > + mem_freq = intel_mem_freq(i915); > + > + if (fsb_freq <= 3200000) > c_m = 0; > - else if (i915->fsb_freq <= 4800000) > + else if (fsb_freq <= 4800000) > c_m = 1; > else > c_m = 2; > > for (i = 0; i < ARRAY_SIZE(cparams); i++) { > if (cparams[i].i == c_m && > - cparams[i].t == DIV_ROUND_CLOSEST(i915->mem_freq, 1000)) { > + cparams[i].t == DIV_ROUND_CLOSEST(mem_freq, 1000)) { > rps->ips.m = cparams[i].m; > rps->ips.c = cparams[i].c; > break; > -- > 2.39.5 >
