Normally we do this in drm_mode_config_cleanup. But analogix dp's
connector is allocated when binding, and would be freed after unbind.

So we need to destroy it when unbinding, to avoid further access.

Signed-off-by: Jeffy Chen <jeffy.c...@rock-chips.com>
---

 drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c 
b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
index ec47fc2..084ee8f 100644
--- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
+++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
@@ -1439,6 +1439,7 @@ void analogix_dp_unbind(struct device *dev, struct device 
*master,
        struct analogix_dp_device *dp = dev_get_drvdata(dev);
 
        analogix_dp_bridge_disable(dp->bridge);
+       dp->connector.funcs->destroy(&dp->connector);
 
        if (dp->plat_data->panel) {
                if (drm_panel_unprepare(dp->plat_data->panel))
-- 
2.1.4


Reply via email to