summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/v3d/v3d_resource.c
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2019-03-14 04:15:20 +0000
committerAlyssa Rosenzweig <[email protected]>2019-03-14 22:42:51 +0000
commitcca270bb035a4dd8c7e94a56c9ca42068c66acb9 (patch)
tree92e3638400da93f3374e6c928c3d73e240a246e2 /src/gallium/drivers/v3d/v3d_resource.c
parent8a1ab9a166dd358f0e71a1cc98e8b6c20b5d8822 (diff)
v3d: Use shared drm_find_modifier util
Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'src/gallium/drivers/v3d/v3d_resource.c')
-rw-r--r--src/gallium/drivers/v3d/v3d_resource.c18
1 files changed, 3 insertions, 15 deletions
diff --git a/src/gallium/drivers/v3d/v3d_resource.c b/src/gallium/drivers/v3d/v3d_resource.c
index ddecafe2ec9..71248e9ca1e 100644
--- a/src/gallium/drivers/v3d/v3d_resource.c
+++ b/src/gallium/drivers/v3d/v3d_resource.c
@@ -31,6 +31,7 @@
#include "util/u_transfer_helper.h"
#include "util/u_upload_mgr.h"
#include "util/u_format_zs.h"
+#include "util/u_drm.h"
#include "drm-uapi/drm_fourcc.h"
#include "v3d_screen.h"
@@ -685,19 +686,6 @@ v3d_resource_setup(struct pipe_screen *pscreen,
return rsc;
}
-static bool
-find_modifier(uint64_t needle, const uint64_t *haystack, int count)
-{
- int i;
-
- for (i = 0; i < count; i++) {
- if (haystack[i] == needle)
- return true;
- }
-
- return false;
-}
-
static struct pipe_resource *
v3d_resource_create_with_modifiers(struct pipe_screen *pscreen,
const struct pipe_resource *tmpl,
@@ -741,7 +729,7 @@ v3d_resource_create_with_modifiers(struct pipe_screen *pscreen,
return prsc;
}
- bool linear_ok = find_modifier(DRM_FORMAT_MOD_LINEAR, modifiers, count);
+ bool linear_ok = drm_find_modifier(DRM_FORMAT_MOD_LINEAR, modifiers, count);
struct v3d_resource *rsc = v3d_resource_setup(pscreen, tmpl);
struct pipe_resource *prsc = &rsc->base;
/* Use a tiled layout if we can, for better 3D performance. */
@@ -773,7 +761,7 @@ v3d_resource_create_with_modifiers(struct pipe_screen *pscreen,
linear_ok = true;
rsc->tiled = should_tile;
} else if (should_tile &&
- find_modifier(DRM_FORMAT_MOD_BROADCOM_UIF,
+ drm_find_modifier(DRM_FORMAT_MOD_BROADCOM_UIF,
modifiers, count)) {
rsc->tiled = true;
} else if (linear_ok) {