summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/exynos/exynos_drm_dpi.c
diff options
context:
space:
mode:
authorAndrzej Hajda <a.hajda@samsung.com>2014-09-09 15:16:11 +0200
committerInki Dae <daeinki@gmail.com>2014-09-20 00:56:15 +0900
commit90eac89726e6dee77a7997a0598a06df3adc1ac8 (patch)
treec40f0d3a542d1bb3b1dec381ddd2f25aa4e57454 /drivers/gpu/drm/exynos/exynos_drm_dpi.c
parent0ae460159faf0520228c554a728cc27d561d4b5b (diff)
downloadop-kernel-dev-90eac89726e6dee77a7997a0598a06df3adc1ac8.zip
op-kernel-dev-90eac89726e6dee77a7997a0598a06df3adc1ac8.tar.gz
drm/exynos/dpi: unregister connector and panel on removal
During component removal it should unregister connector and optionally detach the panel. Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
Diffstat (limited to 'drivers/gpu/drm/exynos/exynos_drm_dpi.c')
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_dpi.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_dpi.c b/drivers/gpu/drm/exynos/exynos_drm_dpi.c
index fa08f05..96c87db 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_dpi.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_dpi.c
@@ -342,8 +342,12 @@ int exynos_dpi_remove(struct device *dev)
struct exynos_dpi *ctx = exynos_dpi_display.ctx;
exynos_dpi_dpms(&exynos_dpi_display, DRM_MODE_DPMS_OFF);
+
+ exynos_dpi_connector_destroy(&ctx->connector);
encoder->funcs->destroy(encoder);
- drm_connector_cleanup(&ctx->connector);
+
+ if (ctx->panel)
+ drm_panel_detach(ctx->panel);
exynos_drm_component_del(dev, EXYNOS_DEVICE_TYPE_CONNECTOR);
OpenPOWER on IntegriCloud