[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