aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd
diff options
context:
space:
mode:
authorEvan Quan <evan.quan@amd.com>2018-10-08 00:41:19 -0400
committerAlex Deucher <alexander.deucher@amd.com>2018-10-16 16:09:10 -0400
commite26f70a6539cc9d4b1d2589d1c50b2a2c8b22bea (patch)
tree61c6e47773f64f1c90238b0ef708fcef50ec26b8 /drivers/gpu/drm/amd
parentd579fd827000dfe3c45635fded8bbbbdc78eb5ff (diff)
drm/amd/powerplay: update PPtable with DC BTC and Tvr SocLimit fields
Update the PPtable structure to fit the latest SMC firmware. Signed-off-by: Evan Quan <evan.quan@amd.com> Reviewed-by: Feifei Xu <Feifei.Xu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd')
-rw-r--r--drivers/gpu/drm/amd/powerplay/hwmgr/vega20_processpptables.c10
-rw-r--r--drivers/gpu/drm/amd/powerplay/inc/smu11_driver_if.h13
2 files changed, 14 insertions, 9 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_processpptables.c b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_processpptables.c
index e71740479bb8..e5f7f8230065 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_processpptables.c
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_processpptables.c
@@ -100,9 +100,8 @@ static void dump_pptable(PPTable_t *pptable)
100 pr_info("PpmTemperatureThreshold = %d\n", pptable->PpmTemperatureThreshold); 100 pr_info("PpmTemperatureThreshold = %d\n", pptable->PpmTemperatureThreshold);
101 101
102 pr_info("MemoryOnPackage = 0x%02x\n", pptable->MemoryOnPackage); 102 pr_info("MemoryOnPackage = 0x%02x\n", pptable->MemoryOnPackage);
103 pr_info("padding8_limits[0] = 0x%02x\n", pptable->padding8_limits[0]); 103 pr_info("padding8_limits = 0x%02x\n", pptable->padding8_limits);
104 pr_info("padding8_limits[1] = 0x%02x\n", pptable->padding8_limits[1]); 104 pr_info("Tvr_SocLimit = %d\n", pptable->Tvr_SocLimit);
105 pr_info("padding8_limits[2] = 0x%02x\n", pptable->padding8_limits[2]);
106 105
107 pr_info("UlvVoltageOffsetSoc = %d\n", pptable->UlvVoltageOffsetSoc); 106 pr_info("UlvVoltageOffsetSoc = %d\n", pptable->UlvVoltageOffsetSoc);
108 pr_info("UlvVoltageOffsetGfx = %d\n", pptable->UlvVoltageOffsetGfx); 107 pr_info("UlvVoltageOffsetGfx = %d\n", pptable->UlvVoltageOffsetGfx);
@@ -539,7 +538,10 @@ static void dump_pptable(PPTable_t *pptable)
539 pr_info("FanGainVrMem0 = %d\n", pptable->FanGainVrMem0); 538 pr_info("FanGainVrMem0 = %d\n", pptable->FanGainVrMem0);
540 pr_info("FanGainVrMem0 = %d\n", pptable->FanGainVrMem0); 539 pr_info("FanGainVrMem0 = %d\n", pptable->FanGainVrMem0);
541 540
542 for (i = 0; i < 12; i++) 541 pr_info("DcBtcGb[AVFS_VOLTAGE_GFX] = 0x%x\n", pptable->DcBtcGb[AVFS_VOLTAGE_GFX]);
542 pr_info("DcBtcGb[AVFS_VOLTAGE_SOC] = 0x%x\n", pptable->DcBtcGb[AVFS_VOLTAGE_SOC]);
543
544 for (i = 0; i < 11; i++)
543 pr_info("Reserved[%d] = 0x%x\n", i, pptable->Reserved[i]); 545 pr_info("Reserved[%d] = 0x%x\n", i, pptable->Reserved[i]);
544 546
545 for (i = 0; i < 3; i++) 547 for (i = 0; i < 3; i++)
diff --git a/drivers/gpu/drm/amd/powerplay/inc/smu11_driver_if.h b/drivers/gpu/drm/amd/powerplay/inc/smu11_driver_if.h
index c72cfab83df9..2998a49960ed 100644
--- a/drivers/gpu/drm/amd/powerplay/inc/smu11_driver_if.h
+++ b/drivers/gpu/drm/amd/powerplay/inc/smu11_driver_if.h
@@ -165,7 +165,7 @@
165#define FEATURE_DS_FCLK_MASK (1 << FEATURE_DS_FCLK_BIT ) 165#define FEATURE_DS_FCLK_MASK (1 << FEATURE_DS_FCLK_BIT )
166#define FEATURE_DS_MP1CLK_MASK (1 << FEATURE_DS_MP1CLK_BIT ) 166#define FEATURE_DS_MP1CLK_MASK (1 << FEATURE_DS_MP1CLK_BIT )
167#define FEATURE_DS_MP0CLK_MASK (1 << FEATURE_DS_MP0CLK_BIT ) 167#define FEATURE_DS_MP0CLK_MASK (1 << FEATURE_DS_MP0CLK_BIT )
168 168#define FEATURE_XGMI_MASK (1 << FEATURE_XGMI_BIT )
169 169
170#define DPM_OVERRIDE_DISABLE_SOCCLK_PID 0x00000001 170#define DPM_OVERRIDE_DISABLE_SOCCLK_PID 0x00000001
171#define DPM_OVERRIDE_DISABLE_UCLK_PID 0x00000002 171#define DPM_OVERRIDE_DISABLE_UCLK_PID 0x00000002
@@ -391,8 +391,8 @@ typedef struct {
391 uint16_t PpmTemperatureThreshold; 391 uint16_t PpmTemperatureThreshold;
392 392
393 uint8_t MemoryOnPackage; 393 uint8_t MemoryOnPackage;
394 uint8_t padding8_limits[3]; 394 uint8_t padding8_limits;
395 395 uint16_t Tvr_SocLimit;
396 396
397 uint16_t UlvVoltageOffsetSoc; 397 uint16_t UlvVoltageOffsetSoc;
398 uint16_t UlvVoltageOffsetGfx; 398 uint16_t UlvVoltageOffsetGfx;
@@ -501,7 +501,7 @@ typedef struct {
501 uint8_t DcBtcEnabled[AVFS_VOLTAGE_COUNT]; 501 uint8_t DcBtcEnabled[AVFS_VOLTAGE_COUNT];
502 uint8_t Padding8_GfxBtc[2]; 502 uint8_t Padding8_GfxBtc[2];
503 503
504 uint16_t DcBtcMin[AVFS_VOLTAGE_COUNT]; 504 int16_t DcBtcMin[AVFS_VOLTAGE_COUNT];
505 uint16_t DcBtcMax[AVFS_VOLTAGE_COUNT]; 505 uint16_t DcBtcMax[AVFS_VOLTAGE_COUNT];
506 506
507 507
@@ -526,7 +526,10 @@ typedef struct {
526 526
527 uint16_t FanGainVrMem0; 527 uint16_t FanGainVrMem0;
528 uint16_t FanGainVrMem1; 528 uint16_t FanGainVrMem1;
529 uint32_t Reserved[12]; 529
530 uint16_t DcBtcGb[AVFS_VOLTAGE_COUNT];
531
532 uint32_t Reserved[11];
530 533
531 uint32_t Padding32[3]; 534 uint32_t Padding32[3];
532 535