[PATCH V9 24/43] drm/amd/display: Add bypass COLOR PIPELINE

Melissa Wen mwen at igalia.com
Mon May 12 18:41:31 UTC 2025


On 04/29, Alex Hung wrote:
> From: Harry Wentland <harry.wentland at amd.com>
> 
> Add the default Bypass pipeline and ensure it passes the
> kms_colorop test plane-XR30-XR30-bypass.
> 
> Signed-off-by: Alex Hung <alex.hung at amd.com>
> Signed-off-by: Harry Wentland <harry.wentland at amd.com>
> Reviewed-by: Daniel Stone <daniels at collabora.com>
> ---
>  .../amd/display/amdgpu_dm/amdgpu_dm_plane.c   | 19 +++++++++++++++++++
>  1 file changed, 19 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 3e0f45f1711c..fb6f07603050 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
> @@ -1784,6 +1784,20 @@ dm_atomic_plane_get_property(struct drm_plane *plane,
>  }
>  #endif
> 
> +#define MAX_COLOR_PIPELINES 5
> +
> +static int
> +dm_plane_init_colorops(struct drm_plane *plane)
> +{
> +	struct drm_prop_enum_list pipelines[MAX_COLOR_PIPELINES];
> +	int len = 0;
> +
> +	/* Create COLOR_PIPELINE property and attach */
> +	drm_plane_create_color_pipeline_property(plane, pipelines, len);
> +
> +	return 0;
> +}
> +

This function is unused if AMD_PRIVATE_COLOR (warning).
I think you can add an #else just before the define MAX_COLOR_PIPELINES
(replacing the above #endif there, and move the #endif to here to solve
it.

Melissa

>  static const struct drm_plane_funcs dm_plane_funcs = {
>  	.update_plane	= drm_atomic_helper_update_plane,
>  	.disable_plane	= drm_atomic_helper_disable_plane,
> @@ -1890,7 +1904,12 @@ int amdgpu_dm_plane_init(struct amdgpu_display_manager *dm,
>  
>  #ifdef AMD_PRIVATE_COLOR
>  	dm_atomic_plane_attach_color_mgmt_properties(dm, plane);
> +#else
> +	res = dm_plane_init_colorops(plane);
> +	if (res)
> +		return res;
>  #endif
> +
>  	/* Create (reset) the plane state */
>  	if (plane->funcs->reset)
>  		plane->funcs->reset(plane);
> -- 
> 2.43.0
> 


More information about the wayland-devel mailing list