[PATCH i-g-t v3 02/41] lib/vkms: Add minimal VKMS library and test device default files

José Expósito jose.exposito89 at gmail.com
Tue Aug 5 09:20:09 UTC 2025


Hi Louis,

On Wed, Jul 16, 2025 at 11:22:38AM +0200, Louis Chauvet wrote:
> 
> 
> Le 15/07/2025 à 12:24, José Expósito a écrit :
> > Create a library containing helpers for creating VKMS devices and
> > configuring them dynamically using configfs.
> > For the moment, add the minimal number of helpers to be able to start
> > testing VKMS's configfs support: Create device, destroy device and
> > destroy all devices.
> > 
> > Also, include the simplest possible test using those helpers (checking
> > the device's default files) and the scaffolding required to generate
> > the documentation.
> > 
> > Co-developed-by: Jim Shargo <jshargo at chromium.org>
> > Signed-off-by: Jim Shargo <jshargo at chromium.org>
> > Co-developed-by: Marius Vlad <marius.vlad at collabora.com>
> > Signed-off-by: Marius Vlad <marius.vlad at collabora.com>
> > Signed-off-by: José Expósito <jose.exposito89 at gmail.com>
> > ---
> >   docs/testplan/meson.build        |   7 +-
> >   lib/igt_vkms.c                   | 207 +++++++++++++++++++++++++++++++
> >   lib/igt_vkms.h                   |  27 ++++
> >   lib/meson.build                  |   1 +
> >   meson.build                      |   8 ++
> >   tests/meson.build                |   2 +
> >   tests/vkms/meson.build           |  13 ++
> >   tests/vkms/vkms_configfs.c       | 132 ++++++++++++++++++++
> >   tests/vkms/vkms_test_config.json |  72 +++++++++++
> >   9 files changed, 467 insertions(+), 2 deletions(-)
> >   create mode 100644 lib/igt_vkms.c
> >   create mode 100644 lib/igt_vkms.h
> >   create mode 100644 tests/vkms/meson.build
> >   create mode 100644 tests/vkms/vkms_configfs.c
> >   create mode 100644 tests/vkms/vkms_test_config.json
> > 
> > [...]
> > diff --git a/lib/igt_vkms.c b/lib/igt_vkms.c
> > new file mode 100644
> > index 000000000..fa41f741e
> > --- /dev/null
> > +++ b/lib/igt_vkms.c
> > [...]
> > +static int detach_pipeline_items(const char *path, const struct stat *info,
> > +				 const int typeflag, struct FTW *pathinfo)
> 
> As there will be a new "color pipeline" in DRM, can you rename this set of
> functions to avoid confusion? I don't have preference for the name, what do
> you think about "dc" for display controller?
> 
> (ditto for the rest of the series)
> 
> With this modification:
> Reviewed-by: Louis Chauvet <louis.chauvet at bootlin.com>

The "pipeline" here refers to the display pipeline as in the docs:
https://docs.kernel.org/gpu/drm-kms.html#overview

Given that the VKMS driver is a display driver and that "enum vkms_pipeline_item"
contains those entites, I find easy to understand what we are talking about.

What do you think about leaving the display pipeline as "pipeline" and, once we
add the color pipeline, use "color_pipeline"?

I can rename all instances of "pipeline" to "display_pipeline" (with a lot of work,
100 occurences in igt_vkms.c in 41 patches), but I find it too verbose for little
clarification.

Jose

> > [...]
> 
> -- 
> Louis Chauvet, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com


More information about the igt-dev mailing list