/kernel/linux/linux-5.10/drivers/gpu/drm/amd/display/modules/vmid/ |
D | vmid.c | 41 static void add_ptb_to_table(struct core_vmid *core_vmid, unsigned int vmid, uint64_t ptb) in add_ptb_to_table() argument 43 if (vmid < MAX_VMID) { in add_ptb_to_table() 44 core_vmid->ptb_assigned_to_vmid[vmid] = ptb; in add_ptb_to_table() 49 static void clear_entry_from_vmid_table(struct core_vmid *core_vmid, unsigned int vmid) in clear_entry_from_vmid_table() argument 51 if (vmid < MAX_VMID) { in clear_entry_from_vmid_table() 52 core_vmid->ptb_assigned_to_vmid[vmid] = 0; in clear_entry_from_vmid_table() 98 int vmid = 0; in mod_vmid_get_for_ptb() local 104 vmid = get_existing_vmid_for_ptb(core_vmid, ptb); in mod_vmid_get_for_ptb() 106 if (vmid == -1) { in mod_vmid_get_for_ptb() 114 vmid = get_next_available_vmid(core_vmid); in mod_vmid_get_for_ptb() [all …]
|
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdkfd/ |
D | cik_event_interrupt.c | 37 unsigned int vmid; in cik_event_interrupt_isr() local 53 vmid = f2g->read_vmid_from_vmfault_reg(dev->kgd); in cik_event_interrupt_isr() 54 ret = f2g->get_atc_vmid_pasid_mapping_info(dev->kgd, vmid, &pasid); in cik_event_interrupt_isr() 57 tmp_ihre->ring_id |= vmid << 8; in cik_event_interrupt_isr() 61 vmid >= dev->vm_info.first_vmid_kfd && in cik_event_interrupt_isr() 62 vmid <= dev->vm_info.last_vmid_kfd; in cik_event_interrupt_isr() 66 vmid = (ihre->ring_id & 0x0000ff00) >> 8; in cik_event_interrupt_isr() 67 if (vmid < dev->vm_info.first_vmid_kfd || in cik_event_interrupt_isr() 68 vmid > dev->vm_info.last_vmid_kfd) in cik_event_interrupt_isr() 93 unsigned int vmid = (ihre->ring_id & 0x0000ff00) >> 8; in cik_event_interrupt_wq() local [all …]
|
D | kfd_int_process_v9.c | 34 uint16_t source_id, client_id, pasid, vmid; in event_interrupt_isr_v9() local 38 vmid = SOC15_VMID_FROM_IH_ENTRY(ih_ring_entry); in event_interrupt_isr_v9() 39 if (vmid < dev->vm_info.first_vmid_kfd || in event_interrupt_isr_v9() 40 vmid > dev->vm_info.last_vmid_kfd) in event_interrupt_isr_v9() 58 pasid = dev->dqm->vmid_pasid[vmid]; in event_interrupt_isr_v9() 66 client_id, source_id, vmid, pasid); in event_interrupt_isr_v9() 90 uint16_t source_id, client_id, pasid, vmid; in event_interrupt_wq_v9() local 96 vmid = SOC15_VMID_FROM_IH_ENTRY(ih_ring_entry); in event_interrupt_wq_v9() 113 info.vmid = vmid; in event_interrupt_wq_v9()
|
D | kfd_dbgdev.c | 234 unsigned int index, unsigned int vmid) in dbgdev_address_watch_set_registers() argument 258 cntl->bitfields.vmid = (uint32_t) vmid; in dbgdev_address_watch_set_registers() 303 &cntl, i, pdd->qpd.vmid); in dbgdev_address_watch_nodiq() 307 pr_debug("\t\t%20s %08x\n", "vmid is :", pdd->qpd.vmid); in dbgdev_address_watch_nodiq() 319 cntl.bitfields.vmid); in dbgdev_address_watch_nodiq() 349 unsigned int vmid = 0; in dbgdev_address_watch_diq() local 398 vmid); in dbgdev_address_watch_diq() 402 pr_debug("\t\t%20s %08x\n", "vmid is :", vmid); in dbgdev_address_watch_diq() 416 cntl.bitfields.vmid); in dbgdev_address_watch_diq() 723 reg_sq_cmd.bits.vm_id = pdd->qpd.vmid; in dbgdev_wave_control_nodiq() [all …]
|
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/display/dc/dcn20/ |
D | dcn20_vmid.c | 32 vmid->regs->reg 35 vmid->ctx 39 vmid->shifts->field_name, vmid->masks->field_name 41 static void dcn20_wait_for_vmid_ready(struct dcn20_vmid *vmid) in dcn20_wait_for_vmid_ready() argument 73 void dcn20_vmid_setup(struct dcn20_vmid *vmid, const struct dcn_vmid_page_table_config *config) in dcn20_vmid_setup() argument 95 dcn20_wait_for_vmid_ready(vmid); in dcn20_vmid_setup()
|
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_amdkfd_gfx_v9.c | 53 uint32_t queue, uint32_t vmid) in lock_srbm() argument 58 soc15_grbm_select(adev, mec, pipe, queue, vmid); in lock_srbm() 94 void kgd_gfx_v9_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, in kgd_gfx_v9_program_sh_mem_settings() argument 102 lock_srbm(kgd, 0, 0, 0, vmid); in kgd_gfx_v9_program_sh_mem_settings() 112 unsigned int vmid) in kgd_gfx_v9_set_pasid_vmid_mapping() argument 132 WREG32(SOC15_REG_OFFSET(ATHUB, 0, mmATC_VMID0_PASID_MAPPING) + vmid, in kgd_gfx_v9_set_pasid_vmid_mapping() 138 (1U << vmid))) in kgd_gfx_v9_set_pasid_vmid_mapping() 143 1U << vmid); in kgd_gfx_v9_set_pasid_vmid_mapping() 146 WREG32(SOC15_REG_OFFSET(OSSSYS, 0, mmIH_VMID_0_LUT) + vmid, in kgd_gfx_v9_set_pasid_vmid_mapping() 149 WREG32(SOC15_REG_OFFSET(ATHUB, 0, mmATC_VMID16_PASID_MAPPING) + vmid, in kgd_gfx_v9_set_pasid_vmid_mapping() [all …]
|
D | amdgpu_gmc.h | 80 uint32_t (*get_invalidate_req)(unsigned int vmid, uint32_t flush_type); 112 void (*flush_gpu_tlb)(struct amdgpu_device *adev, uint32_t vmid, 118 uint64_t (*emit_flush_gpu_tlb)(struct amdgpu_ring *ring, unsigned vmid, 121 void (*emit_pasid_mapping)(struct amdgpu_ring *ring, unsigned vmid, 245 #define amdgpu_gmc_flush_gpu_tlb(adev, vmid, vmhub, type) ((adev)->gmc.gmc_funcs->flush_gpu_tlb((ad… argument 249 #define amdgpu_gmc_emit_flush_gpu_tlb(r, vmid, addr) (r)->adev->gmc.gmc_funcs->emit_flush_gpu_tlb((… argument 250 #define amdgpu_gmc_emit_pasid_mapping(r, vmid, pasid) (r)->adev->gmc.gmc_funcs->emit_pasid_mapping(… argument
|
D | gmc_v10_0.c | 126 entry->src_id, entry->ring_id, entry->vmid, in gmc_v10_0_process_interrupt() 176 uint8_t vmid, uint16_t *p_pasid) in gmc_v10_0_get_atc_vmid_pasid_mapping_info() argument 181 + vmid); in gmc_v10_0_get_atc_vmid_pasid_mapping_info() 194 static void gmc_v10_0_flush_vm_hub(struct amdgpu_device *adev, uint32_t vmid, in gmc_v10_0_flush_vm_hub() argument 199 u32 inv_req = hub->vmhub_funcs->get_invalidate_req(vmid, flush_type); in gmc_v10_0_flush_vm_hub() 241 tmp &= 1 << vmid; in gmc_v10_0_flush_vm_hub() 273 static void gmc_v10_0_flush_gpu_tlb(struct amdgpu_device *adev, uint32_t vmid, in gmc_v10_0_flush_gpu_tlb() argument 293 u32 inv_req = hub->vmhub_funcs->get_invalidate_req(vmid, flush_type); in gmc_v10_0_flush_gpu_tlb() 298 1 << vmid); in gmc_v10_0_flush_gpu_tlb() 307 gmc_v10_0_flush_vm_hub(adev, vmid, AMDGPU_MMHUB_0, 0); in gmc_v10_0_flush_gpu_tlb() [all …]
|
D | amdgpu_amdkfd_gfx_v7.c | 75 uint32_t vmid:4; member 91 uint32_t queue, uint32_t vmid) in lock_srbm() argument 94 uint32_t value = PIPEID(pipe) | MEID(mec) | VMID(vmid) | QUEUEID(queue); in lock_srbm() 124 static void kgd_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, in kgd_program_sh_mem_settings() argument 132 lock_srbm(kgd, 0, 0, 0, vmid); in kgd_program_sh_mem_settings() 143 unsigned int vmid) in kgd_set_pasid_vmid_mapping() argument 156 WREG32(mmATC_VMID0_PASID_MAPPING + vmid, pasid_mapping); in kgd_set_pasid_vmid_mapping() 158 while (!(RREG32(mmATC_VMID_PASID_MAPPING_UPDATE_STATUS) & (1U << vmid))) in kgd_set_pasid_vmid_mapping() 160 WREG32(mmATC_VMID_PASID_MAPPING_UPDATE_STATUS, 1U << vmid); in kgd_set_pasid_vmid_mapping() 163 WREG32(mmIH_VMID_0_LUT + vmid, pasid_mapping); in kgd_set_pasid_vmid_mapping() [all …]
|
D | amdgpu_amdkfd_gfx_v8.c | 48 uint32_t queue, uint32_t vmid) in lock_srbm() argument 51 uint32_t value = PIPEID(pipe) | MEID(mec) | VMID(vmid) | QUEUEID(queue); in lock_srbm() 81 static void kgd_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, in kgd_program_sh_mem_settings() argument 89 lock_srbm(kgd, 0, 0, 0, vmid); in kgd_program_sh_mem_settings() 100 unsigned int vmid) in kgd_set_pasid_vmid_mapping() argument 114 WREG32(mmATC_VMID0_PASID_MAPPING + vmid, pasid_mapping); in kgd_set_pasid_vmid_mapping() 116 while (!(RREG32(mmATC_VMID_PASID_MAPPING_UPDATE_STATUS) & (1U << vmid))) in kgd_set_pasid_vmid_mapping() 118 WREG32(mmATC_VMID_PASID_MAPPING_UPDATE_STATUS, 1U << vmid); in kgd_set_pasid_vmid_mapping() 121 WREG32(mmIH_VMID_0_LUT + vmid, pasid_mapping); in kgd_set_pasid_vmid_mapping() 553 uint8_t vmid, uint16_t *p_pasid) in get_atc_vmid_pasid_mapping_info() argument [all …]
|
D | amdgpu_amdkfd_gfx_v10.c | 49 uint32_t queue, uint32_t vmid) in lock_srbm() argument 54 nv_grbm_select(adev, mec, pipe, queue, vmid); in lock_srbm() 90 static void kgd_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, in kgd_program_sh_mem_settings() argument 98 lock_srbm(kgd, 0, 0, 0, vmid); in kgd_program_sh_mem_settings() 108 unsigned int vmid) in kgd_set_pasid_vmid_mapping() argument 122 pr_debug("pasid 0x%x vmid %d, reg value %x\n", pasid, vmid, pasid_mapping); in kgd_set_pasid_vmid_mapping() 124 pr_debug("ATHUB, reg %x\n", SOC15_REG_OFFSET(ATHUB, 0, mmATC_VMID0_PASID_MAPPING) + vmid); in kgd_set_pasid_vmid_mapping() 125 WREG32(SOC15_REG_OFFSET(ATHUB, 0, mmATC_VMID0_PASID_MAPPING) + vmid, in kgd_set_pasid_vmid_mapping() 133 (1U << vmid))) in kgd_set_pasid_vmid_mapping() 139 1U << vmid); in kgd_set_pasid_vmid_mapping() [all …]
|
D | amdgpu_amdkfd_gfx_v9.h | 25 void kgd_gfx_v9_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, 30 unsigned int vmid); 62 uint8_t vmid, uint16_t *p_pasid); 65 uint32_t vmid, uint64_t page_table_base);
|
D | gmc_v9_0.c | 573 entry->src_id, entry->ring_id, entry->vmid, in gmc_v9_0_process_interrupt() 654 static uint32_t gmc_v9_0_get_invalidate_req(unsigned int vmid, in gmc_v9_0_get_invalidate_req() argument 660 PER_VMID_INVALIDATE_REQ, 1 << vmid); in gmc_v9_0_get_invalidate_req() 691 uint8_t vmid, uint16_t *p_pasid) in gmc_v9_0_get_atc_vmid_pasid_mapping_info() argument 696 + vmid); in gmc_v9_0_get_atc_vmid_pasid_mapping_info() 718 static void gmc_v9_0_flush_gpu_tlb(struct amdgpu_device *adev, uint32_t vmid, in gmc_v9_0_flush_gpu_tlb() argument 737 inv_req = gmc_v9_0_get_invalidate_req(vmid, 2); in gmc_v9_0_flush_gpu_tlb() 738 inv_req2 = gmc_v9_0_get_invalidate_req(vmid, flush_type); in gmc_v9_0_flush_gpu_tlb() 740 inv_req = gmc_v9_0_get_invalidate_req(vmid, flush_type); in gmc_v9_0_flush_gpu_tlb() 754 1 << vmid); in gmc_v9_0_flush_gpu_tlb() [all …]
|
D | amdgpu_trace.h | 84 __field(unsigned, vmid) 96 __entry->vmid = iv->vmid; 109 __entry->ring_id, __entry->vmid, 224 __field(u32, vmid) 233 __entry->vmid = job->vmid; 239 __entry->pasid, __get_str(ring), __entry->vmid, 415 TP_PROTO(struct amdgpu_ring *ring, unsigned vmid, 417 TP_ARGS(ring, vmid, pd_addr), 420 __field(u32, vmid) 427 __entry->vmid = vmid; [all …]
|
D | gmc_v7_0.c | 434 int vmid; in gmc_v7_0_flush_gpu_tlb_pasid() local 440 for (vmid = 1; vmid < 16; vmid++) { in gmc_v7_0_flush_gpu_tlb_pasid() 442 tmp = RREG32(mmATC_VMID0_PASID_MAPPING + vmid); in gmc_v7_0_flush_gpu_tlb_pasid() 445 WREG32(mmVM_INVALIDATE_REQUEST, 1 << vmid); in gmc_v7_0_flush_gpu_tlb_pasid() 469 static void gmc_v7_0_flush_gpu_tlb(struct amdgpu_device *adev, uint32_t vmid, in gmc_v7_0_flush_gpu_tlb() argument 473 WREG32(mmVM_INVALIDATE_REQUEST, 1 << vmid); in gmc_v7_0_flush_gpu_tlb() 477 unsigned vmid, uint64_t pd_addr) in gmc_v7_0_emit_flush_gpu_tlb() argument 481 if (vmid < 8) in gmc_v7_0_emit_flush_gpu_tlb() 482 reg = mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR + vmid; in gmc_v7_0_emit_flush_gpu_tlb() 484 reg = mmVM_CONTEXT8_PAGE_TABLE_BASE_ADDR + vmid - 8; in gmc_v7_0_emit_flush_gpu_tlb() [all …]
|
D | amdgpu_amdkfd_gfx_v10_3.c | 48 uint32_t queue, uint32_t vmid) in lock_srbm() argument 53 nv_grbm_select(adev, mec, pipe, queue, vmid); in lock_srbm() 89 static void program_sh_mem_settings_v10_3(struct kgd_dev *kgd, uint32_t vmid, in program_sh_mem_settings_v10_3() argument 97 lock_srbm(kgd, 0, 0, 0, vmid); in program_sh_mem_settings_v10_3() 108 unsigned int vmid) in set_pasid_vmid_mapping_v10_3() argument 116 vmid, pasid); in set_pasid_vmid_mapping_v10_3() 117 WREG32(SOC15_REG_OFFSET(OSSSYS, 0, mmIH_VMID_0_LUT) + vmid, value); in set_pasid_vmid_mapping_v10_3() 653 static void set_vm_context_page_table_base_v10_3(struct kgd_dev *kgd, uint32_t vmid, in set_vm_context_page_table_base_v10_3() argument 659 adev->gfxhub.funcs->setup_vm_pt_regs(adev, vmid, page_table_base); in set_vm_context_page_table_base_v10_3() 665 uint32_t vmid) [all …]
|
D | gmc_v8_0.c | 642 int vmid; in gmc_v8_0_flush_gpu_tlb_pasid() local 648 for (vmid = 1; vmid < 16; vmid++) { in gmc_v8_0_flush_gpu_tlb_pasid() 650 tmp = RREG32(mmATC_VMID0_PASID_MAPPING + vmid); in gmc_v8_0_flush_gpu_tlb_pasid() 653 WREG32(mmVM_INVALIDATE_REQUEST, 1 << vmid); in gmc_v8_0_flush_gpu_tlb_pasid() 678 static void gmc_v8_0_flush_gpu_tlb(struct amdgpu_device *adev, uint32_t vmid, in gmc_v8_0_flush_gpu_tlb() argument 682 WREG32(mmVM_INVALIDATE_REQUEST, 1 << vmid); in gmc_v8_0_flush_gpu_tlb() 686 unsigned vmid, uint64_t pd_addr) in gmc_v8_0_emit_flush_gpu_tlb() argument 690 if (vmid < 8) in gmc_v8_0_emit_flush_gpu_tlb() 691 reg = mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR + vmid; in gmc_v8_0_emit_flush_gpu_tlb() 693 reg = mmVM_CONTEXT8_PAGE_TABLE_BASE_ADDR + vmid - 8; in gmc_v8_0_emit_flush_gpu_tlb() [all …]
|
D | jpeg_v1_0.c | 295 unsigned vmid = AMDGPU_JOB_GET_VMID(job); in jpeg_v1_0_decode_ring_emit_ib() local 299 amdgpu_ring_write(ring, (vmid | (vmid << 4))); in jpeg_v1_0_decode_ring_emit_ib() 303 amdgpu_ring_write(ring, (vmid | (vmid << 4))); in jpeg_v1_0_decode_ring_emit_ib() 373 unsigned vmid, uint64_t pd_addr) in jpeg_v1_0_decode_ring_emit_vm_flush() argument 378 pd_addr = amdgpu_gmc_emit_flush_gpu_tlb(ring, vmid, pd_addr); in jpeg_v1_0_decode_ring_emit_vm_flush() 381 data0 = hub->ctx0_ptb_addr_lo32 + vmid * hub->ctx_addr_distance; in jpeg_v1_0_decode_ring_emit_vm_flush()
|
D | amdgpu_job.h | 38 #define AMDGPU_JOB_GET_VMID(job) ((job) ? (job)->vmid : 0) 55 unsigned vmid; member
|
D | vcn_v2_0.h | 37 unsigned vmid, uint64_t pd_addr); 50 unsigned int vmid, uint64_t pd_addr);
|
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/include/ |
D | kgd_kfd_interface.h | 51 uint32_t vmid; member 230 void (*program_sh_mem_settings)(struct kgd_dev *kgd, uint32_t vmid, 235 unsigned int vmid); 285 uint8_t vmid, 293 uint64_t va, uint32_t vmid); 296 uint32_t vmid, uint64_t page_table_base);
|
/kernel/linux/linux-5.10/drivers/gpu/drm/radeon/ |
D | radeon_trace.h | 51 TP_PROTO(unsigned vmid, int ring), 52 TP_ARGS(vmid, ring), 54 __field(u32, vmid) 59 __entry->vmid = vmid; 62 TP_printk("vmid=%u, ring=%u", __entry->vmid, __entry->ring)
|
/kernel/linux/linux-5.10/arch/arm64/include/asm/ |
D | kvm_mmu.h | 262 struct kvm_vmid *vmid = &mmu->vmid; in kvm_get_vttbr() local 267 vmid_field = (u64)vmid->vmid << VTTBR_VMID_SHIFT; in kvm_get_vttbr()
|
/kernel/linux/linux-5.10/drivers/soc/qcom/ |
D | rmtfs_mem.c | 178 u32 vmid; in qcom_rmtfs_mem_probe() local 229 ret = of_property_read_u32(node, "qcom,vmid", &vmid); in qcom_rmtfs_mem_probe() 239 perms[0].vmid = QCOM_SCM_VMID_HLOS; in qcom_rmtfs_mem_probe() 241 perms[1].vmid = vmid; in qcom_rmtfs_mem_probe() 271 perm.vmid = QCOM_SCM_VMID_HLOS; in qcom_rmtfs_mem_remove()
|
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/display/dc/core/ |
D | dc_vm_helper.c | 55 void dc_setup_vm_context(struct dc *dc, struct dc_virtual_addr_space_config *va_config, int vmid) in dc_setup_vm_context() argument 57 dc->hwss.init_vm_ctx(dc->hwseq, dc, va_config, vmid); in dc_setup_vm_context()
|