drm/vkms: Expose device creation and destruction

In preparation for configfs support, expose vkms_create() and
vkms_destroy().

Tested-by: Mark Yacoub <markyacoub@google.com>
Reviewed-by: Louis Chauvet <louis.chauvet@bootlin.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Co-developed-by: Louis Chauvet <louis.chauvet@bootlin.com>
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
Link: https://lore.kernel.org/r/20251016175618.10051-2-jose.exposito89@gmail.com
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
This commit is contained in:
José Expósito 2025-10-16 19:56:03 +02:00 committed by Luca Ceresoli
parent 7e73cefd2b
commit 7965d1c535
2 changed files with 22 additions and 2 deletions

View File

@ -146,7 +146,7 @@ static int vkms_modeset_init(struct vkms_device *vkmsdev)
return vkms_output_init(vkmsdev);
}
static int vkms_create(struct vkms_config *config)
int vkms_create(struct vkms_config *config)
{
int ret;
struct faux_device *fdev;
@ -229,7 +229,7 @@ static int __init vkms_init(void)
return 0;
}
static void vkms_destroy(struct vkms_config *config)
void vkms_destroy(struct vkms_config *config)
{
struct faux_device *fdev;

View File

@ -256,6 +256,26 @@ struct vkms_device {
#define to_vkms_plane_state(target)\
container_of(target, struct vkms_plane_state, base.base)
/**
* vkms_create() - Create a device from a configuration
* @config: Config used to configure the new device
*
* A pointer to the created vkms_device is stored in @config
*
* Returns:
* 0 on success or an error.
*/
int vkms_create(struct vkms_config *config);
/**
* vkms_destroy() - Destroy a device
* @config: Config from which the device was created
*
* The device is completely removed, but the @config is not freed. It can be
* reused or destroyed with vkms_config_destroy().
*/
void vkms_destroy(struct vkms_config *config);
/**
* vkms_crtc_init() - Initialize a CRTC for VKMS
* @dev: DRM device associated with the VKMS buffer