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

drm/rockchip: 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: Sandy Huang <hjc@rock-chips.com>
Cc: "Heiko Stübner" <heiko@sntech.de>
Cc: Andy Yan <andy.yan@rock-chips.com>
Acked-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20240924071734.98201-38-tzimmermann@suse.de

+4 -1
+1
drivers/gpu/drm/rockchip/Kconfig
··· 2 2 config DRM_ROCKCHIP 3 3 tristate "DRM Support for Rockchip" 4 4 depends on DRM && ROCKCHIP_IOMMU 5 + select DRM_CLIENT_SELECTION 5 6 select DRM_GEM_DMA_HELPER 6 7 select DRM_KMS_HELPER 7 8 select DRM_PANEL
+3 -1
drivers/gpu/drm/rockchip/rockchip_drm_drv.c
··· 17 17 #include <linux/iommu.h> 18 18 19 19 #include <drm/drm_aperture.h> 20 + #include <drm/drm_client_setup.h> 20 21 #include <drm/drm_drv.h> 21 22 #include <drm/drm_fbdev_dma.h> 22 23 #include <drm/drm_gem_dma_helper.h> ··· 192 191 if (ret) 193 192 goto err_kms_helper_poll_fini; 194 193 195 - drm_fbdev_dma_setup(drm_dev, 0); 194 + drm_client_setup(drm_dev, NULL); 196 195 197 196 return 0; 198 197 err_kms_helper_poll_fini: ··· 227 226 .driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_ATOMIC, 228 227 .dumb_create = rockchip_gem_dumb_create, 229 228 .gem_prime_import_sg_table = rockchip_gem_prime_import_sg_table, 229 + DRM_FBDEV_DMA_DRIVER_OPS, 230 230 .fops = &rockchip_drm_driver_fops, 231 231 .name = DRIVER_NAME, 232 232 .desc = DRIVER_DESC,