From 12cb4c87aa587ff476ffc71120f2dc5d2e857256 Mon Sep 17 00:00:00 2001 From: Xinliang Liu Date: Sun, 8 May 2016 17:48:55 +0800 Subject: drm/hisilicon: Make kirin_drm_unbind sufficient Remove deprecated drm_put_dev. Clean up everything needed in unbind. Thanks to Daniel Vetter, this issue is reported by him. Acked-by: Daniel Vetter Reported-by: Daniel Vetter Signed-off-by: Xinliang Liu --- drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c') diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c index bc410ee584b7..3f94785fbcca 100644 --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c @@ -244,7 +244,12 @@ err_drm_dev_unref: static void kirin_drm_unbind(struct device *dev) { - drm_put_dev(dev_get_drvdata(dev)); + struct drm_device *drm_dev = dev_get_drvdata(dev); + + drm_connector_unregister_all(drm_dev); + drm_dev_unregister(drm_dev); + kirin_drm_kms_cleanup(drm_dev); + drm_dev_unref(drm_dev); } static const struct component_master_ops kirin_drm_ops = { -- cgit v1.2.3