[Intel-gfx] [PATCH v8 06/13] drm/i915/perf: implement active wait for noa configurations
Chris Wilson
chris at chris-wilson.co.uk
Thu Jul 11 06:29:56 UTC 2019
Quoting Umesh Nerlige Ramappa (2019-07-11 00:43:21)
> On Tue, Jul 09, 2019 at 03:33:44PM +0300, Lionel Landwerlin wrote:
> >+static u32 *save_register(struct drm_i915_private *i915, u32 *cs,
> >+ i915_reg_t reg, u32 offset, u32 dword_count)
> >+{
> >+ uint32_t d;
> >+
> >+ for (d = 0; d < dword_count; d++) {
> >+ *cs++ = INTEL_GEN(i915) >= 8 ?
> >+ MI_STORE_REGISTER_MEM_GEN8 : MI_STORE_REGISTER_MEM;
> >+ *cs++ = i915_mmio_reg_offset(reg) + 4 * d;
> >+ *cs++ = intel_gt_scratch_offset(&i915->gt, offset) + 4 * d;
> >+ *cs++ = 0;
> >+ }
> >+
> >+ return cs;
> >+}
> >+
> >+static u32 *restore_register(struct drm_i915_private *i915, u32 *cs,
> >+ i915_reg_t reg, u32 offset, u32 dword_count)
> >+{
> >+ uint32_t d;
> >+
> >+ for (d = 0; d < dword_count; d++) {
> >+ *cs++ = INTEL_GEN(i915) >= 8 ?
> >+ MI_LOAD_REGISTER_MEM_GEN8 : MI_LOAD_REGISTER_MEM;
> >+ *cs++ = i915_mmio_reg_offset(reg);
> >+ *cs++ = intel_gt_scratch_offset(&i915->gt, offset);
>
> are you missing + 4 * d in the above 2 lines?
Whoops bad reviewer. Since these are the same two loops just with a
different cmd...
-Chris
More information about the Intel-gfx
mailing list