From: Swati Sharma <swati2.sharma@intel.com>
To: igt-dev@lists.freedesktop.org
Cc: kamil.konieczny@linux.intel.com, Swati Sharma <swati2.sharma@intel.com>
Subject: [PATCH i-g-t 1/2] tests/kms_feature_discovery: add HDR, VRR and DSC discovery
Date: Thu, 9 Jul 2026 12:28:51 +0530 [thread overview]
Message-ID: <20260709065852.3000382-2-swati2.sharma@intel.com> (raw)
In-Reply-To: <20260709065852.3000382-1-swati2.sharma@intel.com>
Add display feature discovery subtests for HDR, VRR and DSC.
HDR requires:
- IGT_CONNECTOR_MAX_BPC with max bpc >= 10
- IGT_CONNECTOR_HDR_OUTPUT_METADATA
- EDID HDR capability via igt_is_panel_hdr()
VRR checks connector vrr_capable support.
DSC checks sink support via igt_is_dsc_supported_by_sink().
v2:
- Rebase
Assisted-by: GitHub Copilot:Claude Opus 4.6
Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
---
tests/kms_feature_discovery.c | 77 +++++++++++++++++++++++++++++++++++
1 file changed, 77 insertions(+)
diff --git a/tests/kms_feature_discovery.c b/tests/kms_feature_discovery.c
index 28ec89c55..4ad2e6a74 100644
--- a/tests/kms_feature_discovery.c
+++ b/tests/kms_feature_discovery.c
@@ -36,6 +36,7 @@
#ifdef HAVE_CHAMELIUM
#include "igt_chamelium.h"
#endif
+#include "igt_hdr.h"
#include "igt_kms.h"
#include "igt_psr.h"
#include "igt_sysfs.h"
@@ -63,6 +64,18 @@
* SUBTEST: dp-mst
* Description: Make sure that we have DP-MST configuration.
*
+ * SUBTEST: hdr
+ * Description: Make sure that we have at least one HDR-capable panel.
+ * Mega feature: HDR
+ *
+ * SUBTEST: vrr
+ * Description: Make sure that we have at least one VRR-capable panel.
+ * Mega feature: VRR
+ *
+ * SUBTEST: dsc
+ * Description: Make sure that we have at least one DSC-capable sink.
+ * Mega feature: DSC
+ *
* arg[1].values: 1, 2, 3, 4
*/
@@ -174,5 +187,69 @@ int igt_main() {
}
igt_require_f(ret == 0, "No DP-MST configuration found.\n");
}
+
+ igt_describe("Make sure that we have at least one HDR-capable panel.");
+ igt_subtest("hdr") {
+ igt_output_t *output;
+ unsigned int max_bpc;
+ bool found = false;
+
+ for_each_connected_output(&display, output) {
+ if (!igt_output_has_prop(output, IGT_CONNECTOR_MAX_BPC))
+ continue;
+
+ if (!igt_get_output_max_bpc(output, &max_bpc) ||
+ max_bpc < 10)
+ continue;
+
+ if (!igt_output_has_prop(output,
+ IGT_CONNECTOR_HDR_OUTPUT_METADATA))
+ continue;
+
+ if (!igt_is_panel_hdr(fd, output))
+ continue;
+
+ found = true;
+ break;
+ }
+
+ igt_require_f(found,
+ "No HDR-capable panel found with max bpc, HDR metadata, and EDID HDR support.\n");
+ }
+
+ igt_describe("Make sure that we have at least one VRR-capable panel.");
+ igt_subtest("vrr") {
+ igt_output_t *output;
+ bool found = false;
+
+ for_each_connected_output(&display, output) {
+ if (!igt_output_has_prop(output, IGT_CONNECTOR_VRR_CAPABLE))
+ continue;
+
+ if (!igt_output_get_prop(output, IGT_CONNECTOR_VRR_CAPABLE))
+ continue;
+
+ found = true;
+ break;
+ }
+
+ igt_require_f(found, "No VRR-capable panel found.\n");
+ }
+
+ igt_describe("Make sure that we have at least one DSC-capable sink.");
+ igt_subtest("dsc") {
+ igt_output_t *output;
+ bool found = false;
+
+ for_each_connected_output(&display, output) {
+ if (!igt_is_dsc_supported_by_sink(fd, output->name))
+ continue;
+
+ found = true;
+ break;
+ }
+
+ igt_require_f(found, "No DSC-capable sink found.\n");
+ }
}
}
--
2.25.1
next prev parent reply other threads:[~2026-07-09 6:50 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-09 6:58 [PATCH i-g-t 0/2] tests/kms_feature_discovery: add HDR, VRR and DSC discovery Swati Sharma
2026-07-09 6:58 ` Swati Sharma [this message]
2026-07-09 13:59 ` [PATCH i-g-t 1/2] " Kamil Konieczny
2026-07-09 6:58 ` [PATCH i-g-t 2/2] tests/kms_feature_discovery: Log output count on skip Swati Sharma
2026-07-09 14:00 ` Kamil Konieczny
2026-07-09 19:39 ` ✓ Xe.CI.BAT: success for tests/kms_feature_discovery: add HDR, VRR and DSC discovery (rev2) Patchwork
2026-07-09 20:17 ` ✓ i915.CI.BAT: " Patchwork
2026-07-10 1:32 ` ✗ Xe.CI.FULL: failure " Patchwork
2026-07-10 22:23 ` ✗ i915.CI.Full: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260709065852.3000382-2-swati2.sharma@intel.com \
--to=swati2.sharma@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=kamil.konieczny@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox