Commit d1bb3afc authored by Tim Huang's avatar Tim Huang Committed by Alex Deucher
Browse files

drm/amd/pm: update SMU IP v13.0.4 driver interface version



Update the SMU driver interface version to V7.

Signed-off-by: default avatarTim Huang <tim.huang@amd.com>
Reviewed-by: default avatarMario Limonciello <mario.limonciello@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org # 6.0.x
parent 5af392a8
Loading
Loading
Loading
Loading
+15 −2
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@
// *** IMPORTANT ***
// SMU TEAM: Always increment the interface version if
// any structure is changed in this file
#define PMFW_DRIVER_IF_VERSION 5
#define PMFW_DRIVER_IF_VERSION 7

typedef struct {
  int32_t value;
@@ -163,8 +163,8 @@ typedef struct {
  uint16_t DclkFrequency;               //[MHz]
  uint16_t MemclkFrequency;             //[MHz]
  uint16_t spare;                       //[centi]
  uint16_t UvdActivity;                 //[centi]
  uint16_t GfxActivity;                 //[centi]
  uint16_t UvdActivity;                 //[centi]

  uint16_t Voltage[2];                  //[mV] indices: VDDCR_VDD, VDDCR_SOC
  uint16_t Current[2];                  //[mA] indices: VDDCR_VDD, VDDCR_SOC
@@ -199,6 +199,19 @@ typedef struct {
  uint16_t DeviceState;
  uint16_t CurTemp;                     //[centi-Celsius]
  uint16_t spare2;

  uint16_t AverageGfxclkFrequency;
  uint16_t AverageFclkFrequency;
  uint16_t AverageGfxActivity;
  uint16_t AverageSocclkFrequency;
  uint16_t AverageVclkFrequency;
  uint16_t AverageVcnActivity;
  uint16_t AverageDRAMReads;          //Filtered DF Bandwidth::DRAM Reads
  uint16_t AverageDRAMWrites;         //Filtered DF Bandwidth::DRAM Writes
  uint16_t AverageSocketPower;        //Filtered value of CurrentSocketPower
  uint16_t AverageCorePower;          //Filtered of [sum of CorePower[8]])
  uint16_t AverageCoreC0Residency[8]; //Filtered of [average C0 residency %  per core]
  uint32_t MetricsCounter;            //Counts the # of metrics table parameter reads per update to the metrics table, i.e. if the metrics table update happens every 1 second, this value could be up to 1000 if the smu collected metrics data every cycle, or as low as 0 if the smu was asleep the whole time. Reset to 0 after writing.
} SmuMetrics_t;

typedef struct {