Mesa (main): intel/isl: Add isl_view::min_lod_clamp for IVB+
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue May 31 14:11:28 UTC 2022
Module: Mesa
Branch: main
Commit: a19ed1f46ad56e1c4c34e022e14027461c90278e
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a19ed1f46ad56e1c4c34e022e14027461c90278e
Author: Jason Ekstrand <jason at jlekstrand.net>
Date: Tue Jul 6 10:54:28 2021 -0500
intel/isl: Add isl_view::min_lod_clamp for IVB+
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14129>
---
src/intel/isl/isl.h | 8 ++++++++
src/intel/isl/isl_surface_state.c | 6 ++++++
2 files changed, 14 insertions(+)
diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h
index c2db422fc8e..9d348526fab 100644
--- a/src/intel/isl/isl.h
+++ b/src/intel/isl/isl.h
@@ -1609,6 +1609,14 @@ struct isl_view {
*/
uint32_t array_len;
+ /**
+ * Minimum LOD
+ *
+ * Similar to sampler minimum LOD, the computed LOD is clamped to be at
+ * least min_lod_clamp.
+ */
+ float min_lod_clamp;
+
struct isl_swizzle swizzle;
};
diff --git a/src/intel/isl/isl_surface_state.c b/src/intel/isl/isl_surface_state.c
index 8a5de4b3848..4cbcd64d28e 100644
--- a/src/intel/isl/isl_surface_state.c
+++ b/src/intel/isl/isl_surface_state.c
@@ -446,6 +446,12 @@ isl_genX(surf_fill_state_s)(const struct isl_device *dev, void *state,
#endif
#endif
+#if GFX_VER >= 7
+ s.ResourceMinLOD = info->view->min_lod_clamp;
+#else
+ assert(info->view->min_lod_clamp == 0);
+#endif
+
#if (GFX_VERx10 >= 75)
if (info->view->usage & ISL_SURF_USAGE_RENDER_TARGET_BIT)
assert(isl_swizzle_supports_rendering(dev->info, info->view->swizzle));
More information about the mesa-commit
mailing list