On Wed, Aug 9, 2023 at 6:12 AM Kenneth Feng <kenneth.feng@xxxxxxx> 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@xxxxxxx> 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 >