diff options
author | Philipp Zabel <p.zabel@pengutronix.de> | 2016-08-29 05:13:27 -0400 |
---|---|---|
committer | Philipp Zabel <p.zabel@pengutronix.de> | 2016-08-29 10:30:48 -0400 |
commit | c15d493cb636f331898f40c5c6989e9deee62b09 (patch) | |
tree | e2c459e57a104671f78b2df471bb40ebcf18687f /drivers/gpu/drm/imx/parallel-display.c | |
parent | 60203c90bfec627b619643523cbc17f0005964f7 (diff) |
drm/imx: parallel-display: detach bridge or panel on unbind
Don't leave any bridge or panel attached to a stale driver instance
when unbinding, to allow reattachment on a rebind.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Diffstat (limited to 'drivers/gpu/drm/imx/parallel-display.c')
-rw-r--r-- | drivers/gpu/drm/imx/parallel-display.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/imx/parallel-display.c b/drivers/gpu/drm/imx/parallel-display.c index f20333790728..d796ada2a47a 100644 --- a/drivers/gpu/drm/imx/parallel-display.c +++ b/drivers/gpu/drm/imx/parallel-display.c | |||
@@ -293,6 +293,11 @@ static void imx_pd_unbind(struct device *dev, struct device *master, | |||
293 | { | 293 | { |
294 | struct imx_parallel_display *imxpd = dev_get_drvdata(dev); | 294 | struct imx_parallel_display *imxpd = dev_get_drvdata(dev); |
295 | 295 | ||
296 | if (imxpd->bridge) | ||
297 | drm_bridge_detach(imxpd->bridge); | ||
298 | if (imxpd->panel) | ||
299 | drm_panel_detach(imxpd->panel); | ||
300 | |||
296 | kfree(imxpd->edid); | 301 | kfree(imxpd->edid); |
297 | } | 302 | } |
298 | 303 | ||