[AMD Official Use Only - AMD Internal Distribution Only] The series is: Reviewed-by: Leo Liu <leo....@amd.com>
> -----Original Message----- > From: Sundararaju, Sathishkumar <sathishkumar.sundarar...@amd.com> > Sent: April 10, 2025 9:01 AM > To: amd-gfx@lists.freedesktop.org > Cc: Liu, Leo <leo....@amd.com>; Zhang, Hawking > <hawking.zh...@amd.com>; Sundararaju, Sathishkumar > <sathishkumar.sundarar...@amd.com> > Subject: [PATCH 2/2] drm/amdgpu: Enable doorbell for JPEG5_0_1 > > Enable doorbell for JPEG5_0_1 and adjust index for VCN5_0_1. > > Signed-off-by: Sathishkumar S <sathishkumar.sundarar...@amd.com> > --- > drivers/gpu/drm/amd/amdgpu/jpeg_v5_0_1.c | 4 ++-- > drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c | 4 ++-- > 2 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/jpeg_v5_0_1.c > b/drivers/gpu/drm/amd/amdgpu/jpeg_v5_0_1.c > index 218e16b68f1d..6f73033d78b5 100644 > --- a/drivers/gpu/drm/amd/amdgpu/jpeg_v5_0_1.c > +++ b/drivers/gpu/drm/amd/amdgpu/jpeg_v5_0_1.c > @@ -156,7 +156,7 @@ static int jpeg_v5_0_1_sw_init(struct > amdgpu_ip_block *ip_block) > > for (j = 0; j < adev->jpeg.num_jpeg_rings; ++j) { > ring = &adev->jpeg.inst[i].ring_dec[j]; > - ring->use_doorbell = false; > + ring->use_doorbell = true; > ring->vm_hub = AMDGPU_MMHUB0(adev- > >jpeg.inst[i].aid_id); > if (!amdgpu_sriov_vf(adev)) { > ring->doorbell_index = > @@ -264,7 +264,7 @@ static int jpeg_v5_0_1_hw_init(struct > amdgpu_ip_block *ip_block) > ring = &adev->jpeg.inst[i].ring_dec[j]; > if (ring->use_doorbell) > WREG32_SOC15_OFFSET(VCN, > GET_INST(VCN, i), regVCN_JPEG_DB_CTRL, > - (ring->pipe ? (ring->pipe - > 0x15) : 0), > + ring->pipe, > ring->doorbell_index << > > VCN_JPEG_DB_CTRL__OFFSET__SHIFT | > > VCN_JPEG_DB_CTRL__EN_MASK); > diff --git a/drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c > b/drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c > index 581d8629b9d9..4b2e6a033831 100644 > --- a/drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c > +++ b/drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c > @@ -126,7 +126,7 @@ static int vcn_v5_0_1_sw_init(struct amdgpu_ip_block > *ip_block) > > 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; > + ring->doorbell_index = (adev- > >doorbell_index.vcn.vcn_ring0_1 << 1) + 11 * 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); > @@ -213,7 +213,7 @@ static int vcn_v5_0_1_hw_init(struct amdgpu_ip_block > *ip_block) > if (ring->use_doorbell) > adev->nbio.funcs->vcn_doorbell_range(adev, ring- > >use_doorbell, > ((adev->doorbell_index.vcn.vcn_ring0_1 << 1) > + > - 9 * vcn_inst), > + 11 * vcn_inst), > adev->vcn.inst[i].aid_id); > > /* Re-init fw_shared, if required */ > -- > 2.48.1