[Mesa-dev] [PATCH v2 1/7] gallium/auxiliary/vl: Move dirty define to header file

James Zhu jamesz at amd.com
Thu Feb 7 14:21:32 UTC 2019


On 2019-02-07 4:49 a.m., Christian König wrote:
> Patches #1, #2, #5, #7  are Reviewed-by: Christian König 
> <christian.koenig at amd.com>
>
> Patch #3 the csc_matrix need a better name since we now store more and 
> more additional info in there, but that can as well be a follow up patch.

csc_matrix is used by upper stack.Let me figure out how to use 2nd 
constant buffer to hold additional info.

James

>
> Patch #4 is Acked-by: Christian König <christian.koenig at amd.com>
>
> Patch #6 I think there was a simpler option for this.
>
> And when the compute shaders reach the same level of functionality as 
> the GFX shaders we should make this the default, depending on the 
> hardware capabilities.

Sure.

James

>
> Christian.
>
> Am 06.02.19 um 20:44 schrieb Zhu, James:
>> Move dirty define to header file to share with compute shader.
>>
>> Signed-off-by: James Zhu <James.Zhu at amd.com>
>> ---
>>   src/gallium/auxiliary/vl/vl_compositor.c | 15 ++++++---------
>>   src/gallium/auxiliary/vl/vl_compositor.h |  2 ++
>>   2 files changed, 8 insertions(+), 9 deletions(-)
>>
>> diff --git a/src/gallium/auxiliary/vl/vl_compositor.c 
>> b/src/gallium/auxiliary/vl/vl_compositor.c
>> index 159a295..41f9e5e 100644
>> --- a/src/gallium/auxiliary/vl/vl_compositor.c
>> +++ b/src/gallium/auxiliary/vl/vl_compositor.c
>> @@ -42,9 +42,6 @@
>>   #include "vl_types.h"
>>   #include "vl_compositor.h"
>>   -#define MIN_DIRTY (0)
>> -#define MAX_DIRTY (1 << 15)
>> -
>>   enum VS_OUTPUT
>>   {
>>      VS_O_VPOS = 0,
>> @@ -899,8 +896,8 @@ gen_vertex_data(struct vl_compositor *c, struct 
>> vl_compositor_state *s, struct u
>>                dirty->y1 <= drawn.y1) {
>>                    // We clear the dirty area anyway, no need for 
>> clear_render_target
>> -               dirty->x0 = dirty->y0 = MAX_DIRTY;
>> -               dirty->x1 = dirty->y1 = MIN_DIRTY;
>> +               dirty->x0 = dirty->y0 = VL_COMPOSITOR_MAX_DIRTY;
>> +               dirty->x1 = dirty->y1 = VL_COMPOSITOR_MIN_DIRTY;
>>               }
>>            }
>>         }
>> @@ -1030,8 +1027,8 @@ vl_compositor_reset_dirty_area(struct u_rect 
>> *dirty)
>>   {
>>      assert(dirty);
>>   -   dirty->x0 = dirty->y0 = MIN_DIRTY;
>> -   dirty->x1 = dirty->y1 = MAX_DIRTY;
>> +   dirty->x0 = dirty->y0 = VL_COMPOSITOR_MIN_DIRTY;
>> +   dirty->x1 = dirty->y1 = VL_COMPOSITOR_MAX_DIRTY;
>>   }
>>     void
>> @@ -1378,8 +1375,8 @@ vl_compositor_render(struct vl_compositor_state 
>> *s,
>>           c->pipe->clear_render_target(c->pipe, dst_surface, 
>> &s->clear_color,
>>                                      0, 0, dst_surface->width, 
>> dst_surface->height, false);
>> -      dirty_area->x0 = dirty_area->y0 = MAX_DIRTY;
>> -      dirty_area->x1 = dirty_area->y1 = MIN_DIRTY;
>> +      dirty_area->x0 = dirty_area->y0 = VL_COMPOSITOR_MAX_DIRTY;
>> +      dirty_area->x1 = dirty_area->y1 = VL_COMPOSITOR_MIN_DIRTY;
>>      }
>>        c->pipe->set_framebuffer_state(c->pipe, &c->fb_state);
>> diff --git a/src/gallium/auxiliary/vl/vl_compositor.h 
>> b/src/gallium/auxiliary/vl/vl_compositor.h
>> index 8819176..aa843c3 100644
>> --- a/src/gallium/auxiliary/vl/vl_compositor.h
>> +++ b/src/gallium/auxiliary/vl/vl_compositor.h
>> @@ -44,6 +44,8 @@ struct pipe_context;
>>    */
>>     #define VL_COMPOSITOR_MAX_LAYERS 16
>> +#define VL_COMPOSITOR_MIN_DIRTY (0)
>> +#define VL_COMPOSITOR_MAX_DIRTY (1 << 15)
>>     /* deinterlace allgorithem */
>>   enum vl_compositor_deinterlace
>


More information about the mesa-dev mailing list