diff options
author | Boris Brezillon <boris.brezillon@collabora.com> | 2020-12-16 08:40:33 +0100 |
---|---|---|
committer | Boris Brezillon <boris.brezillon@collabora.com> | 2021-01-04 17:05:42 +0100 |
commit | ca265b48d93f3f68a990a65c4a3ba786ac82f09e (patch) | |
tree | ab3d398d5c917b8da92d104c846c5e2fcb661980 | |
parent | ab1dec8dd4a5957b500423229c92af17ea52f3ef (diff) |
panfrost: Pass a dev object to panfrost_needs_explicit_stride()
So we can soon use the same path for Bifrost and Midgard.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125>
-rw-r--r-- | src/panfrost/lib/pan_texture.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/panfrost/lib/pan_texture.c b/src/panfrost/lib/pan_texture.c index 0bf526d1dcf..5d7351942e9 100644 --- a/src/panfrost/lib/pan_texture.c +++ b/src/panfrost/lib/pan_texture.c @@ -78,13 +78,18 @@ panfrost_modifier_to_layout(uint64_t modifier) * alignment requirements for their strides as it is */ static bool -panfrost_needs_explicit_stride(uint64_t modifier, +panfrost_needs_explicit_stride(const struct panfrost_device *dev, + uint64_t modifier, enum pipe_format format, struct panfrost_slice *slices, uint16_t width, unsigned first_level, unsigned last_level) { + /* Stride is explicit on Bifrost */ + if (dev->quirks & IS_BIFROST) + return true; + if (modifier != DRM_FORMAT_MOD_LINEAR) return false; @@ -396,8 +401,8 @@ panfrost_new_texture( util_format_description(format); bool manual_stride = - panfrost_needs_explicit_stride(modifier, format, slices, width, - first_level, last_level); + panfrost_needs_explicit_stride(dev, modifier, format, slices, + width, first_level, last_level); pan_pack(out, MIDGARD_TEXTURE, cfg) { cfg.width = u_minify(width, first_level); |