aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Zabel <p.zabel@pengutronix.de>2017-02-24 12:38:08 -0500
committerPhilipp Zabel <p.zabel@pengutronix.de>2018-11-05 08:56:04 -0500
commit97c78f4d07e5033717c08b650462b3087ecfe8e8 (patch)
tree0181e43b38c741792349c01d397c7a542950fc97
parent815b02e3c05dcfae759a96903025beb5dab85f97 (diff)
drm/imx: ipuv3-plane: add IDMAC timeout warning
ipu_plane_disable should never be called while the plane IDMAC channel is active. The busy wait is just a safety net that should never time out. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
-rw-r--r--drivers/gpu/drm/imx/ipuv3-plane.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpu/drm/imx/ipuv3-plane.c b/drivers/gpu/drm/imx/ipuv3-plane.c
index 9db833b68813..c390924de93d 100644
--- a/drivers/gpu/drm/imx/ipuv3-plane.c
+++ b/drivers/gpu/drm/imx/ipuv3-plane.c
@@ -228,9 +228,15 @@ static void ipu_plane_enable(struct ipu_plane *ipu_plane)
228 228
229void ipu_plane_disable(struct ipu_plane *ipu_plane, bool disable_dp_channel) 229void ipu_plane_disable(struct ipu_plane *ipu_plane, bool disable_dp_channel)
230{ 230{
231 int ret;
232
231 DRM_DEBUG_KMS("[%d] %s\n", __LINE__, __func__); 233 DRM_DEBUG_KMS("[%d] %s\n", __LINE__, __func__);
232 234
233 ipu_idmac_wait_busy(ipu_plane->ipu_ch, 50); 235 ret = ipu_idmac_wait_busy(ipu_plane->ipu_ch, 50);
236 if (ret == -ETIMEDOUT) {
237 DRM_ERROR("[PLANE:%d] IDMAC timeout\n",
238 ipu_plane->base.base.id);
239 }
234 240
235 if (ipu_plane->dp && disable_dp_channel) 241 if (ipu_plane->dp && disable_dp_channel)
236 ipu_dp_disable_channel(ipu_plane->dp, false); 242 ipu_dp_disable_channel(ipu_plane->dp, false);