Unwind all drm_bridge_add() calls for internal bridges and remove all
bridges added by the msm driver itself by calling drm_bridge_remove().

Signed-off-by: Dmitry Baryshkov <[email protected]>
---
 drivers/gpu/drm/msm/msm_drv.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
index affa95eb05fc..71e1b7393f6f 100644
--- a/drivers/gpu/drm/msm/msm_drv.c
+++ b/drivers/gpu/drm/msm/msm_drv.c
@@ -232,6 +232,9 @@ static int msm_drm_uninit(struct device *dev)
 
        drm_mode_config_cleanup(ddev);
 
+       for (i = 0; i < priv->num_bridges; i++)
+               drm_bridge_remove(priv->bridges[i]);
+
        pm_runtime_get_sync(dev);
        msm_irq_uninstall(ddev);
        pm_runtime_put_sync(dev);
-- 
2.35.1

Reply via email to