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.nik...@intel.com>

---

Cc: Hans de Goede <hdego...@redhat.com>
Cc: Maarten Lankhorst <maarten.lankho...@linux.intel.com>
Cc: Maxime Ripard <mrip...@kernel.org>
Cc: Thomas Zimmermann <tzimmerm...@suse.de>
Cc: dri-devel@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)

Reply via email to