Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8c04fdee authored by Daniel Vetter's avatar Daniel Vetter
Browse files

drm/omap: Nuke close hooks



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.

v3: Remove unused flags (Tomi).

Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
Acked-by: default avatarDaniel Stone <daniels@collabora.com>
Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1453756616-28942-9-git-send-email-daniel.vetter@ffwll.ch
parent 53190c71
Loading
Loading
Loading
Loading
+1 −12
Original line number Diff line number Diff line
@@ -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);

	spin_unlock_irqrestore(&dev->event_lock, flags);
}

+0 −42
Original line number Diff line number Diff line
@@ -142,7 +142,6 @@ static int omap_atomic_commit(struct drm_device *dev,
{
	struct omap_drm_private *priv = dev->dev_private;
	struct omap_atomic_state_commit *commit;
	unsigned long flags;
	unsigned int i;
	int ret;

@@ -175,17 +174,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 +661,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 +774,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 +798,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,
+0 −1
Original line number Diff line number Diff line
@@ -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 */