[PATCH v2] drm/amd/pm: disallow the fan setting if there is no fan on smu 13.0.0

Alex Deucher alexdeucher at gmail.com
Wed Aug 9 12:20:09 UTC 2023


On Wed, Aug 9, 2023 at 6:12 AM Kenneth Feng <kenneth.feng at amd.com> wrote:
>
> drm/amd/pm: disallow the fan setting if there is no fan on smu 13.0.0
> V2: depend on pm.no_fan to check
>
> Signed-off-by: Kenneth Feng <kenneth.feng at amd.com>

You can still read the fan speed though right?  Don't we want to just
not expose the ability to manually set the fan speed?

Alex

> ---
>  drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c | 4 ++++
>  1 file changed, 4 insertions(+)
>
> 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 fddcd834bcec..0fb6be11a0cc 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
> @@ -331,6 +331,7 @@ static int smu_v13_0_0_check_powerplay_table(struct smu_context *smu)
>         struct smu_13_0_0_powerplay_table *powerplay_table =
>                 table_context->power_play_table;
>         struct smu_baco_context *smu_baco = &smu->smu_baco;
> +       PPTable_t *pptable = smu->smu_table.driver_pptable;
>  #if 0
>         PPTable_t *pptable = smu->smu_table.driver_pptable;
>         const OverDriveLimits_t * const overdrive_upperlimits =
> @@ -371,6 +372,9 @@ static int smu_v13_0_0_check_powerplay_table(struct smu_context *smu)
>         table_context->thermal_controller_type =
>                 powerplay_table->thermal_controller_type;
>
> +       smu->adev->pm.no_fan =
> +               !(pptable->SkuTable.FeaturesToRun[0] & (1 << FEATURE_FAN_CONTROL_BIT));
> +
>         return 0;
>  }
>
> --
> 2.34.1
>


More information about the amd-gfx mailing list