summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h
diff options
context:
space:
mode:
authorRex Zhu <Rex.Zhu@amd.com>2015-10-21 10:34:22 +0800
committerAlex Deucher <alexander.deucher@amd.com>2015-12-21 16:42:24 -0500
commitfba4eef5847a1c9c8b49c039bc8aa6c9070d058e (patch)
tree7221481e064721250e9169bfb529649e7784b72d /drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h
parent251bb34fa44ef92dce1903e92af68f12a7f6d594 (diff)
drm/amdgpu/powerplay: add thermal control interface in hwmgr.
Thermal controller interface. Signed-off-by: Rex Zhu <Rex.Zhu@amd.com> Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h')
-rw-r--r--drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h b/drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h
index 1d2976000a74..a868110d477c 100644
--- a/drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h
+++ b/drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h
@@ -29,6 +29,18 @@ struct pp_hwmgr;
struct pp_hw_power_state;
struct pp_power_state;
enum amd_dpm_forced_level;
+struct PP_TemperatureRange;
+
+struct phm_fan_speed_info {
+ uint32_t min_percent;
+ uint32_t max_percent;
+ uint32_t min_rpm;
+ uint32_t max_rpm;
+ bool supports_percent_read;
+ bool supports_percent_write;
+ bool supports_rpm_read;
+ bool supports_rpm_write;
+};
/* Automatic Power State Throttling */
enum PHM_AutoThrottleSource
@@ -330,4 +342,8 @@ extern int phm_apply_state_adjust_rules(struct pp_hwmgr *hwmgr,
extern int phm_force_dpm_levels(struct pp_hwmgr *hwmgr, enum amd_dpm_forced_level level);
extern int phm_display_configuration_changed(struct pp_hwmgr *hwmgr);
extern int phm_notify_smc_display_config_after_ps_adjustment(struct pp_hwmgr *hwmgr);
+extern int phm_register_thermal_interrupt(struct pp_hwmgr *hwmgr, const void *info);
+extern int phm_start_thermal_controller(struct pp_hwmgr *hwmgr, struct PP_TemperatureRange *temperature_range);
+extern int phm_stop_thermal_controller(struct pp_hwmgr *hwmgr);
#endif /* _HARDWARE_MANAGER_H_ */
+