[PATCH] drm/amdgpu: skip fw pri bo alloc for SRIOV

Liu, Monk Monk.Liu at amd.com
Fri May 17 10:19:05 UTC 2019


Instead if guest load “sos” and “sysdrv” there are two kinds of result:

  1.  For elder version PSP boot loader guest would hit failure.
  2.  For new version PSP boot loader those ucode won’t work at all so loading the is redundant

/Monk

From: Tao, Yintian
Sent: Friday, May 17, 2019 3:17 PM
To: Koenig, Christian <Christian.Koenig at amd.com>
Cc: Liu, Monk <Monk.Liu at amd.com>; amd-gfx at lists.freedesktop.org
Subject: 答复: [PATCH] drm/amdgpu: skip fw pri bo alloc for SRIOV


Hi  Christian



Many thanks for your review.



The background is that this bo is to let psp load sos and sysdrv but under sriov, sos and sysdrv is loaded by VBIOS or hypervisor driver.



The reason why not let guest driver to load it under SRIOV is that it is not safe.





Best Regards

Yintian Tao

________________________________
发件人: Koenig, Christian
发送时间: 2019年5月17日 14:53:35
收件人: Tao, Yintian
抄送: Liu, Monk; amd-gfx at lists.freedesktop.org<mailto:amd-gfx at lists.freedesktop.org>
主题: Re: [PATCH] drm/amdgpu: skip fw pri bo alloc for SRIOV

Looks good to me now, but I don't know the technical background why this
BO is not needed under SRIOV.

So this patch is Acked-by: Christian König <christian.koenig at amd.com<mailto:christian.koenig at amd.com>>.

Regards,
Christian.

Am 17.05.19 um 04:41 schrieb Tao, Yintian:
> Hi Christian
>
>
> I have modified it according to your suggestion. Can you help review this again? Thanks in advance.
>
>
> Best Regards
> Yintian Tao
>
> -----Original Message-----
> From: Yintian Tao <yttao at amd.com<mailto:yttao at amd.com>>
> Sent: Thursday, May 16, 2019 7:54 PM
> To: amd-gfx at lists.freedesktop.org<mailto:amd-gfx at lists.freedesktop.org>
> Cc: Tao, Yintian <Yintian.Tao at amd.com<mailto:Yintian.Tao at amd.com>>; Liu, Monk <Monk.Liu at amd.com<mailto:Monk.Liu at amd.com>>
> Subject: [PATCH] drm/amdgpu: skip fw pri bo alloc for SRIOV
>
> PSP fw primary buffer is not used under SRIOV.
> Therefore, we don't need to allocate memory for it.
>
> v2: remove superfluous check for amdgpu_bo_free_kernel().
>
> Signed-off-by: Yintian Tao <yttao at amd.com<mailto:yttao at amd.com>>
> Signed-off-by: Monk Liu <Monk.Liu at amd.com<mailto:Monk.Liu at amd.com>>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 17 ++++++++++-------
>   1 file changed, 10 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> index c567a55..af9835c 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> @@ -905,13 +905,16 @@ static int psp_load_fw(struct amdgpu_device *adev)
>        if (!psp->cmd)
>                return -ENOMEM;
>
> -     ret = amdgpu_bo_create_kernel(adev, PSP_1_MEG, PSP_1_MEG,
> -                                     AMDGPU_GEM_DOMAIN_GTT,
> -                                     &psp->fw_pri_bo,
> -                                     &psp->fw_pri_mc_addr,
> -                                     &psp->fw_pri_buf);
> -     if (ret)
> -             goto failed;
> +     /* this fw pri bo is not used under SRIOV */
> +     if (!amdgpu_sriov_vf(psp->adev)) {
> +             ret = amdgpu_bo_create_kernel(adev, PSP_1_MEG, PSP_1_MEG,
> +                                           AMDGPU_GEM_DOMAIN_GTT,
> +                                           &psp->fw_pri_bo,
> +                                           &psp->fw_pri_mc_addr,
> +                                           &psp->fw_pri_buf);
> +             if (ret)
> +                     goto failed;
> +     }
>
>        ret = amdgpu_bo_create_kernel(adev, PSP_FENCE_BUFFER_SIZE, PAGE_SIZE,
>                                        AMDGPU_GEM_DOMAIN_VRAM,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/amd-gfx/attachments/20190517/f3d0ed88/attachment.html>


More information about the amd-gfx mailing list