summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2014-08-11 08:59:30 +1000
committerBen Skeggs <bskeggs@redhat.com>2014-08-11 08:59:30 +1000
commit64ca88570b71289a019a2d130b1a30dc474ef52d (patch)
tree37754835b7f2b4a33f6f33783f4da322d1b6e531
parent6e71bdf5a9da15c60694fa8543243e37a32c5faf (diff)
present: use drmmode_head() where it's appropriate
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r--src/nouveau_present.c26
1 files changed, 4 insertions, 22 deletions
diff --git a/src/nouveau_present.c b/src/nouveau_present.c
index 05cd518..f4cdcc8 100644
--- a/src/nouveau_present.c
+++ b/src/nouveau_present.c
@@ -61,21 +61,12 @@ static int
nouveau_present_ust_msc(RRCrtcPtr rrcrtc, uint64_t *ust, uint64_t *msc)
{
xf86CrtcPtr crtc = rrcrtc->devPrivate;
- xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(crtc->scrn);
NVPtr pNv = NVPTR(crtc->scrn);
drmVBlank args;
- int ret, i;
-
- for (i = 0; i < xf86_config->num_crtc; i++) {
- if (xf86_config->crtc[i] == crtc)
- break;
- }
-
- if (i == xf86_config->num_crtc)
- return BadMatch;
+ int ret;
args.request.type = DRM_VBLANK_RELATIVE;
- args.request.type |= i << DRM_VBLANK_HIGH_CRTC_SHIFT;
+ args.request.type |= drmmode_head(crtc) << DRM_VBLANK_HIGH_CRTC_SHIFT;
args.request.sequence = 0,
args.request.signal = 0,
@@ -111,20 +102,11 @@ static int
nouveau_present_vblank_queue(RRCrtcPtr rrcrtc, uint64_t event_id, uint64_t msc)
{
xf86CrtcPtr crtc = rrcrtc->devPrivate;
- xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(crtc->scrn);
NVPtr pNv = NVPTR(crtc->scrn);
drmVBlank args;
struct nouveau_present_vblank *event;
void *token;
- int ret, i;
-
- for (i = 0; i < xf86_config->num_crtc; i++) {
- if (xf86_config->crtc[i] == crtc)
- break;
- }
-
- if (i == xf86_config->num_crtc)
- return BadMatch;
+ int ret;
event = drmmode_event_queue(crtc->scrn, event_id, sizeof(*event),
nouveau_present_vblank, &token);
@@ -134,7 +116,7 @@ nouveau_present_vblank_queue(RRCrtcPtr rrcrtc, uint64_t event_id, uint64_t msc)
event->msc = msc;
args.request.type = DRM_VBLANK_ABSOLUTE | DRM_VBLANK_EVENT;
- args.request.type |= i << DRM_VBLANK_HIGH_CRTC_SHIFT;
+ args.request.type |= drmmode_head(crtc) << DRM_VBLANK_HIGH_CRTC_SHIFT;
args.request.sequence = msc;
args.request.signal = (unsigned long)token;