summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ti.com>2014-07-31 16:15:39 +0300
committerTomi Valkeinen <tomi.valkeinen@ti.com>2014-08-08 14:26:36 +0300
commite4e42b8ad24cabf4d6d3c20a63f18dd6b954d9c2 (patch)
treed66c5340fb80f3e45d73d5114d8fff42973128b0
parentbe92abea827b82957450dd4ac7f997d5e8173d60 (diff)
downloadop-kernel-dev-e4e42b8ad24cabf4d6d3c20a63f18dd6b954d9c2.zip
op-kernel-dev-e4e42b8ad24cabf4d6d3c20a63f18dd6b954d9c2.tar.gz
OMAPDSS: DSI: fix depopulating dsi peripherals
After v3.16-rc1, devices populated with of_platform_populate() should be depopulated using of_platform_depopulate(). Failure to do so prevents the devices from being populated again (e.g. when loading a module). This patch fixes the problem for the OMAP DSI driver. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
-rw-r--r--drivers/video/fbdev/omap2/dss/dsi.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/drivers/video/fbdev/omap2/dss/dsi.c b/drivers/video/fbdev/omap2/dss/dsi.c
index 4755a34..56b9244 100644
--- a/drivers/video/fbdev/omap2/dss/dsi.c
+++ b/drivers/video/fbdev/omap2/dss/dsi.c
@@ -5658,18 +5658,11 @@ err_runtime_get:
return r;
}
-static int dsi_unregister_child(struct device *dev, void *data)
-{
- struct platform_device *pdev = to_platform_device(dev);
- platform_device_unregister(pdev);
- return 0;
-}
-
static int __exit omap_dsihw_remove(struct platform_device *dsidev)
{
struct dsi_data *dsi = dsi_get_dsidrv_data(dsidev);
- device_for_each_child(&dsidev->dev, NULL, dsi_unregister_child);
+ of_platform_depopulate(&dsidev->dev);
WARN_ON(dsi->scp_clk_refcount > 0);
OpenPOWER on IntegriCloud