mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-18 07:50:03 -05:00
drm/ofdrm: Use 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: Thomas Zimmermann <tzimmermann@suse.de> Cc: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Link: https://patchwork.freedesktop.org/patch/msgid/20240924071734.98201-58-tzimmermann@suse.de
This commit is contained in:
@@ -57,6 +57,7 @@ config DRM_OFDRM
|
||||
tristate "Open Firmware display driver"
|
||||
depends on DRM && MMU && OF && (PPC || COMPILE_TEST)
|
||||
select APERTURE_HELPERS
|
||||
select DRM_CLIENT_SELECTION
|
||||
select DRM_GEM_SHMEM_HELPER
|
||||
select DRM_KMS_HELPER
|
||||
help
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include <drm/drm_aperture.h>
|
||||
#include <drm/drm_atomic.h>
|
||||
#include <drm/drm_atomic_state_helper.h>
|
||||
#include <drm/drm_client_setup.h>
|
||||
#include <drm/drm_connector.h>
|
||||
#include <drm/drm_damage_helper.h>
|
||||
#include <drm/drm_device.h>
|
||||
@@ -1344,6 +1345,7 @@ DEFINE_DRM_GEM_FOPS(ofdrm_fops);
|
||||
|
||||
static struct drm_driver ofdrm_driver = {
|
||||
DRM_GEM_SHMEM_DRIVER_OPS,
|
||||
DRM_FBDEV_SHMEM_DRIVER_OPS,
|
||||
.name = DRIVER_NAME,
|
||||
.desc = DRIVER_DESC,
|
||||
.date = DRIVER_DATE,
|
||||
@@ -1361,7 +1363,6 @@ static int ofdrm_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct ofdrm_device *odev;
|
||||
struct drm_device *dev;
|
||||
unsigned int color_mode;
|
||||
int ret;
|
||||
|
||||
odev = ofdrm_device_create(&ofdrm_driver, pdev);
|
||||
@@ -1373,11 +1374,7 @@ static int ofdrm_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
color_mode = drm_format_info_bpp(odev->format, 0);
|
||||
if (color_mode == 16)
|
||||
color_mode = odev->format->depth; // can be 15 or 16
|
||||
|
||||
drm_fbdev_shmem_setup(dev, color_mode);
|
||||
drm_client_setup(dev, odev->format);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user