[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250225175936.7223-1-jose.exposito89@gmail.com>
Date: Tue, 25 Feb 2025 18:59:20 +0100
From: José Expósito <jose.exposito89@...il.com>
To: louis.chauvet@...tlin.com
Cc: hamohammed.sa@...il.com,
simona@...ll.ch,
melissa.srw@...il.com,
maarten.lankhorst@...ux.intel.com,
mripard@...nel.org,
tzimmermann@...e.de,
airlied@...il.com,
dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org,
José Expósito <jose.exposito89@...il.com>
Subject: [PATCH v2 00/16] drm/vkms: Add configfs support
Hi everyone,
This series, to be applied on top of [1], allow to configure one or more VKMS
instances without having to reload the driver using configfs.
The series is structured in 3 blocks:
- Patches 1..11: Basic device configuration. For simplicity, I kept the
available options as minimal as possible.
- Patches 12 and 13: New option to skip the default device creation and to-do
cleanup.
- Patches 14, 15 and 16: Allow to hot-plug and unplug connectors. This is not
part of the minimal set of options, but I included in this series so it can
be used as a template/example of how new configurations can be added.
The process of configuring a VKMS device is documented in "vkms.rst".
Finally, the code is thoroughly tested by a collection of IGT tests [2].
Best wishes,
José Expósito
[1] https://lore.kernel.org/all/20250218101214.5790-1-jose.exposito89@gmail.com/
[2] https://lists.freedesktop.org/archives/igt-dev/2025-February/086071.html
Changes in v2:
- Applied review comments by Louis Chauvet: (thanks!!)
- Use guard(mutex)(...) instead of lock/unlock
- Return -EBUSY when trying to modify a enabled device
- Move the connector hot-plug related patches to the end
- Rebased on top of drm-misc-next
- Link to v1: https://lore.kernel.org/dri-devel/20250218170808.9507-1-jose.exposito89@gmail.com/T/
José Expósito (16):
drm/vkms: Expose device creation and destruction
drm/vkms: Add and remove VKMS instances via configfs
drm/vkms: Allow to configure multiple planes via configfs
drm/vkms: Allow to configure the plane type via configfs
drm/vkms: Allow to configure multiple CRTCs via configfs
drm/vkms: Allow to configure CRTC writeback support via configfs
drm/vkms: Allow to attach planes and CRTCs via configfs
drm/vkms: Allow to configure multiple encoders via configfs
drm/vkms: Allow to attach encoders and CRTCs via configfs
drm/vkms: Allow to configure multiple connectors via configfs
drm/vkms: Allow to attach connectors and encoders via configfs
drm/vkms: Allow to configure the default device creation
drm/vkms: Remove completed task from the TODO list
drm/vkms: Allow to configure connector status
drm/vkms: Allow to update the connector status
drm/vkms: Allow to configure connector status via configfs
Documentation/gpu/vkms.rst | 100 ++-
drivers/gpu/drm/vkms/Kconfig | 1 +
drivers/gpu/drm/vkms/Makefile | 3 +-
drivers/gpu/drm/vkms/tests/vkms_config_test.c | 24 +
drivers/gpu/drm/vkms/vkms_config.c | 8 +-
drivers/gpu/drm/vkms/vkms_config.h | 26 +
drivers/gpu/drm/vkms/vkms_configfs.c | 807 ++++++++++++++++++
drivers/gpu/drm/vkms/vkms_configfs.h | 8 +
drivers/gpu/drm/vkms/vkms_connector.c | 26 +-
drivers/gpu/drm/vkms/vkms_connector.h | 18 +-
drivers/gpu/drm/vkms/vkms_drv.c | 18 +-
drivers/gpu/drm/vkms/vkms_drv.h | 20 +
drivers/gpu/drm/vkms/vkms_output.c | 2 +-
13 files changed, 1045 insertions(+), 16 deletions(-)
create mode 100644 drivers/gpu/drm/vkms/vkms_configfs.c
create mode 100644 drivers/gpu/drm/vkms/vkms_configfs.h
base-commit: 130377304ed09e54ff35a8974372498aad7059f3
prerequisite-patch-id: 1bff7bbc4ef0e29266265ac3dc009011c046f745
prerequisite-patch-id: 74a284d40a426a0038a7054068192238f7658187
prerequisite-patch-id: c3e34e88ad6a0acf7d9ded0cdb4745a87cf6fd82
prerequisite-patch-id: 9cd0dfaf8e21a811edbe5a2da7185b6f9055d42d
prerequisite-patch-id: f50c41578b639370a5d610af6f25c2077321a886
prerequisite-patch-id: 5a7219a51e42de002b8dbf94ec8af96320043489
prerequisite-patch-id: 67ea5d4e21b4ce4acbd6fc3ce83017f55811c49b
prerequisite-patch-id: 37a7fab113a32581f053c09f45efb137afd75a1b
prerequisite-patch-id: 475bcdc6267f4b02fb1bb2379145529c33684e4f
prerequisite-patch-id: d3114f0b3da3d8b5ad64692df761f1cf42fbdf12
prerequisite-patch-id: d1d9280fb056130df2050a09b7ea7e7ddde007c5
prerequisite-patch-id: 2c370f3de6d227fa8881212207978cce7bbb18ba
prerequisite-patch-id: 938b8fe5437e5f7bc22bffc55ae249a27d399d66
prerequisite-patch-id: ab0a510994fbe9985dc46a3d35e6d0574ddbb633
--
2.48.1
Powered by blists - more mailing lists