| /linux/drivers/gpu/drm/amd/amdgpu/ |
| H A D | amdgpu_gmc.c | 46 return adev->gmc.xgmi.connected_to_cpu || amdgpu_virt_xgmi_migrate_enabled(adev); in amdgpu_gmc_is_pdb0_enabled() 61 u64 vram_size = adev->gmc.xgmi.node_segment_size * adev->gmc.xgmi.num_physical_nodes; in amdgpu_gmc_pdb0_alloc() 62 uint32_t pde0_page_shift = adev->gmc.vmid0_page_table_block_size + 21; in amdgpu_gmc_pdb0_alloc() 75 r = amdgpu_bo_create(adev, &bp, &adev->gmc.pdb0_bo); in amdgpu_gmc_pdb0_alloc() 79 r = amdgpu_bo_reserve(adev->gmc.pdb0_bo, false); in amdgpu_gmc_pdb0_alloc() 83 r = amdgpu_bo_pin(adev->gmc.pdb0_bo, AMDGPU_GEM_DOMAIN_VRAM); in amdgpu_gmc_pdb0_alloc() 86 r = amdgpu_bo_kmap(adev->gmc.pdb0_bo, &adev->gmc.ptr_pdb0); in amdgpu_gmc_pdb0_alloc() 90 amdgpu_bo_unreserve(adev->gmc.pdb0_bo); in amdgpu_gmc_pdb0_alloc() 94 amdgpu_bo_unpin(adev->gmc.pdb0_bo); in amdgpu_gmc_pdb0_alloc() 96 amdgpu_bo_unreserve(adev->gmc.pdb0_bo); in amdgpu_gmc_pdb0_alloc() [all …]
|
| H A D | gfxhub_v2_1.c | 144 (u32)(adev->gmc.gart_start >> 12)); in gfxhub_v2_1_init_gart_aperture_regs() 146 (u32)(adev->gmc.gart_start >> 44)); in gfxhub_v2_1_init_gart_aperture_regs() 149 (u32)(adev->gmc.gart_end >> 12)); in gfxhub_v2_1_init_gart_aperture_regs() 151 (u32)(adev->gmc.gart_end >> 44)); in gfxhub_v2_1_init_gart_aperture_regs() 163 WREG32_SOC15(GC, 0, mmGCMC_VM_AGP_BOT, adev->gmc.agp_start >> 24); in gfxhub_v2_1_init_system_aperture_regs() 164 WREG32_SOC15(GC, 0, mmGCMC_VM_AGP_TOP, adev->gmc.agp_end >> 24); in gfxhub_v2_1_init_system_aperture_regs() 168 min(adev->gmc.fb_start, adev->gmc.agp_start) >> 18); in gfxhub_v2_1_init_system_aperture_regs() 170 max(adev->gmc.fb_end, adev->gmc.agp_end) >> 18); in gfxhub_v2_1_init_system_aperture_regs() 239 if (adev->gmc.translate_further) { in gfxhub_v2_1_init_cache_regs() 326 !adev->gmc.noretry); in gfxhub_v2_1_setup_vmid_config() [all …]
|
| H A D | gmc_v11_0.c | 178 adev->gmc.vm_fault.num_types = 1; in gmc_v11_0_set_irq_funcs() 179 adev->gmc.vm_fault.funcs = &gmc_v11_0_irq_funcs; in gmc_v11_0_set_irq_funcs() 182 adev->gmc.ecc_irq.num_types = 1; in gmc_v11_0_set_irq_funcs() 183 adev->gmc.ecc_irq.funcs = &gmc_v11_0_ecc_funcs; in gmc_v11_0_set_irq_funcs() 256 spin_lock(&adev->gmc.invalidate_lock); in gmc_v11_0_flush_gpu_tlb() 307 spin_unlock(&adev->gmc.invalidate_lock); in gmc_v11_0_flush_gpu_tlb() 452 if (!adev->gmc.translate_further) in gmc_v11_0_get_vm_pde() 549 adev->gmc.gmc_funcs = &gmc_v11_0_gmc_funcs; in gmc_v11_0_set_gmc_funcs() 629 adev->gmc.shared_aperture_start = 0x2000000000000000ULL; in gmc_v11_0_early_init() 630 adev->gmc.shared_aperture_end = in gmc_v11_0_early_init() [all …]
|
| H A D | gfxhub_v1_0.c | 58 if (adev->gmc.pdb0_bo) in gfxhub_v1_0_init_gart_aperture_regs() 59 pt_base = amdgpu_gmc_pd_addr(adev->gmc.pdb0_bo); in gfxhub_v1_0_init_gart_aperture_regs() 68 if (adev->gmc.pdb0_bo) { in gfxhub_v1_0_init_gart_aperture_regs() 70 (u32)(adev->gmc.fb_start >> 12)); in gfxhub_v1_0_init_gart_aperture_regs() 72 (u32)(adev->gmc.fb_start >> 44)); in gfxhub_v1_0_init_gart_aperture_regs() 75 (u32)(adev->gmc.gart_end >> 12)); in gfxhub_v1_0_init_gart_aperture_regs() 77 (u32)(adev->gmc.gart_end >> 44)); in gfxhub_v1_0_init_gart_aperture_regs() 80 (u32)(adev->gmc.gart_start >> 12)); in gfxhub_v1_0_init_gart_aperture_regs() 82 (u32)(adev->gmc.gart_start >> 44)); in gfxhub_v1_0_init_gart_aperture_regs() 85 (u32)(adev->gmc.gart_end >> 12)); in gfxhub_v1_0_init_gart_aperture_regs() [all …]
|
| H A D | gfxhub_v1_2.c | 78 adev->gmc.vram_start : adev->gmc.fb_start; in gfxhub_v1_2_xcc_init_gart_aperture_regs() 82 if (adev->gmc.pdb0_bo) in gfxhub_v1_2_xcc_init_gart_aperture_regs() 83 pt_base = amdgpu_gmc_pd_addr(adev->gmc.pdb0_bo); in gfxhub_v1_2_xcc_init_gart_aperture_regs() 93 if (adev->gmc.pdb0_bo) { in gfxhub_v1_2_xcc_init_gart_aperture_regs() 103 (u32)(adev->gmc.gart_end >> 12)); in gfxhub_v1_2_xcc_init_gart_aperture_regs() 106 (u32)(adev->gmc.gart_end >> 44)); in gfxhub_v1_2_xcc_init_gart_aperture_regs() 110 (u32)(adev->gmc.gart_start >> 12)); in gfxhub_v1_2_xcc_init_gart_aperture_regs() 113 (u32)(adev->gmc.gart_start >> 44)); in gfxhub_v1_2_xcc_init_gart_aperture_regs() 117 (u32)(adev->gmc.gart_end >> 12)); in gfxhub_v1_2_xcc_init_gart_aperture_regs() 120 (u32)(adev->gmc.gart_end >> 44)); in gfxhub_v1_2_xcc_init_gart_aperture_regs() [all …]
|
| H A D | gfxhub_v1_1.c | 88 if (max_region || adev->gmc.xgmi.connected_to_cpu) { in gfxhub_v1_1_get_xgmi_info() 89 adev->gmc.xgmi.num_physical_nodes = max_region + 1; in gfxhub_v1_1_get_xgmi_info() 91 if (adev->gmc.xgmi.num_physical_nodes > max_num_physical_nodes) in gfxhub_v1_1_get_xgmi_info() 95 adev->gmc.xgmi.physical_node_id = in gfxhub_v1_1_get_xgmi_info() 99 adev->gmc.xgmi.physical_node_id = in gfxhub_v1_1_get_xgmi_info() 104 if (adev->gmc.xgmi.physical_node_id > max_physical_node_id) in gfxhub_v1_1_get_xgmi_info() 107 adev->gmc.xgmi.node_segment_size = seg_size; in gfxhub_v1_1_get_xgmi_info()
|
| H A D | gfxhub_v12_1.c | 99 if (adev->gmc.pdb0_bo) in gfxhub_v12_1_xcc_init_gart_aperture_regs() 100 pt_base = amdgpu_gmc_pd_addr(adev->gmc.pdb0_bo); in gfxhub_v12_1_xcc_init_gart_aperture_regs() 110 if (adev->gmc.pdb0_bo) { in gfxhub_v12_1_xcc_init_gart_aperture_regs() 113 (u32)(adev->gmc.fb_start >> 12)); in gfxhub_v12_1_xcc_init_gart_aperture_regs() 116 (u32)(adev->gmc.fb_start >> 44)); in gfxhub_v12_1_xcc_init_gart_aperture_regs() 120 (u32)(adev->gmc.gart_end >> 12)); in gfxhub_v12_1_xcc_init_gart_aperture_regs() 123 (u32)(adev->gmc.gart_end >> 44)); in gfxhub_v12_1_xcc_init_gart_aperture_regs() 127 (u32)(adev->gmc.gart_start >> 12)); in gfxhub_v12_1_xcc_init_gart_aperture_regs() 130 (u32)(adev->gmc.gart_start >> 44)); in gfxhub_v12_1_xcc_init_gart_aperture_regs() 134 (u32)(adev->gmc.gart_end >> 12)); in gfxhub_v12_1_xcc_init_gart_aperture_regs() [all …]
|
| H A D | mmhub_v1_0.c | 48 adev->gmc.fb_start = base; in mmhub_v1_0_get_fb_location() 49 adev->gmc.fb_end = top; in mmhub_v1_0_get_fb_location() 75 (u32)(adev->gmc.gart_start >> 12)); in mmhub_v1_0_init_gart_aperture_regs() 77 (u32)(adev->gmc.gart_start >> 44)); in mmhub_v1_0_init_gart_aperture_regs() 80 (u32)(adev->gmc.gart_end >> 12)); in mmhub_v1_0_init_gart_aperture_regs() 82 (u32)(adev->gmc.gart_end >> 44)); in mmhub_v1_0_init_gart_aperture_regs() 92 WREG32_SOC15(MMHUB, 0, mmMC_VM_AGP_BOT, adev->gmc.agp_start >> 24); in mmhub_v1_0_init_system_aperture_regs() 93 WREG32_SOC15(MMHUB, 0, mmMC_VM_AGP_TOP, adev->gmc.agp_end >> 24); in mmhub_v1_0_init_system_aperture_regs() 97 min(adev->gmc.fb_start, adev->gmc.agp_start) >> 18); in mmhub_v1_0_init_system_aperture_regs() 109 max((adev->gmc.fb_end >> 18) + 0x1, in mmhub_v1_0_init_system_aperture_regs() [all …]
|
| H A D | gfxhub_v2_0.c | 141 (u32)(adev->gmc.gart_start >> 12)); in gfxhub_v2_0_init_gart_aperture_regs() 143 (u32)(adev->gmc.gart_start >> 44)); in gfxhub_v2_0_init_gart_aperture_regs() 146 (u32)(adev->gmc.gart_end >> 12)); in gfxhub_v2_0_init_gart_aperture_regs() 148 (u32)(adev->gmc.gart_end >> 44)); in gfxhub_v2_0_init_gart_aperture_regs() 158 WREG32_SOC15(GC, 0, mmGCMC_VM_AGP_BOT, adev->gmc.agp_start >> 24); in gfxhub_v2_0_init_system_aperture_regs() 159 WREG32_SOC15(GC, 0, mmGCMC_VM_AGP_TOP, adev->gmc.agp_end >> 24); in gfxhub_v2_0_init_system_aperture_regs() 163 min(adev->gmc.fb_start, adev->gmc.agp_start) >> 18); in gfxhub_v2_0_init_system_aperture_regs() 165 max(adev->gmc.fb_end, adev->gmc.agp_end) >> 18); in gfxhub_v2_0_init_system_aperture_regs() 233 if (adev->gmc.translate_further) { in gfxhub_v2_0_init_cache_regs() 314 !adev->gmc.noretry); in gfxhub_v2_0_setup_vmid_config()
|
| H A D | mmhub_v2_3.c | 131 (u32)(adev->gmc.gart_start >> 12)); in mmhub_v2_3_init_gart_aperture_regs() 133 (u32)(adev->gmc.gart_start >> 44)); in mmhub_v2_3_init_gart_aperture_regs() 136 (u32)(adev->gmc.gart_end >> 12)); in mmhub_v2_3_init_gart_aperture_regs() 138 (u32)(adev->gmc.gart_end >> 44)); in mmhub_v2_3_init_gart_aperture_regs() 148 WREG32_SOC15(MMHUB, 0, mmMMMC_VM_AGP_BOT, adev->gmc.agp_start >> 24); in mmhub_v2_3_init_system_aperture_regs() 149 WREG32_SOC15(MMHUB, 0, mmMMMC_VM_AGP_TOP, adev->gmc.agp_end >> 24); in mmhub_v2_3_init_system_aperture_regs() 153 min(adev->gmc.fb_start, adev->gmc.agp_start) >> 18); in mmhub_v2_3_init_system_aperture_regs() 155 max(adev->gmc.fb_end, adev->gmc.agp_end) >> 18); in mmhub_v2_3_init_system_aperture_regs() 219 if (adev->gmc.translate_further) { in mmhub_v2_3_init_cache_regs() 304 !adev->gmc.noretry); in mmhub_v2_3_setup_vmid_config() [all …]
|
| H A D | mmhub_v2_0.c | 193 (u32)(adev->gmc.gart_start >> 12)); in mmhub_v2_0_init_gart_aperture_regs() 195 (u32)(adev->gmc.gart_start >> 44)); in mmhub_v2_0_init_gart_aperture_regs() 198 (u32)(adev->gmc.gart_end >> 12)); in mmhub_v2_0_init_gart_aperture_regs() 200 (u32)(adev->gmc.gart_end >> 44)); in mmhub_v2_0_init_gart_aperture_regs() 211 WREG32_SOC15_RLC(MMHUB, 0, mmMMMC_VM_AGP_BOT, adev->gmc.agp_start >> 24); in mmhub_v2_0_init_system_aperture_regs() 212 WREG32_SOC15_RLC(MMHUB, 0, mmMMMC_VM_AGP_TOP, adev->gmc.agp_end >> 24); in mmhub_v2_0_init_system_aperture_regs() 216 min(adev->gmc.fb_start, adev->gmc.agp_start) >> 18); in mmhub_v2_0_init_system_aperture_regs() 218 max(adev->gmc.fb_end, adev->gmc.agp_end) >> 18); in mmhub_v2_0_init_system_aperture_regs() 289 if (adev->gmc.translate_further) { in mmhub_v2_0_init_cache_regs() 380 !adev->gmc.noretry); in mmhub_v2_0_setup_vmid_config()
|
| H A D | amdgpu_amdkfd.c | 233 amdgpu_amdkfd_total_mem_size += adev->gmc.real_vram_size; in amdgpu_amdkfd_device_init() 244 amdgpu_amdkfd_total_mem_size -= adev->gmc.real_vram_size; in amdgpu_amdkfd_device_fini_sw() 514 if (adev->gmc.real_vram_size == adev->gmc.visible_vram_size) in amdgpu_amdkfd_get_local_mem_info() 524 mem_info->local_mem_size_public = adev->gmc.visible_vram_size; in amdgpu_amdkfd_get_local_mem_info() 525 mem_info->local_mem_size_private = adev->gmc.real_vram_size - in amdgpu_amdkfd_get_local_mem_info() 526 adev->gmc.visible_vram_size; in amdgpu_amdkfd_get_local_mem_info() 528 mem_info->vram_width = adev->gmc.vram_width; in amdgpu_amdkfd_get_local_mem_info() 531 &adev->gmc.aper_base, in amdgpu_amdkfd_get_local_mem_info() 836 if (adev->gmc.num_mem_partitions && xcp_id >= 0 && mem_id >= 0) { in amdgpu_amdkfd_xcp_memory_size() 837 if (adev->gmc.is_app_apu && adev->gmc.num_mem_partitions == 1) { in amdgpu_amdkfd_xcp_memory_size() [all …]
|
| H A D | gmc_v12_1.c | 299 spin_lock(&adev->gmc.invalidate_lock); in gmc_v12_1_flush_vm_hub() 343 spin_unlock(&adev->gmc.invalidate_lock); in gmc_v12_1_flush_vm_hub() 555 adev->gmc.vram_start; in gmc_v12_1_get_vm_pde() 560 if (!adev->gmc.translate_further) in gmc_v12_1_get_vm_pde() 679 adev->gmc.gmc_funcs = &gmc_v12_1_gmc_funcs; in gmc_v12_1_set_gmc_funcs() 693 adev->gmc.vm_fault.num_types = 1; in gmc_v12_1_set_irq_funcs() 694 adev->gmc.vm_fault.funcs = &gmc_v12_1_irq_funcs; in gmc_v12_1_set_irq_funcs() 696 adev->gmc.ecc_irq.num_types = 1; in gmc_v12_1_set_irq_funcs() 697 adev->gmc.ecc_irq.funcs = &gmc_v12_1_ecc_funcs; in gmc_v12_1_set_irq_funcs() 703 adev->gmc.vram_type = AMDGPU_VRAM_TYPE_HBM4; in gmc_v12_1_init_vram_info() [all …]
|
| H A D | amdgpu_ttm.c | 139 } else if (!amdgpu_gmc_vram_full_visible(&adev->gmc) && in amdgpu_evict_flags() 151 abo->placements[0].fpfn = adev->gmc.visible_vram_size >> PAGE_SHIFT; in amdgpu_evict_flags() 239 *addr = amdgpu_compute_gart_address(&adev->gmc, entity, window); in amdgpu_ttm_map_buffer() 477 if ((cursor.start + cursor.size) > adev->gmc.visible_vram_size) in amdgpu_res_cpu_visible() 662 mem->bus.offset += adev->gmc.aper_base; in amdgpu_ttm_io_mem_reserve() 697 return (adev->gmc.aper_base + cursor.start) >> PAGE_SHIFT; in amdgpu_ttm_io_mem_pfn() 713 return adev->gmc.gart_start; in amdgpu_ttm_domain_start() 715 return adev->gmc.vram_start; in amdgpu_ttm_domain_start() 1013 placements.lpfn = adev->gmc.gart_size >> PAGE_SHIFT; in amdgpu_ttm_alloc_gart() 1199 if (adev->gmc.mem_partitions && abo->xcp_id >= 0) in amdgpu_ttm_tt_create() [all …]
|
| H A D | umc_v8_10.h | 37 (adev)->gmc.num_umc - hweight32((adev)->gmc.m_half_use) * 2)
|
| H A D | amdgpu_device.c | 651 if (!adev->gmc.noretry && !amdgpu_passthrough(adev)) in amdgpu_device_detect_runtime_pm_mode() 776 aper_base = adev->gmc.aper_base; in amdgpu_device_read_fb_via_bar0() 777 aper_size = adev->gmc.visible_vram_size ? adev->gmc.visible_vram_size : in amdgpu_device_read_fb_via_bar0() 778 adev->gmc.aper_size; in amdgpu_device_read_fb_via_bar0() 832 last = min(pos + size, adev->gmc.visible_vram_size); in amdgpu_device_aper_access() 1083 int rbar_size = pci_rebar_bytes_to_size(adev->gmc.real_vram_size); in amdgpu_device_resize_fb_bar() 1114 if (adev->gmc.real_vram_size && in amdgpu_device_resize_fb_bar() 1115 (pci_resource_len(adev->pdev, 0) >= adev->gmc.real_vram_size)) in amdgpu_device_resize_fb_bar() 2163 if (adev->gmc.xgmi.supported) in amdgpu_device_ip_early_init() 2497 if (adev->gmc.xgmi.num_physical_nodes > 1) { in amdgpu_device_ip_init() [all …]
|
| H A D | hdp_v4_0.c | 156 WREG32_SOC15(HDP, 0, mmHDP_NONSURFACE_BASE, (adev->gmc.vram_start >> 8)); in hdp_v4_0_init_registers() 157 WREG32_SOC15(HDP, 0, mmHDP_NONSURFACE_BASE_HI, (adev->gmc.vram_start >> 40)); in hdp_v4_0_init_registers()
|
| H A D | umc_v8_14.h | 36 (UMC_V8_14_CHANNEL_INSTANCE_NUM * (adev)->gmc.num_umc)
|
| H A D | imu_v11_0_3.c | 126 data = adev->gmc.vram_start >> 24; in program_rlc_ram_register_setting() 128 data = adev->gmc.vram_end >> 24; in program_rlc_ram_register_setting()
|
| H A D | amdgpu_ttm.h | 228 static inline u64 amdgpu_compute_gart_address(struct amdgpu_gmc *gmc, in amdgpu_compute_gart_address() argument 232 return gmc->gart_start + entity->gart_window_offs[index]; in amdgpu_compute_gart_address()
|
| H A D | vce_v1_0.c | 558 if (adev->gmc.vram_start < adev->gmc.gart_start) in vce_v1_0_ensure_vcpu_bo_32bit_addr() 572 if (adev->gmc.gart_start + vce_gart_start_offs > max_vcpu_bo_addr) in vce_v1_0_ensure_vcpu_bo_32bit_addr() 577 adev->vce.gpu_addr = adev->gmc.gart_start + vce_gart_start_offs; in vce_v1_0_ensure_vcpu_bo_32bit_addr()
|
| H A D | amdgpu_gtt_mgr.c | 237 adev->gmc.gart_size >> PAGE_SHIFT, in amdgpu_gtt_mgr_alloc_entries() 389 drm_mm_init(&mgr->mm, 0, adev->gmc.gart_size >> PAGE_SHIFT); in amdgpu_gtt_mgr_init()
|
| /linux/drivers/gpu/drm/loongson/ |
| H A D | lsdc_gfxpll.c | 82 unsigned int *gmc, in loongson_gfxpll_get_rates() argument 110 if (gmc) in loongson_gfxpll_get_rates() 111 *gmc = gmc_mhz; in loongson_gfxpll_get_rates() 122 unsigned int dc, gmc, gpu; in loongson_gfxpll_print() local 134 this->funcs->get_rates(this, &dc, &gmc, &gpu); in loongson_gfxpll_print() 136 drm_printf(p, "dc: %uMHz, gmc: %uMHz, gpu: %uMHz\n", dc, gmc, gpu); in loongson_gfxpll_print()
|
| H A D | lsdc_gfxpll.h | 29 unsigned int *dc, unsigned int *gmc, unsigned int *gpu);
|
| /linux/drivers/gpu/drm/amd/amdkfd/ |
| H A D | kfd_migrate.c | 62 *gart_addr = amdgpu_compute_gart_address(&adev->gmc, entity, 0); in svm_migrate_gart_map() 714 if (adev->gmc.xgmi.connected_to_cpu) in svm_migrate_vma_to_ram() 1047 size = ALIGN(adev->gmc.real_vram_size, 2ULL << 20); in kgd2kfd_init_zone_device() 1048 if (adev->gmc.xgmi.connected_to_cpu) { in kgd2kfd_init_zone_device() 1049 pgmap->range.start = adev->gmc.aper_base; in kgd2kfd_init_zone_device() 1050 pgmap->range.end = adev->gmc.aper_base + adev->gmc.aper_size - 1; in kgd2kfd_init_zone_device()
|