[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