Lines Matching full:properties
35 pr_debug("Printing queue properties:\n"); in print_queue_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
246 if (properties->type == KFD_QUEUE_TYPE_COMPUTE && in kfd_queue_acquire_buffers()
247 properties->format == KFD_QUEUE_FORMAT_AQL && in kfd_queue_acquire_buffers()
250 expected_queue_size = properties->queue_size / 2; in kfd_queue_acquire_buffers()
252 expected_queue_size = properties->queue_size; in kfd_queue_acquire_buffers()
259 err = kfd_queue_buffer_get(vm, properties->write_ptr, &properties->wptr_bo, PAGE_SIZE); in kfd_queue_acquire_buffers()
263 err = kfd_queue_buffer_get(vm, properties->read_ptr, &properties->rptr_bo, PAGE_SIZE); in kfd_queue_acquire_buffers()
267 err = kfd_queue_buffer_get(vm, (void *)properties->queue_address, in kfd_queue_acquire_buffers()
268 &properties->ring_bo, expected_queue_size); in kfd_queue_acquire_buffers()
273 if (properties->type != KFD_QUEUE_TYPE_COMPUTE) in kfd_queue_acquire_buffers()
277 if (properties->eop_ring_buffer_address) { in kfd_queue_acquire_buffers()
278 if (properties->eop_ring_buffer_size != topo_dev->node_props.eop_buffer_size) { in kfd_queue_acquire_buffers()
280 properties->eop_ring_buffer_size, in kfd_queue_acquire_buffers()
285 err = kfd_queue_buffer_get(vm, (void *)properties->eop_ring_buffer_address, in kfd_queue_acquire_buffers()
286 &properties->eop_buf_bo, in kfd_queue_acquire_buffers()
287 properties->eop_ring_buffer_size); in kfd_queue_acquire_buffers()
292 if (properties->ctl_stack_size != topo_dev->node_props.ctl_stack_size) { in kfd_queue_acquire_buffers()
294 properties->ctl_stack_size, in kfd_queue_acquire_buffers()
300 if (properties->ctx_save_restore_area_size != topo_dev->node_props.cwsr_size) { in kfd_queue_acquire_buffers()
302 properties->ctx_save_restore_area_size, in kfd_queue_acquire_buffers()
312 err = kfd_queue_buffer_get(vm, (void *)properties->ctx_save_restore_area_address, in kfd_queue_acquire_buffers()
313 &properties->cwsr_bo, total_cwsr_size); in kfd_queue_acquire_buffers()
319 err = kfd_queue_buffer_svm_get(pdd, properties->ctx_save_restore_area_address, in kfd_queue_acquire_buffers()
336 kfd_queue_unref_bo_vas(pdd, properties); in kfd_queue_acquire_buffers()
337 kfd_queue_release_buffers(pdd, properties); in kfd_queue_acquire_buffers()
341 int kfd_queue_release_buffers(struct kfd_process_device *pdd, struct queue_properties *properties) in kfd_queue_release_buffers() argument
346 kfd_queue_buffer_put(&properties->wptr_bo); in kfd_queue_release_buffers()
347 kfd_queue_buffer_put(&properties->rptr_bo); in kfd_queue_release_buffers()
348 kfd_queue_buffer_put(&properties->ring_bo); in kfd_queue_release_buffers()
349 kfd_queue_buffer_put(&properties->eop_buf_bo); in kfd_queue_release_buffers()
350 kfd_queue_buffer_put(&properties->cwsr_bo); in kfd_queue_release_buffers()
359 kfd_queue_buffer_svm_put(pdd, properties->ctx_save_restore_area_address, total_cwsr_size); in kfd_queue_release_buffers()
375 struct queue_properties *properties) in kfd_queue_unref_bo_vas() argument
385 kfd_queue_unref_bo_va(vm, &properties->wptr_bo); in kfd_queue_unref_bo_vas()
386 kfd_queue_unref_bo_va(vm, &properties->rptr_bo); in kfd_queue_unref_bo_vas()
387 kfd_queue_unref_bo_va(vm, &properties->ring_bo); in kfd_queue_unref_bo_vas()
388 kfd_queue_unref_bo_va(vm, &properties->eop_buf_bo); in kfd_queue_unref_bo_vas()
389 kfd_queue_unref_bo_va(vm, &properties->cwsr_bo); in kfd_queue_unref_bo_vas()