aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c48
1 files changed, 18 insertions, 30 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
index 0c4ab72474e4..d83f4e265c5c 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
@@ -1845,34 +1845,25 @@ int amdgpu_ttm_init(struct amdgpu_device *adev)
1845 (unsigned)(gtt_size / (1024 * 1024))); 1845 (unsigned)(gtt_size / (1024 * 1024)));
1846 1846
1847 /* Initialize various on-chip memory pools */ 1847 /* Initialize various on-chip memory pools */
1848 /* GDS Memory */ 1848 r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_GDS,
1849 if (adev->gds.mem.total_size) { 1849 adev->gds.mem.total_size);
1850 r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_GDS, 1850 if (r) {
1851 adev->gds.mem.total_size); 1851 DRM_ERROR("Failed initializing GDS heap.\n");
1852 if (r) { 1852 return r;
1853 DRM_ERROR("Failed initializing GDS heap.\n");
1854 return r;
1855 }
1856 } 1853 }
1857 1854
1858 /* GWS */ 1855 r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_GWS,
1859 if (adev->gds.gws.total_size) { 1856 adev->gds.gws.total_size);
1860 r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_GWS, 1857 if (r) {
1861 adev->gds.gws.total_size); 1858 DRM_ERROR("Failed initializing gws heap.\n");
1862 if (r) { 1859 return r;
1863 DRM_ERROR("Failed initializing gws heap.\n");
1864 return r;
1865 }
1866 } 1860 }
1867 1861
1868 /* OA */ 1862 r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_OA,
1869 if (adev->gds.oa.total_size) { 1863 adev->gds.oa.total_size);
1870 r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_OA, 1864 if (r) {
1871 adev->gds.oa.total_size); 1865 DRM_ERROR("Failed initializing oa heap.\n");
1872 if (r) { 1866 return r;
1873 DRM_ERROR("Failed initializing oa heap.\n");
1874 return r;
1875 }
1876 } 1867 }
1877 1868
1878 /* Register debugfs entries for amdgpu_ttm */ 1869 /* Register debugfs entries for amdgpu_ttm */
@@ -1909,12 +1900,9 @@ void amdgpu_ttm_fini(struct amdgpu_device *adev)
1909 1900
1910 ttm_bo_clean_mm(&adev->mman.bdev, TTM_PL_VRAM); 1901 ttm_bo_clean_mm(&adev->mman.bdev, TTM_PL_VRAM);
1911 ttm_bo_clean_mm(&adev->mman.bdev, TTM_PL_TT); 1902 ttm_bo_clean_mm(&adev->mman.bdev, TTM_PL_TT);
1912 if (adev->gds.mem.total_size) 1903 ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_GDS);
1913 ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_GDS); 1904 ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_GWS);
1914 if (adev->gds.gws.total_size) 1905 ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_OA);
1915 ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_GWS);
1916 if (adev->gds.oa.total_size)
1917 ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_OA);
1918 ttm_bo_device_release(&adev->mman.bdev); 1906 ttm_bo_device_release(&adev->mman.bdev);
1919 amdgpu_ttm_global_fini(adev); 1907 amdgpu_ttm_global_fini(adev);
1920 adev->mman.initialized = false; 1908 adev->mman.initialized = false;