Re: [PATCH 03/11] drm/bridge: analogix_dp: convert to struct drm_edid

2024-05-19 Thread Dmitry Baryshkov
On Tue, May 14, 2024 at 03:55:09PM +0300, Jani Nikula wrote:
> Prefer the struct drm_edid based functions for reading the EDID and
> updating the connector.
> 
> Signed-off-by: Jani Nikula 
> 
> ---
> 
> Cc: Andrzej Hajda 
> Cc: Neil Armstrong 
> Cc: Robert Foss 
> Cc: Laurent Pinchart 
> Cc: Jonas Karlman 
> Cc: Jernej Skrabec 
> Cc: Maarten Lankhorst 
> Cc: Maxime Ripard 
> Cc: Thomas Zimmermann 
> ---
>  .../gpu/drm/bridge/analogix/analogix_dp_core.c| 15 ---
>  1 file changed, 8 insertions(+), 7 deletions(-)
> 

Reviewed-by: Dmitry Baryshkov 


-- 
With best wishes
Dmitry


[PATCH 03/11] drm/bridge: analogix_dp: convert to struct drm_edid

2024-05-14 Thread Jani Nikula
Prefer the struct drm_edid based functions for reading the EDID and
updating the connector.

Signed-off-by: Jani Nikula 

---

Cc: Andrzej Hajda 
Cc: Neil Armstrong 
Cc: Robert Foss 
Cc: Laurent Pinchart 
Cc: Jonas Karlman 
Cc: Jernej Skrabec 
Cc: Maarten Lankhorst 
Cc: Maxime Ripard 
Cc: Thomas Zimmermann 
---
 .../gpu/drm/bridge/analogix/analogix_dp_core.c| 15 ---
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c 
b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
index 7b841232321f..9360b63ad37c 100644
--- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
+++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
@@ -1108,7 +1108,7 @@ static int analogix_dp_prepare_panel(struct 
analogix_dp_device *dp,
 static int analogix_dp_get_modes(struct drm_connector *connector)
 {
struct analogix_dp_device *dp = to_dp(connector);
-   struct edid *edid;
+   const struct drm_edid *drm_edid;
int ret, num_modes = 0;
 
if (dp->plat_data->panel) {
@@ -1120,12 +1120,13 @@ static int analogix_dp_get_modes(struct drm_connector 
*connector)
return 0;
}
 
-   edid = drm_get_edid(connector, &dp->aux.ddc);
-   if (edid) {
-   drm_connector_update_edid_property(&dp->connector,
-  edid);
-   num_modes += drm_add_edid_modes(&dp->connector, edid);
-   kfree(edid);
+   drm_edid = drm_edid_read_ddc(connector, &dp->aux.ddc);
+
+   drm_edid_connector_update(&dp->connector, drm_edid);
+
+   if (drm_edid) {
+   num_modes += 
drm_edid_connector_add_modes(&dp->connector);
+   drm_edid_free(drm_edid);
}
 
ret = analogix_dp_prepare_panel(dp, false, false);
-- 
2.39.2