[Intel-gfx] [PATCH 2/5] i915/drm/guc: Don't pass CTB while writing

Michal Wajdeczko michal.wajdeczko at intel.com
Thu Jan 16 19:15:00 UTC 2020


On Thu, 16 Jan 2020 19:53:08 +0100, Daniele Ceraolo Spurio  
<daniele.ceraolospurio at intel.com> wrote:

>
>
> On 1/15/20 6:08 AM, Michal Wajdeczko wrote:
>> Since we only have one SEND buffer we don't need to explicitly pass
>> it to the write function.
>>  Signed-off-by: Michal Wajdeczko <michal.wajdeczko at intel.com>
>> Cc: Chris Wilson <chris at chris-wilson.co.uk>
>> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
>> ---
>>   drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 13 +++++++------
>>   1 file changed, 7 insertions(+), 6 deletions(-)
>>  diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c  
>> b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
>> index 0d3556a820a3..dedbf3b8ab01 100644
>> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
>> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
>> @@ -311,12 +311,13 @@ static u32 ct_get_next_fence(struct intel_guc_ct  
>> *ct)
>>    *                   ^-----------------len-------------------^
>>    */
>>   -static int ctb_write(struct intel_guc_ct_buffer *ctb,
>> -		     const u32 *action,
>> -		     u32 len /* in dwords */,
>> -		     u32 fence,
>> -		     bool want_response)
>> +static int ct_write(struct intel_guc_ct *ct,
>> +		    const u32 *action,
>> +		    u32 len /* in dwords */,
>> +		    u32 fence,
>> +		    bool want_response)
>>   {
>> +	struct intel_guc_ct_buffer *ctb = &ct->ctbs[CTB_SEND];
>>   	struct guc_ct_buffer_desc *desc = ctb->desc;
>>   	u32 head = desc->head / 4;	/* in dwords */
>>   	u32 tail = desc->tail / 4;	/* in dwords */
>> @@ -492,7 +493,7 @@ static int ct_send(struct intel_guc_ct *ct,
>>   	list_add_tail(&request.link, &ct->requests.pending);
>>   	spin_unlock_irqrestore(&ct->requests.lock, flags);
>>   -	err = ctb_write(ctb, action, len, fence, !!response_buf);
>> +	err = ct_write(ct, action, len, fence, !!response_buf);
>
> I'd update wait_for_ctb_desc_update() to work on struct intel_guc_ct as  
> well, so we can hide the ctb desc access in the lower level functions  
> and drop the ctb variable from ct_send(). With or without that:

in next series I was planning to remove wait_for_ctb_desc_update()
that's why I didn't update it now

>
> Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
>
> Daniele
>
>>   	if (unlikely(err))
>>   		goto unlink;


More information about the Intel-gfx mailing list