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

Commit e37fb79d authored by Daniel Vetter's avatar Daniel Vetter
Browse files

drm/shmob: Nuke preclose hook



Again since the drm core takes care of event unlinking/disarming this
is now just needless code.

v2: Fixup misplaced hunk.

Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: default avatarDaniel Stone <daniels@collabora.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (v1)
Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1453756616-28942-11-git-send-email-daniel.vetter@ffwll.ch
parent 0a346629
Loading
Loading
Loading
Loading
+0 −20
Original line number Diff line number Diff line
@@ -438,26 +438,6 @@ static const struct drm_crtc_helper_funcs crtc_helper_funcs = {
	.mode_set_base = shmob_drm_crtc_mode_set_base,
};

void shmob_drm_crtc_cancel_page_flip(struct shmob_drm_crtc *scrtc,
				     struct drm_file *file)
{
	struct drm_pending_vblank_event *event;
	struct drm_device *dev = scrtc->crtc.dev;
	unsigned long flags;

	/* Destroy the pending vertical blanking event associated with the
	 * pending page flip, if any, and disable vertical blanking interrupts.
	 */
	spin_lock_irqsave(&dev->event_lock, flags);
	event = scrtc->event;
	if (event && event->base.file_priv == file) {
		scrtc->event = NULL;
		event->base.destroy(&event->base);
		drm_vblank_put(dev, 0);
	}
	spin_unlock_irqrestore(&dev->event_lock, flags);
}

void shmob_drm_crtc_finish_page_flip(struct shmob_drm_crtc *scrtc)
{
	struct drm_pending_vblank_event *event;
+0 −2
Original line number Diff line number Diff line
@@ -47,8 +47,6 @@ struct shmob_drm_connector {

int shmob_drm_crtc_create(struct shmob_drm_device *sdev);
void shmob_drm_crtc_enable_vblank(struct shmob_drm_device *sdev, bool enable);
void shmob_drm_crtc_cancel_page_flip(struct shmob_drm_crtc *scrtc,
				     struct drm_file *file);
void shmob_drm_crtc_finish_page_flip(struct shmob_drm_crtc *scrtc);
void shmob_drm_crtc_suspend(struct shmob_drm_crtc *scrtc);
void shmob_drm_crtc_resume(struct shmob_drm_crtc *scrtc);
+0 −8
Original line number Diff line number Diff line
@@ -200,13 +200,6 @@ static int shmob_drm_load(struct drm_device *dev, unsigned long flags)
	return ret;
}

static void shmob_drm_preclose(struct drm_device *dev, struct drm_file *file)
{
	struct shmob_drm_device *sdev = dev->dev_private;

	shmob_drm_crtc_cancel_page_flip(&sdev->crtc, file);
}

static irqreturn_t shmob_drm_irq(int irq, void *arg)
{
	struct drm_device *dev = arg;
@@ -266,7 +259,6 @@ static struct drm_driver shmob_drm_driver = {
				| DRIVER_PRIME,
	.load			= shmob_drm_load,
	.unload			= shmob_drm_unload,
	.preclose		= shmob_drm_preclose,
	.set_busid		= drm_platform_set_busid,
	.irq_handler		= shmob_drm_irq,
	.get_vblank_counter	= drm_vblank_no_hw_counter,