[Intel-gfx] [PATCH v2] drm/i915/bxt: fix RC6 residency time calculation

Daniel Vetter daniel at ffwll.ch
Wed Sep 30 05:26:59 PDT 2015


On Tue, Sep 29, 2015 at 10:03:43PM +0300, Ville Syrjälä wrote:
> On Tue, Sep 29, 2015 at 04:28:46PM +0300, Imre Deak wrote:
> > The RC6 residency time unit is 833.33ns on BXT according to the
> > specification, so update the calculation accordingly. Use the same way
> > as CHV/VLV to divide by the corresponding frequency, as I think this is
> > the more natural unit for what the HW does internally.
> > 
> > v2:
> > - add missing IS_BROXTON check (Ville)
> > 
> > Testcase: igt/pm_rc6_residency
> > Signed-off-by: Imre Deak <imre.deak at intel.com>
> 
> Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>

Queued for -next, thanks for the patch.
-Daniel

> 
> > ---
> >  drivers/gpu/drm/i915/i915_sysfs.c | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/i915/i915_sysfs.c b/drivers/gpu/drm/i915/i915_sysfs.c
> > index 74086eb..50ce9ce 100644
> > --- a/drivers/gpu/drm/i915/i915_sysfs.c
> > +++ b/drivers/gpu/drm/i915/i915_sysfs.c
> > @@ -54,6 +54,9 @@ static u32 calc_residency(struct drm_device *dev, const u32 reg)
> >  
> >  		if (I915_READ(VLV_COUNTER_CONTROL) & VLV_COUNT_RANGE_HIGH)
> >  			units <<= 8;
> > +	} else if (IS_BROXTON(dev)) {
> > +		units = 1;
> > +		div = 1200;		/* 833.33ns */
> >  	}
> >  
> >  	raw_time = I915_READ(reg) * units;
> > -- 
> > 2.1.4
> 
> -- 
> Ville Syrjälä
> Intel OTC
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the Intel-gfx mailing list