Good point. We should limit it in BACO only once an ASIC supports BOCO and BACO 
together.

Regards,
Guchun

-----Original Message-----
From: Alex Deucher <alexdeuc...@gmail.com> 
Sent: Monday, July 11, 2022 11:29 PM
To: Chen, Guchun <guchun.c...@amd.com>
Cc: amd-gfx list <amd-gfx@lists.freedesktop.org>; Deucher, Alexander 
<alexander.deuc...@amd.com>; Zhang, Hawking <hawking.zh...@amd.com>; Lazar, 
Lijo <lijo.la...@amd.com>; Quan, Evan <evan.q...@amd.com>; Feng, Kenneth 
<kenneth.f...@amd.com>
Subject: Re: [PATCH 1/2] drm/amdgpu: skip SMU FW reloading in runpm BACO case

On Mon, Jul 11, 2022 at 9:58 AM Guchun Chen <guchun.c...@amd.com> wrote:
>
> SMU is always alive, so it's fine to skip SMU FW reloading when runpm 
> resumed from BACO, this can avoid some race issues when resuming SMU 
> FW.
>
> Suggested-by: Evan Quan <evan.q...@amd.com>
> Signed-off-by: Guchun Chen <guchun.c...@amd.com>
> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> index e9411c28d88b..9f17235bab83 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> @@ -2348,6 +2348,12 @@ static int psp_load_smu_fw(struct psp_context *psp)
>                         &adev->firmware.ucode[AMDGPU_UCODE_ID_SMC];
>         struct amdgpu_ras *ras = psp->ras_context.ras;
>
> +       /* Skip SMU FW reloading in case of using BACO for runpm,
> +        * as SMU is always alive.
> +        */
> +       if (adev->in_runpm && amdgpu_asic_supports_baco(adev))
> +               return 0;

What is an asic supports both BACO and BOCO?  I think we need to differentiate 
here.

Alex

> +
>         if (!ucode->fw || amdgpu_sriov_vf(psp->adev))
>                 return 0;
>
> --
> 2.17.1
>

Reply via email to