/Linux-v5.4/drivers/gpu/drm/amd/amdkfd/ |
D | kfd_mqd_manager_cik.c | 34 static inline struct cik_mqd *get_mqd(void *mqd) in get_mqd() argument 36 return (struct cik_mqd *)mqd; in get_mqd() 39 static inline struct cik_sdma_rlc_registers *get_sdma_mqd(void *mqd) in get_sdma_mqd() argument 41 return (struct cik_sdma_rlc_registers *)mqd; in get_sdma_mqd() 44 static void update_cu_mask(struct mqd_manager *mm, void *mqd, in update_cu_mask() argument 56 m = get_mqd(mqd); in update_cu_mask() 87 static void init_mqd(struct mqd_manager *mm, void **mqd, in init_mqd() argument 135 *mqd = m; in init_mqd() 141 static void init_mqd_sdma(struct mqd_manager *mm, void **mqd, in init_mqd_sdma() argument 151 *mqd = m; in init_mqd_sdma() [all …]
|
D | kfd_mqd_manager_vi.c | 37 static inline struct vi_mqd *get_mqd(void *mqd) in get_mqd() argument 39 return (struct vi_mqd *)mqd; in get_mqd() 42 static inline struct vi_sdma_mqd *get_sdma_mqd(void *mqd) in get_sdma_mqd() argument 44 return (struct vi_sdma_mqd *)mqd; in get_sdma_mqd() 47 static void update_cu_mask(struct mqd_manager *mm, void *mqd, in update_cu_mask() argument 59 m = get_mqd(mqd); in update_cu_mask() 90 static void init_mqd(struct mqd_manager *mm, void **mqd, in init_mqd() argument 150 *mqd = m; in init_mqd() 156 static int load_mqd(struct mqd_manager *mm, void *mqd, in load_mqd() argument 164 return mm->dev->kfd2kgd->hqd_load(mm->dev->kgd, mqd, pipe_id, queue_id, in load_mqd() [all …]
|
D | kfd_mqd_manager_v10.c | 34 static inline struct v10_compute_mqd *get_mqd(void *mqd) in get_mqd() argument 36 return (struct v10_compute_mqd *)mqd; in get_mqd() 39 static inline struct v10_sdma_mqd *get_sdma_mqd(void *mqd) in get_sdma_mqd() argument 41 return (struct v10_sdma_mqd *)mqd; in get_sdma_mqd() 44 static void update_cu_mask(struct mqd_manager *mm, void *mqd, in update_cu_mask() argument 56 m = get_mqd(mqd); in update_cu_mask() 103 static void init_mqd(struct mqd_manager *mm, void **mqd, in init_mqd() argument 155 *mqd = m; in init_mqd() 161 static int load_mqd(struct mqd_manager *mm, void *mqd, in load_mqd() argument 169 r = mm->dev->kfd2kgd->hqd_load(mm->dev->kgd, mqd, pipe_id, queue_id, in load_mqd() [all …]
|
D | kfd_mqd_manager_v9.c | 35 static inline struct v9_mqd *get_mqd(void *mqd) in get_mqd() argument 37 return (struct v9_mqd *)mqd; in get_mqd() 40 static inline struct v9_sdma_mqd *get_sdma_mqd(void *mqd) in get_sdma_mqd() argument 42 return (struct v9_sdma_mqd *)mqd; in get_sdma_mqd() 45 static void update_cu_mask(struct mqd_manager *mm, void *mqd, in update_cu_mask() argument 57 m = get_mqd(mqd); in update_cu_mask() 118 static void init_mqd(struct mqd_manager *mm, void **mqd, in init_mqd() argument 176 *mqd = m; in init_mqd() 182 static int load_mqd(struct mqd_manager *mm, void *mqd, in load_mqd() argument 189 return mm->dev->kfd2kgd->hqd_load(mm->dev->kgd, mqd, pipe_id, queue_id, in load_mqd() [all …]
|
D | kfd_mqd_manager.h | 72 void (*init_mqd)(struct mqd_manager *mm, void **mqd, 76 int (*load_mqd)(struct mqd_manager *mm, void *mqd, 81 void (*update_mqd)(struct mqd_manager *mm, void *mqd, 84 int (*destroy_mqd)(struct mqd_manager *mm, void *mqd, 89 void (*free_mqd)(struct mqd_manager *mm, void *mqd, 92 bool (*is_occupied)(struct mqd_manager *mm, void *mqd, 96 int (*get_wave_state)(struct mqd_manager *mm, void *mqd, 115 void free_mqd_hiq_sdma(struct mqd_manager *mm, void *mqd,
|
D | kfd_kernel_queue.c | 139 kq->mqd_mgr->init_mqd(kq->mqd_mgr, &kq->queue->mqd, in initialize() 148 kq->mqd_mgr->load_mqd(kq->mqd_mgr, kq->queue->mqd, in initialize() 168 kq->mqd_mgr->free_mqd(kq->mqd_mgr, kq->queue->mqd, kq->queue->mqd_mem_obj); in initialize() 190 kq->queue->mqd, in uninitialize() 198 kq->mqd_mgr->free_mqd(kq->mqd_mgr, kq->queue->mqd, in uninitialize()
|
D | kfd_device_queue_manager.c | 331 mqd_mgr->init_mqd(mqd_mgr, &q->mqd, q->mqd_mem_obj, in create_queue_nocpsch() 339 retval = mqd_mgr->load_mqd(mqd_mgr, q->mqd, q->pipe, in create_queue_nocpsch() 365 mqd_mgr->free_mqd(mqd_mgr, q->mqd, q->mqd_mem_obj); in create_queue_nocpsch() 452 retval = mqd_mgr->destroy_mqd(mqd_mgr, q->mqd, in destroy_queue_nocpsch_locked() 459 mqd_mgr->free_mqd(mqd_mgr, q->mqd, q->mqd_mem_obj); in destroy_queue_nocpsch_locked() 527 retval = mqd_mgr->destroy_mqd(mqd_mgr, q->mqd, in update_queue() 536 mqd_mgr->update_mqd(mqd_mgr, q->mqd, &q->properties); in update_queue() 559 retval = mqd_mgr->load_mqd(mqd_mgr, q->mqd, in update_queue() 596 retval = mqd_mgr->destroy_mqd(mqd_mgr, q->mqd, in evict_process_queues_nocpsch() 705 retval = mqd_mgr->load_mqd(mqd_mgr, q->mqd, q->pipe, in restore_process_queues_nocpsch() [all …]
|
D | kfd_queue.c | 60 pr_debug("Queue MQD Address: 0x%p\n", q->mqd); in print_queue()
|
D | kfd_mqd_manager.c | 89 void free_mqd_hiq_sdma(struct mqd_manager *mm, void *mqd, in free_mqd_hiq_sdma() argument
|
/Linux-v5.4/drivers/misc/sgi-gru/ |
D | grukservices.c | 544 int gru_create_message_queue(struct gru_message_queue_desc *mqd, in gru_create_message_queue() argument 560 mqd->mq = mq; in gru_create_message_queue() 561 mqd->mq_gpa = uv_gpa(mq); in gru_create_message_queue() 562 mqd->qlines = qlines; in gru_create_message_queue() 563 mqd->interrupt_pnode = nasid >> 1; in gru_create_message_queue() 564 mqd->interrupt_vector = vector; in gru_create_message_queue() 565 mqd->interrupt_apicid = apicid; in gru_create_message_queue() 578 static int send_noop_message(void *cb, struct gru_message_queue_desc *mqd, in send_noop_message() argument 590 gru_mesq(cb, mqd->mq_gpa, gru_get_tri(mhdr), 1, IMA); in send_noop_message() 614 m = mqd->mq_gpa + (gru_get_amo_value_head(cb) << 6); in send_noop_message() [all …]
|
D | grukservices.h | 61 extern int gru_create_message_queue(struct gru_message_queue_desc *mqd, 81 extern int gru_send_message_gpa(struct gru_message_queue_desc *mqd, 101 extern void gru_free_message(struct gru_message_queue_desc *mqd, 117 extern void *gru_get_next_message(struct gru_message_queue_desc *mqd);
|
/Linux-v5.4/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_amdkfd_gfx_v8.c | 58 static int kgd_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, 65 static int kgd_hqd_sdma_load(struct kgd_dev *kgd, void *mqd, 72 static bool kgd_hqd_sdma_is_occupied(struct kgd_dev *kgd, void *mqd); 73 static int kgd_hqd_destroy(struct kgd_dev *kgd, void *mqd, 77 static int kgd_hqd_sdma_destroy(struct kgd_dev *kgd, void *mqd, 274 static inline struct vi_mqd *get_mqd(void *mqd) in get_mqd() argument 276 return (struct vi_mqd *)mqd; in get_mqd() 279 static inline struct vi_sdma_mqd *get_sdma_mqd(void *mqd) in get_sdma_mqd() argument 281 return (struct vi_sdma_mqd *)mqd; in get_sdma_mqd() 284 static int kgd_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, in kgd_hqd_load() argument [all …]
|
D | amdgpu_amdkfd_gfx_v7.c | 101 static int kgd_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, 108 static int kgd_hqd_sdma_load(struct kgd_dev *kgd, void *mqd, 116 static int kgd_hqd_destroy(struct kgd_dev *kgd, void *mqd, 120 static bool kgd_hqd_sdma_is_occupied(struct kgd_dev *kgd, void *mqd); 121 static int kgd_hqd_sdma_destroy(struct kgd_dev *kgd, void *mqd, 318 static inline struct cik_mqd *get_mqd(void *mqd) in get_mqd() argument 320 return (struct cik_mqd *)mqd; in get_mqd() 323 static inline struct cik_sdma_rlc_registers *get_sdma_mqd(void *mqd) in get_sdma_mqd() argument 325 return (struct cik_sdma_rlc_registers *)mqd; in get_sdma_mqd() 328 static int kgd_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, in kgd_hqd_load() argument [all …]
|
D | amdgpu_amdkfd_arcturus.c | 67 static inline struct v9_sdma_mqd *get_sdma_mqd(void *mqd) in get_sdma_mqd() argument 69 return (struct v9_sdma_mqd *)mqd; in get_sdma_mqd() 130 static int kgd_hqd_sdma_load(struct kgd_dev *kgd, void *mqd, in kgd_hqd_sdma_load() argument 141 m = get_sdma_mqd(mqd); in kgd_hqd_sdma_load() 234 static bool kgd_hqd_sdma_is_occupied(struct kgd_dev *kgd, void *mqd) in kgd_hqd_sdma_is_occupied() argument 241 m = get_sdma_mqd(mqd); in kgd_hqd_sdma_is_occupied() 253 static int kgd_hqd_sdma_destroy(struct kgd_dev *kgd, void *mqd, in kgd_hqd_sdma_destroy() argument 262 m = get_sdma_mqd(mqd); in kgd_hqd_sdma_destroy()
|
D | gfx_v10_0.c | 2980 struct v10_gfx_mqd *mqd = ring->mqd_ptr; in gfx_v10_0_gfx_mqd_init() local 2986 mqd->cp_gfx_hqd_wptr = 0; in gfx_v10_0_gfx_mqd_init() 2987 mqd->cp_gfx_hqd_wptr_hi = 0; in gfx_v10_0_gfx_mqd_init() 2990 mqd->cp_mqd_base_addr = ring->mqd_gpu_addr & 0xfffffffc; in gfx_v10_0_gfx_mqd_init() 2991 mqd->cp_mqd_base_addr_hi = upper_32_bits(ring->mqd_gpu_addr); in gfx_v10_0_gfx_mqd_init() 2998 mqd->cp_gfx_mqd_control = tmp; in gfx_v10_0_gfx_mqd_init() 3003 mqd->cp_gfx_hqd_vmid = 0; in gfx_v10_0_gfx_mqd_init() 3009 mqd->cp_gfx_hqd_queue_priority = tmp; in gfx_v10_0_gfx_mqd_init() 3014 mqd->cp_gfx_hqd_quantum = tmp; in gfx_v10_0_gfx_mqd_init() 3018 mqd->cp_gfx_hqd_base = hqd_gpu_addr; in gfx_v10_0_gfx_mqd_init() [all …]
|
D | amdgpu_amdkfd_gfx_v10.c | 64 static int kgd_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, 71 static int kgd_hqd_sdma_load(struct kgd_dev *kgd, void *mqd, 78 static bool kgd_hqd_sdma_is_occupied(struct kgd_dev *kgd, void *mqd); 79 static int kgd_hqd_destroy(struct kgd_dev *kgd, void *mqd, 83 static int kgd_hqd_sdma_destroy(struct kgd_dev *kgd, void *mqd, 347 static inline struct v10_compute_mqd *get_mqd(void *mqd) in get_mqd() argument 349 return (struct v10_compute_mqd *)mqd; in get_mqd() 352 static inline struct v10_sdma_mqd *get_sdma_mqd(void *mqd) in get_sdma_mqd() argument 354 return (struct v10_sdma_mqd *)mqd; in get_sdma_mqd() 357 static int kgd_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, in kgd_hqd_load() argument [all …]
|
D | amdgpu_amdkfd_gfx_v9.c | 249 static inline struct v9_mqd *get_mqd(void *mqd) in get_mqd() argument 251 return (struct v9_mqd *)mqd; in get_mqd() 254 static inline struct v9_sdma_mqd *get_sdma_mqd(void *mqd) in get_sdma_mqd() argument 256 return (struct v9_sdma_mqd *)mqd; in get_sdma_mqd() 259 int kgd_gfx_v9_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, in kgd_gfx_v9_hqd_load() argument 269 m = get_mqd(mqd); in kgd_gfx_v9_hqd_load() 386 static int kgd_hqd_sdma_load(struct kgd_dev *kgd, void *mqd, in kgd_hqd_sdma_load() argument 397 m = get_sdma_mqd(mqd); in kgd_hqd_sdma_load() 513 static bool kgd_hqd_sdma_is_occupied(struct kgd_dev *kgd, void *mqd) in kgd_hqd_sdma_is_occupied() argument 520 m = get_sdma_mqd(mqd); in kgd_hqd_sdma_is_occupied() [all …]
|
D | gfx_v7_0.c | 2929 struct cik_mqd *mqd, in gfx_v7_0_mqd_init() argument 2937 memset(mqd, 0, sizeof(struct cik_mqd)); in gfx_v7_0_mqd_init() 2939 mqd->header = 0xC0310800; in gfx_v7_0_mqd_init() 2940 mqd->compute_static_thread_mgmt_se0 = 0xffffffff; in gfx_v7_0_mqd_init() 2941 mqd->compute_static_thread_mgmt_se1 = 0xffffffff; in gfx_v7_0_mqd_init() 2942 mqd->compute_static_thread_mgmt_se2 = 0xffffffff; in gfx_v7_0_mqd_init() 2943 mqd->compute_static_thread_mgmt_se3 = 0xffffffff; in gfx_v7_0_mqd_init() 2946 mqd->cp_hqd_pq_doorbell_control = in gfx_v7_0_mqd_init() 2949 mqd->cp_hqd_pq_doorbell_control |= CP_HQD_PQ_DOORBELL_CONTROL__DOORBELL_EN_MASK; in gfx_v7_0_mqd_init() 2951 mqd->cp_hqd_pq_doorbell_control &= ~CP_HQD_PQ_DOORBELL_CONTROL__DOORBELL_EN_MASK; in gfx_v7_0_mqd_init() [all …]
|
D | gfx_v9_0.c | 3415 struct v9_mqd *mqd = ring->mqd_ptr; in gfx_v9_0_mqd_init() local 3419 mqd->header = 0xC0310800; in gfx_v9_0_mqd_init() 3420 mqd->compute_pipelinestat_enable = 0x00000001; in gfx_v9_0_mqd_init() 3421 mqd->compute_static_thread_mgmt_se0 = 0xffffffff; in gfx_v9_0_mqd_init() 3422 mqd->compute_static_thread_mgmt_se1 = 0xffffffff; in gfx_v9_0_mqd_init() 3423 mqd->compute_static_thread_mgmt_se2 = 0xffffffff; in gfx_v9_0_mqd_init() 3424 mqd->compute_static_thread_mgmt_se3 = 0xffffffff; in gfx_v9_0_mqd_init() 3425 mqd->compute_static_thread_mgmt_se4 = 0xffffffff; in gfx_v9_0_mqd_init() 3426 mqd->compute_static_thread_mgmt_se5 = 0xffffffff; in gfx_v9_0_mqd_init() 3427 mqd->compute_static_thread_mgmt_se6 = 0xffffffff; in gfx_v9_0_mqd_init() [all …]
|
D | amdgpu_amdkfd_gfx_v9.h | 32 int kgd_gfx_v9_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, 41 int kgd_gfx_v9_hqd_destroy(struct kgd_dev *kgd, void *mqd,
|
D | gfx_v8_0.c | 4460 struct vi_mqd *mqd = ring->mqd_ptr; in gfx_v8_0_mqd_init() local 4464 mqd->header = 0xC0310800; in gfx_v8_0_mqd_init() 4465 mqd->compute_pipelinestat_enable = 0x00000001; in gfx_v8_0_mqd_init() 4466 mqd->compute_static_thread_mgmt_se0 = 0xffffffff; in gfx_v8_0_mqd_init() 4467 mqd->compute_static_thread_mgmt_se1 = 0xffffffff; in gfx_v8_0_mqd_init() 4468 mqd->compute_static_thread_mgmt_se2 = 0xffffffff; in gfx_v8_0_mqd_init() 4469 mqd->compute_static_thread_mgmt_se3 = 0xffffffff; in gfx_v8_0_mqd_init() 4470 mqd->compute_misc_reserved = 0x00000003; in gfx_v8_0_mqd_init() 4471 mqd->dynamic_cu_mask_addr_lo = lower_32_bits(ring->mqd_gpu_addr in gfx_v8_0_mqd_init() 4473 mqd->dynamic_cu_mask_addr_hi = upper_32_bits(ring->mqd_gpu_addr in gfx_v8_0_mqd_init() [all …]
|
D | gfx_v8_0.h | 33 int gfx_v8_0_mqd_commit(struct amdgpu_device *adev, struct vi_mqd *mqd);
|
D | gfx_v7_0.h | 35 int gfx_v7_0_mqd_commit(struct amdgpu_device *adev, struct cik_mqd *mqd);
|
/Linux-v5.4/drivers/gpu/drm/amd/include/ |
D | kgd_kfd_interface.h | 254 int (*hqd_load)(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, 259 int (*hqd_sdma_load)(struct kgd_dev *kgd, void *mqd, 273 int (*hqd_destroy)(struct kgd_dev *kgd, void *mqd, uint32_t reset_type, 277 bool (*hqd_sdma_is_occupied)(struct kgd_dev *kgd, void *mqd); 279 int (*hqd_sdma_destroy)(struct kgd_dev *kgd, void *mqd,
|
/Linux-v5.4/drivers/gpu/drm/radeon/ |
D | cik.c | 4532 struct bonaire_mqd *mqd; in cik_cp_compute_resume() local 4611 mqd = (struct bonaire_mqd *)buf; in cik_cp_compute_resume() 4612 mqd->header = 0xC0310800; in cik_cp_compute_resume() 4613 mqd->static_thread_mgmt01[0] = 0xffffffff; in cik_cp_compute_resume() 4614 mqd->static_thread_mgmt01[1] = 0xffffffff; in cik_cp_compute_resume() 4615 mqd->static_thread_mgmt23[0] = 0xffffffff; in cik_cp_compute_resume() 4616 mqd->static_thread_mgmt23[1] = 0xffffffff; in cik_cp_compute_resume() 4629 mqd->queue_state.cp_hqd_pq_doorbell_control = in cik_cp_compute_resume() 4632 mqd->queue_state.cp_hqd_pq_doorbell_control |= DOORBELL_EN; in cik_cp_compute_resume() 4634 mqd->queue_state.cp_hqd_pq_doorbell_control &= ~DOORBELL_EN; in cik_cp_compute_resume() [all …]
|