[PATCH 3/3] drm/amd/display: convert to DCE IP version checking

Huang Rui ray.huang at amd.com
Mon Jan 24 07:34:54 UTC 2022


On Mon, Jan 24, 2022 at 11:20:42AM +0800, Huang, Tim wrote:
> Use IP versions rather than asic_type to differentiate IP version specific features.
> 
> Signed-off-by: Tim Huang <xiaohu.huang at amd.com>
> ---
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 12 +++++-------
>  1 file changed, 5 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index 87299e62fe12..c967e1e344e4 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -1119,19 +1119,17 @@ static int dm_dmub_hw_init(struct amdgpu_device *adev)
>  	for (i = 0; i < fb_info->num_fb; ++i)
>  		hw_params.fb[i] = &fb_info->fb[i];
>  
> -	switch (adev->asic_type) {
> -	case CHIP_YELLOW_CARP:
> -		if (dc->ctx->asic_id.hw_internal_rev != YELLOW_CARP_A0) {
> -			hw_params.dpia_supported = true;
> +	switch (adev->ip_versions[DCE_HWIP][0]) {
> +	case IP_VERSION(3, 1, 3): /* Only for this asic hw internal rev B0 */

There is another way to define a APU flag on enum amd_apu_flags to
differentiate A0 and B0 for yellow carp.

But this way looks good for me as well.
Patch is Acked-by: Huang Rui <ray.huang at amd.com>

> +		hw_params.dpia_supported = true;
>  #if defined(CONFIG_DRM_AMD_DC_DCN)
> -			hw_params.disable_dpia = dc->debug.dpia_debug.bits.disable_dpia;
> +		hw_params.disable_dpia = dc->debug.dpia_debug.bits.disable_dpia;
>  #endif
> -		}
>  		break;
>  	default:
>  		break;
>  	}
> -
> +	
>  	status = dmub_srv_hw_init(dmub_srv, &hw_params);
>  	if (status != DMUB_STATUS_OK) {
>  		DRM_ERROR("Error initializing DMUB HW: %d\n", status);
> -- 
> 2.25.1
> 


More information about the amd-gfx mailing list