Displaying 10 results from an estimated 10 matches for "inmodeset".
2017 Jul 19
2
[PATCH] drm: disable vblank only if it got previously enabled
...t; +++ b/drivers/gpu/drm/drm_vblank.c
> @@ -1140,8 +1140,11 @@ void drm_crtc_vblank_off(struct drm_crtc *crtc)
>
> /* Avoid redundant vblank disables without previous
> * drm_crtc_vblank_on(). */
> - if (drm_core_check_feature(dev, DRIVER_ATOMIC) || !vblank->inmodeset)
> + if (drm_core_check_feature(dev, DRIVER_ATOMIC) || (!vblank->inmodeset &&
> + vblank->enabled)) {
> + DRM_DEBUG("disabling vblank on crtc %u\n", pipe);
> drm_vblank_disable_and_save(dev, pipe);
> + }...
2017 Jul 20
2
[PATCH] drm: disable vblank only if it got previously enabled
...t;>> @@ -1140,8 +1140,11 @@ void drm_crtc_vblank_off(struct drm_crtc *crtc)
>>>
>>> /* Avoid redundant vblank disables without previous
>>> * drm_crtc_vblank_on(). */
>>> - if (drm_core_check_feature(dev, DRIVER_ATOMIC) || !vblank->inmodeset)
>>> + if (drm_core_check_feature(dev, DRIVER_ATOMIC) || (!vblank->inmodeset &&
>>> + vblank->enabled)) {
>>> + DRM_DEBUG("disabling vblank on crtc %u\n", pipe);
>>> drm_vblank_disable_and_...
2017 Jul 16
3
[drm/nouveau] GeForce 8600 GT boot/suspend grumbling
On Sat, 2017-07-15 at 14:52 -0400, Ilia Mirkin wrote:
>
> OK, so this issue appears to be that we're calling
> drm_crtc_vblank_off() on a crtc for which vblank is already disabled.
> My guess is that this happens because the crtc is disabled.
>
> Not sure what the proper check is to see if vblanks are already disabled...
Seems so, the below shut up suspend for both 8600 GT
2017 Jul 19
0
[PATCH] drm: disable vblank only if it got previously enabled
...d 100644
--- a/drivers/gpu/drm/drm_vblank.c
+++ b/drivers/gpu/drm/drm_vblank.c
@@ -1140,8 +1140,11 @@ void drm_crtc_vblank_off(struct drm_crtc *crtc)
/* Avoid redundant vblank disables without previous
* drm_crtc_vblank_on(). */
- if (drm_core_check_feature(dev, DRIVER_ATOMIC) || !vblank->inmodeset)
+ if (drm_core_check_feature(dev, DRIVER_ATOMIC) || (!vblank->inmodeset &&
+ vblank->enabled)) {
+ DRM_DEBUG("disabling vblank on crtc %u\n", pipe);
drm_vblank_disable_and_save(dev, pipe);
+ }
wake_up(&vblank->queue);
--
2.13.2
2017 Jul 20
0
[PATCH] drm: disable vblank only if it got previously enabled
...drm_vblank.c
> > @@ -1140,8 +1140,11 @@ void drm_crtc_vblank_off(struct drm_crtc *crtc)
> >
> > /* Avoid redundant vblank disables without previous
> > * drm_crtc_vblank_on(). */
> > - if (drm_core_check_feature(dev, DRIVER_ATOMIC) || !vblank->inmodeset)
> > + if (drm_core_check_feature(dev, DRIVER_ATOMIC) || (!vblank->inmodeset &&
> > + vblank->enabled)) {
> > + DRM_DEBUG("disabling vblank on crtc %u\n", pipe);
> > drm_vblank_disable_and_save(dev, pi...
2017 Jul 20
0
[PATCH] drm: disable vblank only if it got previously enabled
...140,8 +1140,11 @@ void drm_crtc_vblank_off(struct drm_crtc *crtc)
>>>>
>>>> /* Avoid redundant vblank disables without previous
>>>> * drm_crtc_vblank_on(). */
>>>> - if (drm_core_check_feature(dev, DRIVER_ATOMIC) || !vblank->inmodeset)
>>>> + if (drm_core_check_feature(dev, DRIVER_ATOMIC) || (!vblank->inmodeset &&
>>>> + vblank->enabled)) {
>>>> + DRM_DEBUG("disabling vblank on crtc %u\n", pipe);
>>>> drm_vbl...
2020 Jun 24
0
[RFC v7 02/11] drm/vblank: Use spin_(un)lock_irq() in drm_crtc_vblank_off()
...now;
- unsigned long irqflags;
u64 seq;
if (drm_WARN_ON(dev, pipe >= dev->num_crtcs))
return;
- spin_lock_irqsave(&dev->event_lock, irqflags);
+ spin_lock_irq(&dev->event_lock);
spin_lock(&dev->vbl_lock);
drm_dbg_vbl(dev, "crtc %d, vblank enabled %d, inmodeset %d\n",
@@ -1325,7 +1324,7 @@ void drm_crtc_vblank_off(struct drm_crtc *crtc)
drm_vblank_put(dev, pipe);
send_vblank_event(dev, e, seq, now);
}
- spin_unlock_irqrestore(&dev->event_lock, irqflags);
+ spin_unlock_irq(&dev->event_lock);
/* Will be reset by the modeset he...
2020 Jun 24
0
[RFC v7 03/11] drm/vblank: Add vblank works
...t;num_crtcs))
return;
- spin_lock_irqsave(&dev->vbl_lock, irqflags);
+ /* So vblank works can't be scheduled until we've finished */
+ spin_lock_irqsave(&dev->event_lock, irqflags);
+
+ spin_lock(&dev->vbl_lock);
drm_dbg_vbl(dev, "crtc %d, vblank enabled %d, inmodeset %d\n",
pipe, vblank->enabled, vblank->inmodeset);
@@ -1435,7 +1457,9 @@ void drm_crtc_vblank_on(struct drm_crtc *crtc)
*/
if (atomic_read(&vblank->refcount) != 0 || drm_vblank_offdelay == 0)
drm_WARN_ON(dev, drm_vblank_enable(dev, pipe));
- spin_unlock_irqrestore(...
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 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