search for: inmodeset

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