aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h
diff options
context:
space:
mode:
authorLe Ma <[email protected]>2023-09-07 07:32:13 +0000
committerAlex Deucher <[email protected]>2023-09-26 21:00:23 +0000
commitd07f1c20dd7c5d94cb7eceb822a060c108e49d23 (patch)
treefd6030ff1f7715e8c4ea670901a12d581471cb0f /drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h
parentdrm/amd/pm: add plpd_mode in smu_context to indicate current mode (diff)
downloadkernel-d07f1c20dd7c5d94cb7eceb822a060c108e49d23.tar.gz
kernel-d07f1c20dd7c5d94cb7eceb822a060c108e49d23.zip
drm/amd/pm: add xgmi plpd mode selecting interface for smu v13.0.6
Add the interface to change xgmi per-link power down policy. v2: split from sysfs interface code and miscellaneous updates v3: check against XGMI_PLPD_DEFAULT/XGMI_PLPD_OPTIMIZED and pass PPSMC param Signed-off-by: Le Ma <[email protected]> Reviewed-by: Asad Kamal <[email protected]> Reviewed-by: Lijo Lazar <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h')
-rw-r--r--drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h9
1 files changed, 9 insertions, 0 deletions
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 5356b91c6292..e17169f681e8 100644
--- a/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h
+++ b/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h
@@ -841,6 +841,12 @@ struct pptable_funcs {
int (*allow_xgmi_power_down)(struct smu_context *smu, bool en);
/**
+ * @select_xgmi_plpd_policy: Select xgmi per-link power down policy.
+ */
+ int (*select_xgmi_plpd_policy)(struct smu_context *smu,
+ enum pp_xgmi_plpd_mode mode);
+
+ /**
* @update_pcie_parameters: Update and upload the system's PCIe
* capabilites to the SMU.
* &pcie_gen_cap: Maximum allowed PCIe generation.
@@ -1487,6 +1493,9 @@ int smu_set_ac_dc(struct smu_context *smu);
int smu_allow_xgmi_power_down(struct smu_context *smu, bool en);
+int smu_set_xgmi_plpd_mode(struct smu_context *smu,
+ enum pp_xgmi_plpd_mode mode);
+
int smu_get_entrycount_gfxoff(struct smu_context *smu, u64 *value);
int smu_get_residency_gfxoff(struct smu_context *smu, u32 *value);