]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/amd/display: Add COLOR_ENCODING/COLOR_RANGE to overlay planes
authorHarry Wentland <harry.wentland@amd.com>
Thu, 15 Jan 2026 19:12:46 +0000 (14:12 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 11 Mar 2026 14:55:41 +0000 (10:55 -0400)
Extend COLOR_ENCODING and COLOR_RANGE property creation to overlay
planes in addition to primary planes. This allows overlay planes to
use YUV formats with proper color space configuration when the
hardware supports NV12/P010 formats.

These properties control the YUV-to-RGB conversion matrix selection
(BT.601/BT.709/BT.2020) and range handling (limited/full range).

Assisted-by: Claude: claude-sonnet-4.5
Reviewed-by: Alex Hung <alex.hung@amd.com>
Signed-off-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Hung <alex.hung@amd.com>
Tested-by: Dan Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c

index af069cce0cb2879f4c7153b9cab788151e2540ec..d8c69fc94abbca9d896c50018dcfee121774d034 100644 (file)
@@ -1911,7 +1911,8 @@ int amdgpu_dm_plane_init(struct amdgpu_display_manager *dm,
                drm_plane_create_zpos_immutable_property(plane, 255);
        }
 
-       if (plane->type == DRM_PLANE_TYPE_PRIMARY &&
+       if ((plane->type == DRM_PLANE_TYPE_PRIMARY ||
+            plane->type == DRM_PLANE_TYPE_OVERLAY) &&
            plane_cap &&
            (plane_cap->pixel_format_support.nv12 ||
             plane_cap->pixel_format_support.p010)) {