]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/vkms: Run DRM default client setup
authorThomas Zimmermann <tzimmermann@suse.de>
Tue, 24 Sep 2024 07:13:00 +0000 (09:13 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Thu, 26 Sep 2024 07:31:28 +0000 (09:31 +0200)
Call drm_client_setup() to run the kernel's default client setup
for DRM. Set fbdev_probe in struct drm_driver, so that the client
setup can start the common fbdev client.

v5:
- select DRM_CLIENT_SELECTION

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com>
Cc: Melissa Wen <melissa.srw@gmail.com>
Cc: "MaĆ­ra Canal" <mairacanal@riseup.net>
Cc: Haneen Mohammed <hamohammed.sa@gmail.com>
Acked-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240924071734.98201-63-tzimmermann@suse.de
drivers/gpu/drm/vkms/Kconfig
drivers/gpu/drm/vkms/vkms_drv.c

index b9ecdebecb0b6a57b638aba655bacd9d87656eaa..9def079f685bd30e1df3e4082e4818e402395391 100644 (file)
@@ -3,6 +3,7 @@
 config DRM_VKMS
        tristate "Virtual KMS (EXPERIMENTAL)"
        depends on DRM && MMU
+       select DRM_CLIENT_SELECTION
        select DRM_KMS_HELPER
        select DRM_GEM_SHMEM_HELPER
        select CRC32
index 0c1a713b7b7b3bc61f7a23ae4f240f0233d937a5..2d1e95cb66e5bbc5804e1679e41cfc2b4ea2364d 100644 (file)
@@ -16,6 +16,7 @@
 #include <drm/drm_gem.h>
 #include <drm/drm_atomic.h>
 #include <drm/drm_atomic_helper.h>
+#include <drm/drm_client_setup.h>
 #include <drm/drm_drv.h>
 #include <drm/drm_fbdev_shmem.h>
 #include <drm/drm_file.h>
@@ -112,6 +113,7 @@ static const struct drm_driver vkms_driver = {
        .release                = vkms_release,
        .fops                   = &vkms_driver_fops,
        DRM_GEM_SHMEM_DRIVER_OPS,
+       DRM_FBDEV_SHMEM_DRIVER_OPS,
 
        .name                   = DRIVER_NAME,
        .desc                   = DRIVER_DESC,
@@ -225,7 +227,7 @@ static int vkms_create(struct vkms_config *config)
        if (ret)
                goto out_devres;
 
-       drm_fbdev_shmem_setup(&vkms_device->drm, 0);
+       drm_client_setup(&vkms_device->drm, NULL);
 
        return 0;