[Intel-gfx] [PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-31 Thread Michel Dänzer
On 31.07.2014 16:54, Daniel Vetter wrote: > On Thu, Jul 31, 2014 at 3:14 AM, Michel D?nzer wrote: >> I think it would be better to refactor drm_wait_vblank() than to >> reinvent it. > > That's the ioctl implementation which spends most of its time decoding > ioctl structures. If we take that out

[Intel-gfx] [PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-31 Thread Daniel Vetter
On Thu, Jul 31, 2014 at 10:56 AM, Michel D?nzer wrote: > On 31.07.2014 16:54, Daniel Vetter wrote: >> On Thu, Jul 31, 2014 at 3:14 AM, Michel D?nzer wrote: >>> I think it would be better to refactor drm_wait_vblank() than to >>> reinvent it. >> >> That's the ioctl implementation which spends most

[Intel-gfx] [PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-31 Thread Michel Dänzer
On 31.07.2014 00:21, Thierry Reding wrote: > On Wed, Jul 30, 2014 at 05:36:21PM +0300, Ville Syrj?l? wrote: >> On Wed, Jul 30, 2014 at 04:20:25PM +0200, Thierry Reding wrote: >>> On Wed, Jul 30, 2014 at 05:32:28PM +0900, Michel D?nzer wrote: On 30.07.2014 17:22, Daniel Vetter wrote: > On W

[Intel-gfx] [PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-31 Thread Daniel Vetter
On Thu, Jul 31, 2014 at 3:14 AM, Michel D?nzer wrote: > I think it would be better to refactor drm_wait_vblank() than to > reinvent it. That's the ioctl implementation which spends most of its time decoding ioctl structures. If we take that out then there's about half a line which would be shared

[Intel-gfx] [PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-30 Thread Ville Syrjälä
On Wed, Jul 30, 2014 at 04:20:25PM +0200, Thierry Reding wrote: > On Wed, Jul 30, 2014 at 05:32:28PM +0900, Michel D?nzer wrote: > > On 30.07.2014 17:22, Daniel Vetter wrote: > > > On Wed, Jul 30, 2014 at 11:59:33AM +0900, Michel D?nzer wrote: > > >> On 30.07.2014 06:32, Daniel Vetter wrote: > > >>

[PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-30 Thread Michel Dänzer
On 30.07.2014 17:22, Daniel Vetter wrote: > On Wed, Jul 30, 2014 at 11:59:33AM +0900, Michel D?nzer wrote: >> On 30.07.2014 06:32, Daniel Vetter wrote: >>> + * due to lack of driver support or because the crtc is off. >>> + */ >>> +void drm_crtc_vblank_wait(struct drm_crtc *crtc) >>> +{ >>> + drm

[Intel-gfx] [PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-30 Thread Thierry Reding
On Wed, Jul 30, 2014 at 05:36:21PM +0300, Ville Syrj?l? wrote: > On Wed, Jul 30, 2014 at 04:20:25PM +0200, Thierry Reding wrote: > > On Wed, Jul 30, 2014 at 05:32:28PM +0900, Michel D?nzer wrote: > > > On 30.07.2014 17:22, Daniel Vetter wrote: > > > > On Wed, Jul 30, 2014 at 11:59:33AM +0900, Miche

[PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-30 Thread Thierry Reding
On Wed, Jul 30, 2014 at 05:06:38PM +0200, Daniel Vetter wrote: > On Wed, Jul 30, 2014 at 04:24:06PM +0200, Thierry Reding wrote: > > On Tue, Jul 29, 2014 at 11:32:22PM +0200, Daniel Vetter wrote: > > [...] > > > diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c > > [...] > > > + re

[Intel-gfx] [PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-30 Thread Daniel Vetter
On Wed, Jul 30, 2014 at 05:36:21PM +0300, Ville Syrj?l? wrote: > On Wed, Jul 30, 2014 at 04:20:25PM +0200, Thierry Reding wrote: > > On Wed, Jul 30, 2014 at 05:32:28PM +0900, Michel D?nzer wrote: > > > On 30.07.2014 17:22, Daniel Vetter wrote: > > > > On Wed, Jul 30, 2014 at 11:59:33AM +0900, Miche

[PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-30 Thread Daniel Vetter
On Wed, Jul 30, 2014 at 04:24:06PM +0200, Thierry Reding wrote: > On Tue, Jul 29, 2014 at 11:32:22PM +0200, Daniel Vetter wrote: > [...] > > diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c > [...] > > + ret = wait_event_timeout(dev->vblank[crtc].queue, > > +

[PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-30 Thread Thierry Reding
On Tue, Jul 29, 2014 at 11:32:22PM +0200, Daniel Vetter wrote: [...] > diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c [...] > + ret = wait_event_timeout(dev->vblank[crtc].queue, > + C, msecs_to_jiffies(100)); 100 milliseconds looks like a very a

[PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-30 Thread Thierry Reding
On Wed, Jul 30, 2014 at 05:32:28PM +0900, Michel D?nzer wrote: > On 30.07.2014 17:22, Daniel Vetter wrote: > > On Wed, Jul 30, 2014 at 11:59:33AM +0900, Michel D?nzer wrote: > >> On 30.07.2014 06:32, Daniel Vetter wrote: > >>> + * due to lack of driver support or because the crtc is off. > >>> + */

[PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-30 Thread Michel Dänzer
On 30.07.2014 06:32, Daniel Vetter wrote: > As usual in both a crtc index and a struct drm_crtc * version. > > The function assumes that no one drivers their display below 10Hz, and > it will complain if the vblank wait takes longer than that. > > v2: Also check dev->max_vblank_counter since some

[PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-30 Thread Daniel Vetter
On Wed, Jul 30, 2014 at 11:59:33AM +0900, Michel D?nzer wrote: > On 30.07.2014 06:32, Daniel Vetter wrote: > > As usual in both a crtc index and a struct drm_crtc * version. > > > > The function assumes that no one drivers their display below 10Hz, and > > it will complain if the vblank wait takes

[PATCH 7/8] drm/irq: Implement a generic vblank_wait function

2014-07-29 Thread Daniel Vetter
As usual in both a crtc index and a struct drm_crtc * version. The function assumes that no one drivers their display below 10Hz, and it will complain if the vblank wait takes longer than that. v2: Also check dev->max_vblank_counter since some drivers register a fake get_vblank_counter function.