OSDN Git Service

drm/amd/powerplay: correct LoadLineResistance value in pptable.
authorRex Zhu <Rex.Zhu@amd.com>
Fri, 28 Apr 2017 05:49:50 +0000 (13:49 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 5 May 2017 22:12:08 +0000 (18:12 -0400)
this value is used by avfs to adjust inversion voltage.

Signed-off-by: Rex Zhu <Rex.Zhu@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/powerplay/hwmgr/vega10_powertune.c
drivers/gpu/drm/amd/powerplay/hwmgr/vega10_processpptables.c

index 692f752..3f72268 100644 (file)
@@ -48,8 +48,8 @@ void vega10_initialize_power_tune_defaults(struct pp_hwmgr *hwmgr)
        table->Tliquid1Limit = cpu_to_le16(tdp_table->usTemperatureLimitLiquid1);
        table->Tliquid2Limit = cpu_to_le16(tdp_table->usTemperatureLimitLiquid2);
        table->TplxLimit = cpu_to_le16(tdp_table->usTemperatureLimitPlx);
-       table->LoadLineResistance = cpu_to_le16(
-                       hwmgr->platform_descriptor.LoadLineSlope);
+       table->LoadLineResistance =
+                       hwmgr->platform_descriptor.LoadLineSlope * 256;
        table->FitLimit = 0; /* Not used for Vega10 */
 
        table->Liquid1_I2C_address = tdp_table->ucLiquid1_I2C_address;
index 8b55ae0..00e9551 100644 (file)
@@ -407,7 +407,7 @@ static int get_tdp_table(
                tdp_table->ucPlx_I2C_address = power_tune_table->ucPlx_I2C_address;
                tdp_table->ucPlx_I2C_Line = power_tune_table->ucPlx_I2C_LineSCL;
                tdp_table->ucPlx_I2C_LineSDA = power_tune_table->ucPlx_I2C_LineSDA;
-               hwmgr->platform_descriptor.LoadLineSlope = power_tune_table->usLoadLineResistance;
+               hwmgr->platform_descriptor.LoadLineSlope = le16_to_cpu(power_tune_table->usLoadLineResistance);
        } else {
                power_tune_table_v2 = (ATOM_Vega10_PowerTune_Table_V2 *)table;
                tdp_table->usMaximumPowerDeliveryLimit = le16_to_cpu(power_tune_table_v2->usSocketPowerLimit);
@@ -453,7 +453,7 @@ static int get_tdp_table(
                tdp_table->ucPlx_I2C_LineSDA = sda;
 
                hwmgr->platform_descriptor.LoadLineSlope =
-                                       power_tune_table_v2->usLoadLineResistance;
+                                       le16_to_cpu(power_tune_table_v2->usLoadLineResistance);
        }
 
        *info_tdp_table = tdp_table;