drm/i915/selftests: Fixup recursive MI_BB_START for gen3
authorChris Wilson <chris@chris-wilson.co.uk>
Thu, 5 Jul 2018 15:47:56 +0000 (16:47 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Thu, 5 Jul 2018 16:59:11 +0000 (17:59 +0100)
There's no magic bit0 in MI_BB_START for gen3, it's the same dword length
parameter as elsewhere and needs to be zero.

v2: Same bug in both live_requests and live_hanghcheck.

References: https://bugs.freedesktop.org/show_bug.cgi?id=107132
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20180705154756.5533-1-chris@chris-wilson.co.uk
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
drivers/gpu/drm/i915/selftests/i915_request.c
drivers/gpu/drm/i915/selftests/intel_hangcheck.c

index 521ae4a..e44aa33 100644 (file)
@@ -594,11 +594,8 @@ static struct i915_vma *recursive_batch(struct drm_i915_private *i915)
        } else if (gen >= 6) {
                *cmd++ = MI_BATCH_BUFFER_START | 1 << 8;
                *cmd++ = lower_32_bits(vma->node.start);
-       } else if (gen >= 4) {
-               *cmd++ = MI_BATCH_BUFFER_START | MI_BATCH_GTT;
-               *cmd++ = lower_32_bits(vma->node.start);
        } else {
-               *cmd++ = MI_BATCH_BUFFER_START | MI_BATCH_GTT | 1;
+               *cmd++ = MI_BATCH_BUFFER_START | MI_BATCH_GTT;
                *cmd++ = lower_32_bits(vma->node.start);
        }
        *cmd++ = MI_BATCH_BUFFER_END; /* terminate early in case of error */
index fe7d319..72547aa 100644 (file)
@@ -193,7 +193,7 @@ static int emit_recurse_batch(struct hang *h,
                batch += 1024 / sizeof(*batch);
 
                *batch++ = MI_ARB_CHECK;
-               *batch++ = MI_BATCH_BUFFER_START | 2 << 6 | 1;
+               *batch++ = MI_BATCH_BUFFER_START | 2 << 6;
                *batch++ = lower_32_bits(vma->node.start);
        }
        *batch++ = MI_BATCH_BUFFER_END; /* not reached */