[Intel-gfx] [PATCH] drm/i915/perf: fix ICL perf register offsets
Lionel Landwerlin
lionel.g.landwerlin at intel.com
Wed Jun 12 06:53:59 UTC 2019
On 10/06/2019 18:25, Kenneth Graunke wrote:
> On Monday, June 10, 2019 1:19:14 AM PDT Lionel Landwerlin wrote:
>> We got the wrong offsets (could they have changed?). New values were
>> computed off an error state by looking up the register offset in the
>> context image as written by the HW.
>>
>> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
>> Fixes: 1de401c08fa805 ("drm/i915/perf: enable perf support on ICL")
>> ---
>> drivers/gpu/drm/i915/i915_perf.c | 10 +++++++---
>> 1 file changed, 7 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
>> index 4a767087de27..6c85191fc6c9 100644
>> --- a/drivers/gpu/drm/i915/i915_perf.c
>> +++ b/drivers/gpu/drm/i915/i915_perf.c
>> @@ -3612,9 +3612,13 @@ void i915_perf_init(struct drm_i915_private *dev_priv)
>> dev_priv->perf.oa.ops.enable_metric_set = gen8_enable_metric_set;
>> dev_priv->perf.oa.ops.disable_metric_set = gen10_disable_metric_set;
>>
>> - dev_priv->perf.oa.ctx_oactxctrl_offset = 0x128;
>> - dev_priv->perf.oa.ctx_flexeu0_offset = 0x3de;
>> -
>> + if (IS_GEN(dev_priv, 10)) {
>> + dev_priv->perf.oa.ctx_oactxctrl_offset = 0x128;
>> + dev_priv->perf.oa.ctx_flexeu0_offset = 0x3de;
>> + } else {
>> + dev_priv->perf.oa.ctx_oactxctrl_offset = 0x124;
>> + dev_priv->perf.oa.ctx_flexeu0_offset = 0x78e;
>> + }
>> dev_priv->perf.oa.gen8_valid_ctx_bit = (1<<16);
>> }
>> }
>>
> Sounds believable.
>
> Acked-by: Kenneth Graunke <kenneth at whitecape.org>
Thanks Ken.
This was confirmed to fix the issue seen in performance queries.
Is a Acked-by enough to land this?
Could someone else maybe review?
Thanks a lot,
-Lionel
More information about the Intel-gfx
mailing list