Skip to content

Commit fd4e788

Browse files
committed
drm/omap: sdi: fix bridge enable/disable
When the SDI output was converted to DRM bridge, the atomic versions of enable and disable funcs were used. This was not intended, as that would require implementing other atomic funcs too. This leads to: WARNING: CPU: 0 PID: 18 at drivers/gpu/drm/drm_bridge.c:708 drm_atomic_helper_commit_modeset_enables+0x134/0x268 and display not working. Fix this by using the legacy enable/disable funcs. Fixes: 8bef8a6 ("drm/omap: sdi: Register a drm_bridge") Reported-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Tested-by: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com> Tested-by: Aaro Koskinen <aaro.koskinen@iki.fi> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Cc: stable@vger.kernel.org # v5.7+ Link: https://patchwork.freedesktop.org/patch/msgid/20201127085241.848461-1-tomi.valkeinen@ti.com
1 parent 7c4bada commit fd4e788

1 file changed

Lines changed: 4 additions & 6 deletions

File tree

  • drivers/gpu/drm/omapdrm/dss

drivers/gpu/drm/omapdrm/dss/sdi.c

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -195,8 +195,7 @@ static void sdi_bridge_mode_set(struct drm_bridge *bridge,
195195
sdi->pixelclock = adjusted_mode->clock * 1000;
196196
}
197197

198-
static void sdi_bridge_enable(struct drm_bridge *bridge,
199-
struct drm_bridge_state *bridge_state)
198+
static void sdi_bridge_enable(struct drm_bridge *bridge)
200199
{
201200
struct sdi_device *sdi = drm_bridge_to_sdi(bridge);
202201
struct dispc_clock_info dispc_cinfo;
@@ -259,8 +258,7 @@ static void sdi_bridge_enable(struct drm_bridge *bridge,
259258
regulator_disable(sdi->vdds_sdi_reg);
260259
}
261260

262-
static void sdi_bridge_disable(struct drm_bridge *bridge,
263-
struct drm_bridge_state *bridge_state)
261+
static void sdi_bridge_disable(struct drm_bridge *bridge)
264262
{
265263
struct sdi_device *sdi = drm_bridge_to_sdi(bridge);
266264

@@ -278,8 +276,8 @@ static const struct drm_bridge_funcs sdi_bridge_funcs = {
278276
.mode_valid = sdi_bridge_mode_valid,
279277
.mode_fixup = sdi_bridge_mode_fixup,
280278
.mode_set = sdi_bridge_mode_set,
281-
.atomic_enable = sdi_bridge_enable,
282-
.atomic_disable = sdi_bridge_disable,
279+
.enable = sdi_bridge_enable,
280+
.disable = sdi_bridge_disable,
283281
};
284282

285283
static void sdi_bridge_init(struct sdi_device *sdi)

0 commit comments

Comments
 (0)