Hello Asher,

Thanks for the information, is it open-source tests? Can I reproduce it?

Also, it seems like Radeon Instinct MI25 was released before Radeon RX
Vega, is it possible that they have different PowerPlay subsystems?
On my Vega56, all these registers from vega20 are working very well.
Seems like we should split implementation somehow.

Regards,

On Wed, Oct 26, 2022 at 3:51 PM Song, Asher <asher.s...@amd.com> wrote:

> [AMD Official Use Only - General]
>
>
>
> +@Meng, Xiaohu <xiaohu.m...@amd.com>
>
>
>
> Hi Zhuravlev,
>
>
>
> The information of test card is as following:
>
> Lspci name: [AMD/ATI] Vega 10 [Radeon Instinct MI25 MxGPU] (rev 05)
>
> Firmware: ATOM BIOS: 113-D0531800-C04
>
>
>
> When run test scripts compute-rocm-*/utils/run_rsmitst.sh, the below test
> cases fail.
>
> [  FAILED  ] 4 tests, listed below:
>
> [  FAILED  ] rsmitstReadOnly.TestOverdriveRead
>
> [  FAILED  ] rsmitstReadWrite.FanReadWrite
>
> [  FAILED  ] rsmitstReadWrite.TestOverdriveReadWrite
>
> [  FAILED  ] rsmitstReadWrite.TestPowerCapReadWrite
>
>
>
> Best Regards,
>
> Asher
>
> *From:* Yury Zhuravlev <stalk...@gmail.com>
> *Sent:* Wednesday, October 26, 2022 9:31 AM
> *To:* Song, Asher <asher.s...@amd.com>
> *Cc:* Deucher, Alexander <alexander.deuc...@amd.com>; Chen, Guchun <
> guchun.c...@amd.com>; Quan, Evan <evan.q...@amd.com>;
> amd-gfx@lists.freedesktop.org
> *Subject:* Re: [PATCH] drm/amdgpu: Revert "drm/amdgpu: getting fan speed
> pwm for vega10 properly"
>
>
>
> Hello,
> Can you write here your card name and firmware version? Without this
> patch, my fan sensors are broken, and it's sensitive to my pc case with
> water cooling.
> My card is:  Sapphire Pulse Radeon RX Vega 56  vd6546 SA
> lspci name: [AMD/ATI] Vega 10 XL/XT [Radeon RX Vega 56/64] (rev c3)
> Firmware: ATOM BIOS: 113-376XL-UO2
> This patch is 100% working correct on my machine, and I tested it last 2
> months.
>
> Regards,
>
>
>
> On Fri, Oct 14, 2022 at 1:15 PM Asher Song <asher.s...@amd.com> wrote:
>
> This reverts commit fe01cb24b81c0091d7e5668874d51ce913e44a97.
>
> Unfortunately, that commit causes fan monitors can't be read and written
> properly.
>
> Signed-off-by: Asher Song <asher.s...@amd.com>
> ---
>  .../amd/pm/powerplay/hwmgr/vega10_thermal.c   | 25 ++++++++++---------
>  1 file changed, 13 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/hwmgr/vega10_thermal.c
> b/drivers/gpu/drm/amd/pm/powerplay/hwmgr/vega10_thermal.c
> index 190af79f3236..dad3e3741a4e 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/hwmgr/vega10_thermal.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/hwmgr/vega10_thermal.c
> @@ -67,21 +67,22 @@ int vega10_fan_ctrl_get_fan_speed_info(struct pp_hwmgr
> *hwmgr,
>  int vega10_fan_ctrl_get_fan_speed_pwm(struct pp_hwmgr *hwmgr,
>                 uint32_t *speed)
>  {
> -       struct amdgpu_device *adev = hwmgr->adev;
> -       uint32_t duty100, duty;
> -       uint64_t tmp64;
> +       uint32_t current_rpm;
> +       uint32_t percent = 0;
>
> -       duty100 = REG_GET_FIELD(RREG32_SOC15(THM, 0, mmCG_FDO_CTRL1),
> -                               CG_FDO_CTRL1, FMAX_DUTY100);
> -       duty = REG_GET_FIELD(RREG32_SOC15(THM, 0, mmCG_THERMAL_STATUS),
> -                               CG_THERMAL_STATUS, FDO_PWM_DUTY);
> +       if (hwmgr->thermal_controller.fanInfo.bNoFan)
> +               return 0;
>
> -       if (!duty100)
> -               return -EINVAL;
> +       if (vega10_get_current_rpm(hwmgr, &current_rpm))
> +               return -1;
> +
> +       if (hwmgr->thermal_controller.
> +                       advanceFanControlParameters.usMaxFanRPM != 0)
> +               percent = current_rpm * 255 /
> +                       hwmgr->thermal_controller.
> +                       advanceFanControlParameters.usMaxFanRPM;
>
> -       tmp64 = (uint64_t)duty * 255;
> -       do_div(tmp64, duty100);
> -       *speed = MIN((uint32_t)tmp64, 255);
> +       *speed = MIN(percent, 255);
>
>         return 0;
>  }
> --
> 2.25.1
>
>

Reply via email to