Browse Source

drm/tilcdc: Take CRTC lock when calling tilcdc_crtc_disable()

Take CRTC lock when calling tilcdc_crtc_disable() in
tilcdc_crtc_destroy().

In theory there could still be some operation ongoing, which should
finish before destroying the CRTC. However, the main reason for
adding this is to be able to add WARNing in tilcdc_crtc_disable() if
CRTC is not locked.

Signed-off-by: Jyri Sarha <jsarha@ti.com>
Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Jyri Sarha 9 năm trước cách đây
mục cha
commit
6c94c71400
1 tập tin đã thay đổi với 2 bổ sung0 xóa
  1. 2 0
      drivers/gpu/drm/tilcdc/tilcdc_crtc.c

+ 2 - 0
drivers/gpu/drm/tilcdc/tilcdc_crtc.c

@@ -230,7 +230,9 @@ static void tilcdc_crtc_destroy(struct drm_crtc *crtc)
 	struct tilcdc_crtc *tilcdc_crtc = to_tilcdc_crtc(crtc);
 	struct tilcdc_drm_private *priv = crtc->dev->dev_private;
 
+	drm_modeset_lock_crtc(crtc, NULL);
 	tilcdc_crtc_disable(crtc);
+	drm_modeset_unlock_crtc(crtc);
 
 	flush_workqueue(priv->wq);