[Intel-gfx] [PATCH 00/13] Legacy engine initialization refactoring
Chris Wilson
chris at chris-wilson.co.uk
Tue Jun 28 12:10:01 UTC 2016
On Mon, Jun 27, 2016 at 03:04:07PM +0100, Tvrtko Ursulin wrote:
> From: Tvrtko Ursulin <tvrtko.ursulin at 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
Lgtm,
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
> drm/i915: Consolidate semaphore vfuncs init
> drm/i915: Compact Gen8 semaphore initialization
> drm/i915: Compact gen8_ring_sync
> drm/i915: Consolidate legacy semaphore initialization
Not so sure, the code is definitely better, I don't think the ordering
is quite right and you open the code up for some more polish.
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the Intel-gfx
mailing list