[PATCH] media: ti: omap: release DSS compatibility layer on remove

Guangshuo Li posted 1 patch 1 week, 2 days ago
drivers/media/platform/ti/omap/omap_vout.c | 1 +
1 file changed, 1 insertion(+)
[PATCH] media: ti: omap: release DSS compatibility layer on remove
Posted by Guangshuo Li 1 week, 2 days ago
omap_vout_probe() calls omapdss_compat_init(), while omap_vout_remove()
does not call the corresponding omapdss_compat_uninit().

The probe failure paths release the DSS compatibility layer, but the
normal remove path leaves it initialized after the video output device
has been removed.

Call omapdss_compat_uninit() during remove after releasing the video
device resources, matching the cleanup performed by the probe failure
paths.

This issue was found by manual code inspection.

Fixes: a9ee9f08b615 ("OMAPDSS: use omapdss_compat_init() in other drivers")
Cc: stable@vger.kernel.org
Signed-off-by: Guangshuo Li <lgs201920130244@gmail.com>
---
 drivers/media/platform/ti/omap/omap_vout.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/media/platform/ti/omap/omap_vout.c b/drivers/media/platform/ti/omap/omap_vout.c
index 8d0319a37ba8..0efaff4d343d 100644
--- a/drivers/media/platform/ti/omap/omap_vout.c
+++ b/drivers/media/platform/ti/omap/omap_vout.c
@@ -1586,6 +1586,7 @@ static void omap_vout_remove(struct platform_device *pdev)
 		omap_dss_put_device(vid_dev->displays[k]);
 	}
 	kfree(vid_dev);
+	omapdss_compat_uninit();
 }
 
 static int __init omap_vout_probe(struct platform_device *pdev)
-- 
2.43.0