To avoid memory leakage, we need to cleanup ipu planes in ipu_drm_unbind().
Signed-off-by: Liu Ying <Ying.Liu at freescale.com>
---
This patch applies to the imx-drm/fixes branch of Philipp Zabel's open git.

 drivers/gpu/drm/imx/ipuv3-crtc.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/imx/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c
index 59f44df..467905c 100644
--- a/drivers/gpu/drm/imx/ipuv3-crtc.c
+++ b/drivers/gpu/drm/imx/ipuv3-crtc.c
@@ -446,6 +446,11 @@ static void ipu_drm_unbind(struct device *dev, struct 
device *master,
        imx_drm_remove_crtc(ipu_crtc->imx_crtc);

        ipu_plane_put_resources(ipu_crtc->plane[0]);
+
+       if (ipu_crtc->plane[1])
+               ipu_plane_cleanup(ipu_crtc->plane[1]);
+       ipu_plane_cleanup(ipu_crtc->plane[0]);
+
        ipu_put_resources(ipu_crtc);
 }

-- 
2.5.0

Reply via email to