>>-----Original Message-----
>>From: Zou, Nanhai
>>Sent: 2010年11月1日 8:56
>>To: 'Chris Wilson'; intel-gfx@lists.freedesktop.org
>>Subject: RE: [Intel-gfx] [PATCH] enable BLT acceleate on gen6
>>
>>>>-----Original Message-----
>>>>From: Chris Wilson [mailto:ch...@chris-wilson.co.uk]
>>>>Sent: 2010年10月30日 3:14
>>>>To: Zou, Nanhai; intel-gfx@lists.freedesktop.org
>>>>Subject: Re: [Intel-gfx] [PATCH] enable BLT acceleate on gen6
>>>>
>>>>On Fri, 29 Oct 2010 13:18:32 +0800, Zou Nan hai <nanhai....@intel.com> 
>>>>wrote:
>>>>> uxa:      enable BLT command on gen6,
>>>>>   BLT command will goto BLT ring buffer
>>>>>   on gen6.
>>>>
>>>>Just spotted one little fix required, and a couple of other suggestions
>>>>(as before). Splitting it up into 3 little patches would be best.
>>>>
>>>>> Signed-off-by:Zou Nan hai <nanhai....@intel.com>
>>>>> ---
>>>>> diff --git a/src/intel.h b/src/intel.h
>>>>> index b74a061..26f4a18 100644
>>>>> --- a/src/intel.h
>>>>> +++ b/src/intel.h
>>>>> @@ -276,6 +276,10 @@ typedef struct intel_screen_private {
>>>>>   unsigned char *MMIOBase;
>>>>>   int cpp;
>>>>>
>>>>> +#define RENDER_BATCH                     0
>>>>> +#define BLT_BATCH                        1
>>>>#define RENDER_BATCH I915_EXEC_RENDER
>>>>#define BLT_BATCH I915_EXEC_BLT
>>>>
>>>>> + if (ret == 0) {
>>>>> +         if (intel->current_batch == RENDER_BATCH)
>>>>> +                 ret = dri_bo_exec(intel->batch_bo, intel->batch_used*4,
>>>>> +                                 NULL, 0, 0xffffffff);
>>>>> +         else
>>>>> +                 ret = drm_intel_bo_mrb_exec(intel->batch_bo,
>>>>> +                                 intel->batch_used*4,
>>>>> +                                 NULL, 0, 0xffffffff, I915_EXEC_BLT);
>>>>> + }
>>>>if (ret == 0)
>>>>    ret = drm_intel_bo_mrb_exec(intel->batch_bo,
>>>>                                intel->batch_used*4,
>>>>                                NULL, 0, 0xffffffff,
>>>>                                intel->current_batch);
>>>>> +#define __BEGIN_BATCH(n,batch_idx)                                       
>>>>> \
>>>>>  do {                                                                     
>>>>> \
>>>>>   if (intel->batch_emitting != 0)                                 \
>>>>>           FatalError("%s: BEGIN_BATCH called without closing "    \
>>>>>                      "ADVANCE_BATCH\n", __FUNCTION__);            \
>>>>>   assert(!intel->in_batch_atomic);                                \
>>>>> + if (intel->current_batch != batch_idx)                          \
>>>>> +         intel_batch_submit(scrn, TRUE);                         \
>>>>intel_batch_submit(scrn, FALSE);                            \
>>>>
>>
>>Shouldn't we have a flush here?
>>We are switching from 1 batch to another batch.
>>

Just realize it doesn't matter.
kernel will flush the ring at bo_exec anyway.

>>Thanks
>>Zou Nanhai
>>
>>>>-Chris
>>>>
>>>>--
>>>>Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to