Lines Matching refs:gmc

734 	adev->gmc.vm_fault.num_types = 1;  in gmc_v9_0_set_irq_funcs()
735 adev->gmc.vm_fault.funcs = &gmc_v9_0_irq_funcs; in gmc_v9_0_set_irq_funcs()
738 !adev->gmc.xgmi.connected_to_cpu) { in gmc_v9_0_set_irq_funcs()
739 adev->gmc.ecc_irq.num_types = 1; in gmc_v9_0_set_irq_funcs()
740 adev->gmc.ecc_irq.funcs = &gmc_v9_0_ecc_funcs; in gmc_v9_0_set_irq_funcs()
824 if (adev->gmc.xgmi.num_physical_nodes && in gmc_v9_0_flush_gpu_tlb()
859 spin_lock(&adev->gmc.invalidate_lock); in gmc_v9_0_flush_gpu_tlb()
927 spin_unlock(&adev->gmc.invalidate_lock); in gmc_v9_0_flush_gpu_tlb()
969 bool vega20_xgmi_wa = (adev->gmc.xgmi.num_physical_nodes && in gmc_v9_0_flush_gpu_tlb_pasid()
1160 if (!adev->gmc.translate_further) in gmc_v9_0_get_vm_pde()
1209 adev->gmc.xgmi.connected_to_cpu) in gmc_v9_0_get_coherence_flags()
1341 if (adev->gmc.is_app_apu && vm->mem_id >= 0) { in gmc_v9_0_override_vm_pte_flags()
1342 local_node = adev->gmc.mem_partitions[vm->mem_id].numa.node; in gmc_v9_0_override_vm_pte_flags()
1452 adev->gmc.gmc_funcs = &gmc_v9_0_gmc_funcs; in gmc_v9_0_set_gmc_funcs()
1486 if (!adev->gmc.xgmi.connected_to_cpu) in gmc_v9_0_set_umc_funcs()
1557 if (!adev->gmc.xgmi.connected_to_cpu) { in gmc_v9_0_set_mca_ras_funcs()
1570 if (!adev->gmc.xgmi.connected_to_cpu) in gmc_v9_0_set_xgmi_ras_funcs()
1571 adev->gmc.xgmi.ras = &xgmi_ras; in gmc_v9_0_set_xgmi_ras_funcs()
1585 adev->gmc.xgmi.supported = true; in gmc_v9_0_early_init()
1588 adev->gmc.xgmi.supported = true; in gmc_v9_0_early_init()
1589 adev->gmc.xgmi.connected_to_cpu = in gmc_v9_0_early_init()
1603 adev->gmc.is_app_apu = (pkg_type == AMDGPU_PKG_TYPE_APU && in gmc_v9_0_early_init()
1617 adev->gmc.shared_aperture_start = 0x2000000000000000ULL; in gmc_v9_0_early_init()
1618 adev->gmc.shared_aperture_end = in gmc_v9_0_early_init()
1619 adev->gmc.shared_aperture_start + (4ULL << 30) - 1; in gmc_v9_0_early_init()
1620 adev->gmc.private_aperture_start = 0x1000000000000000ULL; in gmc_v9_0_early_init()
1621 adev->gmc.private_aperture_end = in gmc_v9_0_early_init()
1622 adev->gmc.private_aperture_start + (4ULL << 30) - 1; in gmc_v9_0_early_init()
1623 adev->gmc.noretry_flags = AMDGPU_VM_NORETRY_FLAGS_TF; in gmc_v9_0_early_init()
1664 return amdgpu_irq_get(adev, &adev->gmc.vm_fault, 0); in gmc_v9_0_late_init()
1673 base += adev->gmc.xgmi.physical_node_id * adev->gmc.xgmi.node_segment_size; in gmc_v9_0_vram_gtt_location()
1674 if (adev->gmc.xgmi.connected_to_cpu) { in gmc_v9_0_vram_gtt_location()
1686 adev->gmc.xgmi.physical_node_id * adev->gmc.xgmi.node_segment_size; in gmc_v9_0_vram_gtt_location()
1703 if (!adev->gmc.is_app_apu) { in gmc_v9_0_mc_init()
1704 adev->gmc.mc_vram_size = in gmc_v9_0_mc_init()
1708 adev->gmc.mc_vram_size = 0; in gmc_v9_0_mc_init()
1710 adev->gmc.real_vram_size = adev->gmc.mc_vram_size; in gmc_v9_0_mc_init()
1713 !adev->gmc.xgmi.connected_to_cpu) { in gmc_v9_0_mc_init()
1718 adev->gmc.aper_base = pci_resource_start(adev->pdev, 0); in gmc_v9_0_mc_init()
1719 adev->gmc.aper_size = pci_resource_len(adev->pdev, 0); in gmc_v9_0_mc_init()
1736 (adev->gmc.xgmi.supported && in gmc_v9_0_mc_init()
1737 adev->gmc.xgmi.connected_to_cpu)) { in gmc_v9_0_mc_init()
1738 adev->gmc.aper_base = in gmc_v9_0_mc_init()
1740 adev->gmc.xgmi.physical_node_id * in gmc_v9_0_mc_init()
1741 adev->gmc.xgmi.node_segment_size; in gmc_v9_0_mc_init()
1742 adev->gmc.aper_size = adev->gmc.real_vram_size; in gmc_v9_0_mc_init()
1746 adev->gmc.visible_vram_size = adev->gmc.aper_size; in gmc_v9_0_mc_init()
1758 adev->gmc.gart_size = 512ULL << 20; in gmc_v9_0_mc_init()
1763 adev->gmc.gart_size = 1024ULL << 20; in gmc_v9_0_mc_init()
1767 adev->gmc.gart_size = (u64)amdgpu_gart_size << 20; in gmc_v9_0_mc_init()
1770 adev->gmc.gart_size += adev->pm.smu_prv_buffer_size; in gmc_v9_0_mc_init()
1772 gmc_v9_0_vram_gtt_location(adev, &adev->gmc); in gmc_v9_0_mc_init()
1786 if (adev->gmc.xgmi.connected_to_cpu) { in gmc_v9_0_gart_init()
1787 adev->gmc.vmid0_page_table_depth = 1; in gmc_v9_0_gart_init()
1788 adev->gmc.vmid0_page_table_block_size = 12; in gmc_v9_0_gart_init()
1790 adev->gmc.vmid0_page_table_depth = 0; in gmc_v9_0_gart_init()
1791 adev->gmc.vmid0_page_table_block_size = 0; in gmc_v9_0_gart_init()
1802 if (!adev->gmc.real_vram_size) { in gmc_v9_0_gart_init()
1812 if (adev->gmc.xgmi.connected_to_cpu) in gmc_v9_0_gart_init()
1831 adev->gmc.sdpif_register = RREG32_SOC15(DCE, 0, mmDCHUBBUB_SDPIF_MMIO_CNTRL_0); in gmc_v9_0_save_registers()
1850 valid = (adev->gmc.num_mem_partitions == 1); in gmc_v9_0_validate_partition_info()
1853 valid = (adev->gmc.num_mem_partitions == 2); in gmc_v9_0_validate_partition_info()
1856 valid = (adev->gmc.num_mem_partitions == 3 || in gmc_v9_0_validate_partition_info()
1857 adev->gmc.num_mem_partitions == 4); in gmc_v9_0_validate_partition_info()
1914 adev->gmc.num_mem_partitions = num_ranges; in gmc_v9_0_init_acpi_mem_ranges()
1917 if (adev->gmc.num_mem_partitions == 1) { in gmc_v9_0_init_acpi_mem_ranges()
1936 adev->gmc.num_mem_partitions = 1; in gmc_v9_0_init_sw_mem_ranges()
1939 adev->gmc.num_mem_partitions = 2; in gmc_v9_0_init_sw_mem_ranges()
1943 adev->gmc.num_mem_partitions = 3; in gmc_v9_0_init_sw_mem_ranges()
1945 adev->gmc.num_mem_partitions = 4; in gmc_v9_0_init_sw_mem_ranges()
1948 adev->gmc.num_mem_partitions = 1; in gmc_v9_0_init_sw_mem_ranges()
1952 size = adev->gmc.real_vram_size >> AMDGPU_GPU_PAGE_SHIFT; in gmc_v9_0_init_sw_mem_ranges()
1953 size /= adev->gmc.num_mem_partitions; in gmc_v9_0_init_sw_mem_ranges()
1955 for (i = 0; i < adev->gmc.num_mem_partitions; ++i) { in gmc_v9_0_init_sw_mem_ranges()
1963 mem_ranges[adev->gmc.num_mem_partitions - 1].range.lpfn = in gmc_v9_0_init_sw_mem_ranges()
1964 (adev->gmc.real_vram_size >> AMDGPU_GPU_PAGE_SHIFT) - 1; in gmc_v9_0_init_sw_mem_ranges()
1965 mem_ranges[adev->gmc.num_mem_partitions - 1].size = in gmc_v9_0_init_sw_mem_ranges()
1966 adev->gmc.real_vram_size - in gmc_v9_0_init_sw_mem_ranges()
1967 ((u64)mem_ranges[adev->gmc.num_mem_partitions - 1].range.fpfn in gmc_v9_0_init_sw_mem_ranges()
1975 adev->gmc.mem_partitions = kzalloc( in gmc_v9_0_init_mem_ranges()
1979 if (!adev->gmc.mem_partitions) in gmc_v9_0_init_mem_ranges()
1983 if (adev->gmc.is_app_apu) in gmc_v9_0_init_mem_ranges()
1984 gmc_v9_0_init_acpi_mem_ranges(adev, adev->gmc.mem_partitions); in gmc_v9_0_init_mem_ranges()
1986 gmc_v9_0_init_sw_mem_ranges(adev, adev->gmc.mem_partitions); in gmc_v9_0_init_mem_ranges()
2008 adev->gmc.vram_vendor = vram_info & 0xF; in gmc_v9_4_3_init_vram_info()
2010 adev->gmc.vram_type = AMDGPU_VRAM_TYPE_HBM; in gmc_v9_4_3_init_vram_info()
2011 adev->gmc.vram_width = 128 * 64; in gmc_v9_4_3_init_vram_info()
2024 spin_lock_init(&adev->gmc.invalidate_lock); in gmc_v9_0_sw_init()
2030 adev->gmc.vram_type = AMDGPU_VRAM_TYPE_DDR4; in gmc_v9_0_sw_init()
2031 adev->gmc.vram_width = 64 * 64; in gmc_v9_0_sw_init()
2033 adev->gmc.vram_type = AMDGPU_VRAM_TYPE_HBM; in gmc_v9_0_sw_init()
2034 adev->gmc.vram_width = 128 * 64; in gmc_v9_0_sw_init()
2044 adev->gmc.vram_width = 2048; in gmc_v9_0_sw_init()
2046 adev->gmc.vram_width = vram_width; in gmc_v9_0_sw_init()
2048 if (!adev->gmc.vram_width) { in gmc_v9_0_sw_init()
2059 adev->gmc.vram_width = numchan * chansize; in gmc_v9_0_sw_init()
2063 adev->gmc.vram_type = vram_type; in gmc_v9_0_sw_init()
2064 adev->gmc.vram_vendor = vram_vendor; in gmc_v9_0_sw_init()
2077 adev->gmc.translate_further = in gmc_v9_0_sw_init()
2100 adev->gmc.translate_further = adev->vm_manager.num_level > 1; in gmc_v9_0_sw_init()
2109 adev->gmc.translate_further = adev->vm_manager.num_level > 1; in gmc_v9_0_sw_init()
2119 adev->gmc.translate_further = adev->vm_manager.num_level > 1; in gmc_v9_0_sw_init()
2127 &adev->gmc.vm_fault); in gmc_v9_0_sw_init()
2133 &adev->gmc.vm_fault); in gmc_v9_0_sw_init()
2139 &adev->gmc.vm_fault); in gmc_v9_0_sw_init()
2145 !adev->gmc.xgmi.connected_to_cpu) { in gmc_v9_0_sw_init()
2148 &adev->gmc.ecc_irq); in gmc_v9_0_sw_init()
2157 adev->gmc.mc_mask = 0xffffffffffffULL; /* 48 bit MC */ in gmc_v9_0_sw_init()
2223 adev->gmc.num_mem_partitions = 0; in gmc_v9_0_sw_fini()
2224 kfree(adev->gmc.mem_partitions); in gmc_v9_0_sw_fini()
2229 if (!adev->gmc.real_vram_size) { in gmc_v9_0_sw_fini()
2235 amdgpu_bo_free_kernel(&adev->gmc.pdb0_bo, NULL, &adev->gmc.ptr_pdb0); in gmc_v9_0_sw_fini()
2280 WREG32_SOC15(DCE, 0, mmDCHUBBUB_SDPIF_MMIO_CNTRL_0, adev->gmc.sdpif_register); in gmc_v9_0_restore_registers()
2281 WARN_ON(adev->gmc.sdpif_register != in gmc_v9_0_restore_registers()
2295 if (adev->gmc.xgmi.connected_to_cpu) in gmc_v9_0_gart_enable()
2316 (unsigned int)(adev->gmc.gart_size >> 20)); in gmc_v9_0_gart_enable()
2317 if (adev->gmc.pdb0_bo) in gmc_v9_0_gart_enable()
2319 (unsigned long long)amdgpu_bo_gpu_offset(adev->gmc.pdb0_bo)); in gmc_v9_0_gart_enable()
2413 amdgpu_irq_put(adev, &adev->gmc.vm_fault, 0); in gmc_v9_0_hw_fini()