Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/vkms: Run DRM default client setup

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

+4 -1
+1
drivers/gpu/drm/vkms/Kconfig
··· 3 3 config DRM_VKMS 4 4 tristate "Virtual KMS (EXPERIMENTAL)" 5 5 depends on DRM && MMU 6 + select DRM_CLIENT_SELECTION 6 7 select DRM_KMS_HELPER 7 8 select DRM_GEM_SHMEM_HELPER 8 9 select CRC32
+3 -1
drivers/gpu/drm/vkms/vkms_drv.c
··· 16 16 #include <drm/drm_gem.h> 17 17 #include <drm/drm_atomic.h> 18 18 #include <drm/drm_atomic_helper.h> 19 + #include <drm/drm_client_setup.h> 19 20 #include <drm/drm_drv.h> 20 21 #include <drm/drm_fbdev_shmem.h> 21 22 #include <drm/drm_file.h> ··· 113 112 .release = vkms_release, 114 113 .fops = &vkms_driver_fops, 115 114 DRM_GEM_SHMEM_DRIVER_OPS, 115 + DRM_FBDEV_SHMEM_DRIVER_OPS, 116 116 117 117 .name = DRIVER_NAME, 118 118 .desc = DRIVER_DESC, ··· 227 225 if (ret) 228 226 goto out_devres; 229 227 230 - drm_fbdev_shmem_setup(&vkms_device->drm, 0); 228 + drm_client_setup(&vkms_device->drm, NULL); 231 229 232 230 return 0; 233 231