Now that the .get_modes() operations takes a drm_connector and fills it
with modes, it becomes easy to fill display information in the same
operation without requiring a separate .get_size() opearation.

Signed-off-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
---
 drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 14 +++-----------
 drivers/gpu/drm/omapdrm/dss/omapdss.h           |  3 ---
 drivers/gpu/drm/omapdrm/omap_connector.c        | 15 ++-------------
 3 files changed, 5 insertions(+), 27 deletions(-)

diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c 
b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c
index 9cd9ab487a24..c5f570106a17 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c
@@ -1117,6 +1117,9 @@ static int dsicm_get_modes(struct omap_dss_device *dssdev,
 {
        struct panel_drv_data *ddata = to_panel_data(dssdev);
 
+       connector->display_info.width_mm = ddata->width_mm;
+       connector->display_info.height_mm = ddata->height_mm;
+
        return omapdss_display_get_modes(connector, &ddata->vm);
 }
 
@@ -1142,15 +1145,6 @@ static int dsicm_check_timings(struct omap_dss_device 
*dssdev,
        return ret;
 }
 
-static void dsicm_get_size(struct omap_dss_device *dssdev,
-                         unsigned int *width, unsigned int *height)
-{
-       struct panel_drv_data *ddata = to_panel_data(dssdev);
-
-       *width = ddata->width_mm;
-       *height = ddata->height_mm;
-}
-
 static const struct omap_dss_device_ops dsicm_ops = {
        .connect        = dsicm_connect,
        .disconnect     = dsicm_disconnect,
@@ -1166,8 +1160,6 @@ static const struct omap_dss_driver dsicm_dss_driver = {
        .update         = dsicm_update,
        .sync           = dsicm_sync,
 
-       .get_size       = dsicm_get_size,
-
        .enable_te      = dsicm_enable_te,
        .get_te         = dsicm_get_te,
 
diff --git a/drivers/gpu/drm/omapdrm/dss/omapdss.h 
b/drivers/gpu/drm/omapdrm/dss/omapdss.h
index 3be8d3153d1a..561f404a58f2 100644
--- a/drivers/gpu/drm/omapdrm/dss/omapdss.h
+++ b/drivers/gpu/drm/omapdrm/dss/omapdss.h
@@ -462,9 +462,6 @@ struct omap_dss_driver {
        int (*memory_read)(struct omap_dss_device *dssdev,
                        void *buf, size_t size,
                        u16 x, u16 y, u16 w, u16 h);
-
-       void (*get_size)(struct omap_dss_device *dssdev,
-                        unsigned int *width, unsigned int *height);
 };
 
 struct dss_device *omapdss_get_dss(void);
diff --git a/drivers/gpu/drm/omapdrm/omap_connector.c 
b/drivers/gpu/drm/omapdrm/omap_connector.c
index 93b31bf07d05..c21a2016d03f 100644
--- a/drivers/gpu/drm/omapdrm/omap_connector.c
+++ b/drivers/gpu/drm/omapdrm/omap_connector.c
@@ -225,19 +225,8 @@ static int omap_connector_get_modes(struct drm_connector 
*connector)
                return omap_connector_get_modes_edid(connector, dssdev);
 
        /*
-        * Otherwise we have either a fixed resolution panel or an output that
-        * doesn't support modes discovery (e.g. DVI or VGA with the DDC bus
-        * unconnected, or analog TV). Start by querying the size.
-        */
-       dssdev = omap_connector->display;
-       if (dssdev->driver && dssdev->driver->get_size)
-               dssdev->driver->get_size(dssdev,
-                                        &connector->display_info.width_mm,
-                                        &connector->display_info.height_mm);
-
-       /*
-        * If the display pipeline reports modes (e.g. with a fixed resolution
-        * panel or an analog TV output), query it.
+        * Otherwise if the display pipeline reports modes (e.g. with a fixed
+        * resolution panel or an analog TV output), query it.
         */
        for (dssdev = omap_connector->display; dssdev; dssdev = dssdev->src) {
                if (dssdev->ops->get_modes)
-- 
Regards,

Laurent Pinchart

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to