summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Zabel <p.zabel@pengutronix.de>2016-08-29 11:13:27 +0200
committerPhilipp Zabel <p.zabel@pengutronix.de>2016-08-29 16:30:48 +0200
commitc15d493cb636f331898f40c5c6989e9deee62b09 (patch)
treee2c459e57a104671f78b2df471bb40ebcf18687f
parent60203c90bfec627b619643523cbc17f0005964f7 (diff)
downloadop-kernel-dev-c15d493cb636f331898f40c5c6989e9deee62b09.zip
op-kernel-dev-c15d493cb636f331898f40c5c6989e9deee62b09.tar.gz
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>
-rw-r--r--drivers/gpu/drm/imx/parallel-display.c5
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 f203337..d796ada 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,
{
struct imx_parallel_display *imxpd = dev_get_drvdata(dev);
+ if (imxpd->bridge)
+ drm_bridge_detach(imxpd->bridge);
+ if (imxpd->panel)
+ drm_panel_detach(imxpd->panel);
+
kfree(imxpd->edid);
}
OpenPOWER on IntegriCloud