Re: [RFC PATCH 01/13] amdgpu: wrong array index to get ip block for PSP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Applied this one.  Thanks!

Alex

On Wed, Jan 8, 2025 at 9:00 AM Jiang Liu <gerry@xxxxxxxxxxxxxxxxx> wrote:
>
> The adev->ip_blocks array is not indexed by AMD_IP_BLOCK_TYPE_xxx,
> instead we should call amdgpu_device_ip_get_ip_block() to get the
> corresponding IP block oject.
>
> Signed-off-by: Jiang Liu <gerry@xxxxxxxxxxxxxxxxx>
> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> index 0b1e280ee228..25c06c6c8a2a 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> @@ -3830,10 +3830,12 @@ static ssize_t psp_usbc_pd_fw_sysfs_read(struct device *dev,
>  {
>         struct drm_device *ddev = dev_get_drvdata(dev);
>         struct amdgpu_device *adev = drm_to_adev(ddev);
> +       struct amdgpu_ip_block *ip_block;
>         uint32_t fw_ver;
>         int ret;
>
> -       if (!adev->ip_blocks[AMD_IP_BLOCK_TYPE_PSP].status.late_initialized) {
> +       ip_block = amdgpu_device_ip_get_ip_block(adev, AMD_IP_BLOCK_TYPE_PSP);
> +       if (ip_block == NULL || !ip_block->status.late_initialized) {
>                 dev_info(adev->dev, "PSP block is not ready yet\n.");
>                 return -EBUSY;
>         }
> @@ -3862,8 +3864,10 @@ static ssize_t psp_usbc_pd_fw_sysfs_write(struct device *dev,
>         struct amdgpu_bo *fw_buf_bo = NULL;
>         uint64_t fw_pri_mc_addr;
>         void *fw_pri_cpu_addr;
> +       struct amdgpu_ip_block *ip_block;
>
> -       if (!adev->ip_blocks[AMD_IP_BLOCK_TYPE_PSP].status.late_initialized) {
> +       ip_block = amdgpu_device_ip_get_ip_block(adev, AMD_IP_BLOCK_TYPE_PSP);
> +       if (ip_block == NULL || !ip_block->status.late_initialized) {
>                 dev_err(adev->dev, "PSP block is not ready yet.");
>                 return -EBUSY;
>         }
> --
> 2.43.5
>




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux