mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-27 03:10:12 +00:00
drm/amd/powerplay: export the thermal ranges of Carrizo (V2)
V2: reuse the SMUThermal structure defined in pp_thermal.h Signed-off-by: Evan Quan <evan.quan@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
4ba082572a
commit
31a47dcab8
1 changed files with 15 additions and 0 deletions
|
@ -38,6 +38,7 @@
|
||||||
#include "cz_hwmgr.h"
|
#include "cz_hwmgr.h"
|
||||||
#include "power_state.h"
|
#include "power_state.h"
|
||||||
#include "cz_clockpowergating.h"
|
#include "cz_clockpowergating.h"
|
||||||
|
#include "pp_thermal.h"
|
||||||
|
|
||||||
#define ixSMUSVI_NB_CURRENTVID 0xD8230044
|
#define ixSMUSVI_NB_CURRENTVID 0xD8230044
|
||||||
#define CURRENT_NB_VID_MASK 0xff000000
|
#define CURRENT_NB_VID_MASK 0xff000000
|
||||||
|
@ -1858,6 +1859,19 @@ static int cz_notify_cac_buffer_info(struct pp_hwmgr *hwmgr,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int cz_get_thermal_temperature_range(struct pp_hwmgr *hwmgr,
|
||||||
|
struct PP_TemperatureRange *thermal_data)
|
||||||
|
{
|
||||||
|
struct cz_hwmgr *cz_hwmgr = (struct cz_hwmgr *)(hwmgr->backend);
|
||||||
|
|
||||||
|
memcpy(thermal_data, &SMU7ThermalPolicy[0], sizeof(struct PP_TemperatureRange));
|
||||||
|
|
||||||
|
thermal_data->max = (cz_hwmgr->thermal_auto_throttling_treshold +
|
||||||
|
cz_hwmgr->sys_info.htc_hyst_lmt) *
|
||||||
|
PP_TEMPERATURE_UNITS_PER_CENTIGRADES;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static const struct pp_hwmgr_func cz_hwmgr_funcs = {
|
static const struct pp_hwmgr_func cz_hwmgr_funcs = {
|
||||||
.backend_init = cz_hwmgr_backend_init,
|
.backend_init = cz_hwmgr_backend_init,
|
||||||
|
@ -1890,6 +1904,7 @@ static const struct pp_hwmgr_func cz_hwmgr_funcs = {
|
||||||
.power_state_set = cz_set_power_state_tasks,
|
.power_state_set = cz_set_power_state_tasks,
|
||||||
.dynamic_state_management_disable = cz_disable_dpm_tasks,
|
.dynamic_state_management_disable = cz_disable_dpm_tasks,
|
||||||
.notify_cac_buffer_info = cz_notify_cac_buffer_info,
|
.notify_cac_buffer_info = cz_notify_cac_buffer_info,
|
||||||
|
.get_thermal_temperature_range = cz_get_thermal_temperature_range,
|
||||||
};
|
};
|
||||||
|
|
||||||
int cz_init_function_pointers(struct pp_hwmgr *hwmgr)
|
int cz_init_function_pointers(struct pp_hwmgr *hwmgr)
|
||||||
|
|
Loading…
Reference in a new issue