[igt-dev] [PATCH 1/2] tests/kms_plane: Handle hw without legacy gamma support

Rob Clark robdclark at gmail.com
Tue Aug 8 14:53:33 UTC 2023


From: Rob Clark <robdclark at chromium.org>

Skip the legacy gamma on hw that doesn't support it, instead of failing.
The legacy LUT support was used to drop the precision down to 6 bits, to
paper over errors introduced y RGB<->YCbCr conversion, but this isn't
necessarily needed on all hw.

v2: igt_require(lut_size > 0) instead
v3: simplify patch

Signed-off-by: Rob Clark <robdclark at chromium.org>
Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
---
 tests/kms_plane.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 67cff61d6cd1..a444cdca23e2 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -469,6 +469,10 @@ static void set_legacy_lut(data_t *data, enum pipe pipe,
 	lut_size = crtc->gamma_size;
 	drmModeFreeCrtc(crtc);
 
+	/* Skip if legacy LUT is not supported: */
+	if (!lut_size)
+		return;
+
 	lut = malloc(sizeof(uint16_t) * lut_size);
 
 	for (i = 0; i < lut_size; i++)
-- 
2.41.0



More information about the igt-dev mailing list