diff options
author | Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> | 2020-03-27 20:42:29 +0100 |
---|---|---|
committer | Marge Bot <eric+marge@anholt.net> | 2020-03-30 11:05:52 +0000 |
commit | 716a065ac05b2347054077aea389d3c877585b6f (patch) | |
tree | 2b157eedf5696a29ceebe5ee1ba58fa33d212b13 /src/gallium/drivers/radeon/radeon_video.c | |
parent | d7008fe46a8f689ce4ee2b14b61dc39baebccaa8 (diff) |
radeon: switch to 3-spaces style
For clang-format config see the previous commit.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4319>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4319>
Diffstat (limited to 'src/gallium/drivers/radeon/radeon_video.c')
-rw-r--r-- | src/gallium/drivers/radeon/radeon_video.c | 124 |
1 files changed, 60 insertions, 64 deletions
diff --git a/src/gallium/drivers/radeon/radeon_video.c b/src/gallium/drivers/radeon/radeon_video.c index 0b45a5a0f36..8e2b1a3c87d 100644 --- a/src/gallium/drivers/radeon/radeon_video.c +++ b/src/gallium/drivers/radeon/radeon_video.c @@ -25,103 +25,99 @@ * **************************************************************************/ -#include <unistd.h> +#include "radeon_video.h" +#include "radeon_vce.h" +#include "radeonsi/si_pipe.h" #include "util/u_memory.h" #include "util/u_video.h" - #include "vl/vl_defines.h" #include "vl/vl_video_buffer.h" -#include "radeonsi/si_pipe.h" -#include "radeon_video.h" -#include "radeon_vce.h" +#include <unistd.h> /* generate an stream handle */ unsigned si_vid_alloc_stream_handle() { - static unsigned counter = 0; - unsigned stream_handle = 0; - unsigned pid = getpid(); - int i; + static unsigned counter = 0; + unsigned stream_handle = 0; + unsigned pid = getpid(); + int i; - for (i = 0; i < 32; ++i) - stream_handle |= ((pid >> i) & 1) << (31 - i); + for (i = 0; i < 32; ++i) + stream_handle |= ((pid >> i) & 1) << (31 - i); - stream_handle ^= ++counter; - return stream_handle; + stream_handle ^= ++counter; + return stream_handle; } /* create a buffer in the winsys */ -bool si_vid_create_buffer(struct pipe_screen *screen, struct rvid_buffer *buffer, - unsigned size, unsigned usage) +bool si_vid_create_buffer(struct pipe_screen *screen, struct rvid_buffer *buffer, unsigned size, + unsigned usage) { - memset(buffer, 0, sizeof(*buffer)); - buffer->usage = usage; + memset(buffer, 0, sizeof(*buffer)); + buffer->usage = usage; - /* Hardware buffer placement restrictions require the kernel to be - * able to move buffers around individually, so request a - * non-sub-allocated buffer. - */ - buffer->res = si_resource(pipe_buffer_create(screen, PIPE_BIND_SHARED, - usage, size)); + /* Hardware buffer placement restrictions require the kernel to be + * able to move buffers around individually, so request a + * non-sub-allocated buffer. + */ + buffer->res = si_resource(pipe_buffer_create(screen, PIPE_BIND_SHARED, usage, size)); - return buffer->res != NULL; + return buffer->res != NULL; } /* destroy a buffer */ void si_vid_destroy_buffer(struct rvid_buffer *buffer) { - si_resource_reference(&buffer->res, NULL); + si_resource_reference(&buffer->res, NULL); } /* reallocate a buffer, preserving its content */ bool si_vid_resize_buffer(struct pipe_screen *screen, struct radeon_cmdbuf *cs, - struct rvid_buffer *new_buf, unsigned new_size) + struct rvid_buffer *new_buf, unsigned new_size) { - struct si_screen *sscreen = (struct si_screen *)screen; - struct radeon_winsys* ws = sscreen->ws; - unsigned bytes = MIN2(new_buf->res->buf->size, new_size); - struct rvid_buffer old_buf = *new_buf; - void *src = NULL, *dst = NULL; - - if (!si_vid_create_buffer(screen, new_buf, new_size, new_buf->usage)) - goto error; - - src = ws->buffer_map(old_buf.res->buf, cs, - PIPE_TRANSFER_READ | RADEON_TRANSFER_TEMPORARY); - if (!src) - goto error; - - dst = ws->buffer_map(new_buf->res->buf, cs, - PIPE_TRANSFER_WRITE | RADEON_TRANSFER_TEMPORARY); - if (!dst) - goto error; - - memcpy(dst, src, bytes); - if (new_size > bytes) { - new_size -= bytes; - dst += bytes; - memset(dst, 0, new_size); - } - ws->buffer_unmap(new_buf->res->buf); - ws->buffer_unmap(old_buf.res->buf); - si_vid_destroy_buffer(&old_buf); - return true; + struct si_screen *sscreen = (struct si_screen *)screen; + struct radeon_winsys *ws = sscreen->ws; + unsigned bytes = MIN2(new_buf->res->buf->size, new_size); + struct rvid_buffer old_buf = *new_buf; + void *src = NULL, *dst = NULL; + + if (!si_vid_create_buffer(screen, new_buf, new_size, new_buf->usage)) + goto error; + + src = ws->buffer_map(old_buf.res->buf, cs, PIPE_TRANSFER_READ | RADEON_TRANSFER_TEMPORARY); + if (!src) + goto error; + + dst = ws->buffer_map(new_buf->res->buf, cs, PIPE_TRANSFER_WRITE | RADEON_TRANSFER_TEMPORARY); + if (!dst) + goto error; + + memcpy(dst, src, bytes); + if (new_size > bytes) { + new_size -= bytes; + dst += bytes; + memset(dst, 0, new_size); + } + ws->buffer_unmap(new_buf->res->buf); + ws->buffer_unmap(old_buf.res->buf); + si_vid_destroy_buffer(&old_buf); + return true; error: - if (src) - ws->buffer_unmap(old_buf.res->buf); - si_vid_destroy_buffer(new_buf); - *new_buf = old_buf; - return false; + if (src) + ws->buffer_unmap(old_buf.res->buf); + si_vid_destroy_buffer(new_buf); + *new_buf = old_buf; + return false; } /* clear the buffer with zeros */ -void si_vid_clear_buffer(struct pipe_context *context, struct rvid_buffer* buffer) +void si_vid_clear_buffer(struct pipe_context *context, struct rvid_buffer *buffer) { - struct si_context *sctx = (struct si_context*)context; + struct si_context *sctx = (struct si_context *)context; - si_sdma_clear_buffer(sctx, &buffer->res->b.b, 0, buffer->res->b.b.width0, 0); - context->flush(context, NULL, 0); + si_sdma_clear_buffer(sctx, &buffer->res->b.b, 0, buffer->res->b.b.width0, 0); + context->flush(context, NULL, 0); } |