Lines Matching refs:jpeg

39 	INIT_DELAYED_WORK(&adev->jpeg.idle_work, amdgpu_jpeg_idle_work_handler);  in amdgpu_jpeg_sw_init()
40 mutex_init(&adev->jpeg.jpeg_pg_lock); in amdgpu_jpeg_sw_init()
41 atomic_set(&adev->jpeg.total_submission_cnt, 0); in amdgpu_jpeg_sw_init()
50 for (i = 0; i < adev->jpeg.num_jpeg_inst; ++i) { in amdgpu_jpeg_sw_fini()
51 if (adev->jpeg.harvest_config & (1 << i)) in amdgpu_jpeg_sw_fini()
54 amdgpu_ring_fini(&adev->jpeg.inst[i].ring_dec); in amdgpu_jpeg_sw_fini()
57 mutex_destroy(&adev->jpeg.jpeg_pg_lock); in amdgpu_jpeg_sw_fini()
64 cancel_delayed_work_sync(&adev->jpeg.idle_work); in amdgpu_jpeg_suspend()
77 container_of(work, struct amdgpu_device, jpeg.idle_work.work); in amdgpu_jpeg_idle_work_handler()
81 for (i = 0; i < adev->jpeg.num_jpeg_inst; ++i) { in amdgpu_jpeg_idle_work_handler()
82 if (adev->jpeg.harvest_config & (1 << i)) in amdgpu_jpeg_idle_work_handler()
85 fences += amdgpu_fence_count_emitted(&adev->jpeg.inst[i].ring_dec); in amdgpu_jpeg_idle_work_handler()
88 if (!fences && !atomic_read(&adev->jpeg.total_submission_cnt)) in amdgpu_jpeg_idle_work_handler()
92 schedule_delayed_work(&adev->jpeg.idle_work, JPEG_IDLE_TIMEOUT); in amdgpu_jpeg_idle_work_handler()
99 atomic_inc(&adev->jpeg.total_submission_cnt); in amdgpu_jpeg_ring_begin_use()
100 cancel_delayed_work_sync(&adev->jpeg.idle_work); in amdgpu_jpeg_ring_begin_use()
102 mutex_lock(&adev->jpeg.jpeg_pg_lock); in amdgpu_jpeg_ring_begin_use()
105 mutex_unlock(&adev->jpeg.jpeg_pg_lock); in amdgpu_jpeg_ring_begin_use()
110 atomic_dec(&ring->adev->jpeg.total_submission_cnt); in amdgpu_jpeg_ring_end_use()
111 schedule_delayed_work(&ring->adev->jpeg.idle_work, JPEG_IDLE_TIMEOUT); in amdgpu_jpeg_ring_end_use()
121 WREG32(adev->jpeg.inst[ring->me].external.jpeg_pitch, 0xCAFEDEAD); in amdgpu_jpeg_dec_ring_test_ring()
126 amdgpu_ring_write(ring, PACKET0(adev->jpeg.internal.jpeg_pitch, 0)); in amdgpu_jpeg_dec_ring_test_ring()
131 tmp = RREG32(adev->jpeg.inst[ring->me].external.jpeg_pitch); in amdgpu_jpeg_dec_ring_test_ring()
160 ib->ptr[0] = PACKETJ(adev->jpeg.internal.jpeg_pitch, 0, 0, in amdgpu_jpeg_dec_set_reg()
207 tmp = RREG32(adev->jpeg.inst[ring->me].external.jpeg_pitch); in amdgpu_jpeg_dec_ring_test_ib()
225 struct ras_common_if *ras_if = adev->jpeg.ras_if; in amdgpu_jpeg_process_poison_irq()
241 if (!adev->jpeg.ras) in jpeg_set_ras_funcs()
244 amdgpu_ras_register_ras_block(adev, &adev->jpeg.ras->ras_block); in jpeg_set_ras_funcs()
246 strcpy(adev->jpeg.ras->ras_block.ras_comm.name, "jpeg"); in jpeg_set_ras_funcs()
247 adev->jpeg.ras->ras_block.ras_comm.block = AMDGPU_RAS_BLOCK__JPEG; in jpeg_set_ras_funcs()
248 adev->jpeg.ras->ras_block.ras_comm.type = AMDGPU_RAS_ERROR__POISON; in jpeg_set_ras_funcs()
249 adev->jpeg.ras_if = &adev->jpeg.ras->ras_block.ras_comm; in jpeg_set_ras_funcs()
252 if (!adev->jpeg.ras->ras_block.ras_late_init) in jpeg_set_ras_funcs()
253 adev->jpeg.ras->ras_block.ras_late_init = amdgpu_ras_block_late_init; in jpeg_set_ras_funcs()