mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-28 03:50:13 +01:00
etnaviv: fold etna_screen_bo_get_handle into etna_resource_get_handle
There is no point in keeping this indirection. Makes the code easier to follow. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-by: Wladimir J. van der Laan <laanwj@gmail.com> (v1) Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
This commit is contained in:
parent
8a44aa5043
commit
eebf6ee6e9
3 changed files with 16 additions and 28 deletions
|
|
@ -479,12 +479,23 @@ etna_resource_get_handle(struct pipe_screen *pscreen,
|
|||
if (rsc->external)
|
||||
rsc = etna_resource(rsc->external);
|
||||
|
||||
if (handle->type == DRM_API_HANDLE_TYPE_KMS &&
|
||||
renderonly_get_handle(scanout, handle))
|
||||
return TRUE;
|
||||
handle->stride = rsc->levels[0].stride;
|
||||
|
||||
return etna_screen_bo_get_handle(pscreen, rsc->bo, rsc->levels[0].stride,
|
||||
handle);
|
||||
if (handle->type == DRM_API_HANDLE_TYPE_SHARED) {
|
||||
return etna_bo_get_name(rsc->bo, &handle->handle) == 0;
|
||||
} else if (handle->type == DRM_API_HANDLE_TYPE_KMS) {
|
||||
if (renderonly_get_handle(scanout, handle)) {
|
||||
return TRUE;
|
||||
} else {
|
||||
handle->handle = etna_bo_handle(rsc->bo);
|
||||
return TRUE;
|
||||
}
|
||||
} else if (handle->type == DRM_API_HANDLE_TYPE_FD) {
|
||||
handle->handle = etna_bo_dmabuf(rsc->bo);
|
||||
return TRUE;
|
||||
} else {
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
|
|
@ -708,25 +708,6 @@ fail:
|
|||
return false;
|
||||
}
|
||||
|
||||
boolean
|
||||
etna_screen_bo_get_handle(struct pipe_screen *pscreen, struct etna_bo *bo,
|
||||
unsigned stride, struct winsys_handle *whandle)
|
||||
{
|
||||
whandle->stride = stride;
|
||||
|
||||
if (whandle->type == DRM_API_HANDLE_TYPE_SHARED) {
|
||||
return etna_bo_get_name(bo, &whandle->handle) == 0;
|
||||
} else if (whandle->type == DRM_API_HANDLE_TYPE_KMS) {
|
||||
whandle->handle = etna_bo_handle(bo);
|
||||
return TRUE;
|
||||
} else if (whandle->type == DRM_API_HANDLE_TYPE_FD) {
|
||||
whandle->handle = etna_bo_dmabuf(bo);
|
||||
return TRUE;
|
||||
} else {
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
struct etna_bo *
|
||||
etna_screen_bo_from_handle(struct pipe_screen *pscreen,
|
||||
struct winsys_handle *whandle, unsigned *out_stride)
|
||||
|
|
|
|||
|
|
@ -84,10 +84,6 @@ etna_screen(struct pipe_screen *pscreen)
|
|||
return (struct etna_screen *)pscreen;
|
||||
}
|
||||
|
||||
boolean
|
||||
etna_screen_bo_get_handle(struct pipe_screen *pscreen, struct etna_bo *bo,
|
||||
unsigned stride, struct winsys_handle *whandle);
|
||||
|
||||
struct etna_bo *
|
||||
etna_screen_bo_from_handle(struct pipe_screen *pscreen,
|
||||
struct winsys_handle *whandle, unsigned *out_stride);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue