RE: [PATCH 1/4] drm/amdgpu: fix avg vs input power reporting on smu7

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

 



Series is
Reviewed-by: Yang Wang <kevinyang.wang@xxxxxxx>

Best Regards,
Kevin

-----Original Message-----
From: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Alex Deucher
Sent: Friday, January 5, 2024 10:03 PM
To: Deucher, Alexander <Alexander.Deucher@xxxxxxx>
Cc: amd-gfx@xxxxxxxxxxxxxxxxxxxxx
Subject: Re: [PATCH 1/4] drm/amdgpu: fix avg vs input power reporting on smu7

Ping on this series?

Alex

On Wed, Dec 13, 2023 at 4:55 PM Alex Deucher <alexander.deucher@xxxxxxx> wrote:
>
> Hawaii, Bonaire, Fiji, and Tonga support average power, the others 
> support current power.
>
> Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
> ---
>  .../gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c | 17 
> ++++++++++++++++-
>  1 file changed, 16 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c 
> b/drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c
> index 11372fcc59c8..a2c7b2e111fa 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c
> @@ -3995,6 +3995,7 @@ static int smu7_read_sensor(struct pp_hwmgr *hwmgr, int idx,
>         uint32_t sclk, mclk, activity_percent;
>         uint32_t offset, val_vid;
>         struct smu7_hwmgr *data = (struct smu7_hwmgr 
> *)(hwmgr->backend);
> +       struct amdgpu_device *adev = hwmgr->adev;
>
>         /* size must be at least 4 bytes for all sensors */
>         if (*size < 4)
> @@ -4038,7 +4039,21 @@ static int smu7_read_sensor(struct pp_hwmgr *hwmgr, int idx,
>                 *size = 4;
>                 return 0;
>         case AMDGPU_PP_SENSOR_GPU_INPUT_POWER:
> -               return smu7_get_gpu_power(hwmgr, (uint32_t *)value);
> +               if ((adev->asic_type != CHIP_HAWAII) &&
> +                   (adev->asic_type != CHIP_BONAIRE) &&
> +                   (adev->asic_type != CHIP_FIJI) &&
> +                   (adev->asic_type != CHIP_TONGA))
> +                       return smu7_get_gpu_power(hwmgr, (uint32_t *)value);
> +               else
> +                       return -EOPNOTSUPP;
> +       case AMDGPU_PP_SENSOR_GPU_AVG_POWER:
> +               if ((adev->asic_type != CHIP_HAWAII) &&
> +                   (adev->asic_type != CHIP_BONAIRE) &&
> +                   (adev->asic_type != CHIP_FIJI) &&
> +                   (adev->asic_type != CHIP_TONGA))
> +                       return -EOPNOTSUPP;
> +               else
> +                       return smu7_get_gpu_power(hwmgr, (uint32_t 
> + *)value);
>         case AMDGPU_PP_SENSOR_VDDGFX:
>                 if ((data->vr_config & VRCONF_VDDGFX_MASK) ==
>                     (VR_SVI2_PLANE_2 << VRCONF_VDDGFX_SHIFT))
> --
> 2.42.0
>




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

  Powered by Linux