Commit 707cf58a authored by Tomi Valkeinen's avatar Tomi Valkeinen

drm/omap: fix uninit order in pdev_remove()

When unloading omapdrm driver, the omapdrm platform device is
uninitialized last, after the displays have been disconnected omap_crtc
callbacks have been removed. As the omapdrm pdev uninitialization needs
the features uninitialized in earlier steps, a crash is guaranteed.

This patch fixes the uninitialize order so that the omapdrm pdev is
removed first.
Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
Reviewed-by: default avatarRob Clark <robdclark@gmail.com>
parent 2ec8e378
...@@ -696,10 +696,11 @@ static int pdev_remove(struct platform_device *device) ...@@ -696,10 +696,11 @@ static int pdev_remove(struct platform_device *device)
{ {
DBG(""); DBG("");
drm_put_dev(platform_get_drvdata(device));
omap_disconnect_dssdevs(); omap_disconnect_dssdevs();
omap_crtc_pre_uninit(); omap_crtc_pre_uninit();
drm_put_dev(platform_get_drvdata(device));
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment