[igt-dev] [RFC v2 11/43] tests/i915/gem_cs_prefetch: use the gem_engine_topology library

Chris Wilson chris at chris-wilson.co.uk
Fri Jun 21 10:11:24 UTC 2019


Quoting Ramalingam C (2019-06-21 11:03:13)
> Replace the legacy for_each_engine* defines with the ones
> implemented in the gem_engine_topology library.
> 
> Signed-off-by: Ramalingam C <ramalingam.c at intel.com>
> ---
>  tests/i915/gem_cs_prefetch.c | 18 +++++++++---------
>  1 file changed, 9 insertions(+), 9 deletions(-)
> 
> diff --git a/tests/i915/gem_cs_prefetch.c b/tests/i915/gem_cs_prefetch.c
> index 2b8653687f8f..939d6455613e 100644
> --- a/tests/i915/gem_cs_prefetch.c
> +++ b/tests/i915/gem_cs_prefetch.c
> @@ -79,7 +79,7 @@ static void setup(int fd, int gen, struct shadow *shadow)
>         shadow->reloc.write_domain = I915_GEM_DOMAIN_INSTRUCTION;
>  }
>  
> -static void can_test_ring(unsigned ring)
> +static void can_test_ring(const struct intel_execution_engine2 *e)
>  {
>         int master = drm_open_driver_master(DRIVER_INTEL);
>         int fd = drm_open_driver(DRIVER_INTEL);
> @@ -87,12 +87,12 @@ static void can_test_ring(unsigned ring)
>         /* Dance to avoid dying with master open */
>         close(master);
>         igt_require_gem(fd);
> -       gem_require_ring(fd, ring);
> -       igt_require(gem_can_store_dword(fd, ring));
> +       gem_require_ring(fd, e->flags);
> +       igt_require(gem_class_can_store_dword(fd, e->class));
>         close(fd);
>  }
>  
> -static void test_ring(unsigned ring)
> +static void test_ring(const struct intel_execution_engine2 *e)
>  {
>         struct drm_i915_gem_execbuffer2 execbuf;
>         struct drm_i915_gem_exec_object2 obj[2];
> @@ -100,7 +100,7 @@ static void test_ring(unsigned ring)
>         uint64_t i, count;
>         int fd, gen;
>  
> -       can_test_ring(ring);
> +       can_test_ring(e);
>  
>         fd = drm_open_driver_master(DRIVER_INTEL);
>         gen = intel_gen(intel_get_drm_devid(fd));
> @@ -116,7 +116,7 @@ static void test_ring(unsigned ring)
>  
>         memset(&execbuf, 0, sizeof(execbuf));
>         execbuf.buffers_ptr = to_user_pointer(obj);
> -       execbuf.flags = ring;
> +       execbuf.flags = e->flags;
>         if (gen < 6)
>                 execbuf.flags |= I915_EXEC_SECURE;
>  
> @@ -139,11 +139,11 @@ static void test_ring(unsigned ring)
>  
>  igt_main
>  {
> -       const struct intel_execution_engine *e;
> +       const struct intel_execution_engine2 *e;
>  
>         igt_skip_on_simulation();
>  
> -       for (e = intel_execution_engines; e->name; e++)
> +       __for_each_static_engine(e)

Now this is exercising a bit of HW lore, so could be phys.
-Chris


More information about the igt-dev mailing list