mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-13 14:14:37 +00:00
drm/atmel: Nuke preclose
The only thing this did was cancle pending flip events, and the core takes care of that now. Cc: Boris Brezillon <boris.brezillon@free-electrons.com> Acked-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1453756616-28942-5-git-send-email-daniel.vetter@ffwll.ch
This commit is contained in:
parent
00648f18e0
commit
9c333c2883
3 changed files with 0 additions and 31 deletions
|
@ -280,24 +280,6 @@ static void atmel_hlcdc_crtc_destroy(struct drm_crtc *c)
|
||||||
kfree(crtc);
|
kfree(crtc);
|
||||||
}
|
}
|
||||||
|
|
||||||
void atmel_hlcdc_crtc_cancel_page_flip(struct drm_crtc *c,
|
|
||||||
struct drm_file *file)
|
|
||||||
{
|
|
||||||
struct atmel_hlcdc_crtc *crtc = drm_crtc_to_atmel_hlcdc_crtc(c);
|
|
||||||
struct drm_pending_vblank_event *event;
|
|
||||||
struct drm_device *dev = c->dev;
|
|
||||||
unsigned long flags;
|
|
||||||
|
|
||||||
spin_lock_irqsave(&dev->event_lock, flags);
|
|
||||||
event = crtc->event;
|
|
||||||
if (event && event->base.file_priv == file) {
|
|
||||||
event->base.destroy(&event->base);
|
|
||||||
drm_vblank_put(dev, crtc->id);
|
|
||||||
crtc->event = NULL;
|
|
||||||
}
|
|
||||||
spin_unlock_irqrestore(&dev->event_lock, flags);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void atmel_hlcdc_crtc_finish_page_flip(struct atmel_hlcdc_crtc *crtc)
|
static void atmel_hlcdc_crtc_finish_page_flip(struct atmel_hlcdc_crtc *crtc)
|
||||||
{
|
{
|
||||||
struct drm_device *dev = crtc->base.dev;
|
struct drm_device *dev = crtc->base.dev;
|
||||||
|
|
|
@ -619,15 +619,6 @@ static void atmel_hlcdc_dc_connector_unplug_all(struct drm_device *dev)
|
||||||
mutex_unlock(&dev->mode_config.mutex);
|
mutex_unlock(&dev->mode_config.mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void atmel_hlcdc_dc_preclose(struct drm_device *dev,
|
|
||||||
struct drm_file *file)
|
|
||||||
{
|
|
||||||
struct drm_crtc *crtc;
|
|
||||||
|
|
||||||
list_for_each_entry(crtc, &dev->mode_config.crtc_list, head)
|
|
||||||
atmel_hlcdc_crtc_cancel_page_flip(crtc, file);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void atmel_hlcdc_dc_lastclose(struct drm_device *dev)
|
static void atmel_hlcdc_dc_lastclose(struct drm_device *dev)
|
||||||
{
|
{
|
||||||
struct atmel_hlcdc_dc *dc = dev->dev_private;
|
struct atmel_hlcdc_dc *dc = dev->dev_private;
|
||||||
|
@ -698,7 +689,6 @@ static struct drm_driver atmel_hlcdc_dc_driver = {
|
||||||
.driver_features = DRIVER_HAVE_IRQ | DRIVER_GEM |
|
.driver_features = DRIVER_HAVE_IRQ | DRIVER_GEM |
|
||||||
DRIVER_MODESET | DRIVER_PRIME |
|
DRIVER_MODESET | DRIVER_PRIME |
|
||||||
DRIVER_ATOMIC,
|
DRIVER_ATOMIC,
|
||||||
.preclose = atmel_hlcdc_dc_preclose,
|
|
||||||
.lastclose = atmel_hlcdc_dc_lastclose,
|
.lastclose = atmel_hlcdc_dc_lastclose,
|
||||||
.irq_handler = atmel_hlcdc_dc_irq_handler,
|
.irq_handler = atmel_hlcdc_dc_irq_handler,
|
||||||
.irq_preinstall = atmel_hlcdc_dc_irq_uninstall,
|
.irq_preinstall = atmel_hlcdc_dc_irq_uninstall,
|
||||||
|
|
|
@ -152,9 +152,6 @@ int atmel_hlcdc_plane_prepare_disc_area(struct drm_crtc_state *c_state);
|
||||||
|
|
||||||
void atmel_hlcdc_crtc_irq(struct drm_crtc *c);
|
void atmel_hlcdc_crtc_irq(struct drm_crtc *c);
|
||||||
|
|
||||||
void atmel_hlcdc_crtc_cancel_page_flip(struct drm_crtc *crtc,
|
|
||||||
struct drm_file *file);
|
|
||||||
|
|
||||||
void atmel_hlcdc_crtc_suspend(struct drm_crtc *crtc);
|
void atmel_hlcdc_crtc_suspend(struct drm_crtc *crtc);
|
||||||
void atmel_hlcdc_crtc_resume(struct drm_crtc *crtc);
|
void atmel_hlcdc_crtc_resume(struct drm_crtc *crtc);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue