Lines Matching refs:properties
53 pr_debug("Queue Type: %u\n", q->properties.type); in print_queue()
54 pr_debug("Queue Size: %llu\n", q->properties.queue_size); in print_queue()
55 pr_debug("Queue percent: %u\n", q->properties.queue_percent); in print_queue()
56 pr_debug("Queue Address: 0x%llX\n", q->properties.queue_address); in print_queue()
57 pr_debug("Queue Id: %u\n", q->properties.queue_id); in print_queue()
58 pr_debug("Queue Process Vmid: %u\n", q->properties.vmid); in print_queue()
59 pr_debug("Queue Read Pointer: 0x%px\n", q->properties.read_ptr); in print_queue()
60 pr_debug("Queue Write Pointer: 0x%px\n", q->properties.write_ptr); in print_queue()
61 pr_debug("Queue Doorbell Pointer: 0x%p\n", q->properties.doorbell_ptr); in print_queue()
62 pr_debug("Queue Doorbell Offset: %u\n", q->properties.doorbell_off); in print_queue()
69 int init_queue(struct queue **q, const struct queue_properties *properties) in init_queue() argument
77 memcpy(&tmp_q->properties, properties, sizeof(*properties)); in init_queue()
233 int kfd_queue_acquire_buffers(struct kfd_process_device *pdd, struct queue_properties *properties) in kfd_queue_acquire_buffers() argument
249 err = kfd_queue_buffer_get(vm, properties->write_ptr, &properties->wptr_bo, PAGE_SIZE); in kfd_queue_acquire_buffers()
253 err = kfd_queue_buffer_get(vm, properties->read_ptr, &properties->rptr_bo, PAGE_SIZE); in kfd_queue_acquire_buffers()
257 err = kfd_queue_buffer_get(vm, (void *)properties->queue_address, in kfd_queue_acquire_buffers()
258 &properties->ring_bo, properties->queue_size); in kfd_queue_acquire_buffers()
263 if (properties->type != KFD_QUEUE_TYPE_COMPUTE) in kfd_queue_acquire_buffers()
267 if (properties->eop_ring_buffer_address) { in kfd_queue_acquire_buffers()
268 if (properties->eop_ring_buffer_size != topo_dev->node_props.eop_buffer_size) { in kfd_queue_acquire_buffers()
270 properties->eop_buf_bo->tbo.base.size, in kfd_queue_acquire_buffers()
275 err = kfd_queue_buffer_get(vm, (void *)properties->eop_ring_buffer_address, in kfd_queue_acquire_buffers()
276 &properties->eop_buf_bo, in kfd_queue_acquire_buffers()
277 properties->eop_ring_buffer_size); in kfd_queue_acquire_buffers()
282 if (properties->ctl_stack_size != topo_dev->node_props.ctl_stack_size) { in kfd_queue_acquire_buffers()
284 properties->ctl_stack_size, in kfd_queue_acquire_buffers()
290 if (properties->ctx_save_restore_area_size != topo_dev->node_props.cwsr_size) { in kfd_queue_acquire_buffers()
292 properties->ctx_save_restore_area_size, in kfd_queue_acquire_buffers()
302 err = kfd_queue_buffer_get(vm, (void *)properties->ctx_save_restore_area_address, in kfd_queue_acquire_buffers()
303 &properties->cwsr_bo, total_cwsr_size); in kfd_queue_acquire_buffers()
309 err = kfd_queue_buffer_svm_get(pdd, properties->ctx_save_restore_area_address, in kfd_queue_acquire_buffers()
326 kfd_queue_unref_bo_vas(pdd, properties); in kfd_queue_acquire_buffers()
327 kfd_queue_release_buffers(pdd, properties); in kfd_queue_acquire_buffers()
331 int kfd_queue_release_buffers(struct kfd_process_device *pdd, struct queue_properties *properties) in kfd_queue_release_buffers() argument
336 kfd_queue_buffer_put(&properties->wptr_bo); in kfd_queue_release_buffers()
337 kfd_queue_buffer_put(&properties->rptr_bo); in kfd_queue_release_buffers()
338 kfd_queue_buffer_put(&properties->ring_bo); in kfd_queue_release_buffers()
339 kfd_queue_buffer_put(&properties->eop_buf_bo); in kfd_queue_release_buffers()
340 kfd_queue_buffer_put(&properties->cwsr_bo); in kfd_queue_release_buffers()
349 kfd_queue_buffer_svm_put(pdd, properties->ctx_save_restore_area_address, total_cwsr_size); in kfd_queue_release_buffers()
365 struct queue_properties *properties) in kfd_queue_unref_bo_vas() argument
375 kfd_queue_unref_bo_va(vm, &properties->wptr_bo); in kfd_queue_unref_bo_vas()
376 kfd_queue_unref_bo_va(vm, &properties->rptr_bo); in kfd_queue_unref_bo_vas()
377 kfd_queue_unref_bo_va(vm, &properties->ring_bo); in kfd_queue_unref_bo_vas()
378 kfd_queue_unref_bo_va(vm, &properties->eop_buf_bo); in kfd_queue_unref_bo_vas()
379 kfd_queue_unref_bo_va(vm, &properties->cwsr_bo); in kfd_queue_unref_bo_vas()