Again since the core takes care of this we can remove them. While at
it also remove the postclose hook, it's empty.

v2: Laurent pointed me at even more code to delete.

Cc: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
Cc: Tomi Valkeinen <tomi.valkeinen at ti.com>
Acked-by: Daniel Stone <daniels at collabora.com>
Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
---
 drivers/gpu/drm/omapdrm/omap_crtc.c | 13 +-----------
 drivers/gpu/drm/omapdrm/omap_drv.c  | 41 -------------------------------------
 drivers/gpu/drm/omapdrm/omap_drv.h  |  1 -
 3 files changed, 1 insertion(+), 54 deletions(-)

diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.c 
b/drivers/gpu/drm/omapdrm/omap_crtc.c
index 2ed0754ed19e..d38fcbcc43a8 100644
--- a/drivers/gpu/drm/omapdrm/omap_crtc.c
+++ b/drivers/gpu/drm/omapdrm/omap_crtc.c
@@ -269,18 +269,7 @@ static void omap_crtc_complete_page_flip(struct drm_crtc 
*crtc)
                return;

        spin_lock_irqsave(&dev->event_lock, flags);
-
-       list_del(&event->base.link);
-
-       /*
-        * Queue the event for delivery if it's still linked to a file
-        * handle, otherwise just destroy it.
-        */
-       if (event->base.file_priv)
-               drm_crtc_send_vblank_event(crtc, event);
-       else
-               event->base.destroy(&event->base);
-
+       drm_crtc_send_vblank_event(crtc, event);
        spin_unlock_irqrestore(&dev->event_lock, flags);
 }

diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c 
b/drivers/gpu/drm/omapdrm/omap_drv.c
index dfafdb602ad2..603a65498b40 100644
--- a/drivers/gpu/drm/omapdrm/omap_drv.c
+++ b/drivers/gpu/drm/omapdrm/omap_drv.c
@@ -175,17 +175,6 @@ static int omap_atomic_commit(struct drm_device *dev,
        priv->commit.pending |= commit->crtcs;
        spin_unlock(&priv->commit.lock);

-       /* Keep track of all CRTC events to unlink them in preclose(). */
-       spin_lock_irqsave(&dev->event_lock, flags);
-       for (i = 0; i < dev->mode_config.num_crtc; ++i) {
-               struct drm_crtc_state *cstate = state->crtc_states[i];
-
-               if (cstate && cstate->event)
-                       list_add_tail(&cstate->event->base.link,
-                                     &priv->commit.events);
-       }
-       spin_unlock_irqrestore(&dev->event_lock, flags);
-
        /* Swap the state, this is the point of no return. */
        drm_atomic_helper_swap_state(dev, state);

@@ -673,7 +662,6 @@ static int dev_load(struct drm_device *dev, unsigned long 
flags)
        priv->wq = alloc_ordered_workqueue("omapdrm", 0);
        init_waitqueue_head(&priv->commit.wait);
        spin_lock_init(&priv->commit.lock);
-       INIT_LIST_HEAD(&priv->commit.events);

        spin_lock_init(&priv->list_lock);
        INIT_LIST_HEAD(&priv->obj_list);
@@ -787,33 +775,6 @@ static void dev_lastclose(struct drm_device *dev)
        }
 }

-static void dev_preclose(struct drm_device *dev, struct drm_file *file)
-{
-       struct omap_drm_private *priv = dev->dev_private;
-       struct drm_pending_event *event;
-       unsigned long flags;
-
-       DBG("preclose: dev=%p", dev);
-
-       /*
-        * Unlink all pending CRTC events to make sure they won't be queued up
-        * by a pending asynchronous commit.
-        */
-       spin_lock_irqsave(&dev->event_lock, flags);
-       list_for_each_entry(event, &priv->commit.events, link) {
-               if (event->file_priv == file) {
-                       file->event_space += event->event->length;
-                       event->file_priv = NULL;
-               }
-       }
-       spin_unlock_irqrestore(&dev->event_lock, flags);
-}
-
-static void dev_postclose(struct drm_device *dev, struct drm_file *file)
-{
-       DBG("postclose: dev=%p, file=%p", dev, file);
-}
-
 static const struct vm_operations_struct omap_gem_vm_ops = {
        .fault = omap_gem_fault,
        .open = drm_gem_vm_open,
@@ -838,8 +799,6 @@ static struct drm_driver omap_drm_driver = {
        .unload = dev_unload,
        .open = dev_open,
        .lastclose = dev_lastclose,
-       .preclose = dev_preclose,
-       .postclose = dev_postclose,
        .set_busid = drm_platform_set_busid,
        .get_vblank_counter = drm_vblank_no_hw_counter,
        .enable_vblank = omap_irq_enable_vblank,
diff --git a/drivers/gpu/drm/omapdrm/omap_drv.h 
b/drivers/gpu/drm/omapdrm/omap_drv.h
index 9e0030731c37..c23cbe6fe9e4 100644
--- a/drivers/gpu/drm/omapdrm/omap_drv.h
+++ b/drivers/gpu/drm/omapdrm/omap_drv.h
@@ -106,7 +106,6 @@ struct omap_drm_private {

        /* atomic commit */
        struct {
-               struct list_head events;
                wait_queue_head_t wait;
                u32 pending;
                spinlock_t lock;        /* Protects commit.pending */
-- 
2.6.4

Reply via email to