Hi Mykhailo,

Nicolas has took over this series, check this:
https://patchwork.kernel.org/project/linux-rockchip/cover/[email protected]/

Best regards,
Shengyu

在 2026/2/14 18:56, Mykhailo Kalashnikov 写道:
Hi Shengyu,

I've been testing your pixel_encoding patch series (v2) on kernel 6.18.5
with an AMD RX 9070 XT (gfx1201/Navi 48) and found two bugs where
PIXEL_ENCODING_YCBCR422 handling is missing.

Both get_connector_state_pixel_encoding() and dc_pixel_encoding_to_drm_prop()
handle RGB, YCBCR444, and YCBCR420 but are missing the YCBCR422 case.
This causes YCbCr 4:2:2 to never be applied — the switch falls through to
default, get_connector_state_pixel_encoding() returns false, and auto-select
picks RGB instead.

Fix 1: get_connector_state_pixel_encoding() missing YCBCR422
-------------------------------------------------------------

   case PIXEL_ENCODING_YCBCR444:
   ret = (info->color_formats & DRM_COLOR_FORMAT_YCBCR444);
   break;
+ case PIXEL_ENCODING_YCBCR422:
+ ret = (info->color_formats & DRM_COLOR_FORMAT_YCBCR422);
+ break;
   case PIXEL_ENCODING_YCBCR420:
   ret = drm_mode_is_420(info, mode_in);
   break;

Fix 2: dc_pixel_encoding_to_drm_prop() missing YCBCR422
--------------------------------------------------------

   case PIXEL_ENCODING_YCBCR444:
   propval = DRM_COLOR_FORMAT_YCBCR444;
   break;
+ case PIXEL_ENCODING_YCBCR422:
+ propval = DRM_COLOR_FORMAT_YCBCR422;
+ break;
   case PIXEL_ENCODING_YCBCR420:
   propval = DRM_COLOR_FORMAT_YCBCR420;
   break;

Both are in drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c.

Tested with amdgpu.pixel_encoding=DP-2:ycbcr422 on the following setup:

   GPU:     AMD RX 9070 XT (gfx1201 / Navi 48)
   Kernel:  6.18.5
   KVM:     TESmart HKD402-M24 (DP 1.4 in, HDMI 2.1 out)
   Monitor: Dell AW3225QF (HDMI 2.1)
   Link:    GPU DP 1.4 -> KVM -> HDMI 2.1 -> Monitor

Without these fixes, the module parameter is accepted but ignored — display
stays in RGB. With both fixes, YCbCr 4:2:2 is correctly applied and
confirmed via modetest (pixel encoding property value: 4).

Thanks for the patch series — it fills an important gap for users with
DP-to-HDMI KVM setups who need non-RGB pixel encoding.

Regards,
Mykhailo Kalashnikov

Attachment: OpenPGP_0xE3520CC91929C8E7.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to