From 83b8ca58e12ee13c4d5cd51c30c0fd19bf4f8bd2 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 10 Mar 2016 15:18:31 -0800 Subject: [PATCH] vc4: Detect and report kernel support for branching. --- src/gallium/drivers/vc4/vc4_screen.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/vc4/vc4_screen.c b/src/gallium/drivers/vc4/vc4_screen.c index 5c17c55c938..f295ae05431 100644 --- a/src/gallium/drivers/vc4/vc4_screen.c +++ b/src/gallium/drivers/vc4/vc4_screen.c @@ -32,6 +32,8 @@ #include "util/u_format.h" #include "util/ralloc.h" +#include +#include "vc4_drm.h" #include "vc4_screen.h" #include "vc4_context.h" #include "vc4_resource.h" @@ -502,9 +504,17 @@ vc4_supports_branches(struct vc4_screen *screen) { #if USE_VC4_SIMULATOR return true; -#else - return false; #endif + + struct drm_vc4_get_param p = { + .param = DRM_VC4_PARAM_SUPPORTS_BRANCHES, + }; + int ret = drmIoctl(screen->fd, DRM_IOCTL_VC4_GET_PARAM, &p); + + if (ret != 0) + return false; + + return p.value; } struct pipe_screen * -- 2.30.2