/src/sys/external/bsd/drm2/dist/drm/ |
drm_vblank.c | 4 * drm_irq.c IRQ and vblank support 46 * DOC: vblank handling 62 * drm_crtc_handle_vblank() in its vblank interrupt handler for working vblank 69 * call drm_crtc_vblank_get() and release the vblank reference again with 70 * drm_crtc_vblank_put(). In between these two calls vblank interrupts are 73 * On many hardware disabling the vblank interrupt cannot be done in a race-free 75 * &drm_driver.max_vblank_count. In that case the vblank core only disables the 88 * vblank irq in drm_handle_vblank(). 1 msec should be ok. 102 MODULE_PARM_DESC(vblankoffdelay, "Delay until vblank irq auto-disable [msecs] (0: never disable, <0: disable immediately)") 109 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:store_vblank 123 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_max_vblank_count 217 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_update_vblank_count 309 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_vblank_count 344 u64 vblank; local in function:drm_crtc_accurate_vblank_count 388 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_vblank_disable_and_save 438 struct drm_vblank_crtc *vblank = from_timer(vblank, t, disable_timer); local in function:vblank_disable_fn 460 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_vblank_cleanup 502 struct drm_vblank_crtc *vblank = &dev->vblank[i]; local in function:drm_vblank_init 565 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_calc_timestamping_constants 650 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_calc_vbltimestamp_from_scanoutpos 843 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_vblank_count_and_time 1017 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_vblank_enable 1054 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_vblank_get_locked 1113 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_vblank_put_locked 1137 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_vblank_put 1188 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_wait_one_vblank 1242 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_crtc_vblank_off 1311 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_crtc_vblank_reset 1349 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_crtc_set_max_vblank_count 1372 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_crtc_vblank_on 1416 struct drm_vblank_crtc *vblank; local in function:drm_vblank_restore 1468 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_legacy_vblank_pre_modeset 1494 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_legacy_vblank_post_modeset 1558 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_queue_vblank_event 1679 struct drm_vblank_crtc *vblank; local in function:drm_wait_vblank_ioctl 1855 struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; local in function:drm_handle_vblank 1944 struct drm_vblank_crtc *vblank; local in function:drm_crtc_get_sequence_ioctl 1998 struct drm_vblank_crtc *vblank; local in function:drm_crtc_queue_sequence_ioctl [all...] |
drm_irq.c | 4 * drm_irq.c IRQ and vblank support 89 * need to set &drm_device.irq_enabled to signal the DRM core that vblank 107 * that vblank interrupts are available. 214 * vblank/irq handling. KMS drivers must ensure that vblanks are all 220 struct drm_vblank_crtc *vblank = &dev->vblank[i]; local in function:drm_irq_uninstall 222 if (!vblank->enabled) 229 DRM_SPIN_WAKEUP_ONE(&vblank->queue, 232 wake_up(&vblank->queue);
|
drm_edid.c | 2548 unsigned vblank = (pt->vactive_vblank_hi & 0xf) << 8 | pt->vblank_lo; local in function:drm_mode_detailed 2598 mode->vtotal = mode->vdisplay + vblank; 5035 unsigned vblank = (timings->vblank[0] | timings->vblank[1] << 8) + 1; local in function:drm_mode_displayid_detailed 5053 mode->vtotal = mode->vdisplay + vblank;
|
/src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/sw/ |
nouveau_nvkm_engine_sw_nv50.c | 47 container_of(notify, typeof(*chan), vblank.notify[notify->index]); 52 nvkm_wr32(device, 0x001710, 0x80000000 | chan->vblank.ctxdma); 56 nvkm_wr32(device, 0x001570, chan->vblank.offset); 57 nvkm_wr32(device, 0x001574, chan->vblank.value); 59 nvkm_wr32(device, 0x060010, chan->vblank.offset); 60 nvkm_wr32(device, 0x060014, chan->vblank.value); 73 case 0x018c: chan->vblank.ctxdma = data; return true; 74 case 0x0400: chan->vblank.offset = data; return true; 75 case 0x0404: chan->vblank.value = data; return true; 77 if (data < device->disp->vblank.index_nr) [all...] |
nouveau_nvkm_engine_sw_gf100.c | 47 container_of(notify, typeof(*chan), vblank.notify[notify->index]); 54 nvkm_wr32(device, 0x06000c, upper_32_bits(chan->vblank.offset)); 55 nvkm_wr32(device, 0x060010, lower_32_bits(chan->vblank.offset)); 56 nvkm_wr32(device, 0x060014, chan->vblank.value); 69 chan->vblank.offset &= 0x00ffffffffULL; 70 chan->vblank.offset |= (u64)data << 32; 73 chan->vblank.offset &= 0xff00000000ULL; 74 chan->vblank.offset |= data; 77 chan->vblank.value = data; 80 if (data < device->disp->vblank.index_nr) [all...] |
nv50.h | 19 } vblank; member in struct:nv50_sw_chan
|
/src/sys/external/bsd/drm/dist/bsd-core/ |
drm_irq.c | 112 if (atomic_read(&dev->vblank[i].refcount) == 0 && 113 dev->vblank[i].enabled) { 114 DRM_DEBUG("disabling vblank on crtc %d\n", i); 115 dev->vblank[i].last = 118 dev->vblank[i].enabled = 0; 142 free(dev->vblank, DRM_MEM_DRIVER); 159 dev->vblank = malloc(sizeof(struct drm_vblank_info) * num_crtcs, 161 if (!dev->vblank) 166 /* Zero per-crtc vblank stuff */ 168 DRM_INIT_WAITQUEUE(&dev->vblank[i].queue) [all...] |
/src/sys/external/bsd/drm2/dist/drm/nouveau/ |
nouveau_crtc.h | 40 struct nvif_notify vblank; member in struct:nouveau_crtc
|
nouveau_display.c | 61 container_of(notify, typeof(*nv_crtc), vblank); 77 nvif_notify_get(&nv_crtc->vblank); 93 nvif_notify_put(&nv_crtc->vblank); 122 struct drm_vblank_crtc *vblank = &crtc->dev->vblank[drm_crtc_index(crtc)]; local in function:nouveau_display_scanoutpos_head 136 if (retry) ndelay(vblank->linedur_ns); 173 nvif_notify_fini(&nv_crtc->vblank); 194 &nv_crtc->vblank);
|
/src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/ |
nouveau_nvkm_engine_disp_base.c | 50 struct nvkm_disp *disp = container_of(event, typeof(*disp), vblank); 59 struct nvkm_disp *disp = container_of(event, typeof(*disp), vblank); 70 container_of(notify->event, typeof(*disp), vblank); 78 if (ret = -ENXIO, req->v0.head <= disp->vblank.index_nr) { 99 nvkm_event_send(&disp->vblank, 1, head, &rep, sizeof(rep)); 142 *event = &disp->vblank; 425 return nvkm_event_init(&nvkm_disp_vblank_func, 1, i, &disp->vblank); 439 nvkm_event_fini(&disp->vblank);
|
/src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/engine/ |
disp.h | 20 struct nvkm_event vblank; member in struct:nvkm_disp
|
/src/sys/external/bsd/drm2/dist/include/drm/ |
drm_displayid.h | 87 u8 vblank[2]; member in struct:displayid_detailed_timings_1
|
drm_device.h | 187 * Indicates that interrupt handling is enabled, specifically vblank 204 * If true, vblank interrupt will be disabled immediately when the 205 * refcount drops to zero, as opposed to via the vblank disable 208 * This can be set to true it the hardware has a working vblank counter 217 * @vblank: 219 * Array of vblank tracking structures, one per &struct drm_crtc. For 220 * historical reasons (vblank support predates kernel modesetting) this 224 struct drm_vblank_crtc *vblank; member in struct:drm_device 229 * Protects vblank count and time updates during vblank enable/disabl [all...] |
/src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/ |
amdgpu_encoders.c | 175 unsigned vblank = native_mode->vtotal - native_mode->vdisplay; local in function:amdgpu_panel_mode_fixup 191 adjusted_mode->vtotal = native_mode->vdisplay + vblank; 204 adjusted_mode->crtc_vtotal = adjusted_mode->crtc_vdisplay + vblank;
|
amdgpu_dce_v10_0.c | 91 uint32_t vblank; member in struct:__anon55e5877b0108 97 .vblank = DISP_INTERRUPT_STATUS__LB_D1_VBLANK_INTERRUPT_MASK, 102 .vblank = DISP_INTERRUPT_STATUS_CONTINUE__LB_D2_VBLANK_INTERRUPT_MASK, 107 .vblank = DISP_INTERRUPT_STATUS_CONTINUE2__LB_D3_VBLANK_INTERRUPT_MASK, 112 .vblank = DISP_INTERRUPT_STATUS_CONTINUE3__LB_D4_VBLANK_INTERRUPT_MASK, 117 .vblank = DISP_INTERRUPT_STATUS_CONTINUE4__LB_D5_VBLANK_INTERRUPT_MASK, 122 .vblank = DISP_INTERRUPT_STATUS_CONTINUE5__LB_D6_VBLANK_INTERRUPT_MASK, 2081 /* set pageflip to happen anywhere in vblank interval */ 2518 /* Make sure VBLANK and PFLIP interrupts are still enabled */ 3241 case 0: /* vblank */ [all...] |
amdgpu_dce_v11_0.c | 93 uint32_t vblank; member in struct:__anon55f79ffc0108 99 .vblank = DISP_INTERRUPT_STATUS__LB_D1_VBLANK_INTERRUPT_MASK, 104 .vblank = DISP_INTERRUPT_STATUS_CONTINUE__LB_D2_VBLANK_INTERRUPT_MASK, 109 .vblank = DISP_INTERRUPT_STATUS_CONTINUE2__LB_D3_VBLANK_INTERRUPT_MASK, 114 .vblank = DISP_INTERRUPT_STATUS_CONTINUE3__LB_D4_VBLANK_INTERRUPT_MASK, 119 .vblank = DISP_INTERRUPT_STATUS_CONTINUE4__LB_D5_VBLANK_INTERRUPT_MASK, 124 .vblank = DISP_INTERRUPT_STATUS_CONTINUE5__LB_D6_VBLANK_INTERRUPT_MASK, 2123 /* set pageflip to happen anywhere in vblank interval */ 2597 /* Make sure VBLANK and PFLIP interrupts are still enabled */ 3368 case 0: /* vblank */ [all...] |
amdgpu_dce_v6_0.c | 94 uint32_t vblank; member in struct:__anonadb87c700108 100 .vblank = DISP_INTERRUPT_STATUS__LB_D1_VBLANK_INTERRUPT_MASK, 105 .vblank = DISP_INTERRUPT_STATUS_CONTINUE__LB_D2_VBLANK_INTERRUPT_MASK, 110 .vblank = DISP_INTERRUPT_STATUS_CONTINUE2__LB_D3_VBLANK_INTERRUPT_MASK, 115 .vblank = DISP_INTERRUPT_STATUS_CONTINUE3__LB_D4_VBLANK_INTERRUPT_MASK, 120 .vblank = DISP_INTERRUPT_STATUS_CONTINUE4__LB_D5_VBLANK_INTERRUPT_MASK, 125 .vblank = DISP_INTERRUPT_STATUS_CONTINUE5__LB_D6_VBLANK_INTERRUPT_MASK, 190 * During vblank we take the crtc lock and wait for the update_pending 2018 /* set pageflip to happen anywhere in vblank interval */ 2410 /* Make sure VBLANK and PFLIP interrupts are still enabled * [all...] |
amdgpu_dce_v8_0.c | 91 uint32_t vblank; member in struct:__anonaddcad720108 97 .vblank = DISP_INTERRUPT_STATUS__LB_D1_VBLANK_INTERRUPT_MASK, 102 .vblank = DISP_INTERRUPT_STATUS_CONTINUE__LB_D2_VBLANK_INTERRUPT_MASK, 107 .vblank = DISP_INTERRUPT_STATUS_CONTINUE2__LB_D3_VBLANK_INTERRUPT_MASK, 112 .vblank = DISP_INTERRUPT_STATUS_CONTINUE3__LB_D4_VBLANK_INTERRUPT_MASK, 117 .vblank = DISP_INTERRUPT_STATUS_CONTINUE4__LB_D5_VBLANK_INTERRUPT_MASK, 122 .vblank = DISP_INTERRUPT_STATUS_CONTINUE5__LB_D6_VBLANK_INTERRUPT_MASK, 1990 /* set pageflip to happen anywhere in vblank interval */ 2419 /* Make sure VBLANK and PFLIP interrupts are still enabled */ 3053 case 0: /* vblank */ [all...] |
/src/sys/arch/hp300/dev/ |
topcatreg.h | 57 uint8_t vblank; /* vertical blanking 0x4040 */ member in struct:tcboxfb
|
/src/sys/external/bsd/drm2/dist/drm/radeon/ |
radeon_encoders.c | 336 unsigned vblank = native_mode->vtotal - native_mode->vdisplay; local in function:radeon_panel_mode_fixup 354 adjusted_mode->vtotal = native_mode->vdisplay + vblank; 369 adjusted_mode->crtc_vtotal = adjusted_mode->crtc_vdisplay + vblank;
|
/src/sys/arch/hp300/stand/common/ |
grf_tcreg.h | 81 vu_char vblank; /* vertical blanking 0x4040 */ member in struct:tcboxfb
|
/src/sys/external/bsd/drm2/dist/drm/i915/display/ |
intel_crt.c | 661 u32 vblank, vblank_start, vblank_end; local in function:intel_crt_load_detect 672 vblank_reg = VBLANK(pipe); 679 vblank = intel_uncore_read(uncore, vblank_reg); 684 vblank_start = (vblank & 0xfff) + 1; 685 vblank_end = ((vblank >> 16) & 0xfff) + 1; 696 /* Wait for next Vblank to substitue 751 /* restore vblank if necessary */ 753 intel_uncore_write(uncore, vblank_reg, vblank);
|
intel_vbt_defs.h | 909 u16 vblank; member in struct:generic_dtd_entry
|
/src/sys/dev/videomode/ |
edid.c | 380 unsigned vactive, vblank, vsyncwid, vsyncoff; local in function:edid_det_timing 398 vblank = EDID_DET_TIMING_VBLANK(data); 410 vmp->vtotal = vactive + vblank;
|
/src/sys/external/bsd/drm2/dist/drm/i915/ |
i915_irq.c | 542 * start of vblank: 545 * generate start of vblank interrupt (gen4+) 548 * | generate frame start interrupt (aka. vblank interrupt) (gmch) 577 * (depending on PIPECONF settings) after the start of vblank 588 struct drm_vblank_crtc *vblank = &dev_priv->drm.vblank[drm_crtc_index(crtc)]; local in function:i915_get_vblank_counter 589 const struct drm_display_mode *mode = &vblank->hwmode; 599 * vblank wait before enabling the TV encoder and so we 600 * have to enable vblank interrupts while the frame counter 601 * is still in a working state. However the core vblank cod 670 struct drm_vblank_crtc *vblank = local in function:__intel_get_crtc_scanline_from_timestamp 716 struct drm_vblank_crtc *vblank; local in function:__intel_get_crtc_scanline [all...] |