search for: drmcrtc

Displaying 5 results from an estimated 5 matches for "drmcrtc".

Did you mean: drm_crtc
2011 Nov 24
1
[PATCH] nouveau: implement precise vblank timestamping
...set(struct drm_file *file_priv, return -ENOENT; } + +int +nouveau_get_scanoutpos(struct drm_device *dev, int crtc, int *vpos, int *hpos) +{ + struct drm_nouveau_private *dev_priv = dev->dev_private; + int vline, hline, ret = 0; + u32 vbias, hbias, reg, vbl_start, vbl_end; + struct drm_crtc *drmcrtc; + + if (crtc < 0 || crtc >= dev->num_crtcs) { + DRM_ERROR("Invalid crtc %d\n", crtc); + return -EINVAL; + } + + list_for_each_entry(drmcrtc, &dev->mode_config.crtc_list, head) { + if(nouveau_crtc(drmcrtc)->index == crtc) + /* stop if we have found crtc with matchi...
2012 Apr 25
2
[PATCH 1/2] drm/nouveau: Use drm_vblank_count_and_time() for pageflip completion events.
From: Mario Kleiner <mario.kleiner at tuebingen.mpg.de> Emit kms pageflip completion events with proper vblank count and timestamp for the vblank interval in which the pageflip completed. This makes the timestamps and counts consistent with what the OML_sync_control spec defines. v2 Lucas Stach: rebased on top of nouveau tree and resolved trivial conflict. Signed-off-by: Mario Kleiner
2012 Feb 15
2
[Patches][nouveau/kms]: Precise Vblank and pageflip timestamping
Hi, these are two patches against the nouveau kms driver. The first patch makes sure that pageflip completion events get their vblank count and timestamp from the drm. The second patch from Lucas Stach, here included with his permission, makes sure that the timestamps of vblanks are calculated with high precision and robustness. Both patches together make sure that all timestamps returned by the
2012 Feb 16
5
[Patches][nouveau/kms]: Precise Vblank and pageflip timestamping v2
Just updated versions of the patches send by Mario Kleiner. This ones are rebased on top of the nouveau tree and updated according to the review feedback. Regards, Lucas
2013 Aug 12
0
[RFC PATCH] drm/nv50-nvd0: implement precise vblank timing support on nv50/nvc0.
...n ret; +} + +static int +nouveau_drm_get_vblank_timestamp(struct drm_device *dev, int crtc, + int *max_error, + struct timeval *vblank_time, + unsigned flags) +{ + struct nouveau_drm *drm = nouveau_drm(dev); + struct nouveau_disp *pdisp = nouveau_disp(drm->device); + struct drm_crtc *drmcrtc; + + if (!pdisp->get_scanoutpos) + return -EOPNOTSUPP; + + list_for_each_entry(drmcrtc, &dev->mode_config.crtc_list, head) { + struct nouveau_crtc *nv_crtc = nouveau_crtc(drmcrtc); + + if (nv_crtc->index != crtc) + continue; + + /* Helper routine in DRM core does all the work: */...