diff options
author | Tom St Denis <tom.stdenis@amd.com> | 2017-09-18 07:14:56 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-09-26 15:14:04 -0400 |
commit | a40cfa0bef9366ad156717078dae681305099a15 (patch) | |
tree | dff53831737d1a23c82e3e8110021bb6b5270aa6 /drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | |
parent | 0b693f0b5612594d089e669804b1b6a62639779f (diff) |
drm/amd/amdgpu: Fold TTM debugfs entries into array (v2)
Signed-off-by: Tom St Denis <tom.stdenis@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(v2): add domains and avoid strcmp
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 54 |
1 files changed, 30 insertions, 24 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c index 8ee16dfdb8af..50d20903de4f 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | |||
@@ -1809,6 +1809,19 @@ static const struct file_operations amdgpu_ttm_gtt_fops = { | |||
1809 | 1809 | ||
1810 | #endif | 1810 | #endif |
1811 | 1811 | ||
1812 | |||
1813 | |||
1814 | static const struct { | ||
1815 | char *name; | ||
1816 | const struct file_operations *fops; | ||
1817 | int domain; | ||
1818 | } ttm_debugfs_entries[] = { | ||
1819 | { "amdgpu_vram", &amdgpu_ttm_vram_fops, TTM_PL_VRAM }, | ||
1820 | #ifdef CONFIG_DRM_AMDGPU_GART_DEBUGFS | ||
1821 | { "amdgpu_gtt", &amdgpu_ttm_gtt_fops, TTM_PL_TT }, | ||
1822 | #endif | ||
1823 | }; | ||
1824 | |||
1812 | #endif | 1825 | #endif |
1813 | 1826 | ||
1814 | static int amdgpu_ttm_debugfs_init(struct amdgpu_device *adev) | 1827 | static int amdgpu_ttm_debugfs_init(struct amdgpu_device *adev) |
@@ -1819,22 +1832,21 @@ static int amdgpu_ttm_debugfs_init(struct amdgpu_device *adev) | |||
1819 | struct drm_minor *minor = adev->ddev->primary; | 1832 | struct drm_minor *minor = adev->ddev->primary; |
1820 | struct dentry *ent, *root = minor->debugfs_root; | 1833 | struct dentry *ent, *root = minor->debugfs_root; |
1821 | 1834 | ||
1822 | ent = debugfs_create_file("amdgpu_vram", S_IFREG | S_IRUGO, root, | 1835 | for (count = 0; count < ARRAY_SIZE(ttm_debugfs_entries); count++) { |
1823 | adev, &amdgpu_ttm_vram_fops); | 1836 | ent = debugfs_create_file( |
1824 | if (IS_ERR(ent)) | 1837 | ttm_debugfs_entries[count].name, |
1825 | return PTR_ERR(ent); | 1838 | S_IFREG | S_IRUGO, root, |
1826 | i_size_write(ent->d_inode, adev->mc.mc_vram_size); | 1839 | adev, |
1827 | adev->mman.vram = ent; | 1840 | ttm_debugfs_entries[count].fops); |
1828 | 1841 | if (IS_ERR(ent)) | |
1829 | #ifdef CONFIG_DRM_AMDGPU_GART_DEBUGFS | 1842 | return PTR_ERR(ent); |
1830 | ent = debugfs_create_file("amdgpu_gtt", S_IFREG | S_IRUGO, root, | 1843 | if (ttm_debugfs_entries[count].domain == TTM_PL_VRAM) |
1831 | adev, &amdgpu_ttm_gtt_fops); | 1844 | i_size_write(ent->d_inode, adev->mc.mc_vram_size); |
1832 | if (IS_ERR(ent)) | 1845 | else if (ttm_debugfs_entries[count].domain == TTM_PL_TT) |
1833 | return PTR_ERR(ent); | 1846 | i_size_write(ent->d_inode, adev->mc.gart_size); |
1834 | i_size_write(ent->d_inode, adev->mc.gart_size); | 1847 | adev->mman.debugfs_entries[count] = ent; |
1835 | adev->mman.gtt = ent; | 1848 | } |
1836 | 1849 | ||
1837 | #endif | ||
1838 | count = ARRAY_SIZE(amdgpu_ttm_debugfs_list); | 1850 | count = ARRAY_SIZE(amdgpu_ttm_debugfs_list); |
1839 | 1851 | ||
1840 | #ifdef CONFIG_SWIOTLB | 1852 | #ifdef CONFIG_SWIOTLB |
@@ -1844,7 +1856,6 @@ static int amdgpu_ttm_debugfs_init(struct amdgpu_device *adev) | |||
1844 | 1856 | ||
1845 | return amdgpu_debugfs_add_files(adev, amdgpu_ttm_debugfs_list, count); | 1857 | return amdgpu_debugfs_add_files(adev, amdgpu_ttm_debugfs_list, count); |
1846 | #else | 1858 | #else |
1847 | |||
1848 | return 0; | 1859 | return 0; |
1849 | #endif | 1860 | #endif |
1850 | } | 1861 | } |
@@ -1852,14 +1863,9 @@ static int amdgpu_ttm_debugfs_init(struct amdgpu_device *adev) | |||
1852 | static void amdgpu_ttm_debugfs_fini(struct amdgpu_device *adev) | 1863 | static void amdgpu_ttm_debugfs_fini(struct amdgpu_device *adev) |
1853 | { | 1864 | { |
1854 | #if defined(CONFIG_DEBUG_FS) | 1865 | #if defined(CONFIG_DEBUG_FS) |
1866 | unsigned i; | ||
1855 | 1867 | ||
1856 | debugfs_remove(adev->mman.vram); | 1868 | for (i = 0; i < ARRAY_SIZE(ttm_debugfs_entries); i++) |
1857 | adev->mman.vram = NULL; | 1869 | debugfs_remove(adev->mman.debugfs_entries[i]); |
1858 | |||
1859 | #ifdef CONFIG_DRM_AMDGPU_GART_DEBUGFS | ||
1860 | debugfs_remove(adev->mman.gtt); | ||
1861 | adev->mman.gtt = NULL; | ||
1862 | #endif | ||
1863 | |||
1864 | #endif | 1870 | #endif |
1865 | } | 1871 | } |