search for: vblanks

Displaying 20 results from an estimated 542 matches for "vblanks".

Did you mean: vblank
2020 Mar 18
4
[PATCH 1/9] drm/vblank: Add vblank works
On Tue, Mar 17, 2020 at 08:40:58PM -0400, Lyude Paul wrote: > From: Ville Syrj?l? <ville.syrjala at linux.intel.com> > > Add some kind of vblank workers. The interface is similar to regular > delayed works, and also allows for re-scheduling. > > Whatever hardware programming we do in the work must be fast > (must at least complete during the vblank, sometimes during
2020 Mar 18
0
[PATCH 1/9] drm/vblank: Add vblank works
From: Ville Syrj?l? <ville.syrjala at linux.intel.com> Add some kind of vblank workers. The interface is similar to regular delayed works, and also allows for re-scheduling. Whatever hardware programming we do in the work must be fast (must at least complete during the vblank, sometimes during the first few scanlines of vblank), so we'll fire up a per-crtc high priority thread for
2020 Mar 27
2
[PATCH 1/9] drm/vblank: Add vblank works
...-03-27 at 16:29 -0400, Lyude Paul wrote: > Adding Tejun to this thread per-Daniel's suggestion on IRC. > > Hi Tejun! So, I don't know what your experience with modesetting related > stuff > is so I'll quickly explain some important concepts here regarding scanlines, > vblanks, etc. If you already understand this, feel free to skip this next > paragraph. > > From the perspective of a computer, every time a computer monitor displays a > new frame it's done by "scanning out" the display image from top to bottom, > one row of pixels at a time....
2020 Mar 27
0
[PATCH 1/9] drm/vblank: Add vblank works
Adding Tejun to this thread per-Daniel's suggestion on IRC. Hi Tejun! So, I don't know what your experience with modesetting related stuff is so I'll quickly explain some important concepts here regarding scanlines, vblanks, etc. If you already understand this, feel free to skip this next paragraph. >From the perspective of a computer, every time a computer monitor displays a new frame it's done by "scanning out" the display image from top to bottom, one row of pixels at a time. which row of pixels w...
2020 May 08
0
[RFC v4 04/12] drm/vblank: Add vblank works
Add some kind of vblank workers. The interface is similar to regular delayed works, and is mostly based off kthread_work. It allows for scheduling delayed works that execute once a particular vblank sequence has passed. It also allows for accurate flushing of scheduled vblank works - in that flushing waits for both the vblank sequence and job execution to complete, or for the work to get cancelled
2020 Apr 13
0
[PATCH 1/9] drm/vblank: Add vblank works
...> > Adding Tejun to this thread per-Daniel's suggestion on IRC. > > > > Hi Tejun! So, I don't know what your experience with modesetting related > > stuff > > is so I'll quickly explain some important concepts here regarding > > scanlines, > > vblanks, etc. If you already understand this, feel free to skip this next > > paragraph. > > > > From the perspective of a computer, every time a computer monitor displays > > a > > new frame it's done by "scanning out" the display image from top to > > bo...
2020 Jun 22
0
[RFC v5 02/10] drm/vblank: Add vblank works
Add some kind of vblank workers. The interface is similar to regular delayed works, and is mostly based off kthread_work. It allows for scheduling delayed works that execute once a particular vblank sequence has passed. It also allows for accurate flushing of scheduled vblank works - in that flushing waits for both the vblank sequence and job execution to complete, or for the work to get cancelled
2020 Jun 24
0
[RFC v7 03/11] drm/vblank: Add vblank works
...since v6: * Get rid of ->pending and seqcounts, and implement flushing through simpler means - danvet * Get rid of work_lock, just use drm_device->event_lock * Move drm_vblank_work item cleanup into drm_crtc_vblank_off() so that we ensure that all vblank work has finished before disabling vblanks * Add checks into drm_crtc_vblank_reset() so we yell if it gets called while there's vblank workers active * Grab event_lock in both drm_crtc_vblank_on()/drm_crtc_vblank_off(), the main reason for this is so that other threads calling drm_vblank_work_schedule() are blocked from attempting...
2017 Jun 21
6
Enable vblank_disable_immediate on more drivers.
This patch series sets dev->vblank_disable_immediate = true on radeon/amdgpu-kms, nouveau-kms for nv50+, and vc4 for the real kms driver (as opposed to dispmanx firmware backed kms). All the drivers should be ready in theory, given their implementation, for fast vblank disable/enable. In practice, i have performed timing tests with my measurement equipment for all those drivers with the
2015 Oct 30
5
[PATCH] drm/nouveau: Fix pre-nv50 pageflip events
Apparently pre-nv50 pageflip events happen before the actual vblank period. Therefore that functionality got semi-disabled in commit af4870e406126b7ac0ae7c7ce5751f25ebe60f28 Author: Mario Kleiner <mario.kleiner.de at gmail.com> Date: Tue May 13 00:42:08 2014 +0200 drm/nouveau/kms/nv04-nv40: fix pageflip events via special case. Unfortunately that hack got uprooted in commit
2020 Jan 15
1
[PATCH v2 02/21] drm: Evaluate struct drm_device.vblank_disable_immediate on each use
VBLANK interrupts can be disabled immediately or with a delay, where the latter is the default. The former option can be selected by setting get_vblank_timestamp, and enabling vblank_disable_immediate in struct drm_device. The setup is only evaluated once when DRM initializes VBLANKs. Evaluating the settings on each use of vblank_disable_immediate will allow for easy integration of CRTC VBLANK functions. Signed-off-by: Thomas Zimmermann <tzimmermann at suse.de> --- drivers/gpu/drm/drm_vblank.c | 31 ++++++++++++++----------------- 1 file changed, 14 insertions(+), 17 de...
2012 Jul 27
0
[PATCH 3/3] nouveau: add vblank methods on newer cards
Allow the software channel to be created now, since methods for vblanking have been implemented. The instmem flush seems to be needed on fermi to prevent a race, but I enabled it on earlier cards too since they seem to be susceptible to the same race. Signed-off-by: Maarten Lankhorst <maarten.lankhorst at canonical.com> --- drivers/gpu/drm/nouveau/nouveau_abi16.c | 9 ----
2020 Jun 24
13
[RFC v7 00/11] drm/nouveau: Introduce CRC support for gf119+
Nvidia released some documentation on how CRC support works on their GPUs, hooray! So: this patch series implements said CRC support in nouveau, along with adding some special debugfs interfaces for some relevant igt-gpu-tools tests (already on the ML). First - we add some new functionality to kthread_work in the kernel, and then use this to add a new feature to DRM that Ville Syrj?l? came up
2013 Aug 12
2
[PATCH] drm/nouveau: fix vblank deadlock
...->vblank_time_lock is always taken when the vblank state is toggled, which caused a deadlock when &event->lock was also taken during event_get/put. Solve the race by requiring that lock to change enable/disable state, and always keeping vblank on the event list. Core drm ignores unwanted vblanks, so extra calls to drm_handle_vblank are harmless. Signed-off-by: Maarten Lankhorst <maarten.lankhorst at canonical.com> --- diff --git a/drivers/gpu/drm/nouveau/core/core/event.c b/drivers/gpu/drm/nouveau/core/core/event.c index 7eb81c1..78bff7c 100644 --- a/drivers/gpu/drm/nouveau/core/cor...
2020 May 08
0
[RFC v4 03/12] drm/vblank: Register drmm cleanup action once per drm_vblank_crtc
Since we'll be allocating resources for kthread_create_worker() in the next commit (which could fail and require us to clean up the mess), let's simplify the cleanup process a bit by registering a drm_vblank_init_release() action for each drm_vblank_crtc so they're still cleaned up if we fail to initialize one of them. Changes since v3: * Use drmm_add_action_or_reset() - Daniel Vetter
2012 Oct 09
1
Fix for potential nouveau-ddx/x-server crash on XOrg 1.12+
Hi all, the following patch fixes a race-condition in the nouveau ddx which caused frequent x-server crashes for at least 1 user under some loads when OpenGL triple-buffering is enabled, which it is by default on XOrg 1.12 and later. As a side effect, it provides a small optimization for the common case of bufferswap at next vblank. The other way to avoid the race + possible crash is to set
2013 Aug 27
0
[PATCH 5/9] drm/nouveau: Add install/remove semantics for event handlers
Complete migration of nouveau_event_get/_put from add/remove semantics to enable/disable semantics. Introduce nouveau_event_handler_install/_remove interface to add/remove non-local-scope event handlers (ie., those stored in parent containers). This change in semantics makes explicit the handler lifetime, and distinguishes "one-of" event handlers (such as gpio) from "many
2020 Jun 22
0
[RFC v5 01/10] drm/vblank: Register drmm cleanup action once per drm_vblank_crtc
Since we'll be allocating resources for kthread_create_worker() in the next commit (which could fail and require us to clean up the mess), let's simplify the cleanup process a bit by registering a drm_vblank_init_release() action for each drm_vblank_crtc so they're still cleaned up if we fail to initialize one of them. Changes since v3: * Use drmm_add_action_or_reset() - Daniel Vetter
2013 Jul 23
4
[PATCH 1/3] drm/nouveau: fix vblank interrupt being called before event is setup
Sort of fixes mmiotrace for me again, I could sear I sent a similar patch before the rework to event interface, so I guess it got reintroduced. Signed-off-by: Maarten Lankhorst <maarten.lankhorst at canonical.com> --- diff --git a/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c b/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c index 7e3875d..35e526b 100644 ---
2017 Jun 21
1
[PATCH 1/4] drm/vc4: Allow vblank_disable_immediate on non-fw-kms.
Mario Kleiner <mario.kleiner.de at gmail.com> writes: > With instantaneous high precision vblank timestamping > that updates at leading edge of vblank, the emulated > "hw vblank counter" from vblank timestamping which > increments at leading edge of vblank, and reliable > page flip execution and completion at leading edge > of vblank, we should meet the