From: daniel.vetter@ffwll.ch (Daniel Vetter) To: linux-snps-arc@lists.infradead.org Subject: [PATCH 02/27] drm/arc: Nuke event_list Date: Wed, 8 Jun 2016 14:18:54 +0200 [thread overview] Message-ID: <1465388359-8070-2-git-send-email-daniel.vetter@ffwll.ch> (raw) In-Reply-To: <1465388359-8070-1-git-send-email-daniel.vetter@ffwll.ch> This is just used for cleanup in preclose, and with the reworked event handling code this is now done properly by the core. Nuke it! But it also shows that arc totally fails at sending out drm events for flips. Next patch will hack that up. v2: Rebase it! Cc: Carlos Palminha <palminha at synopsys.com> Cc: Alexey Brodkin <abrodkin at synopsys.com> Cc: linux-snps-arc at lists.infradead.org Signed-off-by: Daniel Vetter <daniel.vetter at intel.com> --- drivers/gpu/drm/arc/arcpgu.h | 1 - drivers/gpu/drm/arc/arcpgu_crtc.c | 4 ---- drivers/gpu/drm/arc/arcpgu_drv.c | 19 ------------------- 3 files changed, 24 deletions(-) diff --git a/drivers/gpu/drm/arc/arcpgu.h b/drivers/gpu/drm/arc/arcpgu.h index 86574b698a78..8c01a25d279a 100644 --- a/drivers/gpu/drm/arc/arcpgu.h +++ b/drivers/gpu/drm/arc/arcpgu.h @@ -22,7 +22,6 @@ struct arcpgu_drm_private { struct clk *clk; struct drm_fbdev_cma *fbdev; struct drm_framebuffer *fb; - struct list_head event_list; struct drm_crtc crtc; struct drm_plane *plane; }; diff --git a/drivers/gpu/drm/arc/arcpgu_crtc.c b/drivers/gpu/drm/arc/arcpgu_crtc.c index 92f8beff8e60..d5ca0c280e68 100644 --- a/drivers/gpu/drm/arc/arcpgu_crtc.c +++ b/drivers/gpu/drm/arc/arcpgu_crtc.c @@ -155,10 +155,6 @@ static void arc_pgu_crtc_atomic_begin(struct drm_crtc *crtc, event->pipe = drm_crtc_index(crtc); WARN_ON(drm_crtc_vblank_get(crtc) != 0); - - spin_lock_irqsave(&crtc->dev->event_lock, flags); - list_add_tail(&event->base.link, &arcpgu->event_list); - spin_unlock_irqrestore(&crtc->dev->event_lock, flags); } } diff --git a/drivers/gpu/drm/arc/arcpgu_drv.c b/drivers/gpu/drm/arc/arcpgu_drv.c index 7675bbc70133..d407fd79a400 100644 --- a/drivers/gpu/drm/arc/arcpgu_drv.c +++ b/drivers/gpu/drm/arc/arcpgu_drv.c @@ -81,22 +81,6 @@ static const struct file_operations arcpgu_drm_ops = { .mmap = arcpgu_gem_mmap, }; -static void arcpgu_preclose(struct drm_device *drm, struct drm_file *file) -{ - struct arcpgu_drm_private *arcpgu = drm->dev_private; - struct drm_pending_vblank_event *e, *t; - unsigned long flags; - - spin_lock_irqsave(&drm->event_lock, flags); - list_for_each_entry_safe(e, t, &arcpgu->event_list, base.link) { - if (e->base.file_priv != file) - continue; - list_del(&e->base.link); - kfree(&e->base); - } - spin_unlock_irqrestore(&drm->event_lock, flags); -} - static void arcpgu_lastclose(struct drm_device *drm) { struct arcpgu_drm_private *arcpgu = drm->dev_private; @@ -122,8 +106,6 @@ static int arcpgu_load(struct drm_device *drm) if (IS_ERR(arcpgu->clk)) return PTR_ERR(arcpgu->clk); - INIT_LIST_HEAD(&arcpgu->event_list); - arcpgu_setup_mode_config(drm); res = platform_get_resource(pdev, IORESOURCE_MEM, 0); @@ -192,7 +174,6 @@ int arcpgu_unload(struct drm_device *drm) static struct drm_driver arcpgu_drm_driver = { .driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_PRIME | DRIVER_ATOMIC, - .preclose = arcpgu_preclose, .lastclose = arcpgu_lastclose, .name = "drm-arcpgu", .desc = "ARC PGU Controller", -- 2.8.1
WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel.vetter@ffwll.ch> To: DRI Development <dri-devel@lists.freedesktop.org> Cc: Daniel Vetter <daniel.vetter@ffwll.ch>, linux-snps-arc@lists.infradead.org, Alexey Brodkin <abrodkin@synopsys.com>, Carlos Palminha <palminha@synopsys.com>, Daniel Vetter <daniel.vetter@intel.com> Subject: [PATCH 02/27] drm/arc: Nuke event_list Date: Wed, 8 Jun 2016 14:18:54 +0200 [thread overview] Message-ID: <1465388359-8070-2-git-send-email-daniel.vetter@ffwll.ch> (raw) In-Reply-To: <1465388359-8070-1-git-send-email-daniel.vetter@ffwll.ch> This is just used for cleanup in preclose, and with the reworked event handling code this is now done properly by the core. Nuke it! But it also shows that arc totally fails at sending out drm events for flips. Next patch will hack that up. v2: Rebase it! Cc: Carlos Palminha <palminha@synopsys.com> Cc: Alexey Brodkin <abrodkin@synopsys.com> Cc: linux-snps-arc@lists.infradead.org Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> --- drivers/gpu/drm/arc/arcpgu.h | 1 - drivers/gpu/drm/arc/arcpgu_crtc.c | 4 ---- drivers/gpu/drm/arc/arcpgu_drv.c | 19 ------------------- 3 files changed, 24 deletions(-) diff --git a/drivers/gpu/drm/arc/arcpgu.h b/drivers/gpu/drm/arc/arcpgu.h index 86574b698a78..8c01a25d279a 100644 --- a/drivers/gpu/drm/arc/arcpgu.h +++ b/drivers/gpu/drm/arc/arcpgu.h @@ -22,7 +22,6 @@ struct arcpgu_drm_private { struct clk *clk; struct drm_fbdev_cma *fbdev; struct drm_framebuffer *fb; - struct list_head event_list; struct drm_crtc crtc; struct drm_plane *plane; }; diff --git a/drivers/gpu/drm/arc/arcpgu_crtc.c b/drivers/gpu/drm/arc/arcpgu_crtc.c index 92f8beff8e60..d5ca0c280e68 100644 --- a/drivers/gpu/drm/arc/arcpgu_crtc.c +++ b/drivers/gpu/drm/arc/arcpgu_crtc.c @@ -155,10 +155,6 @@ static void arc_pgu_crtc_atomic_begin(struct drm_crtc *crtc, event->pipe = drm_crtc_index(crtc); WARN_ON(drm_crtc_vblank_get(crtc) != 0); - - spin_lock_irqsave(&crtc->dev->event_lock, flags); - list_add_tail(&event->base.link, &arcpgu->event_list); - spin_unlock_irqrestore(&crtc->dev->event_lock, flags); } } diff --git a/drivers/gpu/drm/arc/arcpgu_drv.c b/drivers/gpu/drm/arc/arcpgu_drv.c index 7675bbc70133..d407fd79a400 100644 --- a/drivers/gpu/drm/arc/arcpgu_drv.c +++ b/drivers/gpu/drm/arc/arcpgu_drv.c @@ -81,22 +81,6 @@ static const struct file_operations arcpgu_drm_ops = { .mmap = arcpgu_gem_mmap, }; -static void arcpgu_preclose(struct drm_device *drm, struct drm_file *file) -{ - struct arcpgu_drm_private *arcpgu = drm->dev_private; - struct drm_pending_vblank_event *e, *t; - unsigned long flags; - - spin_lock_irqsave(&drm->event_lock, flags); - list_for_each_entry_safe(e, t, &arcpgu->event_list, base.link) { - if (e->base.file_priv != file) - continue; - list_del(&e->base.link); - kfree(&e->base); - } - spin_unlock_irqrestore(&drm->event_lock, flags); -} - static void arcpgu_lastclose(struct drm_device *drm) { struct arcpgu_drm_private *arcpgu = drm->dev_private; @@ -122,8 +106,6 @@ static int arcpgu_load(struct drm_device *drm) if (IS_ERR(arcpgu->clk)) return PTR_ERR(arcpgu->clk); - INIT_LIST_HEAD(&arcpgu->event_list); - arcpgu_setup_mode_config(drm); res = platform_get_resource(pdev, IORESOURCE_MEM, 0); @@ -192,7 +174,6 @@ int arcpgu_unload(struct drm_device *drm) static struct drm_driver arcpgu_drm_driver = { .driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_PRIME | DRIVER_ATOMIC, - .preclose = arcpgu_preclose, .lastclose = arcpgu_lastclose, .name = "drm-arcpgu", .desc = "ARC PGU Controller", -- 2.8.1 _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2016-06-08 12:18 UTC|newest] Thread overview: 120+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-06-08 12:18 [PATCH 01/27] drm/atomic-helper: Massage swap_state signature somewhat Daniel Vetter 2016-06-08 12:18 ` Daniel Vetter [this message] 2016-06-08 12:18 ` [PATCH 02/27] drm/arc: Nuke event_list Daniel Vetter 2016-06-08 14:13 ` Maarten Lankhorst 2016-06-08 14:13 ` Maarten Lankhorst 2016-06-08 12:18 ` [PATCH 03/27] drm/arc: Actually bother with handling atomic events Daniel Vetter 2016-06-08 12:18 ` Daniel Vetter 2016-06-08 14:14 ` Maarten Lankhorst 2016-06-08 14:14 ` Maarten Lankhorst 2016-06-08 14:30 ` Daniel Vetter 2016-06-08 14:30 ` Daniel Vetter 2016-06-09 10:54 ` Alexey Brodkin 2016-06-09 10:54 ` Alexey Brodkin 2016-06-09 12:26 ` Daniel Vetter 2016-06-09 12:26 ` Daniel Vetter 2016-06-09 12:48 ` Alexey Brodkin 2016-06-09 12:48 ` Alexey Brodkin 2016-06-09 13:23 ` Daniel Vetter 2016-06-09 13:23 ` Daniel Vetter 2016-06-09 13:27 ` Alexey Brodkin 2016-06-09 13:27 ` Alexey Brodkin 2016-06-09 13:52 ` Daniel Vetter 2016-06-09 13:52 ` Daniel Vetter 2016-06-09 14:29 ` Alexey Brodkin 2016-06-09 14:29 ` Alexey Brodkin 2016-06-09 14:31 ` Daniel Vetter 2016-06-09 14:31 ` Daniel Vetter 2016-06-09 14:37 ` Daniel Vetter 2016-06-09 14:37 ` Daniel Vetter 2016-06-10 13:23 ` Alexey Brodkin 2016-06-10 13:23 ` Alexey Brodkin 2016-06-10 14:19 ` Daniel Vetter 2016-06-10 14:19 ` Daniel Vetter 2016-06-10 14:54 ` Daniel Vetter 2016-06-10 14:54 ` Daniel Vetter 2016-06-10 15:01 ` Alexey Brodkin 2016-06-10 15:01 ` Alexey Brodkin 2016-06-10 15:09 ` Daniel Vetter 2016-06-10 15:09 ` Daniel Vetter 2016-06-10 15:16 ` Alexey Brodkin 2016-06-10 15:16 ` Alexey Brodkin 2016-06-08 12:18 ` [PATCH 04/27] drm/fsl-du: Implement some semblance of vblank event handling Daniel Vetter 2016-06-08 14:15 ` Maarten Lankhorst 2016-06-08 12:18 ` [PATCH 05/27] drm/hisilicon: " Daniel Vetter 2016-06-08 14:17 ` Maarten Lankhorst 2016-06-08 14:32 ` Daniel Vetter 2016-06-08 12:18 ` [PATCH 06/27] drm/sun4i: " Daniel Vetter 2016-06-09 9:03 ` Maarten Lankhorst 2017-01-02 12:23 ` Laurent Pinchart 2016-06-08 12:18 ` [PATCH 07/27] drm/atomic: kerneldoc for drm_atomic_crtc_needs_modeset Daniel Vetter 2016-06-08 14:11 ` Liviu Dudau 2016-06-09 9:03 ` Maarten Lankhorst 2016-06-08 12:19 ` [PATCH 08/27] drm/atomic: Add struct drm_crtc_commit to track async updates Daniel Vetter 2016-06-08 14:41 ` Maarten Lankhorst 2016-06-09 10:09 ` Liviu Dudau 2016-06-08 12:19 ` [PATCH 09/27] drm/atomic-helper: roll out commit synchronization Daniel Vetter 2016-06-08 14:40 ` Maarten Lankhorst 2016-06-08 15:15 ` [PATCH] " Daniel Vetter 2017-01-02 12:09 ` Laurent Pinchart 2017-01-04 8:49 ` Daniel Vetter 2016-06-09 14:22 ` [PATCH 09/27] " Maarten Lankhorst 2016-06-08 12:19 ` [PATCH 10/27] drm/atomic-helper: nonblocking commit support Daniel Vetter 2016-06-08 14:44 ` Maarten Lankhorst 2016-06-08 15:05 ` Daniel Vetter 2016-06-08 15:54 ` Chris Wilson 2016-06-08 16:19 ` Daniel Vetter 2016-06-08 16:22 ` Daniel Vetter 2016-06-08 12:19 ` [PATCH 11/27] drm/arc: Implement nonblocking commit correctly Daniel Vetter 2016-06-08 12:19 ` Daniel Vetter 2016-06-08 14:27 ` Maarten Lankhorst 2016-06-08 14:27 ` Maarten Lankhorst 2016-06-08 12:19 ` [PATCH 12/27] drm/hdlcd: Use helper support for nonblocking commits Daniel Vetter 2016-06-08 12:19 ` [PATCH 13/27] drm/i915: Signal drm events for atomic Daniel Vetter 2016-06-08 14:25 ` Maarten Lankhorst 2016-06-08 12:19 ` [PATCH 14/27] drm/i915: Roll out the helper nonblock tracking Daniel Vetter 2016-06-09 14:01 ` Maarten Lankhorst 2016-06-08 12:19 ` [PATCH 15/27] drm/i915: nonblocking commit Daniel Vetter 2016-06-09 14:03 ` Maarten Lankhorst 2016-06-09 14:40 ` Daniel Vetter 2016-06-08 12:19 ` [PATCH 16/27] drm/i915: Use atomic commits for legacy page_flips Daniel Vetter 2016-06-08 14:24 ` Chris Wilson 2016-06-08 14:34 ` Daniel Vetter 2016-06-08 12:19 ` [PATCH 17/27] drm/i915: Move fb_bits updating later in atomic_commit Daniel Vetter 2016-06-08 12:19 ` [PATCH 18/27] drm/rockchip: Disarm vop->is_enabled Daniel Vetter 2016-06-08 12:19 ` [PATCH 19/27] drm/rockchip: Fix crtc_state->event signalling Daniel Vetter 2016-06-08 12:19 ` [PATCH 20/27] drm/rockchip: convert to helper nonblocking atomic commit Daniel Vetter 2016-06-08 12:19 ` [PATCH 21/27] drm/rockchip: Nuke pending event handling in preclose Daniel Vetter 2016-06-10 15:21 ` Daniel Vetter 2016-06-08 12:19 ` [PATCH 22/27] drm/virtio: Don't reinvent a flipping wheel Daniel Vetter 2016-06-09 22:07 ` [PATCH] " Daniel Vetter 2016-06-10 15:20 ` Daniel Vetter 2016-06-13 9:20 ` Gerd Hoffmann 2016-06-13 13:34 ` Daniel Vetter 2016-06-14 14:25 ` Gerd Hoffmann 2016-06-14 14:33 ` Daniel Vetter 2016-06-08 12:19 ` [PATCH 23/27] drm: Replace fb_helper->atomic with mode_config->atomic_commit Daniel Vetter 2016-06-08 12:36 ` Boris Brezillon 2016-06-12 9:01 ` Ying Liu 2016-06-13 7:58 ` Daniel Vetter 2016-06-13 9:26 ` Ying Liu 2016-06-13 14:01 ` Daniel Vetter 2016-06-20 5:55 ` Ying Liu 2016-06-20 13:26 ` Daniel Vetter 2016-06-08 12:19 ` [PATCH 24/27] drm: Resurrect atomic rmfb code Daniel Vetter 2016-07-13 10:15 ` Maarten Lankhorst 2016-07-13 10:56 ` Daniel Vetter 2016-06-08 12:19 ` [PATCH 25/27] drm/sti: Don't call drm_helper_disable_unused_functions Daniel Vetter 2016-06-08 12:19 ` [PATCH 26/27] drm/crtc-helper: disable_unused_functions really isn't for atomic Daniel Vetter 2016-06-08 22:36 ` Laurent Pinchart 2016-06-09 8:26 ` Daniel Vetter 2016-06-21 9:12 ` Laurent Pinchart 2016-06-21 9:46 ` Daniel Vetter 2016-06-09 22:14 ` [PATCH] drm/omapdrm: don't call drm_helper_disable_unused_functions Daniel Vetter 2016-06-09 22:50 ` Laurent Pinchart 2016-06-10 6:24 ` Tomi Valkeinen 2016-06-10 6:26 ` Tomi Valkeinen 2016-06-21 8:02 ` Daniel Vetter 2016-06-08 12:19 ` [PATCH 27/27] drm/atomic-helper: Annotate a bunch more RETURNS: sections Daniel Vetter 2016-06-08 14:11 ` [PATCH 01/27] drm/atomic-helper: Massage swap_state signature somewhat Maarten Lankhorst 2016-06-09 22:06 ` [PATCH] " Daniel Vetter
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1465388359-8070-2-git-send-email-daniel.vetter@ffwll.ch \ --to=daniel.vetter@ffwll.ch \ --cc=linux-snps-arc@lists.infradead.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.