public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Melanie Lobo <melanie.lobo@intel.com>
To: intel-gfx@lists.freedesktop.org
Cc: juha-pekka.heikkila@intel.com
Subject: [Intel-gfx] [PATCH] drm/i915: Support FP16 compressed formats on MTL
Date: Fri,  1 Dec 2023 14:41:33 +0530	[thread overview]
Message-ID: <20231201091133.23508-1-melanie.lobo@intel.com> (raw)
In-Reply-To: <20231011102356.22014-1-melanie.lobo@intel.com>

Supports FP16 format which is a binary floating-point computer
number format that occupies 16 bits in computer memory.Platform shall
render compression in display engine to receive FP16 compressed formats.

This kernel change was tested with IGT patch,
https://patchwork.freedesktop.org/patch/562014/

Test-with: 20231011095520.10768-1-melanie.lobo@intel.com

Credits: Juha-Pekka <juha-pekka.heikkila@intel.com>
Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
Cc: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Cc: Swati Sharma <swati2.sharma@intel.com>
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/r/202310150454.S9QF86bl-lkp@intel.com/HEAD detached at 29b1181aa95a
Signed-off-by: Melanie Lobo <melanie.lobo@intel.com>
---
 drivers/gpu/drm/i915/display/intel_fb.c            | 10 ++++++++++
 drivers/gpu/drm/i915/display/skl_universal_plane.c |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/display/intel_fb.c b/drivers/gpu/drm/i915/display/intel_fb.c
index e7678571b0d7..494baf20f76b 100644
--- a/drivers/gpu/drm/i915/display/intel_fb.c
+++ b/drivers/gpu/drm/i915/display/intel_fb.c
@@ -91,6 +91,8 @@ static const struct drm_format_info gen12_ccs_formats[] = {
 	{ .format = DRM_FORMAT_P016, .num_planes = 4,
 	  .char_per_block = { 2, 4, 1, 1 }, .block_w = { 1, 1, 2, 2 }, .block_h = { 1, 1, 1, 1 },
 	  .hsub = 2, .vsub = 2, .is_yuv = true },
+	{ .format = DRM_FORMAT_XRGB16161616F, .depth = 64, .num_planes = 2,
+	  .char_per_block = { 8, 1}, .block_w = { 1, 4}, .block_h = { 1, 2}, .hsub = 1, .vsub = 1 },
 };
 
 /*
@@ -394,6 +396,9 @@ static bool plane_has_modifier(struct drm_i915_private *i915,
 			       u8 plane_caps,
 			       const struct intel_modifier_desc *md)
 {
+	const struct drm_format_info *info =
+		lookup_format_info(md->formats, md->format_count, DRM_FORMAT_XRGB16161616F);
+
 	if (!IS_DISPLAY_VER(i915, md->display_ver.from, md->display_ver.until))
 		return false;
 
@@ -408,6 +413,11 @@ static bool plane_has_modifier(struct drm_i915_private *i915,
 	    HAS_FLAT_CCS(i915) != !md->ccs.packed_aux_planes)
 		return false;
 
+	/* Check if CSS modifier and FP16 format is supported on different platforms */
+	if (intel_fb_is_ccs_modifier(md->modifier) && info &&
+	    info->format == DRM_FORMAT_XRGB16161616F && DISPLAY_VER(i915) < 14)
+	       return false;
+
 	return true;
 }
 
diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c b/drivers/gpu/drm/i915/display/skl_universal_plane.c
index 245a64332cc7..f5e9be57a74b 100644
--- a/drivers/gpu/drm/i915/display/skl_universal_plane.c
+++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c
@@ -2091,6 +2091,7 @@ static bool gen12_plane_format_mod_supported(struct drm_plane *_plane,
 	case DRM_FORMAT_XBGR8888:
 	case DRM_FORMAT_ARGB8888:
 	case DRM_FORMAT_ABGR8888:
+	case DRM_FORMAT_XRGB16161616F:
 		if (intel_fb_is_ccs_modifier(modifier))
 			return true;
 		fallthrough;
@@ -2115,7 +2116,6 @@ static bool gen12_plane_format_mod_supported(struct drm_plane *_plane,
 	case DRM_FORMAT_C8:
 	case DRM_FORMAT_XBGR16161616F:
 	case DRM_FORMAT_ABGR16161616F:
-	case DRM_FORMAT_XRGB16161616F:
 	case DRM_FORMAT_ARGB16161616F:
 	case DRM_FORMAT_Y210:
 	case DRM_FORMAT_Y212:
-- 
2.17.1


  parent reply	other threads:[~2023-12-01  8:54 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-11 10:23 [Intel-gfx] [PATCH] drm/i915: Support FP16 compressed formats on MTL Melanie Lobo
2023-10-11 10:21 ` Jani Nikula
2023-10-11 10:35   ` Lobo, Melanie
2023-10-12  4:01 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for " Patchwork
2023-10-12  6:26 ` [Intel-gfx] [PATCH] " Melanie Lobo
2023-10-12 12:56   ` Ville Syrjälä
2023-10-23  9:15     ` Lobo, Melanie
2023-10-23  9:25   ` Melanie Lobo
2023-10-12 23:13 ` [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Support FP16 compressed formats on MTL (rev3) Patchwork
2023-10-13 21:49 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2023-10-16  5:35 ` [Intel-gfx] [PATCH] drm/i915: Support FP16 compressed formats on MTL Dan Carpenter
2023-10-24 16:45 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Support FP16 compressed formats on MTL (rev4) Patchwork
2023-10-24 16:59 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-10-25  6:52 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2023-12-01  9:11 ` Melanie Lobo [this message]
2023-12-02  0:08   ` [Intel-gfx] [PATCH] drm/i915: Support FP16 compressed formats on MTL Matt Roper
2024-06-03  8:37     ` Lobo, Melanie
2023-12-01 19:09 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Support FP16 compressed formats on MTL (rev5) Patchwork
2023-12-01 19:23 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-12-03  3:03 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2024-06-03  8:47 ` [PATCH] drm/i915: Support RGB16161616_64B compressed formats Melanie Lobo
2024-06-03 10:29 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Support FP16 compressed formats on MTL (rev6) Patchwork
2024-06-03 10:44 ` ✓ Fi.CI.BAT: success " Patchwork
2024-06-03 23:12 ` ✗ Fi.CI.IGT: failure " Patchwork
2024-06-05  5:58 ` [PATCH] drm/i915: Support RGB16161616_64B compressed formats Melanie Lobo
2024-06-05  6:04 ` Melanie Lobo
2024-07-05 14:35   ` Ville Syrjälä

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231201091133.23508-1-melanie.lobo@intel.com \
    --to=melanie.lobo@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=juha-pekka.heikkila@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox