Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/amdgpu/gfx9: further KIQ parameter cleanup

The ring structure already has what we need.

Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

+11 -11
+11 -11
drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
··· 1894 1894 udelay(50); 1895 1895 } 1896 1896 1897 - static int gfx_v9_0_mqd_init(struct amdgpu_ring *ring, 1898 - struct v9_mqd *mqd) 1897 + static int gfx_v9_0_mqd_init(struct amdgpu_ring *ring) 1899 1898 { 1900 1899 struct amdgpu_device *adev = ring->adev; 1900 + struct v9_mqd *mqd = ring->mqd_ptr; 1901 1901 uint64_t hqd_gpu_addr, wb_gpu_addr, eop_base_addr; 1902 1902 uint32_t tmp; 1903 1903 ··· 2020 2020 return 0; 2021 2021 } 2022 2022 2023 - static int gfx_v9_0_kiq_init_register(struct amdgpu_ring *ring, 2024 - struct v9_mqd *mqd) 2023 + static int gfx_v9_0_kiq_init_register(struct amdgpu_ring *ring) 2025 2024 { 2026 2025 struct amdgpu_device *adev = ring->adev; 2026 + struct v9_mqd *mqd = ring->mqd_ptr; 2027 2027 uint32_t tmp; 2028 2028 int j; 2029 2029 ··· 2131 2131 return 0; 2132 2132 } 2133 2133 2134 - static int gfx_v9_0_kiq_init_queue(struct amdgpu_ring *ring, 2135 - struct v9_mqd *mqd) 2134 + static int gfx_v9_0_kiq_init_queue(struct amdgpu_ring *ring) 2136 2135 { 2137 2136 struct amdgpu_device *adev = ring->adev; 2138 2137 struct amdgpu_kiq *kiq = &adev->gfx.kiq; 2138 + struct v9_mqd *mqd = ring->mqd_ptr; 2139 2139 bool is_kiq = (ring->funcs->type == AMDGPU_RING_TYPE_KIQ); 2140 2140 int mqd_idx = AMDGPU_MAX_COMPUTE_RINGS; 2141 2141 ··· 2149 2149 memset((void *)mqd, 0, sizeof(*mqd)); 2150 2150 mutex_lock(&adev->srbm_mutex); 2151 2151 soc15_grbm_select(adev, ring->me, ring->pipe, ring->queue, 0); 2152 - gfx_v9_0_mqd_init(ring, mqd); 2152 + gfx_v9_0_mqd_init(ring); 2153 2153 if (is_kiq) 2154 - gfx_v9_0_kiq_init_register(ring, mqd); 2154 + gfx_v9_0_kiq_init_register(ring); 2155 2155 soc15_grbm_select(adev, 0, 0, 0, 0); 2156 2156 mutex_unlock(&adev->srbm_mutex); 2157 2157 ··· 2164 2164 if (is_kiq) { 2165 2165 mutex_lock(&adev->srbm_mutex); 2166 2166 soc15_grbm_select(adev, ring->me, ring->pipe, ring->queue, 0); 2167 - gfx_v9_0_kiq_init_register(ring, mqd); 2167 + gfx_v9_0_kiq_init_register(ring); 2168 2168 soc15_grbm_select(adev, 0, 0, 0, 0); 2169 2169 mutex_unlock(&adev->srbm_mutex); 2170 2170 } ··· 2193 2193 2194 2194 r = amdgpu_bo_kmap(ring->mqd_obj, (void **)&ring->mqd_ptr); 2195 2195 if (!r) { 2196 - r = gfx_v9_0_kiq_init_queue(ring, ring->mqd_ptr); 2196 + r = gfx_v9_0_kiq_init_queue(ring); 2197 2197 amdgpu_bo_kunmap(ring->mqd_obj); 2198 2198 ring->mqd_ptr = NULL; 2199 2199 } ··· 2209 2209 goto done; 2210 2210 r = amdgpu_bo_kmap(ring->mqd_obj, (void **)&ring->mqd_ptr); 2211 2211 if (!r) { 2212 - r = gfx_v9_0_kiq_init_queue(ring, ring->mqd_ptr); 2212 + r = gfx_v9_0_kiq_init_queue(ring); 2213 2213 amdgpu_bo_kunmap(ring->mqd_obj); 2214 2214 ring->mqd_ptr = NULL; 2215 2215 }