Mesa (master): freedreno: Set up supported modifiers in fd*_resource_screen_init()
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Feb 5 22:23:35 UTC 2020
Module: Mesa
Branch: master
Commit: af6fb4f0a9ffe3250612acd3eb382f5eb5227e48
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=af6fb4f0a9ffe3250612acd3eb382f5eb5227e48
Author: Kristian H. Kristensen <hoegsberg at google.com>
Date: Tue Feb 4 17:41:27 2020 -0800
freedreno: Set up supported modifiers in fd*_resource_screen_init()
Keep the modifier logic together.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3704>
---
src/gallium/drivers/freedreno/a6xx/fd6_screen.c | 8 --------
src/gallium/drivers/freedreno/freedreno_resource.c | 8 ++++++++
src/gallium/drivers/freedreno/freedreno_screen.c | 9 ---------
3 files changed, 8 insertions(+), 17 deletions(-)
diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_screen.c b/src/gallium/drivers/freedreno/a6xx/fd6_screen.c
index 32d06ed13a4..bf1f9680c7c 100644
--- a/src/gallium/drivers/freedreno/a6xx/fd6_screen.c
+++ b/src/gallium/drivers/freedreno/a6xx/fd6_screen.c
@@ -138,14 +138,6 @@ fd6_screen_init(struct pipe_screen *pscreen)
screen->tile_mode = fd6_tile_mode;
- static const uint64_t supported_modifiers[] = {
- DRM_FORMAT_MOD_LINEAR,
- DRM_FORMAT_MOD_QCOM_COMPRESSED,
- };
-
- screen->supported_modifiers = supported_modifiers;
- screen->num_supported_modifiers = ARRAY_SIZE(supported_modifiers);
-
fd6_resource_screen_init(pscreen);
fd6_emit_init_screen(pscreen);
}
diff --git a/src/gallium/drivers/freedreno/freedreno_resource.c b/src/gallium/drivers/freedreno/freedreno_resource.c
index 59b1d9793fa..54bf359a0cc 100644
--- a/src/gallium/drivers/freedreno/freedreno_resource.c
+++ b/src/gallium/drivers/freedreno/freedreno_resource.c
@@ -1206,6 +1206,10 @@ static const struct u_transfer_vtbl transfer_vtbl = {
.get_stencil = fd_resource_get_stencil,
};
+static const uint64_t supported_modifiers[] = {
+ DRM_FORMAT_MOD_LINEAR,
+};
+
void
fd_resource_screen_init(struct pipe_screen *pscreen)
{
@@ -1226,6 +1230,10 @@ fd_resource_screen_init(struct pipe_screen *pscreen)
if (!screen->setup_slices)
screen->setup_slices = fd_setup_slices;
+ if (!screen->supported_modifiers) {
+ screen->supported_modifiers = supported_modifiers;
+ screen->num_supported_modifiers = ARRAY_SIZE(supported_modifiers);
+ }
}
static void
diff --git a/src/gallium/drivers/freedreno/freedreno_screen.c b/src/gallium/drivers/freedreno/freedreno_screen.c
index 3c0ed69a9cb..f79d858e11e 100644
--- a/src/gallium/drivers/freedreno/freedreno_screen.c
+++ b/src/gallium/drivers/freedreno/freedreno_screen.c
@@ -985,15 +985,6 @@ fd_screen_create(struct fd_device *dev, struct renderonly *ro)
pscreen->query_dmabuf_modifiers = fd_screen_query_dmabuf_modifiers;
- if (!screen->supported_modifiers) {
- static const uint64_t supported_modifiers[] = {
- DRM_FORMAT_MOD_LINEAR,
- };
-
- screen->supported_modifiers = supported_modifiers;
- screen->num_supported_modifiers = ARRAY_SIZE(supported_modifiers);
- }
-
slab_create_parent(&screen->transfer_pool, sizeof(struct fd_transfer), 16);
return pscreen;
More information about the mesa-commit
mailing list