Message ID | 20240821130348.73038-48-tzimmermann@suse.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm: Provide client setup helper and convert drivers | expand |
On Wed, 21 Aug 2024 at 14:04, Thomas Zimmermann <tzimmermann@suse.de> wrote: > > Call drm_client_setup_with_fourcc() 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. > > v2: > - use drm_client_setup_with_fourcc() > > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> > Cc: Maxime Ripard <mripard@kernel.org> > Cc: Dave Stevenson <dave.stevenson@raspberrypi.com> > Cc: Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com> Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com> > --- > drivers/gpu/drm/vc4/vc4_drv.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/vc4/vc4_drv.c b/drivers/gpu/drm/vc4/vc4_drv.c > index c133e96b8aca..86786caaf8a5 100644 > --- a/drivers/gpu/drm/vc4/vc4_drv.c > +++ b/drivers/gpu/drm/vc4/vc4_drv.c > @@ -32,8 +32,10 @@ > > #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_fourcc.h> > #include <drm/drm_vblank.h> > > #include <soc/bcm2835/raspberrypi-firmware.h> > @@ -212,6 +214,7 @@ const struct drm_driver vc4_drm_driver = { > .gem_create_object = vc4_create_object, > > DRM_GEM_DMA_DRIVER_OPS_WITH_DUMB_CREATE(vc4_bo_dumb_create), > + DRM_FBDEV_DMA_DRIVER_OPS, > > .ioctls = vc4_drm_ioctls, > .num_ioctls = ARRAY_SIZE(vc4_drm_ioctls), > @@ -389,7 +392,7 @@ static int vc4_drm_bind(struct device *dev) > if (ret < 0) > goto err; > > - drm_fbdev_dma_setup(drm, 16); > + drm_client_setup_with_fourcc(drm, DRM_FORMAT_RGB565); > > return 0; > > -- > 2.46.0 >
diff --git a/drivers/gpu/drm/vc4/vc4_drv.c b/drivers/gpu/drm/vc4/vc4_drv.c index c133e96b8aca..86786caaf8a5 100644 --- a/drivers/gpu/drm/vc4/vc4_drv.c +++ b/drivers/gpu/drm/vc4/vc4_drv.c @@ -32,8 +32,10 @@ #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_fourcc.h> #include <drm/drm_vblank.h> #include <soc/bcm2835/raspberrypi-firmware.h> @@ -212,6 +214,7 @@ const struct drm_driver vc4_drm_driver = { .gem_create_object = vc4_create_object, DRM_GEM_DMA_DRIVER_OPS_WITH_DUMB_CREATE(vc4_bo_dumb_create), + DRM_FBDEV_DMA_DRIVER_OPS, .ioctls = vc4_drm_ioctls, .num_ioctls = ARRAY_SIZE(vc4_drm_ioctls), @@ -389,7 +392,7 @@ static int vc4_drm_bind(struct device *dev) if (ret < 0) goto err; - drm_fbdev_dma_setup(drm, 16); + drm_client_setup_with_fourcc(drm, DRM_FORMAT_RGB565); return 0;
Call drm_client_setup_with_fourcc() 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. v2: - use drm_client_setup_with_fourcc() Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Maxime Ripard <mripard@kernel.org> Cc: Dave Stevenson <dave.stevenson@raspberrypi.com> Cc: Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com> --- drivers/gpu/drm/vc4/vc4_drv.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)