[PATCH 1/3] drm/amd/pp: Remove cgs wrap interface for temperature update

Christian König ckoenig.leichtzumerken at gmail.com
Mon Mar 5 11:23:35 UTC 2018


Acked-by: Christian König <christian.koenig at amd.com> for the series.

Am 05.03.2018 um 11:43 schrieb Rex Zhu:
> Change-Id: I742e82315910ce57aeb4a391fe2ac1cdfccdb8ea
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c               | 13 -------------
>   drivers/gpu/drm/amd/include/cgs_common.h              |  6 ------
>   drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c |  4 +++-
>   3 files changed, 3 insertions(+), 20 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> index f37482c..76f4758 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> @@ -905,18 +905,6 @@ static int amdgpu_cgs_notify_dpm_enabled(struct cgs_device *cgs_device, bool ena
>   	return 0;
>   }
>   
> -static int amdgpu_cgs_set_temperature_range(struct cgs_device *cgs_device,
> -					int min_temperature,
> -					int max_temperature)
> -{
> -	CGS_FUNC_ADEV;
> -
> -	adev->pm.dpm.thermal.min_temp = min_temperature;
> -	adev->pm.dpm.thermal.max_temp = max_temperature;
> -
> -	return 0;
> -}
> -
>   static const struct cgs_ops amdgpu_cgs_ops = {
>   	.alloc_gpu_mem = amdgpu_cgs_alloc_gpu_mem,
>   	.free_gpu_mem = amdgpu_cgs_free_gpu_mem,
> @@ -941,7 +929,6 @@ static int amdgpu_cgs_set_temperature_range(struct cgs_device *cgs_device,
>   	.is_virtualization_enabled = amdgpu_cgs_is_virtualization_enabled,
>   	.enter_safe_mode = amdgpu_cgs_enter_safe_mode,
>   	.lock_grbm_idx = amdgpu_cgs_lock_grbm_idx,
> -	.set_temperature_range = amdgpu_cgs_set_temperature_range,
>   };
>   
>   static const struct cgs_os_ops amdgpu_cgs_os_ops = {
> diff --git a/drivers/gpu/drm/amd/include/cgs_common.h b/drivers/gpu/drm/amd/include/cgs_common.h
> index 113ba6f..7f26f20 100644
> --- a/drivers/gpu/drm/amd/include/cgs_common.h
> +++ b/drivers/gpu/drm/amd/include/cgs_common.h
> @@ -354,9 +354,6 @@ typedef int(*cgs_get_active_displays_info)(
>   
>   typedef void (*cgs_lock_grbm_idx)(struct cgs_device *cgs_device, bool lock);
>   
> -typedef int (*cgs_set_temperature_range)(struct cgs_device *cgs_device,
> -					int min_temperature,
> -					int max_temperature);
>   struct cgs_ops {
>   	/* memory management calls (similar to KFD interface) */
>   	cgs_alloc_gpu_mem_t alloc_gpu_mem;
> @@ -389,7 +386,6 @@ struct cgs_ops {
>   	cgs_is_virtualization_enabled_t is_virtualization_enabled;
>   	cgs_enter_safe_mode enter_safe_mode;
>   	cgs_lock_grbm_idx lock_grbm_idx;
> -	cgs_set_temperature_range set_temperature_range;
>   };
>   
>   struct cgs_os_ops; /* To be define in OS-specific CGS header */
> @@ -465,7 +461,5 @@ struct cgs_device
>   #define cgs_lock_grbm_idx(cgs_device, lock) \
>   		CGS_CALL(lock_grbm_idx, cgs_device, lock)
>   
> -#define cgs_set_temperature_range(dev, min_temp, max_temp)	\
> -	CGS_CALL(set_temperature_range, dev, min_temp, max_temp)
>   
>   #endif /* _CGS_COMMON_H */
> diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c b/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c
> index f06f8f4..b784131 100644
> --- a/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c
> +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c
> @@ -222,6 +222,7 @@ int phm_start_thermal_controller(struct pp_hwmgr *hwmgr)
>   {
>   	int ret = 0;
>   	struct PP_TemperatureRange range = {TEMP_RANGE_MIN, TEMP_RANGE_MAX};
> +	struct amdgpu_device *adev = hwmgr->adev;
>   
>   	if (hwmgr->hwmgr_func->get_thermal_temperature_range)
>   		hwmgr->hwmgr_func->get_thermal_temperature_range(
> @@ -232,7 +233,8 @@ int phm_start_thermal_controller(struct pp_hwmgr *hwmgr)
>   			&& hwmgr->hwmgr_func->start_thermal_controller != NULL)
>   		ret = hwmgr->hwmgr_func->start_thermal_controller(hwmgr, &range);
>   
> -	cgs_set_temperature_range(hwmgr->device, range.min, range.max);
> +	adev->pm.dpm.thermal.min_temp = range.min;
> +	adev->pm.dpm.thermal.max_temp = range.max;
>   
>   	return ret;
>   }



More information about the amd-gfx mailing list