From d93c5c314882ea2d5befb6cb14bc8062e57dc703 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Thu, 7 Mar 2019 03:24:45 +0000 Subject: [PATCH] panfrost: Cleanup needless if in create_bo I'm not sure why we were checking for these additional criteria (likely inherited from some other driver); remove the needless checks to cleanup the code and perhaps fix some bugs down the line. Signed-off-by: Alyssa Rosenzweig Reviewed-by: Tomeu Vizoso --- src/gallium/drivers/panfrost/pan_resource.c | 56 ++++++++++----------- 1 file changed, 26 insertions(+), 30 deletions(-) diff --git a/src/gallium/drivers/panfrost/pan_resource.c b/src/gallium/drivers/panfrost/pan_resource.c index b869170b824..8fe51bc8d2d 100644 --- a/src/gallium/drivers/panfrost/pan_resource.c +++ b/src/gallium/drivers/panfrost/pan_resource.c @@ -248,37 +248,33 @@ panfrost_resource_create(struct pipe_screen *screen, assert(0); } - if ((template->bind & PIPE_BIND_RENDER_TARGET) || (template->bind & PIPE_BIND_DEPTH_STENCIL)) { - if (template->bind & PIPE_BIND_DISPLAY_TARGET || - template->bind & PIPE_BIND_SCANOUT || - template->bind & PIPE_BIND_SHARED) { - struct pipe_resource scanout_templat = *template; - struct renderonly_scanout *scanout; - struct winsys_handle handle; - - /* TODO: align width0 and height0? */ - - scanout = renderonly_scanout_for_resource(&scanout_templat, - pscreen->ro, &handle); - if (!scanout) - return NULL; - - assert(handle.type == WINSYS_HANDLE_TYPE_FD); - /* TODO: handle modifiers? */ - so = pan_resource(screen->resource_from_handle(screen, template, - &handle, - PIPE_HANDLE_USAGE_FRAMEBUFFER_WRITE)); - close(handle.handle); - if (!so) - return NULL; - - so->scanout = scanout; - pscreen->display_target = so; - } else { - so->bo = panfrost_create_bo(pscreen, template); - } + if (template->bind & PIPE_BIND_DISPLAY_TARGET || + template->bind & PIPE_BIND_SCANOUT || + template->bind & PIPE_BIND_SHARED) { + struct pipe_resource scanout_templat = *template; + struct renderonly_scanout *scanout; + struct winsys_handle handle; + + /* TODO: align width0 and height0? */ + + scanout = renderonly_scanout_for_resource(&scanout_templat, + pscreen->ro, &handle); + if (!scanout) + return NULL; + + assert(handle.type == WINSYS_HANDLE_TYPE_FD); + /* TODO: handle modifiers? */ + so = pan_resource(screen->resource_from_handle(screen, template, + &handle, + PIPE_HANDLE_USAGE_FRAMEBUFFER_WRITE)); + close(handle.handle); + if (!so) + return NULL; + + so->scanout = scanout; + pscreen->display_target = so; } else { - so->bo = panfrost_create_bo(pscreen, template); + so->bo = panfrost_create_bo(pscreen, template); } return (struct pipe_resource *)so; -- 2.30.2