Lines Matching refs:vblank

92 		if (dev->vblank[i].refcount == 0 &&
93 dev->vblank[i].enabled && !dev->vblank[i].inmodeset) {
94 DRM_DEBUG("disabling vblank on crtc %d\n", i);
95 dev->vblank[i].last =
98 dev->vblank[i].enabled = 0;
119 free(dev->vblank, DRM_MEM_DRIVER);
131 dev->vblank = malloc(sizeof(struct drm_vblank_info) * num_crtcs,
133 if (!dev->vblank)
138 /* Zero per-crtc vblank stuff */
141 DRM_INIT_WAITQUEUE(&dev->vblank[i].queue);
142 dev->vblank[i].refcount = 0;
143 atomic_store_rel_32(&dev->vblank[i].count, 0);
192 dev->vblank[crtc].enabled = 1;
223 if (dev->vblank[crtc].enabled) {
224 DRM_WAKEUP(&dev->vblank[crtc].queue);
225 dev->vblank[crtc].last =
227 dev->vblank[crtc].enabled = 0;
273 return atomic_load_acq_32(&dev->vblank[crtc].count);
284 * here if the register is small or we had vblank interrupts off for
288 diff = cur_vblank - dev->vblank[crtc].last;
289 if (cur_vblank < dev->vblank[crtc].last) {
292 DRM_DEBUG("vblank[%d].last=0x%x, cur_vblank=0x%x => diff=0x%x\n",
293 crtc, dev->vblank[crtc].last, cur_vblank, diff);
296 DRM_DEBUG("enabling vblank interrupts on crtc %d, missed %d\n",
299 atomic_add_rel_32(&dev->vblank[crtc].count, diff);
310 if (++dev->vblank[crtc].refcount == 1 &&
311 !dev->vblank[crtc].enabled) {
313 DRM_DEBUG("enabling vblank on crtc %d, ret: %d\n", crtc, ret);
315 --dev->vblank[crtc].refcount;
317 dev->vblank[crtc].enabled = 1;
322 if (dev->vblank[crtc].enabled)
323 dev->vblank[crtc].last =
334 KASSERT(dev->vblank[crtc].refcount > 0,
338 if (--dev->vblank[crtc].refcount == 0)
370 if (!dev->vblank[crtc].inmodeset) {
371 dev->vblank[crtc].inmodeset = 0x1;
373 dev->vblank[crtc].inmodeset |= 0x2;
380 if (dev->vblank[crtc].inmodeset) {
381 if (dev->vblank[crtc].inmodeset & 0x2)
383 dev->vblank[crtc].inmodeset = 0;
424 DRM_ERROR("failed to acquire vblank counter, %d\n", ret);
449 DRM_DEBUG("waiting on vblank count %d, crtc %d\n",
458 ret = mtx_sleep(&dev->vblank[crtc].queue,
474 DRM_DEBUG("vblank wait interrupted by signal\n");
488 atomic_add_rel_32(&dev->vblank[crtc].count, 1);
489 DRM_WAKEUP(&dev->vblank[crtc].queue);