On Fri, Mar 03, 2023 at 04:00:19PM +0100, Maxime Ripard wrote: > On Fri, Mar 03, 2023 at 08:21:30PM +0530, Jagan Teki wrote: > > LCDIF-DSIM glue logic inverts the HS/VS/DE signals and expecting > > the i.MX8M Mini/Nano DSI host to add additional Data Enable signal > > active low (DE_LOW). This makes the valid data transfer on each > > horizontal line. > > > > So, add additional bus flags DE_LOW setting via input_bus_flags > > for i.MX8M Mini/Nano platforms. > > > > Reviewed-by: Marek Vasut > > Reviewed-by: Frieder Schrempf > > Suggested-by: Marek Vasut > > Signed-off-by: Jagan Teki > > --- > > Changes for v15, v13: > > - none > > Changes for v12: > > - collect RB from Marek > > Changes for v11: > > - collect RB from Frieder > > Changes for v10, v9: > > - none > > Changes for v8: > > - add DE_LOW for i.MX8M Mini/Nano platforms. > > Changes for v7, v6: > > - none > > Changes for v5: > > - rebased based on updated bridge changes > > Changes for v4 - v1: > > - none > > > > drivers/gpu/drm/exynos/exynos_drm_dsi.c | 8 ++++++++ > > 1 file changed, 8 insertions(+) > > > > diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c > > index 796480e4a18b..5d971b607e1a 100644 > > --- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c > > +++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c > > @@ -1736,6 +1736,10 @@ static const struct component_ops exynos_dsi_component_ops = { > > .unbind = exynos_dsi_unbind, > > }; > > > > +static const struct drm_bridge_timings dsim_bridge_timings_de_low = { > > + .input_bus_flags = DRM_BUS_FLAG_DE_LOW, > > +}; > > + > > static int exynos_dsi_probe(struct platform_device *pdev) > > { > > struct device *dev = &pdev->dev; > > @@ -1822,6 +1826,10 @@ static int exynos_dsi_probe(struct platform_device *pdev) > > dsi->bridge.type = DRM_MODE_CONNECTOR_DSI; > > dsi->bridge.pre_enable_prev_first = true; > > > > + /* DE_LOW: i.MX8M Mini/Nano LCDIF-DSIM glue logic inverts HS/VS/DE */ > > + if (dsi->plat_data->hw_type == DSIM_TYPE_IMX8MM) > > That commit isn't bisectable, you add that enum variant in the last > patch so this won't compile. Scratch that, it's defined in the previous patch, sorry Maxime