@@ -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,
};
@@ -69,5 +69,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_ */
Provide two helper functions to assist with cleaning up imx-drm connectors and encoders. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> --- drivers/staging/imx-drm/imx-drm-core.c | 13 +++++++++++++ drivers/staging/imx-drm/imx-drm.h | 2 ++ 2 files changed, 15 insertions(+), 0 deletions(-)