Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 0/4] Add vkms configfs testing
@ 2023-09-01  9:28 Marius Vlad
  2023-09-01  9:28 ` [igt-dev] [PATCH i-g-t 1/5] lib/drmtest: Add VKMS as a known driver type Marius Vlad
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Marius Vlad @ 2023-09-01  9:28 UTC (permalink / raw)
  To: igt-dev; +Cc: tzimmermann, yixie, seanpaul, daniel, brpol, igormtorrente

With this series we add some basic tests for sanity checking the
ConfigFS functionality into the vkms driver. This would allow to create
and to customize dynamically the entire DRM pipeline.

This small series adds a new library (igt_vkms) for creating the entire
pipeline, as well as enabling the device and set the connectors as
connected or disconnected. Further more it adds some helpers
(igt_configfs) to create the proper ConfigFS mount point.

The sub-tests in this series added are:

- a basic device test, that creates an entire pipeline with a primary
  plane
- an empty test, that doesn't create a primary plane and which should
  fail
- a test that creates multiple overlay and cursor planes
- a test that creates multiple pipelines
- a test similar to basic device test but that also disables the vkms
  device at the end

These kernel changes were written initially by Jim Shargo, and then were
picked up by Brandon Pollack. As of today the latest version is at 
https://patchwork.kernel.org/project/dri-devel/list/?series=780110

The i-g-t changes were also developed by Jim Shargo, and I've massaged
them a bit doing some minor changes since their inception. These changes
are:

- replaced all string strcat/strcpy with snprintfs
- renamed all _permit_ functions to _attach_
- added documentation for all public functions
- vkms_crtc_no_primary_test was fixed such that should it now fails
  as expected
- split the changes one more time, and group one of the patches 
  with the introduction of igt_configfs
- fixed skipping the (sub)tests if vkms wasn't found loaded

I've kept the original author as Jim was the original person
working on them.

For history purposes I've picked these up from 
https://gitlab.freedesktop.org/jshargo/igt-gpu-tools/-/merge_requests/1.

Jim Shargo (4):
  lib/drmtest: Add VKMS as a known driver type
  lib/confifs: Add helpers for mounting/unmounting configfs
  tests/vkms: Add a small library for VKMS testing
  tests/vkms: Add more tests for VKMS

 lib/drmtest.c              |  26 ++
 lib/drmtest.h              |   9 +-
 lib/igt.h                  |   3 +-
 lib/igt_aux.c              |  25 ++
 lib/igt_aux.h              |   2 +
 lib/igt_configfs.c         | 106 ++++++++
 lib/igt_configfs.h         |  36 +++
 lib/igt_debugfs.c          |  29 +--
 lib/igt_vkms.c             | 514 +++++++++++++++++++++++++++++++++++++
 lib/igt_vkms.h             |  66 +++++
 lib/meson.build            |   2 +
 tests/meson.build          |  13 +
 tests/vkms/vkms_configfs.c | 194 ++++++++++++++
 13 files changed, 995 insertions(+), 30 deletions(-)
 create mode 100644 lib/igt_configfs.c
 create mode 100644 lib/igt_configfs.h
 create mode 100644 lib/igt_vkms.c
 create mode 100644 lib/igt_vkms.h
 create mode 100644 tests/vkms/vkms_configfs.c

-- 
2.40.1

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-09-01  9:28 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-01  9:28 [igt-dev] [PATCH i-g-t 0/4] Add vkms configfs testing Marius Vlad
2023-09-01  9:28 ` [igt-dev] [PATCH i-g-t 1/5] lib/drmtest: Add VKMS as a known driver type Marius Vlad
2023-09-01  9:28 ` [igt-dev] [PATCH i-g-t 2/5] lib/confifs: Add helpers for mounting/unmounting configfs Marius Vlad
2023-09-01  9:28 ` [igt-dev] [PATCH i-g-t 3/5] tests/vkms: Add a small library for VKMS testing Marius Vlad
2023-09-01  9:28 ` [igt-dev] [PATCH i-g-t 4/5] tests/vkms: Add more tests for VKMS Marius Vlad

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox