[AMD Official Use Only - General]

Hi Alex,
Right, just BAMACO has its advantage for the fast resume.
Maybe later we can further identify which sku needs to save more power vs 
faster resume time.
For example, mobile device can by default use BACO and desktop/workstation 
device can by default use BAMACO.
Thanks.


-----Original Message-----
From: Alex Deucher <[email protected]>
Sent: Wednesday, August 16, 2023 12:56 AM
To: Feng, Kenneth <[email protected]>
Cc: [email protected]
Subject: Re: [PATCH] drm/amd/pm: allow the user to force BACO on smu v13.0.0/7

Caution: This message originated from an External Source. Use proper caution 
when opening attachments, clicking links, or responding.


On Tue, Aug 15, 2023 at 5:05 AM Kenneth Feng <[email protected]> wrote:
>
> allow the user to force BACO on smu v13.0.0/7
>
> Signed-off-by: Kenneth Feng <[email protected]>

Acked-by: Alex Deucher <[email protected]> Would it be better to 
default to BACO?  It would save more power at the expense of resume latency.

Alex


> ---
>  drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c       | 2 +-
>  drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c | 3 ++-
> drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c | 3 ++-
>  3 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c
> b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c
> index 895cda8e6934..52e9c7611013 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c
> @@ -2263,7 +2263,7 @@ int smu_v13_0_baco_set_state(struct smu_context *smu,
>         if (state == SMU_BACO_STATE_ENTER) {
>                 ret = smu_cmn_send_smc_msg_with_param(smu,
>                                                       SMU_MSG_EnterBaco,
> -                                                     smu_baco->maco_support ?
> +                                                     (smu_baco->maco_support 
> && amdgpu_runtime_pm != 1) ?
>                                                       BACO_SEQ_BAMACO : 
> BACO_SEQ_BACO,
>                                                       NULL);
>         } else {
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
> b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
> index a5857acee641..12ccc12657d7 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
> @@ -2211,7 +2211,8 @@ static int smu_v13_0_0_baco_enter(struct
> smu_context *smu)
>
>         if (adev->in_runpm && smu_cmn_is_audio_func_enabled(adev))
>                 return smu_v13_0_baco_set_armd3_sequence(smu,
> -                               smu_baco->maco_support ? BACO_SEQ_BAMACO : 
> BACO_SEQ_BACO);
> +                               (smu_baco->maco_support && amdgpu_runtime_pm 
> != 1) ?
> +                                       BACO_SEQ_BAMACO :
> + BACO_SEQ_BACO);
>         else
>                 return smu_v13_0_baco_enter(smu);  } diff --git
> a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
> b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
> index 93b3e8fa8238..f0bcc7995983 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
> @@ -2139,7 +2139,8 @@ static int smu_v13_0_7_baco_enter(struct
> smu_context *smu)
>
>         if (adev->in_runpm && smu_cmn_is_audio_func_enabled(adev))
>                 return smu_v13_0_baco_set_armd3_sequence(smu,
> -                               smu_baco->maco_support ? BACO_SEQ_BAMACO : 
> BACO_SEQ_BACO);
> +                               (smu_baco->maco_support && amdgpu_runtime_pm 
> != 1) ?
> +                                       BACO_SEQ_BAMACO :
> + BACO_SEQ_BACO);
>         else
>                 return smu_v13_0_baco_enter(smu);  }
> --
> 2.34.1
>

Reply via email to