Lines Matching refs:vce

50  * radeon_vce_init - allocate memory, load vce firmware
65 INIT_DELAYED_WORK(&rdev->vce.idle_work, radeon_vce_idle_work_handler);
121 if (sscanf(c, "%2u]", &rdev->vce.fb_version) != 1)
125 start, mid, end, rdev->vce.fb_version);
127 rdev->vce.fw_version = (start << 24) | (mid << 16) | (end << 8);
130 if ((rdev->vce.fw_version != ((40 << 24) | (2 << 16) | (2 << 8))) &&
131 (rdev->vce.fw_version != ((50 << 24) | (0 << 16) | (1 << 8))) &&
132 (rdev->vce.fw_version != ((50 << 24) | (1 << 16) | (2 << 8))))
143 &rdev->vce.vcpu_bo);
149 r = radeon_bo_reserve(rdev->vce.vcpu_bo, false);
151 radeon_bo_unref(&rdev->vce.vcpu_bo);
156 r = radeon_bo_pin(rdev->vce.vcpu_bo, RADEON_GEM_DOMAIN_VRAM,
157 &rdev->vce.gpu_addr);
158 radeon_bo_unreserve(rdev->vce.vcpu_bo);
160 radeon_bo_unref(&rdev->vce.vcpu_bo);
166 atomic_set(&rdev->vce.handles[i], 0);
167 rdev->vce.filp[i] = NULL;
182 if (rdev->vce.vcpu_bo == NULL)
185 radeon_bo_unref(&rdev->vce.vcpu_bo);
200 if (rdev->vce.vcpu_bo == NULL)
204 if (atomic_read(&rdev->vce.handles[i]))
225 if (rdev->vce.vcpu_bo == NULL)
228 r = radeon_bo_reserve(rdev->vce.vcpu_bo, false);
234 r = radeon_bo_kmap(rdev->vce.vcpu_bo, &cpu_addr);
236 radeon_bo_unreserve(rdev->vce.vcpu_bo);
241 memset(cpu_addr, 0, radeon_bo_size(rdev->vce.vcpu_bo));
247 radeon_bo_kunmap(rdev->vce.vcpu_bo);
249 radeon_bo_unreserve(rdev->vce.vcpu_bo);
264 container_of(work, struct radeon_device, vce.idle_work.work);
274 schedule_delayed_work(&rdev->vce.idle_work,
289 bool set_clocks = !cancel_delayed_work_sync(&rdev->vce.idle_work);
290 set_clocks &= schedule_delayed_work(&rdev->vce.idle_work,
319 uint32_t handle = atomic_read(&rdev->vce.handles[i]);
320 if (!handle || rdev->vce.filp[i] != filp)
330 rdev->vce.filp[i] = NULL;
331 atomic_set(&rdev->vce.handles[i], 0);
527 if (atomic_read(&p->rdev->vce.handles[i]) == handle) {
528 if (p->rdev->vce.filp[i] != p->filp) {
538 if (!atomic_cmpxchg(&p->rdev->vce.handles[i], 0, handle)) {
539 p->rdev->vce.filp[i] = p->filp;
540 p->rdev->vce.img_size[i] = 0;
587 size = &p->rdev->vce.img_size[session_idx];
679 atomic_cmpxchg(&p->rdev->vce.handles[i], handle, 0);
763 DRM_ERROR("radeon: vce failed to lock ring %d (%d).\n",