Thomas Zimmermann <tzimmermann@xxxxxxx> writes: > Rework fbdev probing to support fbdev_probe in struct drm_driver > and remove the old fb_probe callback. Provide an initializer macro > for struct drm_driver that sets the callback according to the kernel > configuration. > > 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 exynos-drm driver specifies a preferred color mode of 32. As this > is the default if no format has been given, leave it out entirely. > > Signed-off-by: Thomas Zimmermann <tzimmermann@xxxxxxx> > Cc: Inki Dae <inki.dae@xxxxxxxxxxx> > Cc: Seung-Woo Kim <sw0312.kim@xxxxxxxxxxx> > Cc: Kyungmin Park <kyungmin.park@xxxxxxxxxxx> > --- > drivers/gpu/drm/exynos/exynos_drm_drv.c | 4 +- > drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 101 ++-------------------- > drivers/gpu/drm/exynos/exynos_drm_fbdev.h | 15 ++-- > 3 files changed, 19 insertions(+), 101 deletions(-) > > diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.c b/drivers/gpu/drm/exynos/exynos_drm_drv.c > index 7c59e1164a48..2a466d8179f4 100644 > --- a/drivers/gpu/drm/exynos/exynos_drm_drv.c > +++ b/drivers/gpu/drm/exynos/exynos_drm_drv.c > @@ -15,6 +15,7 @@ > > #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_file.h> > #include <drm/drm_fourcc.h> > @@ -111,6 +112,7 @@ static const struct drm_driver exynos_drm_driver = { > .dumb_create = exynos_drm_gem_dumb_create, > .gem_prime_import = exynos_drm_gem_prime_import, > .gem_prime_import_sg_table = exynos_drm_gem_prime_import_sg_table, > + EXYNOS_DRM_FBDEV_DRIVER_OPS, > .ioctls = exynos_ioctls, > .num_ioctls = ARRAY_SIZE(exynos_ioctls), > .fops = &exynos_drm_driver_fops, > @@ -288,7 +290,7 @@ static int exynos_drm_bind(struct device *dev) > if (ret < 0) > goto err_cleanup_poll; > > - exynos_drm_fbdev_setup(drm); > + drm_client_setup(drm, NULL); > > return 0; > > diff --git a/drivers/gpu/drm/exynos/exynos_drm_fbdev.c b/drivers/gpu/drm/exynos/exynos_drm_fbdev.c > index a379c8ca435a..73fa7b77d8d0 100644 > --- a/drivers/gpu/drm/exynos/exynos_drm_fbdev.c > +++ b/drivers/gpu/drm/exynos/exynos_drm_fbdev.c > @@ -22,9 +22,6 @@ > #include "exynos_drm_fb.h" > #include "exynos_drm_fbdev.h" > > -#define MAX_CONNECTOR 4 I see this constant was unused. Is an unrelated cleanup but I guess is OK too. Acked-by: Javier Martinez Canillas <javierm@xxxxxxxxxx> -- Best regards, Javier Martinez Canillas Core Platforms Red Hat