From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2050.outbound.protection.outlook.com [40.107.93.50]) by gabe.freedesktop.org (Postfix) with ESMTPS id D959710E7E4 for ; Wed, 8 Nov 2023 16:40:18 +0000 (UTC) From: Harry Wentland To: Date: Wed, 8 Nov 2023 11:39:49 -0500 Message-ID: <20231108164006.106967-1-harry.wentland@amd.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Subject: [igt-dev] [RFC PATCH v3 00/12] IGT tests for the KMS Color Pipeline API List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Sasha McIntosh , Liviu Dudau , Victoria Brekenfeld , =?UTF-8?q?Michel=20D=C3=A4nzer?= , Sebastian Wick , Shashank Sharma , Christopher Braga , =?UTF-8?q?Jonas=20=C3=85dahl?= , Naseer Ahmed , Aleix Pol , Alexander Goins , Pekka Paalanen , Simon Ser , Hector Martin , Xaver Hugl , Sima , Joshua Ashton Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" List-ID: This series introduces support for * drm_colorop DRM objects * COLOR_PIPELINE plane property Kernel changes: https://gitlab.freedesktop.org/hwentland/linux/-/merge_requests/5 It also adds a new kms_colorop test case that tests the color pipeline API. The tests are designed to be easily extensible with a "transform" and "compare" function pointer for each test. The "transform" function performs the transformations under test via SW routines. The "compare" function compares the DRM/KMS result (via a writeback connector) with the result derived via the SW "transform". There are three tests for LUTs: - plane-srgb_eotf: pre-blending sRGB EOTF - plane-srgb_inv_eotf: pre-blending sRGB Inverse EOTF - plane-srgb_eotf-srgb_inv_eotf: pre-blending sRGB EOTF, followed by its inverse And a number of tests for matrices. v3: - Remove need for IOCTLs and libdrm changes - Test colorop properties with both atomic and legacy code paths - move enum drm_colorop_type to drm_mode.h - Add descriptions for public functions in lib (Kamil) - Use SPDX style license identifier (Kamil) - Replace Skia license comment with copyright note in file header - Fix kms_colorop subtests if applicable color pipeline not found Cc: Ville Syrjala Cc: Pekka Paalanen Cc: Simon Ser Cc: Harry Wentland Cc: Melissa Wen Cc: Jonas Ådahl Cc: Sebastian Wick Cc: Shashank Sharma Cc: Alexander Goins Cc: Joshua Ashton Cc: Michel Dänzer Cc: Aleix Pol Cc: Xaver Hugl Cc: Victoria Brekenfeld Cc: Sima Cc: Uma Shankar Cc: Naseer Ahmed Cc: Christopher Braga Cc: Abhinav Kumar Cc: Arthur Grillo Cc: Hector Martin Cc: Liviu Dudau Cc: Sasha McIntosh Harry Wentland (12): lib/drmtest: Add is_vkms_device() lib/igt_kms: Introduce DRM_CLIENT_CAP_PLANE_COLOR_PIPELINE include/drm-uapi: Add COLOROP object lib/igt_kms: Introduce drm_colorop and COLOR_PIPELINE tests/kms_properties: Add colorop properties test igt/color: Add SW color transform functionality lib/igt_fb: Add copy_fb function tests/kms_colorop: Add kms_colorop tests drm-uapi: Add 3x4 CTM lib/igt_kms: Add support for DATA colorop property lib/igt_color: Add support for 3x4 matrices tests/kms_colorop: Add 3x4 CTM tests include/drm-uapi/drm.h | 15 + include/drm-uapi/drm_mode.h | 22 ++ lib/drmtest.c | 5 + lib/drmtest.h | 1 + lib/igt_color.c | 344 +++++++++++++++++++++++ lib/igt_color.h | 114 ++++++++ lib/igt_fb.c | 40 ++- lib/igt_fb.h | 3 + lib/igt_kms.c | 306 +++++++++++++++++++- lib/igt_kms.h | 94 +++++++ lib/meson.build | 1 + tests/kms_colorop.c | 539 ++++++++++++++++++++++++++++++++++++ tests/kms_colorop.h | 124 +++++++++ tests/kms_properties.c | 76 +++++ tests/meson.build | 1 + 15 files changed, 1676 insertions(+), 9 deletions(-) create mode 100644 lib/igt_color.c create mode 100644 lib/igt_color.h create mode 100644 tests/kms_colorop.c create mode 100644 tests/kms_colorop.h -- 2.42.0