To evaluate the validity of a video mode, some additional internal
value has to be passed to the platform implementation.

Extend the prototype of mode_valid().

Signed-off-by: Antonio Borneo <[email protected]>
---
To: David Airlie <[email protected]>
To: Daniel Vetter <[email protected]>
To: Andrzej Hajda <[email protected]>
To: Neil Armstrong <[email protected]>
To: Robert Foss <[email protected]>
To: Laurent Pinchart <[email protected]>
To: Jonas Karlman <[email protected]>
To: Jernej Skrabec <[email protected]>
To: Yannick Fertre <[email protected]>
To: Philippe Cornu <[email protected]>
To: Benjamin Gaignard <[email protected]>
To: Maxime Coquelin <[email protected]>
To: Alexandre Torgue <[email protected]>
To: Philipp Zabel <[email protected]>
To: [email protected]
To: [email protected]
To: [email protected]
Cc: [email protected]
---
 drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c | 5 ++++-
 include/drm/bridge/dw_mipi_dsi.h              | 4 +++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c 
b/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c
index e44e18a0112a..3f6564762e24 100644
--- a/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c
+++ b/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c
@@ -998,7 +998,10 @@ dw_mipi_dsi_bridge_mode_valid(struct drm_bridge *bridge,
        enum drm_mode_status mode_status = MODE_OK;
 
        if (pdata->mode_valid)
-               mode_status = pdata->mode_valid(pdata->priv_data, mode);
+               mode_status = pdata->mode_valid(pdata->priv_data, mode,
+                                               dsi->mode_flags,
+                                               dw_mipi_dsi_get_lanes(dsi),
+                                               dsi->format);
 
        return mode_status;
 }
diff --git a/include/drm/bridge/dw_mipi_dsi.h b/include/drm/bridge/dw_mipi_dsi.h
index bda8aa7c2280..5286a53a1875 100644
--- a/include/drm/bridge/dw_mipi_dsi.h
+++ b/include/drm/bridge/dw_mipi_dsi.h
@@ -51,7 +51,9 @@ struct dw_mipi_dsi_plat_data {
        unsigned int max_data_lanes;
 
        enum drm_mode_status (*mode_valid)(void *priv_data,
-                                          const struct drm_display_mode *mode);
+                                          const struct drm_display_mode *mode,
+                                          unsigned long mode_flags,
+                                          u32 lanes, u32 format);
 
        const struct dw_mipi_dsi_phy_ops *phy_ops;
        const struct dw_mipi_dsi_host_ops *host_ops;
-- 
2.34.1

Reply via email to