[PATCH] drm/amd/powerplay: detect version of smu backend

William Lewis minutemaidpark at hotmail.com
Fri Jun 14 13:33:23 UTC 2019


On 6/14/19 2:01 AM, Prike Liang wrote:
> Change-Id: Ib050c8cf0c2c5af4c1f747cf596860f9be01a2d3
> Signed-off-by: Prike Liang <Prike.Liang at amd.com>
> ---
>   drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c             | 1 +
>   drivers/gpu/drm/amd/powerplay/inc/hwmgr.h               | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.c        | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c      | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/iceland_smumgr.c   | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/smu10_smumgr.c     | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c      | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c     | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c    | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/vega12_smumgr.c    | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/vega20_smumgr.c    | 1 +
>   drivers/gpu/drm/amd/powerplay/smumgr/vegam_smumgr.c     | 1 +
>   13 files changed, 13 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c
> index f1d326c..b996819 100644
> --- a/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c
> @@ -194,6 +194,7 @@ int hwmgr_sw_init(struct pp_hwmgr *hwmgr)
>   		return -EINVAL;
>   
>   	phm_register_irq_handlers(hwmgr);
> +	pr_info("hwmgr_sw_init smu backed is %s\n",hwmgr->smumgr_funcs->name);
s/backed/backend/
>   
>   	return hwmgr->smumgr_funcs->smu_init(hwmgr);
>   }
> diff --git a/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h b/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h
> index c92999a..47dbecc 100644
> --- a/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h
> +++ b/drivers/gpu/drm/amd/powerplay/inc/hwmgr.h
> @@ -190,6 +190,7 @@ struct phm_vce_clock_voltage_dependency_table {
>   };
>   
>   struct pp_smumgr_func {
> +	char *name;
>   	int (*smu_init)(struct pp_hwmgr  *hwmgr);
>   	int (*smu_fini)(struct pp_hwmgr  *hwmgr);
>   	int (*start_smu)(struct pp_hwmgr  *hwmgr);
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.c
> index 9ef57fc..022f3c8 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.c
> @@ -2935,6 +2935,7 @@ static int ci_update_smc_table(struct pp_hwmgr *hwmgr, uint32_t type)
>   }
>   
>   const struct pp_smumgr_func ci_smu_funcs = {
> +	.name = "ci_smu",
>   	.smu_init = ci_smu_init,
>   	.smu_fini = ci_smu_fini,
>   	.start_smu = ci_start_smu,
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c
> index 0ce85b7..da025b1 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c
> @@ -2643,6 +2643,7 @@ static int fiji_update_dpm_settings(struct pp_hwmgr *hwmgr,
>   }
>   
>   const struct pp_smumgr_func fiji_smu_funcs = {
> +	.name = "fiji_smu",
>   	.smu_init = &fiji_smu_init,
>   	.smu_fini = &smu7_smu_fini,
>   	.start_smu = &fiji_start_smu,
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/iceland_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/iceland_smumgr.c
> index f24f13d..f414f22 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/iceland_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/iceland_smumgr.c
> @@ -2661,6 +2661,7 @@ static bool iceland_is_dpm_running(struct pp_hwmgr *hwmgr)
>   }
>   
>   const struct pp_smumgr_func iceland_smu_funcs = {
> +	.name = "iceland_smu",
>   	.smu_init = &iceland_smu_init,
>   	.smu_fini = &smu7_smu_fini,
>   	.start_smu = &iceland_start_smu,
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c
> index 0d8958e..fbac2d3 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c
> @@ -2550,6 +2550,7 @@ static int polaris10_update_dpm_settings(struct pp_hwmgr *hwmgr,
>   }
>   
>   const struct pp_smumgr_func polaris10_smu_funcs = {
> +	.name = "polaris10_smu",
>   	.smu_init = polaris10_smu_init,
>   	.smu_fini = smu7_smu_fini,
>   	.start_smu = polaris10_start_smu,
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/smu10_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/smu10_smumgr.c
> index 6d11076a..ca66035 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/smu10_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/smu10_smumgr.c
> @@ -291,6 +291,7 @@ static int smu10_smc_table_manager(struct pp_hwmgr *hwmgr, uint8_t *table, uint1
>   
>   
>   const struct pp_smumgr_func smu10_smu_funcs = {
> +	.name = "smu10_smu",
>   	.smu_init = &smu10_smu_init,
>   	.smu_fini = &smu10_smu_fini,
>   	.start_smu = &smu10_start_smu,
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c
> index e2787e1..8189fe4 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c
> @@ -881,6 +881,7 @@ static bool smu8_is_dpm_running(struct pp_hwmgr *hwmgr)
>   }
>   
>   const struct pp_smumgr_func smu8_smu_funcs = {
> +	.name = "smu8_smu",
>   	.smu_init = smu8_smu_init,
>   	.smu_fini = smu8_smu_fini,
>   	.start_smu = smu8_start_smu,
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c
> index 060c0f7..be5b7df 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c
> @@ -3240,6 +3240,7 @@ static int tonga_update_dpm_settings(struct pp_hwmgr *hwmgr,
>   }
>   
>   const struct pp_smumgr_func tonga_smu_funcs = {
> +	.name = "tonga_smu",
>   	.smu_init = &tonga_smu_init,
>   	.smu_fini = &smu7_smu_fini,
>   	.start_smu = &tonga_start_smu,
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c
> index c81acc3..7bfef8d 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c
> @@ -346,6 +346,7 @@ static int vega10_smc_table_manager(struct pp_hwmgr *hwmgr, uint8_t *table,
>   }
>   
>   const struct pp_smumgr_func vega10_smu_funcs = {
> +	.name = "vega10_smu",
>   	.smu_init = &vega10_smu_init,
>   	.smu_fini = &vega10_smu_fini,
>   	.start_smu = &vega10_start_smu,
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/vega12_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/vega12_smumgr.c
> index 1eaf0fa..9ad07a91c 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/vega12_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/vega12_smumgr.c
> @@ -386,6 +386,7 @@ static int vega12_smc_table_manager(struct pp_hwmgr *hwmgr, uint8_t *table,
>   }
>   
>   const struct pp_smumgr_func vega12_smu_funcs = {
> +	.name ="vega12_smu",
>   	.smu_init = &vega12_smu_init,
>   	.smu_fini = &vega12_smu_fini,
>   	.start_smu = &vega12_start_smu,
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/vega20_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/vega20_smumgr.c
> index f301a73..957446c 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/vega20_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/vega20_smumgr.c
> @@ -592,6 +592,7 @@ static int vega20_smc_table_manager(struct pp_hwmgr *hwmgr, uint8_t *table,
>   }
>   
>   const struct pp_smumgr_func vega20_smu_funcs = {
> +	.name = "vega20_smu",
>   	.smu_init = &vega20_smu_init,
>   	.smu_fini = &vega20_smu_fini,
>   	.start_smu = &vega20_start_smu,
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/vegam_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/vegam_smumgr.c
> index d499204..7c960b0 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/vegam_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/vegam_smumgr.c
> @@ -2279,6 +2279,7 @@ static int vegam_thermal_setup_fan_table(struct pp_hwmgr *hwmgr)
>   }
>   
>   const struct pp_smumgr_func vegam_smu_funcs = {
> +	.name = "vegam_smu",
>   	.smu_init = vegam_smu_init,
>   	.smu_fini = smu7_smu_fini,
>   	.start_smu = vegam_start_smu,


More information about the amd-gfx mailing list