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

drm/amdgpu: optimize fn gfx_v12_ring_insert_nop

Optimize gfx_v12_ring_insert_nop() to call
optimized version of amdgpu_ring_insert_nop
instead of calling amdgpu_ring_write for number
of nop times.

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

authored by

Sunil Khatri and committed by
Alex Deucher
f83fc3ab 950dcb01

+1 -4
+1 -4
drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
··· 5034 5034 5035 5035 static void gfx_v12_ring_insert_nop(struct amdgpu_ring *ring, uint32_t num_nop) 5036 5036 { 5037 - int i; 5038 - 5039 5037 /* Header itself is a NOP packet */ 5040 5038 if (num_nop == 1) { 5041 5039 amdgpu_ring_write(ring, ring->funcs->nop); ··· 5044 5046 amdgpu_ring_write(ring, PACKET3(PACKET3_NOP, min(num_nop - 2, 0x3ffe))); 5045 5047 5046 5048 /* Header is at index 0, followed by num_nops - 1 NOP packet's */ 5047 - for (i = 1; i < num_nop; i++) 5048 - amdgpu_ring_write(ring, ring->funcs->nop); 5049 + amdgpu_ring_insert_nop(ring, num_nop - 1); 5049 5050 } 5050 5051 5051 5052 static void gfx_v12_0_ring_emit_cleaner_shader(struct amdgpu_ring *ring)