On 31/10/2018 14:20, Jason Ekstrand wrote:
Toni,

I'm a bit curious where you're going with this.  I started on a similar project a couple of years ago:

https://gitlab.freedesktop.org/jekstrand/mesa/commits/wip/genxml-engines

Mine took a different (not necessarily better) approach of surrounding the instructions in an <engine> tag. I'm not sure if that's any better or worse than an attribute.


I suggested the attribute because it would avoid duplication of some MI instructions.



At the time, I was planning to port over the blitter code to genxml and get aubinator decoding blit streams.  I canned the project because there are few enough differences in hardware generations for the blitter to be worth the re-compilation and I had better things to do.  I've always thought it would be good to support other engines for no other reason than to make aubinator for blits.  It would also likely be useful to have if we wanted to start doing media in mesa for some reason.  What's your motivation?  I ask because I can't really have an opinion on the approach unless I know where it's headed.

--Jason

On Wed, Oct 31, 2018 at 8:12 AM Toni Lönnberg <toni.lonnb...@intel.com <mailto:toni.lonnb...@intel.com>> wrote:

    These patches add an engine parameter to the instructions defined
    in the genxml
    files so that they can be distinguished when sending them to
    different engines.
    By default, an instruction is defined to be used by all engines
    and is defined
    for a specific engine by adding the parameter "engine" to the
    definition.
    Currently the supported engines are "render", "video" and "blitter".

    v2:

    * gen_engine enum removed and replaced with use of
    drm_i915_gem_engine_class

    * The current engine being used is now saved in the decoder
    context and is not
      being passed through gen_print_batch().

    * Split the genxml changes into multiple patches

    Toni Lönnberg (13):
      intel/decoder: tools: gen_engine to drm_i915_gem_engine_class
      intel/decoder: Engine parameter for instructions
      intel/decoder: tools: Use engine for decoding batch instructions
      intel/genxml: Add engine definition to render engine instructions
        (gen4)
      intel/genxml: Add engine definition to render engine instructions
        (gen45)
      intel/genxml: Add engine definition to render engine instructions
        (gen5)
      intel/genxml: Add engine definition to render engine instructions
        (gen6)
      intel/genxml: Add engine definition to render engine instructions
        (gen7)
      intel/genxml: Add engine definition to render engine instructions
        (gen75)
      intel/genxml: Add engine definition to render engine instructions
        (gen8)
      intel/genxml: Add engine definition to render engine instructions
        (gen9)
      intel/genxml: Add engine definition to render engine instructions
        (gen10)
      intel/genxml: Add engine definition to render engine instructions
        (gen11)

     src/intel/common/gen_batch_decoder.c     |  25 ++-
     src/intel/common/gen_decoder.c           |  18 +-
     src/intel/common/gen_decoder.h           |  11 +-
     src/intel/genxml/gen10.xml               | 206 +++++++++++-----------
     src/intel/genxml/gen11.xml               | 208
    +++++++++++------------
     src/intel/genxml/gen4.xml                |  36 ++--
     src/intel/genxml/gen45.xml               |  38 ++---
     src/intel/genxml/gen5.xml                |  44 ++---
     src/intel/genxml/gen6.xml                |  94 +++++-----
     src/intel/genxml/gen7.xml                | 154 ++++++++---------
     src/intel/genxml/gen75.xml               | 184 ++++++++++----------
     src/intel/genxml/gen8.xml                | 202 +++++++++++-----------
     src/intel/genxml/gen9.xml                | 208
    +++++++++++------------
     src/intel/tools/aub_read.c               |  22 +--
     src/intel/tools/aub_read.h               |  11 +-
     src/intel/tools/aubinator.c              |   8 +-
     src/intel/tools/aubinator_error_decode.c |  16 ++
     17 files changed, 763 insertions(+), 722 deletions(-)

-- 2.17.1

    _______________________________________________
    mesa-dev mailing list
    mesa-dev@lists.freedesktop.org <mailto:mesa-dev@lists.freedesktop.org>
    https://lists.freedesktop.org/mailman/listinfo/mesa-dev


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to