mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-25 17:20:51 +07:00
drm/exynos: remove explicit encoder/connector de-initialization
All KMS objects are destroyed by drm_mode_config_cleanup in proper order so component drivers should not care about it. Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
This commit is contained in:
parent
c52142e6a8
commit
d9aaf75762
@ -1355,13 +1355,8 @@ static void exynos_dp_unbind(struct device *dev, struct device *master,
|
|||||||
void *data)
|
void *data)
|
||||||
{
|
{
|
||||||
struct exynos_drm_display *display = dev_get_drvdata(dev);
|
struct exynos_drm_display *display = dev_get_drvdata(dev);
|
||||||
struct exynos_dp_device *dp = display->ctx;
|
|
||||||
struct drm_encoder *encoder = dp->encoder;
|
|
||||||
|
|
||||||
exynos_dp_dpms(display, DRM_MODE_DPMS_OFF);
|
exynos_dp_dpms(display, DRM_MODE_DPMS_OFF);
|
||||||
|
|
||||||
exynos_dp_connector_destroy(&dp->connector);
|
|
||||||
encoder->funcs->destroy(encoder);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct component_ops exynos_dp_ops = {
|
static const struct component_ops exynos_dp_ops = {
|
||||||
|
@ -338,14 +338,10 @@ struct exynos_drm_display *exynos_dpi_probe(struct device *dev)
|
|||||||
|
|
||||||
int exynos_dpi_remove(struct device *dev)
|
int exynos_dpi_remove(struct device *dev)
|
||||||
{
|
{
|
||||||
struct drm_encoder *encoder = exynos_dpi_display.encoder;
|
|
||||||
struct exynos_dpi *ctx = exynos_dpi_display.ctx;
|
struct exynos_dpi *ctx = exynos_dpi_display.ctx;
|
||||||
|
|
||||||
exynos_dpi_dpms(&exynos_dpi_display, DRM_MODE_DPMS_OFF);
|
exynos_dpi_dpms(&exynos_dpi_display, DRM_MODE_DPMS_OFF);
|
||||||
|
|
||||||
exynos_dpi_connector_destroy(&ctx->connector);
|
|
||||||
encoder->funcs->destroy(encoder);
|
|
||||||
|
|
||||||
if (ctx->panel)
|
if (ctx->panel)
|
||||||
drm_panel_detach(ctx->panel);
|
drm_panel_detach(ctx->panel);
|
||||||
|
|
||||||
|
@ -1660,13 +1660,9 @@ static void exynos_dsi_unbind(struct device *dev, struct device *master,
|
|||||||
void *data)
|
void *data)
|
||||||
{
|
{
|
||||||
struct exynos_dsi *dsi = exynos_dsi_display.ctx;
|
struct exynos_dsi *dsi = exynos_dsi_display.ctx;
|
||||||
struct drm_encoder *encoder = dsi->encoder;
|
|
||||||
|
|
||||||
exynos_dsi_dpms(&exynos_dsi_display, DRM_MODE_DPMS_OFF);
|
exynos_dsi_dpms(&exynos_dsi_display, DRM_MODE_DPMS_OFF);
|
||||||
|
|
||||||
exynos_dsi_connector_destroy(&dsi->connector);
|
|
||||||
encoder->funcs->destroy(encoder);
|
|
||||||
|
|
||||||
mipi_dsi_host_unregister(&dsi->dsi_host);
|
mipi_dsi_host_unregister(&dsi->dsi_host);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -639,9 +639,6 @@ static int vidi_remove(struct platform_device *pdev)
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
encoder->funcs->destroy(encoder);
|
|
||||||
drm_connector_cleanup(&ctx->connector);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2312,12 +2312,6 @@ static int hdmi_bind(struct device *dev, struct device *master, void *data)
|
|||||||
|
|
||||||
static void hdmi_unbind(struct device *dev, struct device *master, void *data)
|
static void hdmi_unbind(struct device *dev, struct device *master, void *data)
|
||||||
{
|
{
|
||||||
struct exynos_drm_display *display = get_hdmi_display(dev);
|
|
||||||
struct drm_encoder *encoder = display->encoder;
|
|
||||||
struct hdmi_context *hdata = display->ctx;
|
|
||||||
|
|
||||||
hdmi_connector_destroy(&hdata->connector);
|
|
||||||
encoder->funcs->destroy(encoder);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct component_ops hdmi_component_ops = {
|
static const struct component_ops hdmi_component_ops = {
|
||||||
|
Loading…
Reference in New Issue
Block a user