On 15-Dec-25 3:27 PM, Yang Wang wrote:
the PMFW didn't initialize the PCIe DPM parameters
and requires the KMD to actively provide these parameters.
If this needs to be provided always, shouldn't this also revert the if
check introduced by
1a18607c07bb ("drm/amd/pm: override pcie dpm parameters only if it is
necessary")
Thanks,
Lijo
Signed-off-by: Yang Wang <[email protected]>
---
.../gpu/drm/amd/pm/swsmu/smu11/navi10_ppt.c | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu11/navi10_ppt.c
b/drivers/gpu/drm/amd/pm/swsmu/smu11/navi10_ppt.c
index 0c26fe6fb949..96dbb7a9d9fb 100644
--- a/drivers/gpu/drm/amd/pm/swsmu/smu11/navi10_ppt.c
+++ b/drivers/gpu/drm/amd/pm/swsmu/smu11/navi10_ppt.c
@@ -2215,16 +2215,16 @@ static int navi10_update_pcie_parameters(struct
smu_context *smu,
dpm_context->dpm_tables.pcie_table.pcie_lane[i] =
pptable->PcieLaneCount[i] > pcie_width_cap ?
pcie_width_cap : pptable->PcieLaneCount[i];
- smu_pcie_arg = i << 16;
- smu_pcie_arg |=
dpm_context->dpm_tables.pcie_table.pcie_gen[i] << 8;
- smu_pcie_arg |=
dpm_context->dpm_tables.pcie_table.pcie_lane[i];
- ret = smu_cmn_send_smc_msg_with_param(smu,
-
SMU_MSG_OverridePcieParameters,
- smu_pcie_arg,
- NULL);
- if (ret)
- break;
}
+ smu_pcie_arg = i << 16;
+ smu_pcie_arg |= dpm_context->dpm_tables.pcie_table.pcie_gen[i]
<< 8;
+ smu_pcie_arg |= dpm_context->dpm_tables.pcie_table.pcie_lane[i];
+ ret = smu_cmn_send_smc_msg_with_param(smu,
+
SMU_MSG_OverridePcieParameters,
+ smu_pcie_arg,
+ NULL);
+ if (ret)
+ return ret;
}
return ret;