mirror of
https://github.com/torvalds/linux.git
synced 2026-05-26 16:12:59 +02:00
drm/amd/pm: Fetch SMUv13.0.6 xgmi max speed/width
On SMUv13.0.6 SOCs, fetch the max values of xgmi speed/width from firmware. Signed-off-by: Lijo Lazar <lijo.lazar@amd.com> Reviewed-by: Asad Kamal <asad.kamal@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
0180e0a5dd
commit
e01bf27042
|
|
@ -805,6 +805,8 @@ static int smu_v13_0_6_setup_driver_pptable(struct smu_context *smu)
|
|||
int version = smu_v13_0_6_get_metrics_version(smu);
|
||||
int ret, i, retry = 100;
|
||||
uint32_t table_version;
|
||||
uint16_t max_speed;
|
||||
uint8_t max_width;
|
||||
|
||||
if (amdgpu_ip_version(smu->adev, MP1_HWIP, 0) == IP_VERSION(13, 0, 12) &&
|
||||
smu_v13_0_6_cap_supported(smu, SMU_CAP(STATIC_METRICS)))
|
||||
|
|
@ -840,6 +842,9 @@ static int smu_v13_0_6_setup_driver_pptable(struct smu_context *smu)
|
|||
SMUQ10_ROUND(GET_METRIC_FIELD(MaxGfxclkFrequency, version));
|
||||
pptable->MinGfxclkFrequency =
|
||||
SMUQ10_ROUND(GET_METRIC_FIELD(MinGfxclkFrequency, version));
|
||||
max_width = (uint8_t)GET_METRIC_FIELD(XgmiWidth, version);
|
||||
max_speed = (uint16_t)GET_METRIC_FIELD(XgmiBitrate, version);
|
||||
amgpu_xgmi_set_max_speed_width(smu->adev, max_speed, max_width);
|
||||
|
||||
for (i = 0; i < 4; ++i) {
|
||||
pptable->FclkFrequencyTable[i] =
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user