public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
To: Intel-gfx@lists.freedesktop.org
Subject: [PATCH 00/13] Legacy engine initialization refactoring
Date: Mon, 27 Jun 2016 15:04:07 +0100	[thread overview]
Message-ID: <1467036260-9252-1-git-send-email-tvrtko.ursulin@linux.intel.com> (raw)

From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

Preparation step towards unifying what can be unified between
legacy and execlist.

This series tries to simplify the engine initializers by moving some
of the commonatility replicated between all of the engines into a shared
helper function - the same approach as in intel_lrc.c.

Also tries to simplify the semaphore initialization by replacing some
verbose code with either a completely programatical code (Gen8), or a
combination of a data table and logic (Gen6+).

To be discussed if people see this as a worthwhile improvement. It does
shrink both the source and generated binary (~2k), but more importantly
makes the initializers easier to read and understand. Hopefully not only
for me.

Next step of unification can be employing the same data-driven setup +
per-engine constructor loop driven approach as recently has been implemented
in intel_lrc.c. I think Dave already has some patches for that. And then
finally extracting commonality between intel_ringbuffer.c and intel_lrc.c
gets easier to spot and to do (and review).

Tvrtko Ursulin (13):
  drm/i915: Consolidate write_tail vfunc initializer
  drm/i915: Consolidate add_request vfunc
  drm/i915: Consolidate seqno_barrier vfunc
  drm/i915: Consolidate get and put irq vfuncs
  drm/i915: Consolidate get/set_seqno
  drm/i915: Consolidate init_hw vfunc
  drm/i915: Consolidate dispatch_execbuffer vfunc
  drm/i915: Consolidate semaphore vfuncs init
  drm/i915: Compact Gen8 semaphore initialization
  drm/i915: Compact gen8_ring_sync
  drm/i915: Consolidate legacy semaphore initialization
  drm/i915: Remove redundant warning and consolidate gen8 render
    semaphore vfunc
  drm/i915: Trim some if-else braces

 drivers/gpu/drm/i915/intel_ringbuffer.c | 340 ++++++++++++++------------------
 drivers/gpu/drm/i915/intel_ringbuffer.h |  12 --
 2 files changed, 143 insertions(+), 209 deletions(-)

-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

             reply	other threads:[~2016-06-27 14:04 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-27 14:04 Tvrtko Ursulin [this message]
2016-06-27 14:04 ` [PATCH 01/13] drm/i915: Consolidate write_tail vfunc initializer Tvrtko Ursulin
2016-06-27 14:04 ` [PATCH 02/13] drm/i915: Consolidate add_request vfunc Tvrtko Ursulin
2016-06-27 14:04 ` [PATCH 03/13] drm/i915: Consolidate seqno_barrier vfunc Tvrtko Ursulin
2016-06-27 14:04 ` [PATCH 04/13] drm/i915: Consolidate get and put irq vfuncs Tvrtko Ursulin
2016-06-28 11:58   ` Chris Wilson
2016-06-27 14:04 ` [PATCH 05/13] drm/i915: Consolidate get/set_seqno Tvrtko Ursulin
2016-06-27 14:04 ` [PATCH 06/13] drm/i915: Consolidate init_hw vfunc Tvrtko Ursulin
2016-06-27 14:04 ` [PATCH 07/13] drm/i915: Consolidate dispatch_execbuffer vfunc Tvrtko Ursulin
2016-06-28 11:59   ` Chris Wilson
2016-06-27 14:04 ` [PATCH 08/13] drm/i915: Consolidate semaphore vfuncs init Tvrtko Ursulin
2016-06-27 14:04 ` [PATCH 09/13] drm/i915: Compact Gen8 semaphore initialization Tvrtko Ursulin
2016-06-28 12:05   ` Chris Wilson
2016-06-27 14:04 ` [PATCH 10/13] drm/i915: Compact gen8_ring_sync Tvrtko Ursulin
2016-06-27 14:04 ` [PATCH 11/13] drm/i915: Consolidate legacy semaphore initialization Tvrtko Ursulin
2016-06-27 14:04 ` [PATCH 12/13] drm/i915: Remove redundant warning and consolidate gen8 render semaphore vfunc Tvrtko Ursulin
2016-06-27 14:04 ` [PATCH 13/13] drm/i915: Trim some if-else braces Tvrtko Ursulin
2016-06-27 14:31 ` ✗ Ro.CI.BAT: failure for Legacy engine initialization refactoring Patchwork
2016-06-28 12:10 ` [PATCH 00/13] " Chris Wilson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1467036260-9252-1-git-send-email-tvrtko.ursulin@linux.intel.com \
    --to=tvrtko.ursulin@linux.intel.com \
    --cc=Intel-gfx@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox