Name

intel_logical_ring_begin — prepare the logical ringbuffer to accept some commands

Synopsis

int intel_logical_ring_begin (struct intel_ringbuffer * ringbuf,
 struct intel_context * ctx,
 int num_dwords);
 

Arguments

ringbuf

Logical ringbuffer.

ctx

-- undescribed --

num_dwords

number of DWORDs that we plan to write to the ringbuffer.

Description

The ringbuffer might not be ready to accept the commands right away (maybe it needs to be wrapped, or wait a bit for the tail to be updated). This function takes care of that and also preallocates a request (every workload submission is still mediated through requests, same as it did with legacy ringbuffer submission).

Return

non-zero if the ringbuffer is not ready to be written to.