diff options
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem_execbuffer.c')
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem_execbuffer.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c index 1aaccbe7e1de..d4fac09095f8 100644 --- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c | |||
@@ -1268,7 +1268,7 @@ relocate_entry(struct i915_vma *vma, | |||
1268 | else if (gen >= 4) | 1268 | else if (gen >= 4) |
1269 | len = 4; | 1269 | len = 4; |
1270 | else | 1270 | else |
1271 | len = 3; | 1271 | len = 6; |
1272 | 1272 | ||
1273 | batch = reloc_gpu(eb, vma, len); | 1273 | batch = reloc_gpu(eb, vma, len); |
1274 | if (IS_ERR(batch)) | 1274 | if (IS_ERR(batch)) |
@@ -1309,6 +1309,11 @@ relocate_entry(struct i915_vma *vma, | |||
1309 | *batch++ = MI_STORE_DWORD_IMM | MI_MEM_VIRTUAL; | 1309 | *batch++ = MI_STORE_DWORD_IMM | MI_MEM_VIRTUAL; |
1310 | *batch++ = addr; | 1310 | *batch++ = addr; |
1311 | *batch++ = target_offset; | 1311 | *batch++ = target_offset; |
1312 | |||
1313 | /* And again for good measure (blb/pnv) */ | ||
1314 | *batch++ = MI_STORE_DWORD_IMM | MI_MEM_VIRTUAL; | ||
1315 | *batch++ = addr; | ||
1316 | *batch++ = target_offset; | ||
1312 | } | 1317 | } |
1313 | 1318 | ||
1314 | goto out; | 1319 | goto out; |