search for: drm_arm_vblank_event

Displaying 10 results from an estimated 10 matches for "drm_arm_vblank_event".

2015 Oct 30
5
[PATCH] drm/nouveau: Fix pre-nv50 pageflip events
...N_ON_SMP(!spin_is_locked(&dev->event_lock)); + assert_spin_locked(&dev->event_lock); + e->event.sequence = seq; e->event.tv_sec = now->tv_sec; e->event.tv_usec = now->tv_usec; @@ -985,6 +986,59 @@ static void send_vblank_event(struct drm_device *dev, } /** + * drm_arm_vblank_event - arm vblanke event after pageflip + * @dev: DRM device + * @pipe: CRTC index + * @e: the event to prepare to send + * + * A lot of drivers need to generate vblank events for the very next vblank + * interrupt. For example when the page flip interrupt happens when the page + * flip gets armed, but...
2015 Nov 06
0
[PATCH] drm/nouveau: Fix pre-nv50 pageflip events
...; > + assert_spin_locked(&dev->event_lock); > + > e->event.sequence = seq; > e->event.tv_sec = now->tv_sec; > e->event.tv_usec = now->tv_usec; > @@ -985,6 +986,59 @@ static void send_vblank_event(struct drm_device *dev, > } > > /** > + * drm_arm_vblank_event - arm vblanke event after pageflip > + * @dev: DRM device > + * @pipe: CRTC index > + * @e: the event to prepare to send > + * > + * A lot of drivers need to generate vblank events for the very next vblank > + * interrupt. For example when the page flip interrupt happens when the...
2015 Nov 09
2
[PATCH] drm/nouveau: Fix pre-nv50 pageflip events (v2)
...N_ON_SMP(!spin_is_locked(&dev->event_lock)); + assert_spin_locked(&dev->event_lock); + e->event.sequence = seq; e->event.tv_sec = now->tv_sec; e->event.tv_usec = now->tv_usec; @@ -985,6 +986,57 @@ static void send_vblank_event(struct drm_device *dev, } /** + * drm_arm_vblank_event - arm vblank event after pageflip + * @dev: DRM device + * @pipe: CRTC index + * @e: the event to prepare to send + * + * A lot of drivers need to generate vblank events for the very next vblank + * interrupt. For example when the page flip interrupt happens when the page + * flip gets armed, but n...
2015 Nov 10
2
[PATCH] drm/nouveau: Fix pre-nv50 pageflip events (v3)
...N_ON_SMP(!spin_is_locked(&dev->event_lock)); + assert_spin_locked(&dev->event_lock); + e->event.sequence = seq; e->event.tv_sec = now->tv_sec; e->event.tv_usec = now->tv_usec; @@ -985,6 +986,57 @@ static void send_vblank_event(struct drm_device *dev, } /** + * drm_arm_vblank_event - arm vblank event after pageflip + * @dev: DRM device + * @pipe: CRTC index + * @e: the event to prepare to send + * + * A lot of drivers need to generate vblank events for the very next vblank + * interrupt. For example when the page flip interrupt happens when the page + * flip gets armed, but n...
2016 Jun 06
4
[PATCH 01/14] drm/nouveau: use drm_crtc_send_vblank_event() v2
...during flip, for the target crtc of this flip */ @@ -842,17 +841,18 @@ nouveau_finish_page_flip(struct nouveau_channel *chan, s = list_first_entry(&fctx->flip, struct nouveau_page_flip_state, head); if (s->event) { if (drm->device.info.family < NV_DEVICE_INFO_V0_TESLA) { - drm_arm_vblank_event(dev, s->crtc, s->event); + drm_arm_vblank_event(dev, drm_crtc_index(s->crtc), + s->event); } else { - drm_send_vblank_event(dev, s->crtc, s->event); + drm_crtc_send_vblank_event(s->crtc, s->event); /* Give up ownership of vblank for page-flipped crtc...
2016 Jun 06
4
[PATCH 01/14] drm/nouveau: use drm_crtc_send_vblank_event() v2
...during flip, for the target crtc of this flip */ @@ -842,17 +841,18 @@ nouveau_finish_page_flip(struct nouveau_channel *chan, s = list_first_entry(&fctx->flip, struct nouveau_page_flip_state, head); if (s->event) { if (drm->device.info.family < NV_DEVICE_INFO_V0_TESLA) { - drm_arm_vblank_event(dev, s->crtc, s->event); + drm_arm_vblank_event(dev, drm_crtc_index(s->crtc), + s->event); } else { - drm_send_vblank_event(dev, s->crtc, s->event); + drm_crtc_send_vblank_event(s->crtc, s->event); /* Give up ownership of vblank for page-flipped crtc...
2016 Jun 06
4
[PATCH 01/14] drm/nouveau: use drm_crtc_send_vblank_event() v2
...during flip, for the target crtc of this flip */ @@ -842,17 +841,18 @@ nouveau_finish_page_flip(struct nouveau_channel *chan, s = list_first_entry(&fctx->flip, struct nouveau_page_flip_state, head); if (s->event) { if (drm->device.info.family < NV_DEVICE_INFO_V0_TESLA) { - drm_arm_vblank_event(dev, s->crtc, s->event); + drm_arm_vblank_event(dev, drm_crtc_index(s->crtc), + s->event); } else { - drm_send_vblank_event(dev, s->crtc, s->event); + drm_crtc_send_vblank_event(s->crtc, s->event); /* Give up ownership of vblank for page-flipped crtc...
2016 Jun 07
0
[PATCH 01/10] drm/nouveau: replace legacy vblank helpers
From: Gustavo Padovan <gustavo.padovan at collabora.co.uk> Replace the legacy drm_send_vblank_event(), drm_arm_vblank_event() and drm_vblank_{get,put}() with the new helper functions. v2: add crtc to nouveau_page_flip_state (comment from Mario Kleiner) Signed-off-by: Gustavo Padovan <gustavo.padovan at collabora.co.uk> Signed-off-by: Gustavo Padovan <gustavo.padovan at collabora.co.uk> --- drivers/gpu/dr...
2016 Jun 06
0
[PATCH 01/14] drm/nouveau: use drm_crtc_send_vblank_event() v2
...get crtc of this flip */ > @@ -842,17 +841,18 @@ nouveau_finish_page_flip(struct nouveau_channel *chan, > s = list_first_entry(&fctx->flip, struct nouveau_page_flip_state, head); > if (s->event) { > if (drm->device.info.family < NV_DEVICE_INFO_V0_TESLA) { > - drm_arm_vblank_event(dev, s->crtc, s->event); > + drm_arm_vblank_event(dev, drm_crtc_index(s->crtc), > + s->event); > } else { > - drm_send_vblank_event(dev, s->crtc, s->event); > + drm_crtc_send_vblank_event(s->crtc, s->event); > > /* Give up ownersh...
2015 Nov 02
0
[PATCH] drm/nouveau: Fix pre-nv50 pageflip events
...elper to arm vblank events for > such drivers. What happens when the page flip interrupt arrives during a vertical blank period? Presumably the userspace event will be deferred until the next vertical blank period, but the flip might already take effect in the current one. > +/** > + * drm_arm_vblank_event - arm vblanke event after pageflip > + * @crtc: the source CRTC of the vblank event Ye olde vblanke event? ;) (typo, same in the previous comment) The function name in this comment doesn't match the name of the function it describes. -- Earthling Michel Dänzer |...