]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/sun4i: Run DRM default client setup
authorThomas Zimmermann <tzimmermann@suse.de>
Tue, 24 Sep 2024 07:12:38 +0000 (09:12 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Thu, 26 Sep 2024 07:31:27 +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.

The sun4i driver specifies as preferred color mode of 32. As this
is the default if no format has been given, leave it out entirely.

v5:
- select DRM_CLIENT_SELECTION

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Chen-Yu Tsai <wens@csie.org>
Cc: Jernej Skrabec <jernej.skrabec@gmail.com>
Cc: Samuel Holland <samuel@sholland.org>
Acked-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240924071734.98201-41-tzimmermann@suse.de
drivers/gpu/drm/sun4i/Kconfig
drivers/gpu/drm/sun4i/sun4i_drv.c

index 4037e085430ed092d37bca262fad6271ef025279..b56ba00aabcaf5b413ebd9d5e73b157f06b053e6 100644 (file)
@@ -3,6 +3,7 @@ config DRM_SUN4I
        tristate "DRM Support for Allwinner A10 Display Engine"
        depends on DRM && COMMON_CLK
        depends on ARCH_SUNXI || COMPILE_TEST
+       select DRM_CLIENT_SELECTION
        select DRM_GEM_DMA_HELPER
        select DRM_KMS_HELPER
        select DRM_PANEL
index 35d7a7ffd208c045305bf6dbb6c87e1f245364df..c3342789e3b06062ad6b08968899280866eaf636 100644 (file)
@@ -16,6 +16,7 @@
 
 #include <drm/drm_aperture.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_dma_helper.h>
@@ -55,6 +56,7 @@ static const struct drm_driver sun4i_drv_driver = {
 
        /* GEM Operations */
        DRM_GEM_DMA_DRIVER_OPS_WITH_DUMB_CREATE(drm_sun4i_gem_dumb_create),
+       DRM_FBDEV_DMA_DRIVER_OPS,
 };
 
 static int sun4i_drv_bind(struct device *dev)
@@ -111,7 +113,7 @@ static int sun4i_drv_bind(struct device *dev)
        if (ret)
                goto finish_poll;
 
-       drm_fbdev_dma_setup(drm, 32);
+       drm_client_setup(drm, NULL);
 
        dev_set_drvdata(dev, drm);