diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2018-09-19 17:17:42 -0400 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2019-03-18 05:42:12 -0400 |
commit | 116c7721077cf82b942adaef146e97663247d972 (patch) | |
tree | 2b78db5fca0738cf0c1ed3de97400245966c22df /drivers/gpu/drm/omapdrm/omap_encoder.c | |
parent | df6682b43533e4c59c3d14b56de838c035a8bb9a (diff) |
drm/omap: Move DISPC timing checks to CRTC .mode_valid() operation
The DISPC timings checks relate to the CRTC, but they're performed in
the encoder and connector .atomic_check() and .mode_valid() operations.
Move them to the CRTC .mode_valid() operation.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Tested-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/gpu/drm/omapdrm/omap_encoder.c')
-rw-r--r-- | drivers/gpu/drm/omapdrm/omap_encoder.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/drivers/gpu/drm/omapdrm/omap_encoder.c b/drivers/gpu/drm/omapdrm/omap_encoder.c index 1f4172f653b9..623154bc44bb 100644 --- a/drivers/gpu/drm/omapdrm/omap_encoder.c +++ b/drivers/gpu/drm/omapdrm/omap_encoder.c | |||
@@ -206,19 +206,13 @@ static int omap_encoder_atomic_check(struct drm_encoder *encoder, | |||
206 | struct drm_connector_state *conn_state) | 206 | struct drm_connector_state *conn_state) |
207 | { | 207 | { |
208 | struct omap_encoder *omap_encoder = to_omap_encoder(encoder); | 208 | struct omap_encoder *omap_encoder = to_omap_encoder(encoder); |
209 | enum omap_channel channel = omap_encoder->output->dispc_channel; | ||
210 | struct drm_device *dev = encoder->dev; | 209 | struct drm_device *dev = encoder->dev; |
211 | struct omap_drm_private *priv = dev->dev_private; | ||
212 | struct omap_dss_device *dssdev; | 210 | struct omap_dss_device *dssdev; |
213 | struct videomode vm = { 0 }; | 211 | struct videomode vm = { 0 }; |
214 | int ret; | 212 | int ret; |
215 | 213 | ||
216 | drm_display_mode_to_videomode(&crtc_state->mode, &vm); | 214 | drm_display_mode_to_videomode(&crtc_state->mode, &vm); |
217 | 215 | ||
218 | ret = priv->dispc_ops->mgr_check_timings(priv->dispc, channel, &vm); | ||
219 | if (ret) | ||
220 | goto done; | ||
221 | |||
222 | for (dssdev = omap_encoder->output; dssdev; dssdev = dssdev->next) { | 216 | for (dssdev = omap_encoder->output; dssdev; dssdev = dssdev->next) { |
223 | if (!dssdev->ops->check_timings) | 217 | if (!dssdev->ops->check_timings) |
224 | continue; | 218 | continue; |