mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-25 08:40:11 +01:00
radeon_winsys.h: add a parameter to buffer_from_handle
Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13362>
This commit is contained in:
parent
e9c3dbd046
commit
a905072521
6 changed files with 12 additions and 8 deletions
|
|
@ -1167,7 +1167,7 @@ struct pipe_resource *r300_texture_from_handle(struct pipe_screen *screen,
|
|||
return NULL;
|
||||
}
|
||||
|
||||
buffer = rws->buffer_from_handle(rws, whandle, 0);
|
||||
buffer = rws->buffer_from_handle(rws, whandle, 0, false);
|
||||
if (!buffer)
|
||||
return NULL;
|
||||
|
||||
|
|
|
|||
|
|
@ -1124,7 +1124,7 @@ static struct pipe_resource *r600_texture_from_handle(struct pipe_screen *screen
|
|||
return NULL;
|
||||
|
||||
buf = rscreen->ws->buffer_from_handle(rscreen->ws, whandle,
|
||||
rscreen->info.max_alignment);
|
||||
rscreen->info.max_alignment, false);
|
||||
if (!buf)
|
||||
return NULL;
|
||||
|
||||
|
|
@ -1844,7 +1844,7 @@ r600_memobj_from_handle(struct pipe_screen *screen,
|
|||
return NULL;
|
||||
|
||||
buf = rscreen->ws->buffer_from_handle(rscreen->ws, whandle,
|
||||
rscreen->info.max_alignment);
|
||||
rscreen->info.max_alignment, false);
|
||||
if (!buf) {
|
||||
free(memobj);
|
||||
return NULL;
|
||||
|
|
|
|||
|
|
@ -383,7 +383,7 @@ struct radeon_winsys {
|
|||
* tracker.
|
||||
*/
|
||||
struct pb_buffer *(*buffer_from_handle)(struct radeon_winsys *ws, struct winsys_handle *whandle,
|
||||
unsigned vm_alignment);
|
||||
unsigned vm_alignment, bool is_prime_linear_buffer);
|
||||
|
||||
/**
|
||||
* Get a winsys buffer from a user pointer. The resulting buffer can't
|
||||
|
|
|
|||
|
|
@ -1579,7 +1579,9 @@ static struct pipe_resource *si_texture_from_handle(struct pipe_screen *screen,
|
|||
templ->last_level != 0)
|
||||
return NULL;
|
||||
|
||||
buf = sscreen->ws->buffer_from_handle(sscreen->ws, whandle, sscreen->info.max_alignment);
|
||||
buf = sscreen->ws->buffer_from_handle(sscreen->ws, whandle,
|
||||
sscreen->info.max_alignment,
|
||||
templ->bind & PIPE_BIND_DRI_PRIME);
|
||||
if (!buf)
|
||||
return NULL;
|
||||
|
||||
|
|
@ -2127,7 +2129,7 @@ si_memobj_from_handle(struct pipe_screen *screen, struct winsys_handle *whandle,
|
|||
if (!memobj)
|
||||
return NULL;
|
||||
|
||||
buf = sscreen->ws->buffer_from_handle(sscreen->ws, whandle, sscreen->info.max_alignment);
|
||||
buf = sscreen->ws->buffer_from_handle(sscreen->ws, whandle, sscreen->info.max_alignment, false);
|
||||
if (!buf) {
|
||||
free(memobj);
|
||||
return NULL;
|
||||
|
|
|
|||
|
|
@ -1494,7 +1494,8 @@ amdgpu_buffer_create(struct radeon_winsys *ws,
|
|||
|
||||
static struct pb_buffer *amdgpu_bo_from_handle(struct radeon_winsys *rws,
|
||||
struct winsys_handle *whandle,
|
||||
unsigned vm_alignment)
|
||||
unsigned vm_alignment,
|
||||
bool is_prime_linear_buffer)
|
||||
{
|
||||
struct amdgpu_winsys *ws = amdgpu_winsys(rws);
|
||||
struct amdgpu_winsys_bo *bo = NULL;
|
||||
|
|
|
|||
|
|
@ -1185,7 +1185,8 @@ static struct pb_buffer *radeon_winsys_bo_from_ptr(struct radeon_winsys *rws,
|
|||
|
||||
static struct pb_buffer *radeon_winsys_bo_from_handle(struct radeon_winsys *rws,
|
||||
struct winsys_handle *whandle,
|
||||
unsigned vm_alignment)
|
||||
unsigned vm_alignment,
|
||||
bool is_dri_prime_linear_buffer)
|
||||
{
|
||||
struct radeon_drm_winsys *ws = radeon_drm_winsys(rws);
|
||||
struct radeon_bo *bo;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue