[PATCH 3/3] drm/amd/display: Implement zpos property

Harry Wentland harry.wentland at amd.com
Thu Jul 13 17:55:51 UTC 2023



On 2023-07-08 22:06, Joshua Ashton wrote:
> Despite certain GPUs supporting multiple overlay planes already in
> AMDGPU, the driver did not expose the zpos property which is required
> for userspace to take advantage of multiple overlay planes in any
> meaningful way.
> 
> The driver was already hooked up to normalized_zpos, but was just
> missing the exposure of it.
> 
> Signed-off-by: Joshua Ashton <joshua at froggi.es>

Series is
Reviewed-by: Harry Wentland <harry.wentland at amd.com>

Harry

> 
> Cc: Harry Wentland <harry.wentland at amd.com>
> Cc: Melissa Wen <mwen at igalia.com>
> Cc: Simon Ser <contact at emersion.fr>
> ---
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c
> index 8eeca160d434..2198df96ed6f 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c
> @@ -1468,6 +1468,15 @@ int amdgpu_dm_plane_init(struct amdgpu_display_manager *dm,
>  		drm_plane_create_blend_mode_property(plane, blend_caps);
>  	}
>  
> +	if (plane->type == DRM_PLANE_TYPE_PRIMARY) {
> +		drm_plane_create_zpos_immutable_property(plane, 0);
> +	} else if (plane->type == DRM_PLANE_TYPE_OVERLAY) {
> +		unsigned int zpos = 1 + drm_plane_index(plane);
> +		drm_plane_create_zpos_property(plane, zpos, 1, 254);
> +	} else if (plane->type == DRM_PLANE_TYPE_CURSOR) {
> +		drm_plane_create_zpos_immutable_property(plane, 255);
> +	}
> +
>  	if (plane->type == DRM_PLANE_TYPE_PRIMARY &&
>  	    plane_cap &&
>  	    (plane_cap->pixel_format_support.nv12 ||



More information about the amd-gfx mailing list