static int pdev_remove(struct platform_device *pdev) { struct drm_device *ddev = platform_get_drvdata(pdev); struct omap_drm_private *priv = ddev->dev_private; DBG(""); drm_dev_unregister(ddev); omap_modeset_disable_external_hpd(); drm_kms_helper_poll_fini(ddev); if (priv->fbdev) omap_fbdev_free(ddev); drm_atomic_helper_shutdown(ddev); drm_mode_config_cleanup(ddev); omap_drm_irq_uninstall(ddev); omap_gem_deinit(ddev); drm_dev_unref(ddev); destroy_workqueue(priv->wq); kfree(priv); omap_disconnect_dssdevs(); omap_crtc_pre_uninit(); return 0; }
static int hx8357d_remove(struct spi_device *spi) { struct drm_device *drm = spi_get_drvdata(spi); drm_dev_unplug(drm); drm_atomic_helper_shutdown(drm); return 0; }
void virtio_gpu_modeset_fini(struct virtio_gpu_device *vgdev) { int i; for (i = 0 ; i < vgdev->num_scanouts; ++i) kfree(vgdev->outputs[i].edid); drm_atomic_helper_shutdown(vgdev->ddev); drm_mode_config_cleanup(vgdev->ddev); }
static void sun4i_drv_unbind(struct device *dev) { struct drm_device *drm = dev_get_drvdata(dev); drm_dev_unregister(drm); drm_kms_helper_poll_fini(drm); drm_atomic_helper_shutdown(drm); drm_mode_config_cleanup(drm); component_unbind_all(dev, NULL); of_reserved_mem_device_release(dev); drm_dev_put(drm); }
static void hx8357d_shutdown(struct spi_device *spi) { drm_atomic_helper_shutdown(spi_get_drvdata(spi)); }
/** * tinydrm_shutdown - Shutdown tinydrm * @tdev: tinydrm device * * This function makes sure that the display pipeline is disabled. * Used by drivers in their shutdown callback to turn off the display * on machine shutdown and reboot. */ void tinydrm_shutdown(struct tinydrm_device *tdev) { drm_atomic_helper_shutdown(tdev->drm); }
static void tinydrm_unregister(struct tinydrm_device *tdev) { drm_atomic_helper_shutdown(tdev->drm); drm_fb_cma_fbdev_fini(tdev->drm); drm_dev_unregister(tdev->drm); }