All of lore.kernel.org
 help / color / mirror / Atom feed
From: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
To: intel-gfx@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH 2/4] drm/i915/dg2: Add support for DG2 render and media compression
Date: Thu, 7 Apr 2022 16:37:33 +0300	[thread overview]
Message-ID: <cc4da519-431f-e7c8-7cae-97ea43e55bf2@gmail.com> (raw)
In-Reply-To: <20220404133846.131401-3-imre.deak@intel.com>

Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>

On 4.4.2022 16.38, Imre Deak wrote:
> From: Matt Roper <matthew.d.roper@intel.com>
> 
> Add support for DG2 render and media compression, for the description of
> buffer layouts see the previous patch adding the corresponding
> frame buffer modifiers.
> 
> v2:
>    Display version fix [Imre]
> v3:
>    Split out modifier addition to separate patch.
> 
> Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
> cc: Radhakrishna Sripada <radhakrishna.sripada@intel.com>
> Signed-off-by: Mika Kahola <mika.kahola@intel.com>
> cc: Anshuman Gupta <anshuman.gupta@intel.com>
> Signed-off-by: Juha-Pekka Heikkilä <juha-pekka.heikkila@intel.com>
> Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
> Signed-off-by: Imre Deak <imre.deak@intel.com>
> ---
>   drivers/gpu/drm/i915/display/intel_fb.c       | 13 ++++++++++
>   .../drm/i915/display/skl_universal_plane.c    | 26 ++++++++++++++++---
>   2 files changed, 35 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_fb.c b/drivers/gpu/drm/i915/display/intel_fb.c
> index e9ad142ac40fa..447003a91160e 100644
> --- a/drivers/gpu/drm/i915/display/intel_fb.c
> +++ b/drivers/gpu/drm/i915/display/intel_fb.c
> @@ -141,6 +141,14 @@ struct intel_modifier_desc {
>   
>   static const struct intel_modifier_desc intel_modifiers[] = {
>   	{
> +		.modifier = I915_FORMAT_MOD_4_TILED_DG2_MC_CCS,
> +		.display_ver = { 13, 13 },
> +		.plane_caps = INTEL_PLANE_CAP_TILING_4 | INTEL_PLANE_CAP_CCS_MC,
> +	}, {
> +		.modifier = I915_FORMAT_MOD_4_TILED_DG2_RC_CCS,
> +		.display_ver = { 13, 13 },
> +		.plane_caps = INTEL_PLANE_CAP_TILING_4 | INTEL_PLANE_CAP_CCS_RC,
> +	}, {
>   		.modifier = I915_FORMAT_MOD_4_TILED,
>   		.display_ver = { 13, 13 },
>   		.plane_caps = INTEL_PLANE_CAP_TILING_4,
> @@ -550,6 +558,8 @@ intel_tile_width_bytes(const struct drm_framebuffer *fb, int color_plane)
>   			return 128;
>   		else
>   			return 512;
> +	case I915_FORMAT_MOD_4_TILED_DG2_RC_CCS:
> +	case I915_FORMAT_MOD_4_TILED_DG2_MC_CCS:
>   	case I915_FORMAT_MOD_4_TILED:
>   		/*
>   		 * Each 4K tile consists of 64B(8*8) subtiles, with
> @@ -752,6 +762,9 @@ unsigned int intel_surf_alignment(const struct drm_framebuffer *fb,
>   	case I915_FORMAT_MOD_4_TILED:
>   	case I915_FORMAT_MOD_Yf_TILED:
>   		return 1 * 1024 * 1024;
> +	case I915_FORMAT_MOD_4_TILED_DG2_RC_CCS:
> +	case I915_FORMAT_MOD_4_TILED_DG2_MC_CCS:
> +		return 16 * 1024;
>   	default:
>   		MISSING_CASE(fb->modifier);
>   		return 0;
> diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c b/drivers/gpu/drm/i915/display/skl_universal_plane.c
> index c57fca1fe6788..b939c503bc6ff 100644
> --- a/drivers/gpu/drm/i915/display/skl_universal_plane.c
> +++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c
> @@ -773,6 +773,14 @@ static u32 skl_plane_ctl_tiling(u64 fb_modifier)
>   		return PLANE_CTL_TILED_Y;
>   	case I915_FORMAT_MOD_4_TILED:
>   		return PLANE_CTL_TILED_4;
> +	case I915_FORMAT_MOD_4_TILED_DG2_RC_CCS:
> +		return PLANE_CTL_TILED_4 |
> +			PLANE_CTL_RENDER_DECOMPRESSION_ENABLE |
> +			PLANE_CTL_CLEAR_COLOR_DISABLE;
> +	case I915_FORMAT_MOD_4_TILED_DG2_MC_CCS:
> +		return PLANE_CTL_TILED_4 |
> +			PLANE_CTL_MEDIA_DECOMPRESSION_ENABLE |
> +			PLANE_CTL_CLEAR_COLOR_DISABLE;
>   	case I915_FORMAT_MOD_Y_TILED_CCS:
>   	case I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS_CC:
>   		return PLANE_CTL_TILED_Y | PLANE_CTL_RENDER_DECOMPRESSION_ENABLE;
> @@ -2168,6 +2176,10 @@ static bool gen12_plane_has_mc_ccs(struct drm_i915_private *i915,
>   	if (IS_ADLP_DISPLAY_STEP(i915, STEP_A0, STEP_B0))
>   		return false;
>   
> +	/* Wa_14013215631 */
> +	if (IS_DG2_DISPLAY_STEP(i915, STEP_A0, STEP_C0))
> +		return false;
> +
>   	return plane_id < PLANE_SPRITE4;
>   }
>   
> @@ -2415,9 +2427,10 @@ skl_get_initial_plane_config(struct intel_crtc *crtc,
>   	case PLANE_CTL_TILED_Y:
>   		plane_config->tiling = I915_TILING_Y;
>   		if (val & PLANE_CTL_RENDER_DECOMPRESSION_ENABLE)
> -			fb->modifier = DISPLAY_VER(dev_priv) >= 12 ?
> -				I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS :
> -				I915_FORMAT_MOD_Y_TILED_CCS;
> +			if (DISPLAY_VER(dev_priv) >= 12)
> +				fb->modifier = I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS;
> +			else
> +				fb->modifier = I915_FORMAT_MOD_Y_TILED_CCS;
>   		else if (val & PLANE_CTL_MEDIA_DECOMPRESSION_ENABLE)
>   			fb->modifier = I915_FORMAT_MOD_Y_TILED_GEN12_MC_CCS;
>   		else
> @@ -2425,7 +2438,12 @@ skl_get_initial_plane_config(struct intel_crtc *crtc,
>   		break;
>   	case PLANE_CTL_TILED_YF: /* aka PLANE_CTL_TILED_4 on XE_LPD+ */
>   		if (HAS_4TILE(dev_priv)) {
> -			fb->modifier = I915_FORMAT_MOD_4_TILED;
> +			if (val & PLANE_CTL_RENDER_DECOMPRESSION_ENABLE)
> +				fb->modifier = I915_FORMAT_MOD_4_TILED_DG2_RC_CCS;
> +			else if (val & PLANE_CTL_MEDIA_DECOMPRESSION_ENABLE)
> +				fb->modifier = I915_FORMAT_MOD_4_TILED_DG2_MC_CCS;
> +			else
> +				fb->modifier = I915_FORMAT_MOD_4_TILED;
>   		} else {
>   			if (val & PLANE_CTL_RENDER_DECOMPRESSION_ENABLE)
>   				fb->modifier = I915_FORMAT_MOD_Yf_TILED_CCS;


  reply	other threads:[~2022-04-07 13:37 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-04 13:38 [Intel-gfx] [PATCH 0/4] drm/i915/dg2: Add support for render/media decompression Imre Deak
2022-04-04 13:38 ` [Intel-gfx] [PATCH 1/4] drm/fourcc: Introduce format modifiers for DG2 render and media compression Imre Deak
2022-04-04 13:38   ` Imre Deak
2022-04-07 13:37   ` Juha-Pekka Heikkila
2022-04-07 17:59   ` [Intel-gfx] " Juha-Pekka Heikkilä
2022-04-07 17:59     ` Juha-Pekka Heikkilä
2022-04-04 13:38 ` [Intel-gfx] [PATCH 2/4] drm/i915/dg2: Add support " Imre Deak
2022-04-07 13:37   ` Juha-Pekka Heikkila [this message]
2022-04-04 13:38 ` [Intel-gfx] [PATCH 3/4] drm/fourcc: Introduce format modifier for DG2 clear color Imre Deak
2022-04-04 13:38   ` Imre Deak
2022-04-07 13:37   ` [Intel-gfx] " Juha-Pekka Heikkila
2022-04-08 21:16     ` Maarten Lankhorst
2022-04-04 13:38 ` [Intel-gfx] [PATCH 4/4] drm/i915/dg2: Add support for DG2 clear color compression Imre Deak
2022-04-07  5:47   ` Gupta, Anshuman
2022-04-07 13:29     ` Imre Deak
2022-04-07 14:33       ` Gupta, Anshuman
2022-04-04 18:36 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915/dg2: Add support for render/media decompression Patchwork
2022-04-04 19:08 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2022-04-04 23:10 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2022-04-08  7:57 ` [Intel-gfx] [PATCH 0/4] " Jani Nikula
2022-04-08  7:57   ` Jani Nikula
2022-04-08  7:59   ` Jani Nikula
2022-04-08  7:59     ` Jani Nikula
2022-04-11 12:38 ` Imre Deak
2022-04-11 13:35   ` Vivi, Rodrigo
2022-04-11 13:38   ` Jani Nikula
2022-04-11 14:35     ` Imre Deak

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=cc4da519-431f-e7c8-7cae-97ea43e55bf2@gmail.com \
    --to=juhapekka.heikkila@gmail.com \
    --cc=intel-gfx@lists.freedesktop.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.