search for: cur_vbl

Displaying 13 results from an estimated 13 matches for "cur_vbl".

Did you mean: cur_eol
2020 Mar 18
4
[PATCH 1/9] drm/vblank: Add vblank works
...t. > + * > + * Returns: > + * 0 on success, error code on failure. > + */ > +int drm_vblank_work_schedule(struct drm_vblank_work *work, > + u64 count, bool nextonmiss) > +{ > + struct drm_vblank_crtc *vblank = work->vblank; > + unsigned long irqflags; > + u64 cur_vbl; > + int ret = 0; > + bool rescheduling = false; > + bool passed; > + > + spin_lock_irqsave(&vblank->dev->event_lock, irqflags); > + > + if (work->cancel) > + goto out; > + > + if (work->state == DRM_VBL_WORK_RUNNING) { > + work->reschedule = tr...
2020 May 08
0
[RFC v4 04/12] drm/vblank: Add vblank works
...said work + * using the new @count. + * + * Returns: + * 0 on success, error code on failure. + */ +int drm_vblank_work_schedule(struct drm_vblank_work *work, + u64 count, bool nextonmiss) +{ + struct drm_vblank_crtc *vblank = work->vblank; + struct drm_device *dev = vblank->dev; + u64 cur_vbl; + unsigned long irqflags; + bool passed, rescheduling = false; + int ret = 0; + + spin_lock_irqsave(&vblank->work_lock, irqflags); + if (!kthread_work_queuable(&work->base)) + goto out; + + if (list_empty(&work->pending)) { + ret = drm_vblank_get(dev, vblank->pipe); + if...
2020 Mar 18
0
[PATCH 1/9] drm/vblank: Add vblank works
...will reschedule said work + * using the new @count. + * + * Returns: + * 0 on success, error code on failure. + */ +int drm_vblank_work_schedule(struct drm_vblank_work *work, + u64 count, bool nextonmiss) +{ + struct drm_vblank_crtc *vblank = work->vblank; + unsigned long irqflags; + u64 cur_vbl; + int ret = 0; + bool rescheduling = false; + bool passed; + + spin_lock_irqsave(&vblank->dev->event_lock, irqflags); + + if (work->cancel) + goto out; + + if (work->state == DRM_VBL_WORK_RUNNING) { + work->reschedule = true; + work->count = count; + goto out; + } else if...
2020 Jun 22
0
[RFC v5 02/10] drm/vblank: Add vblank works
...said work + * using the new @count. + * + * Returns: + * 0 on success, error code on failure. + */ +int drm_vblank_work_schedule(struct drm_vblank_work *work, + u64 count, bool nextonmiss) +{ + struct drm_vblank_crtc *vblank = work->vblank; + struct drm_device *dev = vblank->dev; + u64 cur_vbl; + unsigned long irqflags; + bool passed, rescheduling = false; + int ret = 0; + + spin_lock_irqsave(&vblank->work_lock, irqflags); + if (!vblank->worker || work->cancelling) + goto out; + + if (list_empty(&work->node)) { + ret = drm_vblank_get(dev, vblank->pipe); + if (re...
2020 Mar 27
2
[PATCH 1/9] drm/vblank: Add vblank works
...lure. > > > + */ > > > +int drm_vblank_work_schedule(struct drm_vblank_work *work, > > > + u64 count, bool nextonmiss) > > > +{ > > > + struct drm_vblank_crtc *vblank = work->vblank; > > > + unsigned long irqflags; > > > + u64 cur_vbl; > > > + int ret = 0; > > > + bool rescheduling = false; > > > + bool passed; > > > + > > > + spin_lock_irqsave(&vblank->dev->event_lock, irqflags); > > > + > > > + if (work->cancel) > > > + goto out; > > &g...
2020 Mar 27
0
[PATCH 1/9] drm/vblank: Add vblank works
...+ * 0 on success, error code on failure. > > + */ > > +int drm_vblank_work_schedule(struct drm_vblank_work *work, > > + u64 count, bool nextonmiss) > > +{ > > + struct drm_vblank_crtc *vblank = work->vblank; > > + unsigned long irqflags; > > + u64 cur_vbl; > > + int ret = 0; > > + bool rescheduling = false; > > + bool passed; > > + > > + spin_lock_irqsave(&vblank->dev->event_lock, irqflags); > > + > > + if (work->cancel) > > + goto out; > > + > > + if (work->state == DRM_VB...
2020 Apr 13
0
[PATCH 1/9] drm/vblank: Add vblank works
...> > > +int drm_vblank_work_schedule(struct drm_vblank_work *work, > > > > + u64 count, bool nextonmiss) > > > > +{ > > > > + struct drm_vblank_crtc *vblank = work->vblank; > > > > + unsigned long irqflags; > > > > + u64 cur_vbl; > > > > + int ret = 0; > > > > + bool rescheduling = false; > > > > + bool passed; > > > > + > > > > + spin_lock_irqsave(&vblank->dev->event_lock, irqflags); > > > > + > > > > + if (work->cancel) >...
2020 Jun 24
0
[RFC v7 03/11] drm/vblank: Add vblank works
...#include "drm_trace.h" +#include "drm_vblank_internal.h" +#include "drm_vblank_work_internal.h" /** * DOC: vblank handling @@ -363,7 +366,7 @@ static void drm_update_vblank_count(struct drm_device *dev, unsigned int pipe, store_vblank(dev, pipe, diff, t_vblank, cur_vblank); } -static u64 drm_vblank_count(struct drm_device *dev, unsigned int pipe) +u64 drm_vblank_count(struct drm_device *dev, unsigned int pipe) { struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; u64 count; @@ -497,6 +500,7 @@ static void drm_vblank_init_release(struct drm_device...
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
2020 Mar 18
12
[PATCH 0/9] 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 that we'll be sending in just a short bit. This additionally adds a feature that Ville Syrj?l? came up with: vblank works. Basically, this is just a generic DRM
2020 Jun 22
13
[RFC v5 00/10] 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
2020 Jun 27
9
[RFC v8 0/9] 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
2020 May 08
16
[RFC v4 00/12] 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