imx-drm: imx-drm-core: provide common connector and encoder cleanup functions
authorRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 3 Nov 2013 13:28:24 +0000 (13:28 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 24 Feb 2014 12:07:46 +0000 (12:07 +0000)
Provide two helper functions to assist with cleaning up imx-drm
connectors and encoders.

Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Acked-by: Shawn Guo <shawn.guo@linaro.org>
Reviewed-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
drivers/staging/imx-drm/imx-drm-core.c
drivers/staging/imx-drm/imx-drm.h

index 5cac6ee2447252ab04722838558dd34b7297dfc8..1f50acd5a9821b26add1d62a65fbee2242678d7a 100644 (file)
@@ -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,
 };
index 49d4aaf33f9707c537646c3b39d47d76f46db87f..0543606c587a9c7b42fab340480665855eec9140 100644 (file)
@@ -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_ */