From: Samir Dhume Date: Mon, 17 Jul 2023 15:27:02 +0000 (-0400) Subject: drm/amdgpu/vcn: mmsch_v4_0_3 requires doorbell on 32 byte boundary X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=a31c114bcfda33548b1197940ec9f05feab5e74b;p=linux.git drm/amdgpu/vcn: mmsch_v4_0_3 requires doorbell on 32 byte boundary Align on 32 byte boundary. Signed-off-by: Samir Dhume Acked-by: Leo Liu Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.c b/drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.c index e62472e6e7b3e..71eb6b55deef9 100644 --- a/drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.c +++ b/drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.c @@ -111,9 +111,16 @@ static int vcn_v4_0_3_sw_init(void *handle) ring = &adev->vcn.inst[i].ring_enc[0]; ring->use_doorbell = true; - ring->doorbell_index = - (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + - 9 * vcn_inst; + + if (!amdgpu_sriov_vf(adev)) + ring->doorbell_index = + (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + + 9 * vcn_inst; + else + ring->doorbell_index = + (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + + 32 * vcn_inst; + ring->vm_hub = AMDGPU_MMHUB0(adev->vcn.inst[i].aid_id); sprintf(ring->name, "vcn_unified_%d", adev->vcn.inst[i].aid_id); r = amdgpu_ring_init(adev, ring, 512, &adev->vcn.inst->irq, 0,