Commit 3b2ad16d authored by Evan Quan's avatar Evan Quan Committed by Alex Deucher
Browse files

drm/amd/powerplay: bump the PPtable version supported



As the matching VBIOS is already ready. Also drop the
temporary workarounds applied before.

Signed-off-by: default avatarEvan Quan <evan.quan@amd.com>
Reviewed-by: default avatarFeifei Xu <Feifei.Xu@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent b44ec6a3
Loading
Loading
Loading
Loading
+17 −29
Original line number Diff line number Diff line
@@ -716,10 +716,6 @@ static int append_vbios_pptable(struct pp_hwmgr *hwmgr, PPTable_t *ppsmc_pptable
		"[appendVbiosPPTable] Failed to retrieve Smc Dpm Table from VBIOS!",
		return -1);

	memset(ppsmc_pptable->Padding32,
			0,
			sizeof(struct atom_smc_dpm_info_v4_4) -
			sizeof(struct atom_common_table_header));
	ppsmc_pptable->MaxVoltageStepGfx = smc_dpm_table->maxvoltagestepgfx;
	ppsmc_pptable->MaxVoltageStepSoc = smc_dpm_table->maxvoltagestepsoc;

@@ -778,8 +774,6 @@ static int append_vbios_pptable(struct pp_hwmgr *hwmgr, PPTable_t *ppsmc_pptable
	ppsmc_pptable->FllGfxclkSpreadPercent = smc_dpm_table->fllgfxclkspreadpercent;
	ppsmc_pptable->FllGfxclkSpreadFreq = smc_dpm_table->fllgfxclkspreadfreq;

	if ((smc_dpm_table->table_header.format_revision == 4) &&
	    (smc_dpm_table->table_header.content_revision == 4)) {
	for (i = 0; i < I2C_CONTROLLER_NAME_COUNT; i++) {
		ppsmc_pptable->I2cControllers[i].Enabled =
			smc_dpm_table->i2ccontrollers[i].enabled;
@@ -794,7 +788,6 @@ static int append_vbios_pptable(struct pp_hwmgr *hwmgr, PPTable_t *ppsmc_pptable
		ppsmc_pptable->I2cControllers[i].I2cSpeed =
			smc_dpm_table->i2ccontrollers[i].i2cspeed;
	}
	}

	return 0;
}
@@ -882,16 +875,11 @@ static int init_powerplay_table_information(
	if (pptable_information->smc_pptable == NULL)
		return -ENOMEM;

	if (powerplay_table->smcPPTable.Version <= 2)
		memcpy(pptable_information->smc_pptable,
				&(powerplay_table->smcPPTable),
				sizeof(PPTable_t) -
				sizeof(I2cControllerConfig_t) * I2C_CONTROLLER_NAME_COUNT);
	else
	memcpy(pptable_information->smc_pptable,
			&(powerplay_table->smcPPTable),
			sizeof(PPTable_t));


	result = append_vbios_pptable(hwmgr, (pptable_information->smc_pptable));

	return result;
+1 −1
Original line number Diff line number Diff line
@@ -29,7 +29,7 @@
// any structure is changed in this file
#define SMU11_DRIVER_IF_VERSION 0x12

#define PPTABLE_V20_SMU_VERSION 2
#define PPTABLE_V20_SMU_VERSION 3

#define NUM_GFXCLK_DPM_LEVELS  16
#define NUM_VCLK_DPM_LEVELS    8