projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
util: add mutex lock in u_debug_memory.c code
[mesa.git]
/
src
/
gallium
/
auxiliary
/
vl
/
vl_vertex_buffers.c
diff --git
a/src/gallium/auxiliary/vl/vl_vertex_buffers.c
b/src/gallium/auxiliary/vl/vl_vertex_buffers.c
index c45f96cec5181e4427eef1a14b729a7b2d832e28..1e326a136208edb88eafd26fde232c7fe09ad023 100644
(file)
--- a/
src/gallium/auxiliary/vl/vl_vertex_buffers.c
+++ b/
src/gallium/auxiliary/vl/vl_vertex_buffers.c
@@
-26,7
+26,7
@@
**************************************************************************/
#include <assert.h>
**************************************************************************/
#include <assert.h>
-#include
<util/u_format.h>
+#include
"util/u_format.h"
#include "vl_vertex_buffers.h"
#include "vl_types.h"
#include "vl_vertex_buffers.h"
#include "vl_types.h"
@@
-65,7
+65,7
@@
vl_vb_upload_quads(struct pipe_context *pipe)
(
pipe,
quad.buffer,
(
pipe,
quad.buffer,
- PIPE_TRANSFER_WRITE | PIPE_TRANSFER_DISCARD,
+ PIPE_TRANSFER_WRITE | PIPE_TRANSFER_DISCARD
_RANGE
,
&buf_transfer
);
&buf_transfer
);
@@
-109,7
+109,7
@@
vl_vb_upload_pos(struct pipe_context *pipe, unsigned width, unsigned height)
(
pipe,
pos.buffer,
(
pipe,
pos.buffer,
- PIPE_TRANSFER_WRITE | PIPE_TRANSFER_DISCARD,
+ PIPE_TRANSFER_WRITE | PIPE_TRANSFER_DISCARD
_RANGE
,
&buf_transfer
);
&buf_transfer
);
@@
-168,9
+168,12
@@
vl_vb_get_ves_ycbcr(struct pipe_context *pipe)
/* Position element */
vertex_elems[VS_I_VPOS].src_format = PIPE_FORMAT_R8G8B8A8_USCALED;
/* Position element */
vertex_elems[VS_I_VPOS].src_format = PIPE_FORMAT_R8G8B8A8_USCALED;
- vl_vb_element_helper(&vertex_elems[VS_I_VPOS], 1, 1);
+ /* block num element */
+ vertex_elems[VS_I_BLOCK_NUM].src_format = PIPE_FORMAT_R32_FLOAT;
+
+ vl_vb_element_helper(&vertex_elems[VS_I_VPOS], 2, 1);
- return pipe->create_vertex_elements_state(pipe,
2
, vertex_elems);
+ return pipe->create_vertex_elements_state(pipe,
3
, vertex_elems);
}
void *
}
void *
@@
-212,13
+215,13
@@
vl_vb_init(struct vl_vertex_buffer *buffer, struct pipe_context *pipe,
size = width * height;
size = width * height;
- for (i = 0; i < VL_
MAX_PLANE
S; ++i) {
+ for (i = 0; i < VL_
NUM_COMPONENT
S; ++i) {
buffer->ycbcr[i].resource = pipe_buffer_create
(
pipe->screen,
PIPE_BIND_VERTEX_BUFFER,
PIPE_USAGE_STREAM,
buffer->ycbcr[i].resource = pipe_buffer_create
(
pipe->screen,
PIPE_BIND_VERTEX_BUFFER,
PIPE_USAGE_STREAM,
- sizeof(struct
pipe
_ycbcr_block) * size * 4
+ sizeof(struct
vl
_ycbcr_block) * size * 4
);
if (!buffer->ycbcr[i].resource)
goto error_ycbcr;
);
if (!buffer->ycbcr[i].resource)
goto error_ycbcr;
@@
-230,7
+233,7
@@
vl_vb_init(struct vl_vertex_buffer *buffer, struct pipe_context *pipe,
pipe->screen,
PIPE_BIND_VERTEX_BUFFER,
PIPE_USAGE_STREAM,
pipe->screen,
PIPE_BIND_VERTEX_BUFFER,
PIPE_USAGE_STREAM,
- sizeof(struct
pipe
_motionvector) * size
+ sizeof(struct
vl
_motionvector) * size
);
if (!buffer->mv[i].resource)
goto error_mv;
);
if (!buffer->mv[i].resource)
goto error_mv;
@@
-240,15
+243,21
@@
vl_vb_init(struct vl_vertex_buffer *buffer, struct pipe_context *pipe,
return true;
error_mv:
return true;
error_mv:
- for (i = 0; i < VL_
MAX_PLANE
S; ++i)
+ for (i = 0; i < VL_
NUM_COMPONENT
S; ++i)
pipe_resource_reference(&buffer->mv[i].resource, NULL);
error_ycbcr:
pipe_resource_reference(&buffer->mv[i].resource, NULL);
error_ycbcr:
- for (i = 0; i < VL_
MAX_PLANE
S; ++i)
+ for (i = 0; i < VL_
NUM_COMPONENT
S; ++i)
pipe_resource_reference(&buffer->ycbcr[i].resource, NULL);
return false;
}
pipe_resource_reference(&buffer->ycbcr[i].resource, NULL);
return false;
}
+unsigned
+vl_vb_attributes_per_plock(struct vl_vertex_buffer *buffer)
+{
+ return 1;
+}
+
struct pipe_vertex_buffer
vl_vb_get_ycbcr(struct vl_vertex_buffer *buffer, int component)
{
struct pipe_vertex_buffer
vl_vb_get_ycbcr(struct vl_vertex_buffer *buffer, int component)
{
@@
-256,7
+265,7
@@
vl_vb_get_ycbcr(struct vl_vertex_buffer *buffer, int component)
assert(buffer);
assert(buffer);
- buf.stride = sizeof(struct
pipe
_ycbcr_block);
+ buf.stride = sizeof(struct
vl
_ycbcr_block);
buf.buffer_offset = 0;
buf.buffer = buffer->ycbcr[component].resource;
buf.buffer_offset = 0;
buf.buffer = buffer->ycbcr[component].resource;
@@
-270,7
+279,7
@@
vl_vb_get_mv(struct vl_vertex_buffer *buffer, int motionvector)
assert(buffer);
assert(buffer);
- buf.stride = sizeof(struct
pipe
_motionvector);
+ buf.stride = sizeof(struct
vl
_motionvector);
buf.buffer_offset = 0;
buf.buffer = buffer->mv[motionvector].resource;
buf.buffer_offset = 0;
buf.buffer = buffer->mv[motionvector].resource;
@@
-284,12
+293,12
@@
vl_vb_map(struct vl_vertex_buffer *buffer, struct pipe_context *pipe)
assert(buffer && pipe);
assert(buffer && pipe);
- for (i = 0; i < VL_
MAX_PLANE
S; ++i) {
+ for (i = 0; i < VL_
NUM_COMPONENT
S; ++i) {
buffer->ycbcr[i].vertex_stream = pipe_buffer_map
(
pipe,
buffer->ycbcr[i].resource,
buffer->ycbcr[i].vertex_stream = pipe_buffer_map
(
pipe,
buffer->ycbcr[i].resource,
- PIPE_TRANSFER_WRITE | PIPE_TRANSFER_DISCARD,
+ PIPE_TRANSFER_WRITE | PIPE_TRANSFER_DISCARD
_RANGE
,
&buffer->ycbcr[i].transfer
);
}
&buffer->ycbcr[i].transfer
);
}
@@
-299,18
+308,18
@@
vl_vb_map(struct vl_vertex_buffer *buffer, struct pipe_context *pipe)
(
pipe,
buffer->mv[i].resource,
(
pipe,
buffer->mv[i].resource,
- PIPE_TRANSFER_WRITE | PIPE_TRANSFER_DISCARD,
+ PIPE_TRANSFER_WRITE | PIPE_TRANSFER_DISCARD
_RANGE
,
&buffer->mv[i].transfer
);
}
}
&buffer->mv[i].transfer
);
}
}
-struct
pipe
_ycbcr_block *
+struct
vl
_ycbcr_block *
vl_vb_get_ycbcr_stream(struct vl_vertex_buffer *buffer, int component)
{
assert(buffer);
vl_vb_get_ycbcr_stream(struct vl_vertex_buffer *buffer, int component)
{
assert(buffer);
- assert(component < VL_
MAX_PLANE
S);
+ assert(component < VL_
NUM_COMPONENT
S);
return buffer->ycbcr[component].vertex_stream;
}
return buffer->ycbcr[component].vertex_stream;
}
@@
-323,7
+332,7
@@
vl_vb_get_mv_stream_stride(struct vl_vertex_buffer *buffer)
return buffer->width;
}
return buffer->width;
}
-struct
pipe
_motionvector *
+struct
vl
_motionvector *
vl_vb_get_mv_stream(struct vl_vertex_buffer *buffer, int ref_frame)
{
assert(buffer);
vl_vb_get_mv_stream(struct vl_vertex_buffer *buffer, int ref_frame)
{
assert(buffer);
@@
-339,7
+348,7
@@
vl_vb_unmap(struct vl_vertex_buffer *buffer, struct pipe_context *pipe)
assert(buffer && pipe);
assert(buffer && pipe);
- for (i = 0; i < VL_
MAX_PLANE
S; ++i) {
+ for (i = 0; i < VL_
NUM_COMPONENT
S; ++i) {
pipe_buffer_unmap(pipe, buffer->ycbcr[i].transfer);
}
pipe_buffer_unmap(pipe, buffer->ycbcr[i].transfer);
}
@@
-355,7
+364,7
@@
vl_vb_cleanup(struct vl_vertex_buffer *buffer)
assert(buffer);
assert(buffer);
- for (i = 0; i < VL_
MAX_PLANE
S; ++i) {
+ for (i = 0; i < VL_
NUM_COMPONENT
S; ++i) {
pipe_resource_reference(&buffer->ycbcr[i].resource, NULL);
}
pipe_resource_reference(&buffer->ycbcr[i].resource, NULL);
}