[1/2] drm/amd/pm: update SMU IP v13.0.4 driver interface version
Limonciello, Mario
mario.limonciello at amd.com
Thu Oct 13 21:35:28 UTC 2022
On 10/13/2022 00:46, Tim Huang wrote:
> Update the SMU driver interface version to V7.
>
> Signed-off-by: Tim Huang <tim.huang at amd.com>
> ---
> .../swsmu/inc/pmfw_if/smu13_driver_if_v13_0_4.h | 17 +++++++++++++++--
> 1 file changed, 15 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/inc/pmfw_if/smu13_driver_if_v13_0_4.h b/drivers/gpu/drm/amd/pm/swsmu/inc/pmfw_if/smu13_driver_if_v13_0_4.h
> index ae2d337158f3..f77401709d83 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/inc/pmfw_if/smu13_driver_if_v13_0_4.h
> +++ b/drivers/gpu/drm/amd/pm/swsmu/inc/pmfw_if/smu13_driver_if_v13_0_4.h
> @@ -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]
This is unfortunate, it means that these two flipped based on PMFW
driver interface version!
With 13.0.4 in 6.0, this should probably come back.
Cc: stable at vger.kernel.org #6.0
Reviewed-by: Mario Limonciello <mario.limonciello at amd.com>
>
> 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 {
More information about the amd-gfx
mailing list