]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/i915: Drop 64bpp YUV formats from ICL+ SDR planes
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 18 Dec 2024 17:36:47 +0000 (19:36 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 28 Jan 2025 16:33:20 +0000 (18:33 +0200)
I'm seeing underruns with these 64bpp YUV formats on TGL.

The weird details:
- only happens on pipe B/C/D SDR planes, pipe A SDR planes
  seem fine, as do all HDR planes
- somehow CDCLK related, higher CDCLK allows for bigger plane
  with these formats without underruns. With 300MHz CDCLK I
  can only go up to 1200 pixels wide or so, with 650MHz even
  a 3840 pixel wide plane was OK
- ICL and ADL so far appear unaffected

So not really sure what's the deal with this, but bspec does
state "64-bit formats supported only on the HDR planes" so
let's just drop these formats from the SDR planes. We already
disallow 64bpp RGB formats.

Cc: stable@vger.kernel.org
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241218173650.19782-2-ville.syrjala@linux.intel.com
Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
drivers/gpu/drm/i915/display/skl_universal_plane.c

index 301ad3a22c4c6999d76676034613ae95800f0462..ba5db553c374259f8f3246c1408b55d32c8794e5 100644 (file)
@@ -106,8 +106,6 @@ static const u32 icl_sdr_y_plane_formats[] = {
        DRM_FORMAT_Y216,
        DRM_FORMAT_XYUV8888,
        DRM_FORMAT_XVYU2101010,
-       DRM_FORMAT_XVYU12_16161616,
-       DRM_FORMAT_XVYU16161616,
 };
 
 static const u32 icl_sdr_uv_plane_formats[] = {
@@ -134,8 +132,6 @@ static const u32 icl_sdr_uv_plane_formats[] = {
        DRM_FORMAT_Y216,
        DRM_FORMAT_XYUV8888,
        DRM_FORMAT_XVYU2101010,
-       DRM_FORMAT_XVYU12_16161616,
-       DRM_FORMAT_XVYU16161616,
 };
 
 static const u32 icl_hdr_plane_formats[] = {