[PATCH 2/2] drm/amd/pm: check specific index for aldebaran

Wang, Yang(Kevin) KevinYang.Wang at amd.com
Tue May 14 07:07:58 UTC 2024


[AMD Official Use Only - AMD Internal Distribution Only]

-----Original Message-----
From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> On Behalf Of Lazar, Lijo
Sent: Tuesday, May 14, 2024 2:07 PM
To: Zhang, Jesse(Jie) <Jesse.Zhang at amd.com>; amd-gfx at lists.freedesktop.org
Cc: Deucher, Alexander <Alexander.Deucher at amd.com>; Koenig, Christian <Christian.Koenig at amd.com>; Huang, Tim <Tim.Huang at amd.com>
Subject: Re: [PATCH 2/2] drm/amd/pm: check specific index for aldebaran



On 5/14/2024 11:34 AM, Jesse Zhang wrote:
> To avoid warning problems, drop index and use PPSMC_MSG_GfxDriverReset
> instead of index for aldebaran.
>
> Signed-off-by: Jesse Zhang <jesse.zhang at amd.com>
> Suggested-by: Lijo Lazar <lijo.lazar at amd.com>
> ---
>  drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c | 13 +++++++------
>  1 file changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c
> b/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c
> index a22eb6bbb05e..d671314c46c8 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c
> @@ -1880,17 +1880,18 @@ static int aldebaran_mode1_reset(struct
> smu_context *smu)
>
>  static int aldebaran_mode2_reset(struct smu_context *smu)  {
> -     int ret = 0, index;
> +     int ret = 0;
>       struct amdgpu_device *adev = smu->adev;
>       int timeout = 10;
>
> -     index = smu_cmn_to_asic_specific_index(smu, CMN2ASIC_MAPPING_MSG,
> -                                             SMU_MSG_GfxDeviceDriverReset);
> -     if (index < 0 )
> -             return -EINVAL;
>       mutex_lock(&smu->message_lock);
>       if (smu->smc_fw_version >= 0x00441400) {
> -             ret = smu_cmn_send_msg_without_waiting(smu, (uint16_t)index, SMU_RESET_MODE_2);
> +             ret = smu_cmn_send_smc_msg_with_param(smu,
> +SMU_MSG_GfxDeviceDriverReset,

PPSMC_MSG_GfxDriverReset is different from SMU_MSG_GfxDeviceDriverReset.
Use PPSMC_MSG_GfxDriverReset here (for both patches).

Thanks,
Lijo

[Kevin]:

There is no interface here to directly use PPSMC_MSG_XXX to send messages to smu/pmfw in the swSMU driver,
and it is not recommended to do so to maintain code consistency.

Best Regards,
Kevin

> +                                                             SMU_RESET_MODE_2, NULL);
> +             if (ret) {
> +                     dev_err(smu->adev->dev, "Failed to mode2 reset!\n");
> +                     goto out;
> +             }
>               /* This is similar to FLR, wait till max FLR timeout */
>               msleep(100);
>               dev_dbg(smu->adev->dev, "restore config space...\n");


More information about the amd-gfx mailing list