[PATCH 2/2] drm/amd/pm: add support for IP version 11.5.2

Mario Limonciello mario.limonciello at amd.com
Wed Feb 5 04:32:12 UTC 2025


On 2/4/2025 20:48, Ying Li wrote:
> This initializes drm/amd/pm version 11.5.2
> 
> Signed-off-by: YING LI <yingli12 at amd.com>
Reviewed-by: Mario Limonciello <mario.limonciello at amd.com>
> ---
>   drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c      | 3 +++
>   drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c | 5 ++++-
>   2 files changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c b/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
> index 51c2a7f4aba2..dd4cffd94a90 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
> @@ -693,6 +693,7 @@ static int smu_set_funcs(struct amdgpu_device *adev)
>   		renoir_set_ppt_funcs(smu);
>   		break;
>   	case IP_VERSION(11, 5, 0):
> +	case IP_VERSION(11, 5, 2):
>   		vangogh_set_ppt_funcs(smu);
>   		break;
>   	case IP_VERSION(13, 0, 1):
> @@ -1565,6 +1566,7 @@ static int smu_smc_hw_setup(struct smu_context *smu)
>   	case IP_VERSION(11, 0, 7):
>   	case IP_VERSION(11, 0, 11):
>   	case IP_VERSION(11, 5, 0):
> +	case IP_VERSION(11, 5, 2):
>   	case IP_VERSION(11, 0, 12):
>   		if (adev->in_suspend && smu_is_dpm_running(smu)) {
>   			dev_info(adev->dev, "dpm has been enabled\n");
> @@ -1918,6 +1920,7 @@ static int smu_disable_dpms(struct smu_context *smu)
>   		case IP_VERSION(11, 0, 7):
>   		case IP_VERSION(11, 0, 11):
>   		case IP_VERSION(11, 5, 0):
> +		case IP_VERSION(11, 5, 2):
>   		case IP_VERSION(11, 0, 12):
>   		case IP_VERSION(11, 0, 13):
>   			return 0;
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c b/drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c
> index 189c6a32b6bd..48912c7295ab 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c
> @@ -227,6 +227,7 @@ int smu_v11_0_check_fw_version(struct smu_context *smu)
>   		smu->smc_driver_if_version = SMU11_DRIVER_IF_VERSION_Navy_Flounder;
>   		break;
>   	case IP_VERSION(11, 5, 0):
> +	case IP_VERSION(11, 5, 2):
>   		smu->smc_driver_if_version = SMU11_DRIVER_IF_VERSION_VANGOGH;
>   		break;
>   	case IP_VERSION(11, 0, 12):
> @@ -472,7 +473,7 @@ int smu_v11_0_init_power(struct smu_context *smu)
>   	struct amdgpu_device *adev = smu->adev;
>   	struct smu_power_context *smu_power = &smu->smu_power;
>   	size_t size = amdgpu_ip_version(adev, MP1_HWIP, 0) ==
> -				      IP_VERSION(11, 5, 0) ?
> +				      (IP_VERSION(11, 5, 0) || IP_VERSION(11, 5, 2)) ?
>   			      sizeof(struct smu_11_5_power_context) :
>   			      sizeof(struct smu_11_0_power_context);
>   
> @@ -731,6 +732,7 @@ int smu_v11_0_init_display_count(struct smu_context *smu, uint32_t count)
>   	 */
>   	if (amdgpu_ip_version(adev, MP1_HWIP, 0) == IP_VERSION(11, 0, 11) ||
>   	    amdgpu_ip_version(adev, MP1_HWIP, 0) == IP_VERSION(11, 5, 0) ||
> +	    amdgpu_ip_version(adev, MP1_HWIP, 0) == IP_VERSION(11, 5, 2) ||
>   	    amdgpu_ip_version(adev, MP1_HWIP, 0) == IP_VERSION(11, 0, 12) ||
>   	    amdgpu_ip_version(adev, MP1_HWIP, 0) == IP_VERSION(11, 0, 13))
>   		return 0;
> @@ -1110,6 +1112,7 @@ int smu_v11_0_gfx_off_control(struct smu_context *smu, bool enable)
>   	case IP_VERSION(11, 0, 12):
>   	case IP_VERSION(11, 0, 13):
>   	case IP_VERSION(11, 5, 0):
> +	case IP_VERSION(11, 5, 2):
>   		if (!(adev->pm.pp_feature & PP_GFXOFF_MASK))
>   			return 0;
>   		if (enable)



More information about the amd-gfx mailing list