[PATCH i-g-t v5 0/3] tests/kms_writeback: Add clone mode subtest
Jessica Zhang
quic_jesszhan at quicinc.com
Wed Jan 29 03:29:46 UTC 2025
Add a subtest that will iterate through all pairs of
non-writeback and writeback cloned outputs and dump the writeback
framebuffer for each pair. It also supports performing CRC validation on
each cloned WB pair.
This series includes:
- 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 or perform CRC validation on all
writeback+non-writeback cloned pairs
To validate the clone mode buffer via CRC, run the following command:
./build/tests/kms_writeback [--run-subtest check-valid-clones]
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 check-valid-clones] -d
This will output a file named <file name>-encoder<writeback encoder
id>-encoder<primary display encoder id>
---
Changes in v6:
- igt_output_clone_invalid -> igt_output_is_valid_clone (for
readability)
- Refresh output before checking if nonwb_output and writeback output
are valid clones so that the check-valid-clones subtest doesn't fail
for drivers where there are no clones
- Added num_clones counter to mark check-valid-clones subtest as skipped
for drivers with no clones
Changes in v5:
- Added check for pipes in use back to igt_display_refresh (Abhinav)
- igt_output_clone_valid -> igt_output_clone_invalid (the check returns
true if the encoder bit *isn't* in the possible_clones mask
- Added support for CRC validation of cloned WB output
- Link to v4: https://lore.kernel.org/r/20240925-igt-cwb-v4-0-e516cd1e888e@quicinc.com
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 subtest for valid clone mode
lib/igt_kms.c | 64 ++++++++++++++++++++++++++++++--
lib/igt_kms.h | 2 +
tests/kms_setmode.c | 14 +------
tests/kms_writeback.c | 101 ++++++++++++++++++++++++++++++++++++++++++++++++--
4 files changed, 162 insertions(+), 19 deletions(-)
---
base-commit: 76102a17560c6e6fc6528db29286b0266ccc48ef
change-id: 20240827-igt-cwb-23fd81d3a7a4
Best regards,
--
Jessica Zhang <quic_jesszhan at quicinc.com>
More information about the igt-dev
mailing list