[PATCH 6/6] drm/tiny/gm12u320: convert to struct drm_edid

Thomas Zimmermann tzimmermann at suse.de
Wed Aug 28 12:52:11 UTC 2024


Hi

Am 22.08.24 um 19:42 schrieb Jani Nikula:
> Prefer the struct drm_edid based functions for allocating the EDID and
> updating the connector.
>
> Signed-off-by: Jani Nikula <jani.nikula at intel.com>
>
> ---
>
> Cc: Hans de Goede <hdegoede at redhat.com>
> Cc: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> Cc: Maxime Ripard <mripard at kernel.org>
> Cc: Thomas Zimmermann <tzimmermann at suse.de>
> Cc: dri-devel at lists.freedesktop.org
> ---
>   drivers/gpu/drm/tiny/gm12u320.c | 13 ++++++++++---
>   1 file changed, 10 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/tiny/gm12u320.c b/drivers/gpu/drm/tiny/gm12u320.c
> index e0defb1d134f..0bd7707c053e 100644
> --- a/drivers/gpu/drm/tiny/gm12u320.c
> +++ b/drivers/gpu/drm/tiny/gm12u320.c
> @@ -464,7 +464,7 @@ static int gm12u320_set_ecomode(struct gm12u320_device *gm12u320)
>    * Note this assumes this driver is only ever used with the Acer C120, if we
>    * add support for other devices the vendor and model should be parameterized.
>    */
> -static struct edid gm12u320_edid = {
> +static const struct edid gm12u320_edid = {
>   	.header		= { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00 },
>   	.mfg_id		= { 0x04, 0x72 },	/* "ACR" */
>   	.prod_code	= { 0x20, 0xc1 },	/* C120h */
> @@ -523,8 +523,15 @@ static struct edid gm12u320_edid = {
>   
>   static int gm12u320_conn_get_modes(struct drm_connector *connector)
>   {
> -	drm_connector_update_edid_property(connector, &gm12u320_edid);
> -	return drm_add_edid_modes(connector, &gm12u320_edid);
> +	const struct drm_edid *drm_edid;
> +	int count;
> +
> +	drm_edid = drm_edid_alloc(&gm12u320_edid, sizeof(gm12u320_edid));

Wouldn't it be better to use drm_edid_read_custom() to get the 
connector's edid override, if any?

Best regards
Thomas

> +	drm_edid_connector_update(connector, drm_edid);
> +	count = drm_edid_connector_add_modes(connector);
> +	drm_edid_free(drm_edid);
> +
> +	return count;
>   }
>   
>   static const struct drm_connector_helper_funcs gm12u320_conn_helper_funcs = {

-- 
--
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