[Intel-gfx] [PATCH] drm/i915: Make own struct for execlist items
Joonas Lahtinen
joonas.lahtinen at linux.intel.com
Tue Aug 22 12:17:57 UTC 2017
On Tue, 2017-08-22 at 12:37 +0300, Mika Kuoppala wrote:
> Engine's execlist related items have been increasing to
> a point where a separate struct is warranted. Carve execlist
> specific items to a dedicated struct to add clarity.
>
> Suggested-by: Chris Wilson <chris at chris-wilson.co.uk>
> Signed-off-by: Mika Kuoppala <mika.kuoppala at intel.com>
<SNIP>
> +/* Execlists */
> +struct intel_engine_execlist {
> + struct tasklet_struct irq_tasklet;
> + struct i915_priolist default_priolist;
> + bool no_priolist;
> +
> + struct execlist_port {
> + struct drm_i915_gem_request *request_count;
> +#define EXECLIST_COUNT_BITS 2
> +#define port_request(p) ptr_mask_bits((p)->request_count, EXECLIST_COUNT_BITS)
> +#define port_count(p) ptr_unmask_bits((p)->request_count, EXECLIST_COUNT_BITS)
> +#define port_pack(rq, count) ptr_pack_bits(rq, count, EXECLIST_COUNT_BITS)
> +#define port_unpack(p, count) ptr_unpack_bits((p)->request_count, count, EXECLIST_COUNT_BITS)
> +#define port_set(p, packed) ((p)->request_count = (packed))
> +#define port_isset(p) ((p)->request_count)
> +#define port_index(p, e) ((p) - (e)->execlist.port)
> + GEM_DEBUG_DECL(u32 context_id);
> + } port[2];
> +
> + struct rb_root queue;
> + struct rb_node *first;
> +
> + unsigned int fw_domains;
> +};
> +
Please do add a small kerneldoc for each parameter while touching the
code, anyway this is:
Acked-by: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
Regards, Joonas
--
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
More information about the Intel-gfx
mailing list