diff options
author | Tvrtko Ursulin <tvrtko.ursulin@intel.com> | 2017-06-07 11:40:43 +0100 |
---|---|---|
committer | Tvrtko Ursulin <tvrtko.ursulin@intel.com> | 2017-06-08 09:03:06 +0100 |
commit | c14a2602a973da42d4cfcaed68dbf1c80d47945d (patch) | |
tree | a26bec43293669fa5c6cefee41bea90fbc822609 /benchmarks | |
parent | 32681f8ad2bdef07dccfce80630831fe2f005cd3 (diff) |
gem_wsim: Fix heartbeats in GT2 mode
VCS2 needs to be redirected to BCS in the remapping mode
otherwise the update will get missed.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Diffstat (limited to 'benchmarks')
-rw-r--r-- | benchmarks/gem_wsim.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/benchmarks/gem_wsim.c b/benchmarks/gem_wsim.c index df588fe1..82fe6ba9 100644 --- a/benchmarks/gem_wsim.c +++ b/benchmarks/gem_wsim.c @@ -724,13 +724,21 @@ static const unsigned int eb_engine_map[NUM_ENGINES] = { }; static void -eb_update_flags(struct w_step *w, enum intel_engine_id engine, - unsigned int flags) +eb_set_engine(struct drm_i915_gem_execbuffer2 *eb, + enum intel_engine_id engine, + unsigned int flags) { if (engine == VCS2 && (flags & VCS2REMAP)) engine = BCS; - w->eb.flags = eb_engine_map[engine]; + eb->flags = eb_engine_map[engine]; +} + +static void +eb_update_flags(struct w_step *w, enum intel_engine_id engine, + unsigned int flags) +{ + eb_set_engine(&w->eb, engine, flags); w->eb.flags |= I915_EXEC_HANDLE_LUT; w->eb.flags |= I915_EXEC_NO_RELOC; @@ -1503,7 +1511,7 @@ static void init_status_page(struct workload *wrk, unsigned int flags) *cs++ = MI_BATCH_BUFFER_END; - eb.flags = eb_engine_map[engine]; + eb_set_engine(&eb, engine, wrk->flags); eb.flags |= I915_EXEC_HANDLE_LUT; eb.flags |= I915_EXEC_NO_RELOC; |