Re: linux-next: manual merge of the amdgpu tree with the origin tree
From: Alex Deucher
Date: Thu Oct 29 2026 - 10:29:31 EST
On Thu, Oct 29, 2026 at 10:18 AM Mark Brown <broonie@xxxxxxxxxx> wrote:
>
> Hi all,
>
> Today's linux-next merge of the amdgpu tree got a conflict in:
>
> drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_2_ppt.c
>
> between commits:
>
> a2eae9f4fa1b0 ("drm/amd/pm: add zero fan stop temperature support on smu 14.0.2")
> 44d0d3031e479 ("drm/amd/pm:restate all customized OD features on every table upload for smu 13.0.0/smu 14.0.2")
> af52c8fd45fbd ("drm/amd/pm: add zero fan stop temperature support on smu 14.0.2")
> 9b0890e72d19b ("drm/amd/pm: preserve committed OD features for SMU 14.0.2")
>
> from the origin tree and commits:
>
> f990c94a2633d ("drm/amd/pm: add zero fan stop temperature support on smu 14.0.2")
> 1b63bb397db20 ("drm/amd/pm:restate all customized OD features on every table upload for smu 13.0.0/smu 14.0.2")
> d2c1e98658b6c ("drm/amd/pm: report smu energy accumulator updates")
> 8d4ce79aff1cd ("drm/amd/pm: preserve committed OD features for SMU 14.0.2")
>
> from the amdgpu tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
>
> diff --combined drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_2_ppt.c
> index dda435f19ca66,62f16d17e22bc..0000000000000
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_2_ppt.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_2_ppt.c
> @@@ -2277,8 -2277,11 +2277,11 @@@ static ssize_t smu_v14_0_2_get_gpu_metr
> metrics->Vcn1ActivityPercentage);
>
> gpu_metrics->average_socket_power = metrics->AverageSocketPower;
> - if (mp1_ver == IP_VERSION(14, 0, 3) && smu->smc_fw_version >= 0x00685000)
> - gpu_metrics->energy_accumulator = metrics->EnergyAccumulator;
> + if ((mp1_ver == IP_VERSION(14, 0, 2) &&
> + smu->smc_fw_version >= 0x00664800) ||
> + (mp1_ver == IP_VERSION(14, 0, 3) &&
> + smu->smc_fw_version >= 0x00685000))
> + gpu_metrics->energy_accumulator = metrics->EnergyAccumulator;
>
> if (metrics->AverageGfxActivity <= SMU_14_0_2_BUSY_THRESHOLD)
> gpu_metrics->average_gfxclk_frequency = metrics->AverageGfxclkFrequencyPostDs;
> @@@ -2600,14 -2603,9 +2603,10 @@@ static int smu_v14_0_2_od_restore_table
> od_table->OverDriveTable.FanZeroRpmEnable =
> boot_overdrive_table->OverDriveTable.FanZeroRpmEnable;
> break;
> - case PP_OD_EDIT_FAN_ZERO_RPM_STOP_TEMP:
> - od_table->OverDriveTable.FanZeroRpmStopTemp =
> - boot_overdrive_table->OverDriveTable.FanZeroRpmStopTemp;
> - break;
> case PP_OD_EDIT_FAN_ZERO_RPM_STOP_TEMP:
> od_table->OverDriveTable.FanZeroRpmStopTemp =
> boot_overdrive_table->OverDriveTable.FanZeroRpmStopTemp;
> + od_table->OverDriveTable.FeatureCtrlMask |= BIT(PP_OD_FEATURE_ZERO_FAN_BIT);
I believe this should be dropped. The FeatureCtrlMask updates are
handled in smu_v14_0_2_od_edit_dpm_table() now.
Thanks,
Alex
> break;
> case PP_OD_EDIT_ACOUSTIC_LIMIT:
> od_table->OverDriveTable.AcousticLimitRpmThreshold =