]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/amdgpu: display: Convert to drm_output_color_format
authorMaxime Ripard <mripard@kernel.org>
Thu, 5 Mar 2026 09:04:56 +0000 (10:04 +0100)
committerMaxime Ripard <mripard@kernel.org>
Tue, 24 Mar 2026 12:54:30 +0000 (13:54 +0100)
Now that we introduced a new drm_output_color_format enum to represent
what DRM_COLOR_FORMAT_* bits were representing, we can switch to the new
enum.

The main difference is that while DRM_COLOR_FORMAT_ was a bitmask,
drm_output_color_format is a proper enum. However, the enum was done is
such a way than DRM_COLOR_FORMAT_X = BIT(DRM_OUTPUT_COLOR_FORMAT_X) so
the transitition is easier.

The only thing we need to consider is if the original code meant to use
that value as a bitmask, in which case we do need to keep the bit shift,
or as a discriminant in which case we don't.

Acked-by: Jani Nikula <jani.nikula@intel.com>
Tested-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Link: https://lore.kernel.org/r/20260305-drm-rework-color-formats-v3-4-f3935f6db579@kernel.org
Signed-off-by: Maxime Ripard <mripard@kernel.org>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c

index fc5e0bf121d223adb4015af2fd08f2d1e2c0ae34..a0d4ab4590e1698741a2155e5c030586878e7253 100644 (file)
@@ -6660,11 +6660,11 @@ static void fill_stream_properties_from_drm_display_mode(
                        && aconnector
                        && aconnector->force_yuv420_output)
                timing_out->pixel_encoding = PIXEL_ENCODING_YCBCR420;
-       else if ((connector->display_info.color_formats & DRM_COLOR_FORMAT_YCBCR422)
+       else if ((connector->display_info.color_formats & BIT(DRM_OUTPUT_COLOR_FORMAT_YCBCR422))
                        && aconnector
                        && aconnector->force_yuv422_output)
                timing_out->pixel_encoding = PIXEL_ENCODING_YCBCR422;
-       else if ((connector->display_info.color_formats & DRM_COLOR_FORMAT_YCBCR444)
+       else if ((connector->display_info.color_formats & BIT(DRM_OUTPUT_COLOR_FORMAT_YCBCR444))
                        && stream->signal == SIGNAL_TYPE_HDMI_TYPE_A)
                timing_out->pixel_encoding = PIXEL_ENCODING_YCBCR444;
        else