From: Rob Clark Date: Mon, 25 Apr 2016 15:47:21 +0000 (-0400) Subject: freedreno: honor handle->offset X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2c8674f5a90f236b9e07b759d49911d79921bc78;p=mesa.git freedreno: honor handle->offset Signed-off-by: Rob Clark --- diff --git a/src/gallium/drivers/freedreno/freedreno_resource.c b/src/gallium/drivers/freedreno/freedreno_resource.c index 9aded3bb7fe..99affc492d1 100644 --- a/src/gallium/drivers/freedreno/freedreno_resource.c +++ b/src/gallium/drivers/freedreno/freedreno_resource.c @@ -43,6 +43,8 @@ #include +/* XXX this should go away, needed for 'struct winsys_handle' */ +#include "state_tracker/drm_driver.h" static bool pending(struct fd_resource *rsc, enum fd_resource_status status) @@ -637,8 +639,7 @@ fail: static struct pipe_resource * fd_resource_from_handle(struct pipe_screen *pscreen, const struct pipe_resource *tmpl, - struct winsys_handle *handle, - unsigned usage) + struct winsys_handle *handle, unsigned usage) { struct fd_resource *rsc = CALLOC_STRUCT(fd_resource); struct fd_resource_slice *slice = &rsc->slices[0]; @@ -669,6 +670,7 @@ fd_resource_from_handle(struct pipe_screen *pscreen, rsc->base.vtbl = &fd_resource_vtbl; rsc->cpp = util_format_get_blocksize(tmpl->format); slice->pitch /= rsc->cpp; + slice->offset = handle->offset; assert(rsc->cpp);