| /linux/drivers/gpu/drm/amd/amdgpu/ |
| H A D | amdgpu_amdkfd_gfx_v10_3.c | 44 static void lock_srbm(struct amdgpu_device *adev, uint32_t mec, uint32_t pipe, in lock_srbm() argument 48 nv_grbm_select(adev, mec, pipe, queue, vmid); in lock_srbm() 60 uint32_t mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in acquire_queue() local 61 uint32_t pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in acquire_queue() 63 lock_srbm(adev, mec, pipe, queue_id, 0); in acquire_queue() 69 unsigned int bit = pipe_id * adev->gfx.mec.num_queue_per_pipe + in get_queue_mask() 112 uint32_t mec; in init_interrupts_v10_3() local 115 mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in init_interrupts_v10_3() 116 pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in init_interrupts_v10_3() 118 lock_srbm(adev, mec, pipe, 0, 0); in init_interrupts_v10_3() [all …]
|
| H A D | amdgpu_amdkfd_gfx_v11.c | 42 static void lock_srbm(struct amdgpu_device *adev, uint32_t mec, uint32_t pipe, in lock_srbm() argument 46 soc21_grbm_select(adev, mec, pipe, queue, vmid); in lock_srbm() 58 uint32_t mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in acquire_queue() local 59 uint32_t pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in acquire_queue() 61 lock_srbm(adev, mec, pipe, queue_id, 0); in acquire_queue() 67 unsigned int bit = pipe_id * adev->gfx.mec.num_queue_per_pipe + in get_queue_mask() 108 uint32_t mec; in init_interrupts_v11() local 111 mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in init_interrupts_v11() 112 pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in init_interrupts_v11() 114 lock_srbm(adev, mec, pipe, 0, 0); in init_interrupts_v11() [all …]
|
| H A D | amdgpu_amdkfd_gfx_v8.c | 42 static void lock_srbm(struct amdgpu_device *adev, uint32_t mec, uint32_t pipe, in lock_srbm() argument 45 uint32_t value = PIPEID(pipe) | MEID(mec) | VMID(vmid) | QUEUEID(queue); in lock_srbm() 60 uint32_t mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in acquire_queue() local 61 uint32_t pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in acquire_queue() 63 lock_srbm(adev, mec, pipe, queue_id, 0); in acquire_queue() 115 uint32_t mec; in kgd_init_interrupts() local 118 mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in kgd_init_interrupts() 119 pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in kgd_init_interrupts() 121 lock_srbm(adev, mec, pipe, 0, 0); in kgd_init_interrupts() 170 uint32_t value, mec, pipe; in kgd_hqd_load() local [all …]
|
| H A D | amdgpu_amdkfd_gfx_v12.c | 30 static void lock_srbm(struct amdgpu_device *adev, uint32_t mec, uint32_t pipe, in lock_srbm() argument 34 soc24_grbm_select(adev, mec, pipe, queue, vmid); in lock_srbm() 46 uint32_t mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in acquire_queue() local 47 uint32_t pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in acquire_queue() 49 lock_srbm(adev, mec, pipe, queue_id, 0); in acquire_queue() 59 uint32_t mec; in init_interrupts_v12() local 62 mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in init_interrupts_v12() 63 pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in init_interrupts_v12() 65 lock_srbm(adev, mec, pipe, 0, 0); in init_interrupts_v12()
|
| H A D | amdgpu_amdkfd_gfx_v9.c | 50 static void kgd_gfx_v9_lock_srbm(struct amdgpu_device *adev, uint32_t mec, uint32_t pipe, in kgd_gfx_v9_lock_srbm() argument 54 soc15_grbm_select(adev, mec, pipe, queue, vmid, GET_INST(GC, inst)); in kgd_gfx_v9_lock_srbm() 66 uint32_t mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in kgd_gfx_v9_acquire_queue() local 67 uint32_t pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in kgd_gfx_v9_acquire_queue() 69 kgd_gfx_v9_lock_srbm(adev, mec, pipe, queue_id, 0, inst); in kgd_gfx_v9_acquire_queue() 75 unsigned int bit = pipe_id * adev->gfx.mec.num_queue_per_pipe + in kgd_gfx_v9_get_queue_mask() 163 uint32_t mec; in kgd_gfx_v9_init_interrupts() local 166 mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in kgd_gfx_v9_init_interrupts() 167 pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in kgd_gfx_v9_init_interrupts() 169 kgd_gfx_v9_lock_srbm(adev, mec, pipe, 0, 0, inst); in kgd_gfx_v9_init_interrupts() [all …]
|
| H A D | amdgpu_amdkfd_gfx_v7.c | 48 static void lock_srbm(struct amdgpu_device *adev, uint32_t mec, uint32_t pipe, in lock_srbm() argument 51 uint32_t value = PIPEID(pipe) | MEID(mec) | VMID(vmid) | QUEUEID(queue); in lock_srbm() 66 uint32_t mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in acquire_queue() local 67 uint32_t pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in acquire_queue() 69 lock_srbm(adev, mec, pipe, queue_id, 0); in acquire_queue() 120 uint32_t mec; in kgd_init_interrupts() local 123 mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in kgd_init_interrupts() 124 pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in kgd_init_interrupts() 126 lock_srbm(adev, mec, pipe, 0, 0); in kgd_init_interrupts()
|
| H A D | amdgpu_amdkfd_gfx_v10.c | 44 static void lock_srbm(struct amdgpu_device *adev, uint32_t mec, uint32_t pipe, in lock_srbm() argument 48 nv_grbm_select(adev, mec, pipe, queue, vmid); in lock_srbm() 60 uint32_t mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in acquire_queue() local 61 uint32_t pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in acquire_queue() 63 lock_srbm(adev, mec, pipe, queue_id, 0); in acquire_queue() 69 unsigned int bit = pipe_id * adev->gfx.mec.num_queue_per_pipe + in get_queue_mask() 143 uint32_t mec; in kgd_init_interrupts() local 146 mec = (pipe_id / adev->gfx.mec.num_pipe_per_mec) + 1; in kgd_init_interrupts() 147 pipe = (pipe_id % adev->gfx.mec.num_pipe_per_mec); in kgd_init_interrupts() 149 lock_srbm(adev, mec, pipe, 0, 0); in kgd_init_interrupts() [all …]
|
| H A D | amdgpu_gfx.c | 48 int amdgpu_gfx_mec_queue_to_bit(struct amdgpu_device *adev, int mec, in amdgpu_gfx_mec_queue_to_bit() argument 53 bit += mec * adev->gfx.mec.num_pipe_per_mec in amdgpu_gfx_mec_queue_to_bit() 54 * adev->gfx.mec.num_queue_per_pipe; in amdgpu_gfx_mec_queue_to_bit() 55 bit += pipe * adev->gfx.mec.num_queue_per_pipe; in amdgpu_gfx_mec_queue_to_bit() 62 int *mec, int *pipe, int *queue) in amdgpu_queue_mask_bit_to_mec_queue() argument 64 *queue = bit % adev->gfx.mec.num_queue_per_pipe; in amdgpu_queue_mask_bit_to_mec_queue() 65 *pipe = (bit / adev->gfx.mec.num_queue_per_pipe) in amdgpu_queue_mask_bit_to_mec_queue() 66 % adev->gfx.mec.num_pipe_per_mec; in amdgpu_queue_mask_bit_to_mec_queue() 67 *mec = (bit / adev->gfx.mec.num_queue_per_pipe) in amdgpu_queue_mask_bit_to_mec_queue() 68 / adev->gfx.mec.num_pipe_per_mec; in amdgpu_queue_mask_bit_to_mec_queue() [all …]
|
| H A D | gfx_v12_1.c | 581 amdgpu_bo_free_kernel(&adev->gfx.mec.hpd_eop_obj, NULL, NULL); in gfx_v12_1_mec_fini() 582 amdgpu_bo_free_kernel(&adev->gfx.mec.mec_fw_obj, NULL, NULL); in gfx_v12_1_mec_fini() 583 amdgpu_bo_free_kernel(&adev->gfx.mec.mec_fw_data_obj, NULL, NULL); in gfx_v12_1_mec_fini() 607 &adev->gfx.mec.hpd_eop_obj, in gfx_v12_1_mec_init() 608 &adev->gfx.mec.hpd_eop_gpu_addr, in gfx_v12_1_mec_init() 618 amdgpu_bo_kunmap(adev->gfx.mec.hpd_eop_obj); in gfx_v12_1_mec_init() 619 amdgpu_bo_unreserve(adev->gfx.mec.hpd_eop_obj); in gfx_v12_1_mec_init() 766 int xcc_id, int mec, int pipe, int queue) in gfx_v12_1_compute_ring_init() argument 779 ring->me = mec + 1; in gfx_v12_1_compute_ring_init() 788 ring->eop_gpu_addr = adev->gfx.mec.hpd_eop_gpu_addr + in gfx_v12_1_compute_ring_init() [all …]
|
| H A D | gfx_v12_0.c | 778 amdgpu_bo_free_kernel(&adev->gfx.mec.hpd_eop_obj, NULL, NULL); in gfx_v12_0_mec_fini() 779 amdgpu_bo_free_kernel(&adev->gfx.mec.mec_fw_obj, NULL, NULL); in gfx_v12_0_mec_fini() 780 amdgpu_bo_free_kernel(&adev->gfx.mec.mec_fw_data_obj, NULL, NULL); in gfx_v12_0_mec_fini() 805 &adev->gfx.mec.hpd_eop_obj, in gfx_v12_0_mec_init() 806 &adev->gfx.mec.hpd_eop_gpu_addr, in gfx_v12_0_mec_init() 816 amdgpu_bo_kunmap(adev->gfx.mec.hpd_eop_obj); in gfx_v12_0_mec_init() 817 amdgpu_bo_unreserve(adev->gfx.mec.hpd_eop_obj); in gfx_v12_0_mec_init() 1006 int mec, int pipe, int queue) in gfx_v12_0_compute_ring_init() argument 1016 ring->me = mec + 1; in gfx_v12_0_compute_ring_init() 1023 ring->eop_gpu_addr = adev->gfx.mec.hpd_eop_gpu_addr in gfx_v12_0_compute_ring_init() [all …]
|
| H A D | gfx_v11_0.c | 937 amdgpu_bo_free_kernel(&adev->gfx.mec.hpd_eop_obj, NULL, NULL); in gfx_v11_0_mec_fini() 938 amdgpu_bo_free_kernel(&adev->gfx.mec.mec_fw_obj, NULL, NULL); in gfx_v11_0_mec_fini() 939 amdgpu_bo_free_kernel(&adev->gfx.mec.mec_fw_data_obj, NULL, NULL); in gfx_v11_0_mec_fini() 964 &adev->gfx.mec.hpd_eop_obj, in gfx_v11_0_mec_init() 965 &adev->gfx.mec.hpd_eop_gpu_addr, in gfx_v11_0_mec_init() 975 amdgpu_bo_kunmap(adev->gfx.mec.hpd_eop_obj); in gfx_v11_0_mec_init() 976 amdgpu_bo_unreserve(adev->gfx.mec.hpd_eop_obj); in gfx_v11_0_mec_init() 1175 int mec, int pipe, int queue) in gfx_v11_0_compute_ring_init() argument 1185 ring->me = mec + 1; in gfx_v11_0_compute_ring_init() 1192 ring->eop_gpu_addr = adev->gfx.mec.hpd_eop_gpu_addr in gfx_v11_0_compute_ring_init() [all …]
|
| H A D | gfx_v9_0.c | 1865 amdgpu_bo_free_kernel(&adev->gfx.mec.hpd_eop_obj, NULL, NULL); in gfx_v9_0_mec_fini() 1866 amdgpu_bo_free_kernel(&adev->gfx.mec.mec_fw_obj, NULL, NULL); in gfx_v9_0_mec_fini() 1889 &adev->gfx.mec.hpd_eop_obj, in gfx_v9_0_mec_init() 1890 &adev->gfx.mec.hpd_eop_gpu_addr, in gfx_v9_0_mec_init() 1900 amdgpu_bo_kunmap(adev->gfx.mec.hpd_eop_obj); in gfx_v9_0_mec_init() 1901 amdgpu_bo_unreserve(adev->gfx.mec.hpd_eop_obj); in gfx_v9_0_mec_init() 1913 &adev->gfx.mec.mec_fw_obj, in gfx_v9_0_mec_init() 1914 &adev->gfx.mec.mec_fw_gpu_addr, in gfx_v9_0_mec_init() 1924 amdgpu_bo_kunmap(adev->gfx.mec.mec_fw_obj); in gfx_v9_0_mec_init() 1925 amdgpu_bo_unreserve(adev->gfx.mec.mec_fw_obj); in gfx_v9_0_mec_init() [all …]
|
| H A D | amdgpu_amdkfd.c | 183 .num_pipe_per_mec = adev->gfx.mec.num_pipe_per_mec, in amdgpu_amdkfd_device_init() 184 .num_queue_per_pipe = adev->gfx.mec.num_queue_per_pipe, in amdgpu_amdkfd_device_init() 204 * adev->gfx.mec.num_pipe_per_mec in amdgpu_amdkfd_device_init() 205 * adev->gfx.mec.num_queue_per_pipe; in amdgpu_amdkfd_device_init()
|
| /linux/Documentation/translations/zh_CN/process/ |
| H A D | magic-number.rst | 43 <mailto:mec@shout.net>
|
| /linux/Documentation/translations/zh_TW/process/ |
| H A D | magic-number.rst | 39 <mailto:mec@shout.net>
|
| /linux/Documentation/translations/it_IT/staging/ |
| H A D | magic-number.rst | 46 <mailto:mec@shout.net>
|
| /linux/Documentation/staging/ |
| H A D | magic-number.rst | 41 <mailto:mec@shout.net>
|
| /linux/Documentation/translations/sp_SP/process/ |
| H A D | magic-number.rst | 47 <mailto:mec@shout.net>
|
| H A D | 1.Intro.rst | 24 de lanzamiento del kernel y la mecánica de la "ventana de combinación"
|
| /linux/drivers/gpu/drm/amd/amdkfd/ |
| H A D | kfd_device_queue_manager.c | 83 static bool is_pipe_enabled(struct device_queue_manager *dqm, int mec, int pipe) in is_pipe_enabled() argument 86 int pipe_offset = (mec * dqm->dev->kfd->shared_resources.num_pipe_per_mec in is_pipe_enabled() 1712 int i, mec; in set_sched_resources() local 1720 mec = (i / dqm->dev->kfd->shared_resources.num_queue_per_pipe) in set_sched_resources() 1727 if (mec > 0) in set_sched_resources() 2166 uint32_t mec, pipe, queue; in detect_queue_hang() local 2169 mec = (i / dqm->dev->kfd->shared_resources.num_queue_per_pipe) in detect_queue_hang() 2172 if (mec || !test_bit(i, dqm->dev->kfd->shared_resources.cp_queue_bitmap)) in detect_queue_hang() 2175 amdgpu_queue_mask_bit_to_mec_queue(dqm->dev->adev, i, &mec, &pipe, &queue); in detect_queue_hang()
|
| H A D | kfd_priv.h | 612 uint32_t mec; member
|
| /linux/ |
| H A D | CREDITS | 700 E: mec@shout.net
|