Re: [PATCH 07/11] drm/amdgpu/vce1: Stop using amdgpu_vce_resume

Christian König
2026-04-23T11:13:53Z

On 4/23/26 03:16, Timur Kristóf wrote:
> The VCE1 firmware works slightly differently and is already
> loaded by vce_v1_0_load_fw(). It doesn't actually need to
> call amdgpu_vce_resume().
>
> Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>

Reviewed-by: Christian König <christian.koenig@amd.com>

> ---
> drivers/gpu/drm/amd/amdgpu/vce_v1_0.c | 16 ++++++----------
> 1 file changed, 6 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/vce_v1_0.c b/drivers/gpu/drm/amd/amdgpu/vce_v1_0.c
> index c8e7297fd7ca3..db8cc97a72d8e 100644
> --- a/drivers/gpu/drm/amd/amdgpu/vce_v1_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/vce_v1_0.c
> @@ -178,7 +178,7 @@ static void vce_v1_0_init_cg(struct amdgpu_device *adev)
> }
>
> /**
> - * vce_v1_0_load_fw_signature - load firmware signature into VCPU BO
> + * vce_v1_0_load_fw() - load firmware signature into VCPU BO
> *
> * @adev: amdgpu_device pointer
> *
> @@ -186,7 +186,7 @@ static void vce_v1_0_init_cg(struct amdgpu_device *adev)
> * This function finds the signature appropriate for the current
> * ASIC and writes that into the VCPU BO.
> */
> -static int vce_v1_0_load_fw_signature(struct amdgpu_device *adev)
> +static int vce_v1_0_load_fw(struct amdgpu_device *adev)
> {
> const struct common_firmware_header *hdr;
> struct vce_v1_0_fw_signature *sign;
> @@ -232,6 +232,8 @@ static int vce_v1_0_load_fw_signature(struct amdgpu_device *adev)
> return -EINVAL;
> }
>
> + memset_io(&cpu_addr[0], 0, amdgpu_bo_size(adev->vce.vcpu_bo));
> +
> cpu_addr += (256 - 64) / 4;
> memcpy_toio(&cpu_addr[0], &sign->val[i].nonce[0], 16);
> cpu_addr[4] = cpu_to_le32(le32_to_cpu(sign->length) + 64);
> @@ -592,10 +594,7 @@ static int vce_v1_0_sw_init(struct amdgpu_ip_block *ip_block)
> if (r)
> return r;
>
> - r = amdgpu_vce_resume(adev);
> - if (r)
> - return r;
> - r = vce_v1_0_load_fw_signature(adev);
> + r = vce_v1_0_load_fw(adev);
> if (r)
> return r;
> r = vce_v1_0_ensure_vcpu_bo_32bit_addr(adev);
> @@ -714,10 +713,7 @@ static int vce_v1_0_resume(struct amdgpu_ip_block *ip_block)
> struct amdgpu_device *adev = ip_block->adev;
> int r;
>
> - r = amdgpu_vce_resume(adev);
> - if (r)
> - return r;
> - r = vce_v1_0_load_fw_signature(adev);
> + r = vce_v1_0_load_fw(adev);
> if (r)
> return r;
> r = vce_v1_0_ensure_vcpu_bo_32bit_addr(adev);