[Intel-gfx] [PATCH] drm/i915/bxt: fix RC6 residency time calculation
Ville Syrjälä
ville.syrjala at linux.intel.com
Tue Sep 29 06:17:56 PDT 2015
On Tue, Sep 29, 2015 at 03:07:59PM +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.
>
> Testcase: igt/pm_rc6_residency
> Signed-off-by: Imre Deak <imre.deak at intel.com>
> ---
> 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..7879255 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 {
missing IS_BROXTON()
> + units = 1;
> + div = 1200; /* 833.33ns */
Yeah, so based on Bspec "Timestamp bases" section, this is
in fact 16 19.2MHz clocks.
With the bxt check added this is
Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> }
>
> raw_time = I915_READ(reg) * units;
> --
> 2.1.4
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ville Syrjälä
Intel OTC
More information about the Intel-gfx
mailing list