From 8a51a33b3562de301d522eea1d167c243a16b6df Mon Sep 17 00:00:00 2001 From: Russell King Date: Sun, 3 Nov 2013 13:28:24 +0000 Subject: [PATCH] imx-drm: imx-drm-core: provide common connector and encoder cleanup functions Provide two helper functions to assist with cleaning up imx-drm connectors and encoders. Acked-by: Philipp Zabel Acked-by: Shawn Guo Reviewed-by: Fabio Estevam Signed-off-by: Russell King --- drivers/staging/imx-drm/imx-drm-core.c | 13 +++++++++++++ drivers/staging/imx-drm/imx-drm.h | 3 +++ 2 files changed, 16 insertions(+) diff --git a/drivers/staging/imx-drm/imx-drm-core.c b/drivers/staging/imx-drm/imx-drm-core.c index 5cac6ee24472..1f50acd5a982 100644 --- a/drivers/staging/imx-drm/imx-drm-core.c +++ b/drivers/staging/imx-drm/imx-drm-core.c @@ -363,6 +363,19 @@ static void imx_drm_connector_unregister( drm_mode_group_reinit(imxdrm->drm); } +void imx_drm_connector_destroy(struct drm_connector *connector) +{ + drm_sysfs_connector_remove(connector); + drm_connector_cleanup(connector); +} +EXPORT_SYMBOL_GPL(imx_drm_connector_destroy); + +void imx_drm_encoder_destroy(struct drm_encoder *encoder) +{ + drm_encoder_cleanup(encoder); +} +EXPORT_SYMBOL_GPL(imx_drm_encoder_destroy); + static struct drm_mode_config_funcs imx_drm_mode_config_funcs = { .fb_create = drm_fb_cma_create, }; diff --git a/drivers/staging/imx-drm/imx-drm.h b/drivers/staging/imx-drm/imx-drm.h index 49d4aaf33f97..0543606c587a 100644 --- a/drivers/staging/imx-drm/imx-drm.h +++ b/drivers/staging/imx-drm/imx-drm.h @@ -8,6 +8,7 @@ struct drm_crtc; struct drm_connector; struct drm_device; +struct drm_display_mode; struct drm_encoder; struct imx_drm_crtc; struct drm_fbdev_cma; @@ -69,5 +70,7 @@ int imx_drm_encoder_parse_of(struct drm_device *drm, int imx_drm_connector_mode_valid(struct drm_connector *connector, struct drm_display_mode *mode); +void imx_drm_connector_destroy(struct drm_connector *connector); +void imx_drm_encoder_destroy(struct drm_encoder *encoder); #endif /* _IMX_DRM_H_ */ -- 2.39.2