Searched refs:vblank (Results 1 - 25 of 114) sorted by path

12345

/linux-master/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_encoders.c170 unsigned int vblank = native_mode->vtotal - native_mode->vdisplay; local
186 adjusted_mode->vtotal = native_mode->vdisplay + vblank;
199 adjusted_mode->crtc_vtotal = adjusted_mode->crtc_vdisplay + vblank;
H A Damdgpu_vkms.c56 DRM_WARN("%s: vblank timer overrun\n", __func__);
59 /* Don't queue timer again when vblank is disabled. */
70 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
76 out->period_ns = ktime_set(0, vblank->framedur_ns);
97 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
100 if (!READ_ONCE(vblank->enabled)) {
107 if (WARN_ON(*vblank_time == vblank->time))
113 * only generated after all the vblank register
[all...]
H A Ddce_v10_0.c88 uint32_t vblank; member in struct:__anon168
94 .vblank = DISP_INTERRUPT_STATUS__LB_D1_VBLANK_INTERRUPT_MASK,
99 .vblank = DISP_INTERRUPT_STATUS_CONTINUE__LB_D2_VBLANK_INTERRUPT_MASK,
104 .vblank = DISP_INTERRUPT_STATUS_CONTINUE2__LB_D3_VBLANK_INTERRUPT_MASK,
109 .vblank = DISP_INTERRUPT_STATUS_CONTINUE3__LB_D4_VBLANK_INTERRUPT_MASK,
114 .vblank = DISP_INTERRUPT_STATUS_CONTINUE4__LB_D5_VBLANK_INTERRUPT_MASK,
119 .vblank = DISP_INTERRUPT_STATUS_CONTINUE5__LB_D6_VBLANK_INTERRUPT_MASK,
2073 /* set pageflip to happen anywhere in vblank interval */
2828 /* Disable vblank IRQs aggressively for power-saving */
3254 case 0: /* vblank */
[all...]
H A Ddce_v11_0.c92 uint32_t vblank; member in struct:__anon169
98 .vblank = DISP_INTERRUPT_STATUS__LB_D1_VBLANK_INTERRUPT_MASK,
103 .vblank = DISP_INTERRUPT_STATUS_CONTINUE__LB_D2_VBLANK_INTERRUPT_MASK,
108 .vblank = DISP_INTERRUPT_STATUS_CONTINUE2__LB_D3_VBLANK_INTERRUPT_MASK,
113 .vblank = DISP_INTERRUPT_STATUS_CONTINUE3__LB_D4_VBLANK_INTERRUPT_MASK,
118 .vblank = DISP_INTERRUPT_STATUS_CONTINUE4__LB_D5_VBLANK_INTERRUPT_MASK,
123 .vblank = DISP_INTERRUPT_STATUS_CONTINUE5__LB_D6_VBLANK_INTERRUPT_MASK,
2123 /* set pageflip to happen anywhere in vblank interval */
2955 /* Disable vblank IRQs aggressively for power-saving */
3386 case 0: /* vblank */
[all...]
H A Ddce_v6_0.c92 uint32_t vblank; member in struct:__anon170
98 .vblank = DISP_INTERRUPT_STATUS__LB_D1_VBLANK_INTERRUPT_MASK,
103 .vblank = DISP_INTERRUPT_STATUS_CONTINUE__LB_D2_VBLANK_INTERRUPT_MASK,
108 .vblank = DISP_INTERRUPT_STATUS_CONTINUE2__LB_D3_VBLANK_INTERRUPT_MASK,
113 .vblank = DISP_INTERRUPT_STATUS_CONTINUE3__LB_D4_VBLANK_INTERRUPT_MASK,
118 .vblank = DISP_INTERRUPT_STATUS_CONTINUE4__LB_D5_VBLANK_INTERRUPT_MASK,
123 .vblank = DISP_INTERRUPT_STATUS_CONTINUE5__LB_D6_VBLANK_INTERRUPT_MASK,
189 * During vblank we take the crtc lock and wait for the update_pending
2031 /* set pageflip to happen anywhere in vblank interval */
2727 /* Disable vblank IRQ
[all...]
H A Ddce_v8_0.c87 uint32_t vblank; member in struct:__anon171
93 .vblank = DISP_INTERRUPT_STATUS__LB_D1_VBLANK_INTERRUPT_MASK,
98 .vblank = DISP_INTERRUPT_STATUS_CONTINUE__LB_D2_VBLANK_INTERRUPT_MASK,
103 .vblank = DISP_INTERRUPT_STATUS_CONTINUE2__LB_D3_VBLANK_INTERRUPT_MASK,
108 .vblank = DISP_INTERRUPT_STATUS_CONTINUE3__LB_D4_VBLANK_INTERRUPT_MASK,
113 .vblank = DISP_INTERRUPT_STATUS_CONTINUE4__LB_D5_VBLANK_INTERRUPT_MASK,
118 .vblank = DISP_INTERRUPT_STATUS_CONTINUE5__LB_D6_VBLANK_INTERRUPT_MASK,
2000 /* set pageflip to happen anywhere in vblank interval */
2747 /* Disable vblank IRQs aggressively for power-saving */
3089 case 0: /* vblank */
[all...]
/linux-master/drivers/gpu/drm/amd/display/amdgpu_dm/
H A Damdgpu_dm.c465 /* Update to correct count and vblank timestamp if racing with
466 * vblank irq. This also updates to the correct vblank timestamp
472 * count and timestamp of vblank of flip completion.
477 /* Event sent, so done with vblank for this flip */
481 /* VRR active and inside front-porch: vblank count and
483 * drm_crtc_handle_vblank() has been executed from late vblank
502 /* Keep track of vblank of this flip for flip throttling. We use the
503 * cooked hw counter, as that one incremented at start of this vblank
524 struct drm_vblank_crtc *vblank; local
[all...]
/linux-master/drivers/gpu/drm/arm/
H A Dmalidp_drv.c203 * the vblank is enabled as we are sending it from the IRQ
223 /* CRTC inactive means vblank IRQ is disabled, send event directly */
481 u64 vblank)
487 error_stats->last_error_vblank = vblank;
842 DRM_ERROR("failed to initialise vblank\n");
479 malidp_error(struct malidp_drm *malidp, struct malidp_error_stats *error_stats, u32 status, u64 vblank) argument
H A Dmalidp_drv.h101 u64 vblank);
/linux-master/drivers/gpu/drm/bridge/synopsys/
H A Ddw-hdmi.c1988 int hblank, vblank, h_de_hs, v_de_vs, hsync_len, vsync_len; local
2071 vblank = mode->vtotal - mode->vdisplay;
2081 vblank /= 2;
2138 hdmi_writeb(hdmi, vblank, HDMI_FC_INVBLANK);
/linux-master/drivers/gpu/drm/
H A Ddrm_atomic_helper.c1224 * Self-refresh is not a true "disable"; ensure vblank remains
1229 "driver disabled vblank in self-refresh\n");
1318 * drm_atomic_helper_calc_timestamping_constants - update vblank timestamping constants
1321 * Updates the timestamping constants used for precise vblank timestamps
1536 * next vblank, and inform all the fences of the deadline.
1630 * drm_atomic_helper_wait_for_vblanks - wait for vblank on CRTCs
1676 ret = wait_event_timeout(dev->vblank[i].queue,
1681 WARN(!ret, "[CRTC:%d:%s] vblank wait timed out\n",
1944 * This function commits a state asynchronously, i.e., not vblank
3662 * @flags: flip flags for non-vblank syn
[all...]
H A Ddrm_edid.c3452 unsigned vblank = (pt->vactive_vblank_hi & 0xf) << 8 | pt->vblank_lo; local
3504 mode->vtotal = mode->vdisplay + vblank;
6662 unsigned vblank = (timings->vblank[0] | timings->vblank[1] << 8) + 1; local
6682 mode->vtotal = mode->vdisplay + vblank;
H A Ddrm_internal.h102 static inline void drm_vblank_flush_worker(struct drm_vblank_crtc *vblank) argument
104 kthread_flush_worker(vblank->worker);
107 static inline void drm_vblank_destroy_worker(struct drm_vblank_crtc *vblank) argument
109 if (vblank->worker)
110 kthread_destroy_worker(vblank->worker);
113 int drm_vblank_worker_init(struct drm_vblank_crtc *vblank);
114 void drm_vblank_cancel_pending_works(struct drm_vblank_crtc *vblank);
115 void drm_handle_vblank_works(struct drm_vblank_crtc *vblank);
H A Ddrm_vblank.c2 * drm_irq.c IRQ and vblank support
43 * DOC: vblank handling
54 * scanlines is referred to as the vertical blanking region, or vblank for
98 * this programming has to both start and end in the same vblank. To help
101 * The interrupt is in this context named the vblank interrupt.
103 * The vblank interrupt may be fired at different points depending on the
122 * drm_crtc_handle_vblank() in its vblank interrupt handler for working vblank
129 * call drm_crtc_vblank_get() and release the vblank reference again with
130 * drm_crtc_vblank_put(). In between these two calls vblank interrupt
173 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
187 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
276 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
367 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
402 u64 vblank; local
441 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
477 struct drm_vblank_crtc *vblank = from_timer(vblank, t, disable_timer); local
492 struct drm_vblank_crtc *vblank = ptr; local
528 struct drm_vblank_crtc *vblank = &dev->vblank[i]; local
603 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
688 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
933 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
989 struct drm_vblank_crtc *vblank; local
1150 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
1188 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
1231 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
1277 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
1330 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
1409 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
1449 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
1472 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
1502 struct drm_vblank_crtc *vblank; local
1567 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
1693 struct drm_vblank_crtc *vblank; local
1875 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local
1965 struct drm_vblank_crtc *vblank; local
2021 struct drm_vblank_crtc *vblank; local
[all...]
H A Ddrm_vblank_work.c13 * DOC: vblank works
39 * particular vblank has passed, and then executes the work at realtime
46 void drm_handle_vblank_works(struct drm_vblank_crtc *vblank) argument
49 u64 count = atomic64_read(&vblank->count);
52 assert_spin_locked(&vblank->dev->event_lock);
54 list_for_each_entry_safe(work, next, &vblank->pending_work, node) {
59 drm_vblank_put(vblank->dev, vblank->pipe);
60 kthread_queue_work(vblank->worker, &work->base);
64 wake_up_all(&vblank
70 drm_vblank_cancel_pending_works(struct drm_vblank_crtc *vblank) argument
112 struct drm_vblank_crtc *vblank = work->vblank; local
187 struct drm_vblank_crtc *vblank = work->vblank; local
223 struct drm_vblank_crtc *vblank = work->vblank; local
252 drm_vblank_worker_init(struct drm_vblank_crtc *vblank) argument
[all...]
/linux-master/drivers/gpu/drm/gma500/
H A Dcdv_device.c509 .vblank = VBLANK_A,
534 .vblank = VBLANK_B,
H A Dcdv_intel_display.c791 REG_WRITE(map->vblank, (adjusted_mode->crtc_vblank_start - 1) |
H A Dgma_display.c282 /* Turn off vblank interrupts */
285 /* Wait for vblank for the disable to take effect */
305 /* Wait for vblank for the disable to take effect. */
539 /* Call this locked if we want an event at vblank interrupt. */
600 crtc_state->saveVBLANK = REG_READ(map->vblank);
654 REG_WRITE(map->vblank, crtc_state->saveVBLANK);
H A Doaktrail_crtc.c436 * we need to mess with the h/vblank and h/vsync start and
456 REG_WRITE_WITH_AUX(map->vblank,
473 REG_WRITE_WITH_AUX(map->vblank, (adjusted_mode->crtc_vblank_start - 1) |
H A Doaktrail_device.c149 p->vblank = PSB_RVDC32(VBLANK_A);
269 PSB_WVDC32(p->vblank, VBLANK_A);
407 .vblank = VBLANK_A,
431 .vblank = VBLANK_B,
H A Doaktrail_hdmi.c760 pipeb->vblank = PSB_RVDC32(VBLANK_B);
813 PSB_WVDC32(pipeb->vblank, VBLANK_B);
H A Dpsb_device.c209 .vblank = VBLANK_A,
233 .vblank = VBLANK_B,
H A Dpsb_drv.h231 u32 vblank; member in struct:psb_offset
265 u32 vblank; member in struct:psb_pipe
H A Dpsb_intel_display.c275 REG_WRITE(map->vblank, (adjusted_mode->crtc_vblank_start - 1) |
H A Dpsb_irq.c262 if (dev->vblank[0].enabled)
264 if (dev->vblank[1].enabled)
295 if (dev->vblank[i].enabled)
353 if (dev->vblank[i].enabled)
467 dev_err(dev->dev, "trying to get vblank count for disabled pipe %u\n",

Completed in 470 milliseconds

12345