On 2/11/2025 5:01 AM, Alex Deucher wrote:
> The VCN and UVD helpers were split in
> commit ff69bba05f08 ("drm/amd/pm: add inst to dpm_set_powergating_by_smu")
> However, this happened in parallel to the vcn 5.0.1
> development so it was missed there.
>
> Fixes: 346492f30ce3 ("drm/amdgpu: Add VCN_5_0_1 support")
> Signed-off-by: Alex Deucher <alexander.deuc...@amd.com>
> Cc: Sonny Jiang <sonji...@amd.com>
> Cc: Boyuan Zhang <boyuan.zh...@amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)
>
> 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 8b463c977d08f..8b0b3739a5377 100644
> --- a/drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c
> +++ b/drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c
> @@ -575,8 +575,10 @@ static int vcn_v5_0_1_start(struct amdgpu_device *adev)
> uint32_t tmp;
> int i, j, k, r, vcn_inst;
>
> - if (adev->pm.dpm_enabled)
> - amdgpu_dpm_enable_uvd(adev, true);
> + for (i = 0; i < adev->vcn.num_vcn_inst; ++i) {
> + if (adev->pm.dpm_enabled)
> + amdgpu_dpm_enable_vcn(adev, true, i);
> + }
>
This whole enable/disable vcn power gating can be dropped. This is not
supported for vcn 5.0.1.
Thanks,
Lijo
> for (i = 0; i < adev->vcn.num_vcn_inst; ++i) {
> fw_shared = adev->vcn.inst[i].fw_shared.cpu_addr;
> @@ -816,8 +818,10 @@ static int vcn_v5_0_1_stop(struct amdgpu_device *adev)
> WREG32_SOC15(VCN, vcn_inst, regUVD_STATUS, 0);
> }
>
> - if (adev->pm.dpm_enabled)
> - amdgpu_dpm_enable_uvd(adev, false);
> + for (i = 0; i < adev->vcn.num_vcn_inst; ++i) {
> + if (adev->pm.dpm_enabled)
> + amdgpu_dpm_enable_vcn(adev, false, i);
> + }
>
> return 0;
> }