diff options
Diffstat (limited to 'meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/1045-drm-amd-powerplay-refine-code-for-thermal-control-in.patch')
-rw-r--r-- | meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/1045-drm-amd-powerplay-refine-code-for-thermal-control-in.patch | 595 |
1 files changed, 0 insertions, 595 deletions
diff --git a/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/1045-drm-amd-powerplay-refine-code-for-thermal-control-in.patch b/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/1045-drm-amd-powerplay-refine-code-for-thermal-control-in.patch deleted file mode 100644 index 72afaee4..00000000 --- a/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/1045-drm-amd-powerplay-refine-code-for-thermal-control-in.patch +++ /dev/null @@ -1,595 +0,0 @@ -From 838ec1d192d82fbcc04ad8000cbd54ee7eeb7fae Mon Sep 17 00:00:00 2001 -From: Rex Zhu <Rex.Zhu@amd.com> -Date: Mon, 4 Sep 2017 16:25:48 +0800 -Subject: [PATCH 1045/4131] drm/amd/powerplay: refine code for thermal control - in powerplay - -add function point start_thermal_controller in hwmgr, -delete thermal function table and related functions - -Change-Id: I7616df3bcf2d6bddb5577f882ace2caa63e862bf -Reviewed-by: Alex Deucher <alexander.deucher@amd.com> -Signed-off-by: Rex Zhu <Rex.Zhu@amd.com> ---- - .../gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c | 6 +- - drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c | 1 + - drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 4 +- - drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c | 146 +++------------------ - drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.h | 5 +- - drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c | 2 +- - .../gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c | 137 +++---------------- - .../gpu/drm/amd/powerplay/hwmgr/vega10_thermal.h | 13 +- - drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 3 +- - drivers/gpu/drm/amd/powerplay/inc/smumgr.h | 6 +- - drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c | 6 +- - 11 files changed, 55 insertions(+), 274 deletions(-) - -diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c b/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c -index ce378bd..a3991c0 100644 ---- a/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c -+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c -@@ -306,8 +306,10 @@ int phm_start_thermal_controller(struct pp_hwmgr *hwmgr, struct PP_TemperatureRa - range.min = temperature_range->min; - } - if (phm_cap_enabled(hwmgr->platform_descriptor.platformCaps, -- PHM_PlatformCaps_ThermalController)) -- return phm_dispatch_table(hwmgr, &(hwmgr->start_thermal_controller), &range, NULL); -+ PHM_PlatformCaps_ThermalController) -+ && hwmgr->hwmgr_func->start_thermal_controller != NULL) -+ return hwmgr->hwmgr_func->start_thermal_controller(hwmgr, &range); -+ - return 0; - } - -diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c -index 4f1b932..387d0b6 100644 ---- a/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c -+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c -@@ -73,6 +73,7 @@ int hwmgr_early_init(struct pp_instance *handle) - hwmgr->dpm_level = AMD_DPM_FORCED_LEVEL_AUTO; - hwmgr_init_default_caps(hwmgr); - hwmgr_set_user_specify_caps(hwmgr); -+ hwmgr->fan_ctrl_is_in_default_mode = true; - - switch (hwmgr->chip_family) { - case AMDGPU_FAMILY_CZ: -diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c -index 812c67f..99a233c 100644 ---- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c -+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c -@@ -2284,7 +2284,6 @@ static int smu7_hwmgr_backend_fini(struct pp_hwmgr *hwmgr) - { - kfree(hwmgr->dyn_state.vddc_dep_on_dal_pwrl); - hwmgr->dyn_state.vddc_dep_on_dal_pwrl = NULL; -- pp_smu7_thermal_fini(hwmgr); - kfree(hwmgr->backend); - hwmgr->backend = NULL; - -@@ -2301,8 +2300,6 @@ static int smu7_hwmgr_backend_init(struct pp_hwmgr *hwmgr) - return -ENOMEM; - - hwmgr->backend = data; -- pp_smu7_thermal_initialize(hwmgr); -- - smu7_patch_voltage_workaround(hwmgr); - smu7_init_dpm_defaults(hwmgr); - -@@ -4657,6 +4654,7 @@ static const struct pp_hwmgr_func smu7_hwmgr_funcs = { - .set_power_profile_state = smu7_set_power_profile_state, - .avfs_control = smu7_avfs_control, - .disable_smc_firmware_ctf = smu7_thermal_disable_alert, -+ .start_thermal_controller = smu7_start_thermal_controller, - }; - - uint8_t smu7_get_sleep_divider_id_from_clock(uint32_t clock, -diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c -index a457b88..10e12b2 100644 ---- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c -+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c -@@ -360,7 +360,7 @@ static int smu7_thermal_initialize(struct pp_hwmgr *hwmgr) - * - * @param hwmgr The address of the hardware manager. - */ --int smu7_thermal_enable_alert(struct pp_hwmgr *hwmgr) -+static void smu7_thermal_enable_alert(struct pp_hwmgr *hwmgr) - { - uint32_t alert; - -@@ -371,7 +371,7 @@ int smu7_thermal_enable_alert(struct pp_hwmgr *hwmgr) - CG_THERMAL_INT, THERM_INT_MASK, alert); - - /* send message to SMU to enable internal thermal interrupts */ -- return smum_send_msg_to_smc(hwmgr->smumgr, PPSMC_MSG_Thermal_Cntl_Enable); -+ smum_send_msg_to_smc(hwmgr->smumgr, PPSMC_MSG_Thermal_Cntl_Enable); - } - - /** -@@ -416,8 +416,7 @@ int smu7_thermal_stop_thermal_controller(struct pp_hwmgr *hwmgr) - * @param Result the last failure code - * @return result from set temperature range routine - */ --static int tf_smu7_thermal_start_smc_fan_control(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) -+static int smu7_thermal_start_smc_fan_control(struct pp_hwmgr *hwmgr) - { - /* If the fantable setup has failed we could have disabled - * PHM_PlatformCaps_MicrocodeFanControl even after -@@ -432,108 +431,34 @@ static int tf_smu7_thermal_start_smc_fan_control(struct pp_hwmgr *hwmgr, - return 0; - } - --/** --* Set temperature range for high and low alerts --* @param hwmgr the address of the powerplay hardware manager. --* @param pInput the pointer to input data --* @param pOutput the pointer to output data --* @param pStorage the pointer to temporary storage --* @param Result the last failure code --* @return result from set temperature range routine --*/ --static int tf_smu7_thermal_set_temperature_range(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) -+int smu7_start_thermal_controller(struct pp_hwmgr *hwmgr, -+ struct PP_TemperatureRange *range) - { -- struct PP_TemperatureRange *range = (struct PP_TemperatureRange *)input; -+ int ret = 0; - - if (range == NULL) - return -EINVAL; - -- return smu7_thermal_set_temperature_range(hwmgr, range->min, range->max); --} -- --/** --* Programs one-time setting registers --* @param hwmgr the address of the powerplay hardware manager. --* @param pInput the pointer to input data --* @param pOutput the pointer to output data --* @param pStorage the pointer to temporary storage --* @param Result the last failure code --* @return result from initialize thermal controller routine --*/ --static int tf_smu7_thermal_initialize(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) --{ -- return smu7_thermal_initialize(hwmgr); --} -- --/** --* Enable high and low alerts --* @param hwmgr the address of the powerplay hardware manager. --* @param pInput the pointer to input data --* @param pOutput the pointer to output data --* @param pStorage the pointer to temporary storage --* @param Result the last failure code --* @return result from enable alert routine --*/ --static int tf_smu7_thermal_enable_alert(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) --{ -- return smu7_thermal_enable_alert(hwmgr); --} -- --/** --* Disable high and low alerts --* @param hwmgr the address of the powerplay hardware manager. --* @param pInput the pointer to input data --* @param pOutput the pointer to output data --* @param pStorage the pointer to temporary storage --* @param Result the last failure code --* @return result from disable alert routine --*/ --static int tf_smu7_thermal_disable_alert(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) --{ -- return smu7_thermal_disable_alert(hwmgr); --} -+ smu7_thermal_initialize(hwmgr); -+ ret = smu7_thermal_set_temperature_range(hwmgr, range->min, range->max); -+ if (ret) -+ return -EINVAL; -+ smu7_thermal_enable_alert(hwmgr); -+ ret = smum_thermal_avfs_enable(hwmgr); -+ if (ret) -+ return -EINVAL; - --static const struct phm_master_table_item --phm_thermal_start_thermal_controller_master_list[] = { -- { .tableFunction = tf_smu7_thermal_initialize }, -- { .tableFunction = tf_smu7_thermal_set_temperature_range }, -- { .tableFunction = tf_smu7_thermal_enable_alert }, -- { .tableFunction = smum_thermal_avfs_enable }, - /* We should restrict performance levels to low before we halt the SMC. - * On the other hand we are still in boot state when we do this - * so it would be pointless. - * If this assumption changes we have to revisit this table. - */ -- { .tableFunction = smum_thermal_setup_fan_table }, -- { .tableFunction = tf_smu7_thermal_start_smc_fan_control }, -- { } --}; -- --static const struct phm_master_table_header --phm_thermal_start_thermal_controller_master = { -- 0, -- PHM_MasterTableFlag_None, -- phm_thermal_start_thermal_controller_master_list --}; -- --static const struct phm_master_table_item --phm_thermal_set_temperature_range_master_list[] = { -- { .tableFunction = tf_smu7_thermal_disable_alert }, -- { .tableFunction = tf_smu7_thermal_set_temperature_range }, -- { .tableFunction = tf_smu7_thermal_enable_alert }, -- { } --}; -- --static const struct phm_master_table_header --phm_thermal_set_temperature_range_master = { -- 0, -- PHM_MasterTableFlag_None, -- phm_thermal_set_temperature_range_master_list --}; -+ smum_thermal_setup_fan_table(hwmgr); -+ smu7_thermal_start_smc_fan_control(hwmgr); -+ return 0; -+} -+ -+ - - int smu7_thermal_ctrl_uninitialize_thermal_controller(struct pp_hwmgr *hwmgr) - { -@@ -542,34 +467,3 @@ int smu7_thermal_ctrl_uninitialize_thermal_controller(struct pp_hwmgr *hwmgr) - return 0; - } - --/** --* Initializes the thermal controller related functions in the Hardware Manager structure. --* @param hwmgr The address of the hardware manager. --* @exception Any error code from the low-level communication. --*/ --int pp_smu7_thermal_initialize(struct pp_hwmgr *hwmgr) --{ -- int result; -- -- result = phm_construct_table(hwmgr, -- &phm_thermal_set_temperature_range_master, -- &(hwmgr->set_temperature_range)); -- -- if (!result) { -- result = phm_construct_table(hwmgr, -- &phm_thermal_start_thermal_controller_master, -- &(hwmgr->start_thermal_controller)); -- if (result) -- phm_destroy_table(hwmgr, &(hwmgr->set_temperature_range)); -- } -- -- if (!result) -- hwmgr->fan_ctrl_is_in_default_mode = true; -- return result; --} -- --void pp_smu7_thermal_fini(struct pp_hwmgr *hwmgr) --{ -- phm_destroy_table(hwmgr, &(hwmgr->set_temperature_range)); -- phm_destroy_table(hwmgr, &(hwmgr->start_thermal_controller)); --} -diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.h b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.h -index ba71b60..42c1ba0 100644 ---- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.h -+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.h -@@ -46,14 +46,13 @@ extern int smu7_fan_ctrl_set_default_mode(struct pp_hwmgr *hwmgr); - extern int smu7_fan_ctrl_set_static_mode(struct pp_hwmgr *hwmgr, uint32_t mode); - extern int smu7_fan_ctrl_set_fan_speed_percent(struct pp_hwmgr *hwmgr, uint32_t speed); - extern int smu7_fan_ctrl_reset_fan_speed_to_default(struct pp_hwmgr *hwmgr); --extern int pp_smu7_thermal_initialize(struct pp_hwmgr *hwmgr); --extern void pp_smu7_thermal_fini(struct pp_hwmgr *hwmgr); - extern int smu7_thermal_ctrl_uninitialize_thermal_controller(struct pp_hwmgr *hwmgr); - extern int smu7_fan_ctrl_set_fan_speed_rpm(struct pp_hwmgr *hwmgr, uint32_t speed); - extern int smu7_fan_ctrl_get_fan_speed_rpm(struct pp_hwmgr *hwmgr, uint32_t *speed); - extern int smu7_fan_ctrl_stop_smc_fan_control(struct pp_hwmgr *hwmgr); --extern int smu7_thermal_enable_alert(struct pp_hwmgr *hwmgr); - extern int smu7_thermal_disable_alert(struct pp_hwmgr *hwmgr); - extern int smu7_fan_ctrl_start_smc_fan_control(struct pp_hwmgr *hwmgr); -+extern int smu7_start_thermal_controller(struct pp_hwmgr *hwmgr, -+ struct PP_TemperatureRange *temperature_range); - #endif - -diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c -index c12264c..c60b80059 100644 ---- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c -+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c -@@ -5063,6 +5063,6 @@ int vega10_hwmgr_init(struct pp_hwmgr *hwmgr) - { - hwmgr->hwmgr_func = &vega10_hwmgr_funcs; - hwmgr->pptable_func = &vega10_pptable_funcs; -- pp_vega10_thermal_initialize(hwmgr); -+ - return 0; - } -diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c -index 5b3c443..ce873e4 100644 ---- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c -+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c -@@ -528,8 +528,7 @@ int vega10_thermal_stop_thermal_controller(struct pp_hwmgr *hwmgr) - * @param Result the last failure code - * @return result from set temperature range routine - */ --int tf_vega10_thermal_setup_fan_table(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) -+int vega10_thermal_setup_fan_table(struct pp_hwmgr *hwmgr) - { - int ret; - struct vega10_hwmgr *data = (struct vega10_hwmgr *)(hwmgr->backend); -@@ -593,8 +592,7 @@ int tf_vega10_thermal_setup_fan_table(struct pp_hwmgr *hwmgr, - * @param Result the last failure code - * @return result from set temperature range routine - */ --int tf_vega10_thermal_start_smc_fan_control(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) -+int vega10_thermal_start_smc_fan_control(struct pp_hwmgr *hwmgr) - { - /* If the fantable setup has failed we could have disabled - * PHM_PlatformCaps_MicrocodeFanControl even after -@@ -607,107 +605,37 @@ int tf_vega10_thermal_start_smc_fan_control(struct pp_hwmgr *hwmgr, - return 0; - } - --/** --* Set temperature range for high and low alerts --* @param hwmgr the address of the powerplay hardware manager. --* @param pInput the pointer to input data --* @param pOutput the pointer to output data --* @param pStorage the pointer to temporary storage --* @param Result the last failure code --* @return result from set temperature range routine --*/ --int tf_vega10_thermal_set_temperature_range(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) -+ -+int vega10_start_thermal_controller(struct pp_hwmgr *hwmgr, -+ struct PP_TemperatureRange *range) - { -- struct PP_TemperatureRange *range = (struct PP_TemperatureRange *)input; -+ int ret = 0; - - if (range == NULL) - return -EINVAL; - -- return vega10_thermal_set_temperature_range(hwmgr, range); --} -- --/** --* Programs one-time setting registers --* @param hwmgr the address of the powerplay hardware manager. --* @param pInput the pointer to input data --* @param pOutput the pointer to output data --* @param pStorage the pointer to temporary storage --* @param Result the last failure code --* @return result from initialize thermal controller routine --*/ --int tf_vega10_thermal_initialize(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) --{ -- return vega10_thermal_initialize(hwmgr); --} -- --/** --* Enable high and low alerts --* @param hwmgr the address of the powerplay hardware manager. --* @param pInput the pointer to input data --* @param pOutput the pointer to output data --* @param pStorage the pointer to temporary storage --* @param Result the last failure code --* @return result from enable alert routine --*/ --int tf_vega10_thermal_enable_alert(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) --{ -- return vega10_thermal_enable_alert(hwmgr); --} -- --/** --* Disable high and low alerts --* @param hwmgr the address of the powerplay hardware manager. --* @param pInput the pointer to input data --* @param pOutput the pointer to output data --* @param pStorage the pointer to temporary storage --* @param Result the last failure code --* @return result from disable alert routine --*/ --static int tf_vega10_thermal_disable_alert(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) --{ -- return vega10_thermal_disable_alert(hwmgr); --} -+ vega10_thermal_initialize(hwmgr); -+ ret = vega10_thermal_set_temperature_range(hwmgr, range); -+ if (ret) -+ return -EINVAL; - --static struct phm_master_table_item --vega10_thermal_start_thermal_controller_master_list[] = { -- { .tableFunction = tf_vega10_thermal_initialize }, -- { .tableFunction = tf_vega10_thermal_set_temperature_range }, -- { .tableFunction = tf_vega10_thermal_enable_alert }, -+ vega10_thermal_enable_alert(hwmgr); - /* We should restrict performance levels to low before we halt the SMC. - * On the other hand we are still in boot state when we do this - * so it would be pointless. - * If this assumption changes we have to revisit this table. - */ -- { .tableFunction = tf_vega10_thermal_setup_fan_table }, -- { .tableFunction = tf_vega10_thermal_start_smc_fan_control }, -- { } --}; -+ ret = vega10_thermal_setup_fan_table(hwmgr); -+ if (ret) -+ return -EINVAL; - --static struct phm_master_table_header --vega10_thermal_start_thermal_controller_master = { -- 0, -- PHM_MasterTableFlag_None, -- vega10_thermal_start_thermal_controller_master_list --}; -+ vega10_thermal_start_smc_fan_control(hwmgr); - --static struct phm_master_table_item --vega10_thermal_set_temperature_range_master_list[] = { -- { .tableFunction = tf_vega10_thermal_disable_alert }, -- { .tableFunction = tf_vega10_thermal_set_temperature_range }, -- { .tableFunction = tf_vega10_thermal_enable_alert }, -- { } -+ return 0; - }; - --struct phm_master_table_header --vega10_thermal_set_temperature_range_master = { -- 0, -- PHM_MasterTableFlag_None, -- vega10_thermal_set_temperature_range_master_list --}; -+ -+ - - int vega10_thermal_ctrl_uninitialize_thermal_controller(struct pp_hwmgr *hwmgr) - { -@@ -717,32 +645,3 @@ int vega10_thermal_ctrl_uninitialize_thermal_controller(struct pp_hwmgr *hwmgr) - } - return 0; - } -- --/** --* Initializes the thermal controller related functions --* in the Hardware Manager structure. --* @param hwmgr The address of the hardware manager. --* @exception Any error code from the low-level communication. --*/ --int pp_vega10_thermal_initialize(struct pp_hwmgr *hwmgr) --{ -- int result; -- -- result = phm_construct_table(hwmgr, -- &vega10_thermal_set_temperature_range_master, -- &(hwmgr->set_temperature_range)); -- -- if (!result) { -- result = phm_construct_table(hwmgr, -- &vega10_thermal_start_thermal_controller_master, -- &(hwmgr->start_thermal_controller)); -- if (result) -- phm_destroy_table(hwmgr, -- &(hwmgr->set_temperature_range)); -- } -- -- if (!result) -- hwmgr->fan_ctrl_is_in_default_mode = true; -- return result; --} -- -diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.h b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.h -index 776f3a2..f34ce04 100644 ---- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.h -+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.h -@@ -50,13 +50,6 @@ struct vega10_temperature { - #define FDO_PWM_MODE_STATIC_RPM 5 - - --extern int tf_vega10_thermal_initialize(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result); --extern int tf_vega10_thermal_set_temperature_range(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result); --extern int tf_vega10_thermal_enable_alert(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result); -- - extern int vega10_thermal_get_temperature(struct pp_hwmgr *hwmgr); - extern int vega10_thermal_stop_thermal_controller(struct pp_hwmgr *hwmgr); - extern int vega10_fan_ctrl_get_fan_speed_info(struct pp_hwmgr *hwmgr, -@@ -69,7 +62,6 @@ extern int vega10_fan_ctrl_set_static_mode(struct pp_hwmgr *hwmgr, - extern int vega10_fan_ctrl_set_fan_speed_percent(struct pp_hwmgr *hwmgr, - uint32_t speed); - extern int vega10_fan_ctrl_reset_fan_speed_to_default(struct pp_hwmgr *hwmgr); --extern int pp_vega10_thermal_initialize(struct pp_hwmgr *hwmgr); - extern int vega10_thermal_ctrl_uninitialize_thermal_controller( - struct pp_hwmgr *hwmgr); - extern int vega10_fan_ctrl_set_fan_speed_rpm(struct pp_hwmgr *hwmgr, -@@ -77,9 +69,10 @@ extern int vega10_fan_ctrl_set_fan_speed_rpm(struct pp_hwmgr *hwmgr, - extern int vega10_fan_ctrl_get_fan_speed_rpm(struct pp_hwmgr *hwmgr, - uint32_t *speed); - extern int vega10_fan_ctrl_stop_smc_fan_control(struct pp_hwmgr *hwmgr); --extern uint32_t smu7_get_xclk(struct pp_hwmgr *hwmgr); - extern int vega10_thermal_disable_alert(struct pp_hwmgr *hwmgr); --int vega10_fan_ctrl_start_smc_fan_control(struct pp_hwmgr *hwmgr); -+extern int vega10_fan_ctrl_start_smc_fan_control(struct pp_hwmgr *hwmgr); -+ -+extern uint32_t smu7_get_xclk(struct pp_hwmgr *hwmgr); - - #endif - -diff --git a/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h b/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h -index 3bbe7d5..831add4 100644 ---- a/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h -+++ b/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h -@@ -380,6 +380,7 @@ struct pp_hwmgr_func { - int (*disable_smc_firmware_ctf)(struct pp_hwmgr *hwmgr); - int (*set_active_display_count)(struct pp_hwmgr *hwmgr, uint32_t count); - int (*set_deep_sleep_dcefclk)(struct pp_hwmgr *hwmgr, uint32_t clock); -+ int (*start_thermal_controller)(struct pp_hwmgr *hwmgr, struct PP_TemperatureRange *range); - }; - - struct pp_table_func { -@@ -766,8 +767,6 @@ struct pp_hwmgr { - struct phm_runtime_table_header set_power_state; - struct phm_runtime_table_header enable_clock_power_gatings; - struct phm_runtime_table_header display_configuration_changed; -- struct phm_runtime_table_header start_thermal_controller; -- struct phm_runtime_table_header set_temperature_range; - const struct pp_hwmgr_func *hwmgr_func; - const struct pp_table_func *pptable_func; - struct pp_power_state *ps; -diff --git a/drivers/gpu/drm/amd/powerplay/inc/smumgr.h b/drivers/gpu/drm/amd/powerplay/inc/smumgr.h -index 5d61cc9..eb66091 100644 ---- a/drivers/gpu/drm/amd/powerplay/inc/smumgr.h -+++ b/drivers/gpu/drm/amd/powerplay/inc/smumgr.h -@@ -186,10 +186,8 @@ extern int smum_update_sclk_threshold(struct pp_hwmgr *hwmgr); - - extern int smum_update_smc_table(struct pp_hwmgr *hwmgr, uint32_t type); - extern int smum_process_firmware_header(struct pp_hwmgr *hwmgr); --extern int smum_thermal_avfs_enable(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result); --extern int smum_thermal_setup_fan_table(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result); -+extern int smum_thermal_avfs_enable(struct pp_hwmgr *hwmgr); -+extern int smum_thermal_setup_fan_table(struct pp_hwmgr *hwmgr); - extern int smum_init_smc_table(struct pp_hwmgr *hwmgr); - extern int smum_populate_all_graphic_levels(struct pp_hwmgr *hwmgr); - extern int smum_populate_all_memory_levels(struct pp_hwmgr *hwmgr); -diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c -index e397349..4527c07 100644 ---- a/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c -+++ b/drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c -@@ -114,8 +114,7 @@ int smum_early_init(struct pp_instance *handle) - return 0; - } - --int smum_thermal_avfs_enable(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) -+int smum_thermal_avfs_enable(struct pp_hwmgr *hwmgr) - { - if (NULL != hwmgr->smumgr->smumgr_funcs->thermal_avfs_enable) - return hwmgr->smumgr->smumgr_funcs->thermal_avfs_enable(hwmgr); -@@ -123,8 +122,7 @@ int smum_thermal_avfs_enable(struct pp_hwmgr *hwmgr, - return 0; - } - --int smum_thermal_setup_fan_table(struct pp_hwmgr *hwmgr, -- void *input, void *output, void *storage, int result) -+int smum_thermal_setup_fan_table(struct pp_hwmgr *hwmgr) - { - if (NULL != hwmgr->smumgr->smumgr_funcs->thermal_setup_fan_table) - return hwmgr->smumgr->smumgr_funcs->thermal_setup_fan_table(hwmgr); --- -2.7.4 - |