[PATCH i-g-t v4 0/4] tests/kms_writeback: Add clone mode subtest

Jessica Zhang quic_jesszhan at quicinc.com
Wed Sep 25 20:37:17 UTC 2024


Add a subtest that will iterate through all pairs of
non-writeback and writeback cloned outputs and dump the writeback
framebuffer for each pair.

This series includes:

- Fixes for properly cleaning up the kms_writeback state
- Adjust the duplicate pipe check in igt_display_refresh() to allow for
  combinations of valid clones
- Moving the writeback dump to its own subtest
- Adding a subtest to dump all writeback+non-writeback cloned pairs

This series depends on this DRM framework change [1] to avoid issues
where modeset isn't happening when the writeback and primary display
outputs have the same mode.

[1] https://patchwork.freedesktop.org/series/138284/

To dump the clone mode buffer, run the following command:

IGT_FRAME_DUMP_PATH=<dump path> FRAME_PNG_FILE_NAME=<file name> \
	./build/tests/kms_writeback [--run-subtest dump-valid-clones] -d

This will output a file named <file name>-encoder<writeback encoder
id>-encoder<primary display encoder id>

---
Changes in v4:
- Fix compiler issues with igt_output_clone_valid()
- Add a NULL commit to clean up each non-writeback output
- Link to v3: https://lore.kernel.org/r/20240919-igt-cwb-v3-0-2bb3161f1f96@quicinc.com

Changes in v3:
- Dropped change to force a modeset after igt_display_require()
- Fixed incorrect author name
- Grab the primary display mode as part of the clone mode subtest
  (instead of requiring user to specify the mode)
- Link to v2: https://lore.kernel.org/r/20240828-igt-cwb-v2-0-7b255c730c55@quicinc.com

Changes in v2:
- Corrected author email
- Link to v1: https://lore.kernel.org/r/20240828-igt-cwb-v1-0-48aee421fc97@quicinc.com

---
Esha Bharadwaj (3):
      lib/igt_kms: Add helper to get encoder index
      lib/igt_kms: loosen duplicate check in igt_display_refresh
      tests/kms_writeback: Add dump for valid clone mode

Jessica Zhang (1):
      tests/kms_writeback: clear writeback properties in teardown path

 lib/igt_kms.c         |  57 +++++++++++++++++++++++-----
 lib/igt_kms.h         |   2 +
 tests/kms_setmode.c   |  14 +------
 tests/kms_writeback.c | 100 +++++++++++++++++++++++++++++++++++++++++++-------
 4 files changed, 139 insertions(+), 34 deletions(-)
---
base-commit: 52b3f11e13a18b5dc17d1ac647ac380b9b1ea764
change-id: 20240827-igt-cwb-23fd81d3a7a4

Best regards,
-- 
Jessica Zhang <quic_jesszhan at quicinc.com>



More information about the igt-dev mailing list