Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5846e355 authored by Monk Liu's avatar Monk Liu Committed by Alex Deucher
Browse files

drm/amdgpu:fix ring_write_multiple



ring_write_multiple should use buf_mask instead of ptr_mask

Signed-off-by: default avatarMonk Liu <Monk.Liu@amd.com>
Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 79a0c465
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1739,9 +1739,9 @@ static inline void amdgpu_ring_write_multiple(struct amdgpu_ring *ring, void *sr
	if (ring->count_dw < count_dw) {
		DRM_ERROR("amdgpu: writing more dwords to the ring than expected!\n");
	} else {
		occupied = ring->wptr & ring->ptr_mask;
		occupied = ring->wptr & ring->buf_mask;
		dst = (void *)&ring->ring[occupied];
		chunk1 = ring->ptr_mask + 1 - occupied;
		chunk1 = ring->buf_mask + 1 - occupied;
		chunk1 = (chunk1 >= count_dw) ? count_dw: chunk1;
		chunk2 = count_dw - chunk1;
		chunk1 <<= 2;