summaryrefslogtreecommitdiff
path: root/tests/kms_writeback.c
diff options
context:
space:
mode:
authorAbhinav Kumar <quic_abhinavk@quicinc.com>2024-05-10 11:09:35 -0700
committerKamil Konieczny <kamil.konieczny@linux.intel.com>2024-05-13 14:54:04 +0200
commitdc2d7fb4f978048b87707ea9ec32da748b01b378 (patch)
tree0d71e37a402040d6ab59fc1bd6e8ced0a595ee98 /tests/kms_writeback.c
parent86712f2effc8ba6690c7e165ad63904416763b75 (diff)
lib/igt_kms: move setting DRM_CLIENT_CAP_WRITEBACK_CONNECTORS to kms_writeback
Currently DRM_CLIENT_CAP_WRITEBACK_CONNECTORS is set in the igt_display_require() which is invoked for all IGT tests irrespective of whether the rest of the writeback connector properties such as the FB_ID are set. For the writeback connectors to function properly, additional setup steps are required (like setting up the output buffers and submitting the job). These steps are not a part of the default IGT setup, so there is no guarantee that the pipeline will be executed at all. This results in regressions for msm boards across multiple IGT tests on writeback connectors such as CTM related tests where CRC needs to be collected after the CTM has been applied in hardware. It is unclear whether this is intentional to be able to run all IGT tests even with writeback connector or it is only kms_writeback which is supposed to be the one. Lets try with the latter approach by setting DRM_CLIENT_CAP_WRITEBACK_CONNECTORS only within kms_writeback. changes since RFC: - minor fixes to commit message changes in v2: - use igt_require_f to print descriptive message - add msm card failure details in commit text Reviewed-by: Rob Clark <robdclark@gmail.com> Acked-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Acked-by: Kamil Konieczny <kamil.konieczny@linux.intel.com> Acked-by: Petri Latvala <adrinael@adrinael.net> Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Diffstat (limited to 'tests/kms_writeback.c')
-rw-r--r--tests/kms_writeback.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/tests/kms_writeback.c b/tests/kms_writeback.c
index 6cd685b37..f89b2d62f 100644
--- a/tests/kms_writeback.c
+++ b/tests/kms_writeback.c
@@ -558,6 +558,7 @@ igt_main_args("b:c:f:dl", long_options, help_str, opt_handler, NULL)
igt_fb_t input_fb, input_fb_10bit;
drmModeModeInfo mode;
unsigned int fb_id;
+ int ret;
memset(&display, 0, sizeof(display));
@@ -570,6 +571,10 @@ igt_main_args("b:c:f:dl", long_options, help_str, opt_handler, NULL)
igt_require(display.is_atomic);
+ ret = drmSetClientCap(display.drm_fd, DRM_CLIENT_CAP_WRITEBACK_CONNECTORS, 1);
+
+ igt_require_f(!ret, "error setting DRM_CLIENT_CAP_WRITEBACK_CONNECTORS\n");
+
output = kms_writeback_get_output(&display);
igt_require(output);