[PATCH 48/86] drm/xlnx: Run DRM default client setup
Thomas Zimmermann
tzimmermann at suse.de
Tue Aug 20 07:52:18 UTC 2024
Hi
Am 18.08.24 um 22:19 schrieb Laurent Pinchart:
> Hi Thomas,
>
> Thank you for the patch.
>
> On Fri, Aug 16, 2024 at 02:23:14PM +0200, Thomas Zimmermann wrote:
>> 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.
>>
>> Signed-off-by: Thomas Zimmermann <tzimmermann at suse.de>
>> Cc: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
>> Cc: Tomi Valkeinen <tomi.valkeinen at ideasonboard.com>
>> Cc: Michal Simek <michal.simek at amd.com>
>> ---
>> drivers/gpu/drm/xlnx/zynqmp_kms.c | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/xlnx/zynqmp_kms.c b/drivers/gpu/drm/xlnx/zynqmp_kms.c
>> index bd1368df7870..f26b119322d5 100644
>> --- a/drivers/gpu/drm/xlnx/zynqmp_kms.c
>> +++ b/drivers/gpu/drm/xlnx/zynqmp_kms.c
>> @@ -14,6 +14,7 @@
>> #include <drm/drm_blend.h>
>> #include <drm/drm_bridge.h>
>> #include <drm/drm_bridge_connector.h>
>> +#include <drm/drm_client_setup.h>
>> #include <drm/drm_connector.h>
>> #include <drm/drm_crtc.h>
>> #include <drm/drm_device.h>
>> @@ -402,6 +403,7 @@ static const struct drm_driver zynqmp_dpsub_drm_driver = {
>> DRIVER_ATOMIC,
>>
>> DRM_GEM_DMA_DRIVER_OPS_WITH_DUMB_CREATE(zynqmp_dpsub_dumb_create),
>> + DRM_FBDEV_DMA_DRIVER_OPS,
>>
>> .fops = &zynqmp_dpsub_drm_fops,
>>
>> @@ -523,7 +525,7 @@ int zynqmp_dpsub_drm_init(struct zynqmp_dpsub *dpsub)
>> goto err_poll_fini;
>>
>> /* Initialize fbdev generic emulation. */
>> - drm_fbdev_dma_setup(drm, 24);
>> + drm_client_setup(drm, drm_format_info(DRM_FORMAT_RGB888));
> I know this would be a hassle to change, but do the majority of the
> callers of drm_client_setup() have a drm_format_info * already, or do
> they need to call drm_format_info() on a 4CC ? In the latter case, would
> it be better to pass the 4CC to drm_client_setup() ?
Good idea. Most of the drivers have a 4cc code, but no format-info
pointer. I think there are enough instances that it makes sense to add a
little helper, drm_client_setup_with_fourcc(), for these drivers.
There's also preferred_depth from drm_mode_config. It's already used in
the client mode-setting code. That means that in some drivers, the
format parameter to drm_client_setup() could likely be dropped.
Best regards
Thomas
>
> As far as this patch goes,
>
> Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas at ideasonboard.com>
>
>>
>> return 0;
>>
--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)
More information about the dri-devel
mailing list