]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/panel-mipi-dbi: Run DRM default client setup
authorThomas Zimmermann <tzimmermann@suse.de>
Tue, 24 Sep 2024 07:12:29 +0000 (09:12 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Thu, 26 Sep 2024 06:28:09 +0000 (08:28 +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: "Noralf Trønnes" <noralf@tronnes.org>
Acked-by: Noralf Trønnes <noralf@tronnes.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20240924071734.98201-32-tzimmermann@suse.de
drivers/gpu/drm/tiny/Kconfig
drivers/gpu/drm/tiny/panel-mipi-dbi.c

index 17e0160b05ac5e889c323a2cdeec1ae2f5887d43..98af6fd6aa701ad1367954a31ad74887996ea451 100644 (file)
@@ -66,6 +66,7 @@ config DRM_OFDRM
 config DRM_PANEL_MIPI_DBI
        tristate "DRM support for MIPI DBI compatible panels"
        depends on DRM && SPI
+       select DRM_CLIENT_SELECTION
        select DRM_KMS_HELPER
        select DRM_GEM_DMA_HELPER
        select DRM_MIPI_DBI
index f753cdffe6f827e21422215591fc26d2fb8e4004..e66729b31bd66e6a874945aaa25ae0be2bd47fa0 100644 (file)
@@ -15,6 +15,7 @@
 #include <linux/spi/spi.h>
 
 #include <drm/drm_atomic_helper.h>
+#include <drm/drm_client_setup.h>
 #include <drm/drm_drv.h>
 #include <drm/drm_fbdev_dma.h>
 #include <drm/drm_gem_atomic_helper.h>
@@ -264,6 +265,7 @@ static const struct drm_driver panel_mipi_dbi_driver = {
        .driver_features        = DRIVER_GEM | DRIVER_MODESET | DRIVER_ATOMIC,
        .fops                   = &panel_mipi_dbi_fops,
        DRM_GEM_DMA_DRIVER_OPS_VMAP,
+       DRM_FBDEV_DMA_DRIVER_OPS,
        .debugfs_init           = mipi_dbi_debugfs_init,
        .name                   = "panel-mipi-dbi",
        .desc                   = "MIPI DBI compatible display panel",
@@ -388,7 +390,7 @@ static int panel_mipi_dbi_spi_probe(struct spi_device *spi)
 
        spi_set_drvdata(spi, drm);
 
-       drm_fbdev_dma_setup(drm, 0);
+       drm_client_setup(drm, NULL);
 
        return 0;
 }