drm/legacy: move legacy dev reinit into legacy misc
This moves the legacy dev reinit into the legacy misc file. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
@@ -425,30 +425,6 @@ static int drm_open_helper(struct file *filp, struct drm_minor *minor)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void drm_legacy_dev_reinit(struct drm_device *dev)
|
|
||||||
{
|
|
||||||
if (dev->irq_enabled)
|
|
||||||
drm_irq_uninstall(dev);
|
|
||||||
|
|
||||||
mutex_lock(&dev->struct_mutex);
|
|
||||||
|
|
||||||
drm_legacy_agp_clear(dev);
|
|
||||||
|
|
||||||
drm_legacy_sg_cleanup(dev);
|
|
||||||
drm_legacy_vma_flush(dev);
|
|
||||||
drm_legacy_dma_takedown(dev);
|
|
||||||
|
|
||||||
mutex_unlock(&dev->struct_mutex);
|
|
||||||
|
|
||||||
dev->sigdata.lock = NULL;
|
|
||||||
|
|
||||||
dev->context_flag = 0;
|
|
||||||
dev->last_context = 0;
|
|
||||||
dev->if_version = 0;
|
|
||||||
|
|
||||||
DRM_DEBUG("lastclose completed\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
void drm_lastclose(struct drm_device * dev)
|
void drm_lastclose(struct drm_device * dev)
|
||||||
{
|
{
|
||||||
DRM_DEBUG("\n");
|
DRM_DEBUG("\n");
|
||||||
|
@@ -138,6 +138,7 @@ int drm_legacy_sg_free(struct drm_device *dev, void *data,
|
|||||||
|
|
||||||
void drm_legacy_init_members(struct drm_device *dev);
|
void drm_legacy_init_members(struct drm_device *dev);
|
||||||
void drm_legacy_destroy_members(struct drm_device *dev);
|
void drm_legacy_destroy_members(struct drm_device *dev);
|
||||||
|
void drm_legacy_dev_reinit(struct drm_device *dev);
|
||||||
|
|
||||||
void drm_legacy_lock_master_cleanup(struct drm_device *dev, struct drm_master *master);
|
void drm_legacy_lock_master_cleanup(struct drm_device *dev, struct drm_master *master);
|
||||||
#endif /* __DRM_LEGACY_H__ */
|
#endif /* __DRM_LEGACY_H__ */
|
||||||
|
@@ -50,3 +50,27 @@ void drm_legacy_destroy_members(struct drm_device *dev)
|
|||||||
{
|
{
|
||||||
mutex_destroy(&dev->ctxlist_mutex);
|
mutex_destroy(&dev->ctxlist_mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void drm_legacy_dev_reinit(struct drm_device *dev)
|
||||||
|
{
|
||||||
|
if (dev->irq_enabled)
|
||||||
|
drm_irq_uninstall(dev);
|
||||||
|
|
||||||
|
mutex_lock(&dev->struct_mutex);
|
||||||
|
|
||||||
|
drm_legacy_agp_clear(dev);
|
||||||
|
|
||||||
|
drm_legacy_sg_cleanup(dev);
|
||||||
|
drm_legacy_vma_flush(dev);
|
||||||
|
drm_legacy_dma_takedown(dev);
|
||||||
|
|
||||||
|
mutex_unlock(&dev->struct_mutex);
|
||||||
|
|
||||||
|
dev->sigdata.lock = NULL;
|
||||||
|
|
||||||
|
dev->context_flag = 0;
|
||||||
|
dev->last_context = 0;
|
||||||
|
dev->if_version = 0;
|
||||||
|
|
||||||
|
DRM_DEBUG("lastclose completed\n");
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user