[PATCH] drm/amd/pm: enable the support for retrieving combo pptable
Alex Deucher
alexander.deucher at amd.com
Thu Apr 28 21:29:46 UTC 2022
From: Evan Quan <evan.quan at amd.com>
We need to relay on this way to get the raw PPTable when
SCPM feature is enabled.
Signed-off-by: Evan Quan <evan.quan at amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang at amd.com>
Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
---
drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h | 4 +++-
drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c | 11 +++++++++++
drivers/gpu/drm/amd/pm/swsmu/smu_cmn.h | 2 ++
3 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h b/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h
index 491357321020..49d2c0eb014d 100644
--- a/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h
+++ b/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h
@@ -321,6 +321,7 @@ enum smu_table_id
SMU_TABLE_I2C_COMMANDS,
SMU_TABLE_PACE,
SMU_TABLE_ECCINFO,
+ SMU_TABLE_COMBO_PPTABLE,
SMU_TABLE_COUNT,
};
@@ -336,7 +337,8 @@ struct smu_table_context
void *max_sustainable_clocks;
struct smu_bios_boot_up_values boot_values;
- void *driver_pptable;
+ void *driver_pptable;
+ void *combo_pptable;
void *ecc_table;
void *driver_smu_config_table;
struct smu_table tables[SMU_TABLE_COUNT];
diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c
index f12319883a80..622881ab34c7 100644
--- a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c
+++ b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c
@@ -971,6 +971,17 @@ int smu_cmn_get_metrics_table(struct smu_context *smu,
return 0;
}
+int smu_cmn_get_combo_pptable(struct smu_context *smu)
+{
+ void *pptable = smu->smu_table.combo_pptable;
+
+ return smu_cmn_update_table(smu,
+ SMU_TABLE_COMBO_PPTABLE,
+ 0,
+ pptable,
+ false);
+}
+
void smu_cmn_init_soft_gpu_metrics(void *table, uint8_t frev, uint8_t crev)
{
struct metrics_table_header *header = (struct metrics_table_header *)table;
diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.h b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.h
index a4c593ed8b03..1526ce09c399 100644
--- a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.h
+++ b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.h
@@ -99,6 +99,8 @@ int smu_cmn_get_metrics_table(struct smu_context *smu,
void *metrics_table,
bool bypass_cache);
+int smu_cmn_get_combo_pptable(struct smu_context *smu);
+
void smu_cmn_init_soft_gpu_metrics(void *table, uint8_t frev, uint8_t crev);
int smu_cmn_set_mp1_state(struct smu_context *smu,
--
2.35.1
More information about the amd-gfx
mailing list