All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Kulkarni, Vandita" <vandita.kulkarni@intel.com>
To: "20210719072222.13369-6-shawn.c.lee@intel.com"
	<20210719072222.13369-6-shawn.c.lee@intel.com>,
	"intel-gfx@lists.freedesktop.org"
	<intel-gfx@lists.freedesktop.org>
Cc: "Chiou, Cooper" <cooper.chiou@intel.com>,
	"Tseng, William" <william.tseng@intel.com>
Subject: Re: [Intel-gfx] [PATCH 5/5] drm/i915: Get proper min cdclk if vDSC enabled
Date: Thu, 22 Jul 2021 07:17:53 +0000	[thread overview]
Message-ID: <c67dbd284e074e15b58eb42688f39a64@intel.com> (raw)
In-Reply-To: <CO6PR11MB5651A3EF71940549177F4D2FA3E29@CO6PR11MB5651.namprd11.prod.outlook.com>

> -----Original Message-----
> From: Lee, Shawn C <shawn.c.lee@intel.com>
> Sent: Tuesday, July 20, 2021 8:01 PM
> To: Kulkarni, Vandita <vandita.kulkarni@intel.com>; intel-
> gfx@lists.freedesktop.org
> Cc: Ville Syrjala <ville.syrjala@linux.intel.com>; Jani Nikula
> <jani.nikula@linux.intel.com>; Chiou, Cooper <cooper.chiou@intel.com>;
> Tseng, William <william.tseng@intel.com>
> Subject: RE: [PATCH 5/5] drm/i915: Get proper min cdclk if vDSC enabled
> 
> 
> On Tue, July 19, 2021, Vandita Kulkarni <vandita.kulkarni@intel.com> wrote:
> >>
> >> VDSC engine can process only 1 pixel per Cd clock. In case VDSC is
> >> used and max slice count == 1, max supported pixel clock should be 100%
> of CD clock.
> >> Then do min_cdclk and pixel clock comparison to get proper min cdclk.
> >>
> >> Cc: Ville Syrjala <ville.syrjala@linux.intel.com>
> >> Cc: Jani Nikula <jani.nikula@linux.intel.com>
> >> Cc: Vandita Kulkarni <vandita.kulkarni@intel.com>
> >> Cc: Cooper Chiou <cooper.chiou@intel.com>
> >> Cc: William Tseng <william.tseng@intel.com>
> >> Signed-off-by: Lee Shawn C <shawn.c.lee@intel.com>
> >> ---
> >>  drivers/gpu/drm/i915/display/intel_cdclk.c | 12 ++++++++++++
> >>  1 file changed, 12 insertions(+)
> >>
> >> diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c
> >> b/drivers/gpu/drm/i915/display/intel_cdclk.c
> >> index 71067a62264d..c33d574eb991 100644
> >> --- a/drivers/gpu/drm/i915/display/intel_cdclk.c
> >> +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c
> >> @@ -2159,6 +2159,18 @@ int intel_crtc_compute_min_cdclk(const struct
> >> intel_crtc_state *crtc_state)
> >>  /* Account for additional needs from the planes */  min_cdclk =
> >> max(intel_planes_min_cdclk(crtc_state), min_cdclk);
> >>
> >> +/*
> >> + * VDSC engine can process only 1 pixel per Cd clock.
> >> + * In case VDSC is used and max slice count == 1,
> >> + * max supported pixel clock should be 100% of CD clock.
> >> + * Then do min_cdclk and pixel clock comparison to get cdclk.
> >> + */
> >> +if (DISPLAY_VER(dev_priv) >= 11 &&
> >
> >I think you could just check for dsc enable and slice count ==1.
> >
> 
> DP and eDP would apply the same thing if dsc enabled and sink's dsc slice
> count ==1.
> Is that right?
Yes.
> 
> >Also better to have a check if crtc_clock exceeds dev_priv->max_cdclk_freq
> in dsi_dsc compute_config as well.
> >and return -EINVAL .
> >
> >-Vandita
Since we do not have bigjoiner support on dsi yet and the check wrt max_cdclk_freq
is taken care in intel_crtc_compute_config. I think you can leave this for now.
You do not need this clock check again in dsi_compute_config

-Vandita
> >
> 
> We should have this checking in dsi_dsc_compute_config() just like DP driver
> did. What do you think?
> 
> 	if (adjusted_mode->crtc_clock > dev_priv->max_cdclk_freq ||
> 	    pipe_config->bigjoiner) {
> 		if (pipe_config->dsc.slice_count < 2) {
> 			drm_dbg_kms(&dev_priv->drm,
> 				    "Cannot split stream to use 2 VDSC
> instances\n");
> 			return -EINVAL;
> 		}
> 
> 		pipe_config->dsc.dsc_split = true;
> 	}
> 
> Best regards,
> Shawn
> 
> >> +    intel_crtc_has_type(crtc_state, INTEL_OUTPUT_DSI) &&
> >> +    crtc_state->dsc.compression_enable &&
> >> +    crtc_state->dsc.slice_count == 1)
> >
> >> +min_cdclk = max(min_cdclk, (int)crtc_state->pixel_rate);
> >> +
> >>  /*
> >>   * HACK. Currently for TGL platforms we calculate
> >>   * min_cdclk initially based on pixel_rate divided
> >> --
> >> 2.17.1
> >
> >

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2021-07-22  7:17 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-19  7:22 [Intel-gfx] [PATCH 0/5] MIPI DSI driver enhancements Lee Shawn C
2021-07-19  7:22 ` [Intel-gfx] [PATCH 1/5] drm/i915/dsi: send correct gpio_number on gen11 platform Lee Shawn C
2021-07-19  7:22 ` [Intel-gfx] [PATCH 2/5] drm/i915/jsl: program DSI panel GPIOs Lee Shawn C
2021-07-19  7:22 ` [Intel-gfx] [PATCH 3/5] drm/i915/dsi: wait for header and payload credit available Lee Shawn C
2021-07-19  7:22 ` [Intel-gfx] [PATCH 4/5] drm/i915/dsi: refine send MIPI DCS command sequence Lee Shawn C
2021-07-19  7:22 ` [Intel-gfx] [PATCH 5/5] drm/i915: Get proper min cdclk if vDSC enabled Lee Shawn C
2021-07-20 12:46   ` Kulkarni, Vandita
2021-07-20 14:30     ` Lee, Shawn C
2021-07-22  7:17       ` Kulkarni, Vandita [this message]
2021-07-19  7:30 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for MIPI DSI driver enhancements Patchwork
2021-07-19  7:34 ` [Intel-gfx] ✗ Fi.CI.DOCS: " Patchwork
2021-07-19  8:00 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2021-07-19 10:34 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2021-07-22  9:37 ` [Intel-gfx] [PATCH v2 0/5] " Lee Shawn C
2021-07-22  9:37   ` [Intel-gfx] [PATCH v2 1/5] drm/i915/dsi: send correct gpio_number on gen11 platform Lee Shawn C
2021-07-22  9:37   ` [Intel-gfx] [PATCH v2 2/5] drm/i915/jsl: program DSI panel GPIOs Lee Shawn C
2021-07-22  9:37   ` [Intel-gfx] [PATCH v2 3/5] drm/i915/dsi: wait for header and payload credit available Lee Shawn C
2021-07-22  9:37   ` [Intel-gfx] [PATCH v2 4/5] drm/i915/dsi: refine send MIPI DCS command sequence Lee Shawn C
2021-07-22  9:37   ` [Intel-gfx] [PATCH v2 5/5] drm/i915: Get proper min cdclk if vDSC enabled Lee Shawn C

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=c67dbd284e074e15b58eb42688f39a64@intel.com \
    --to=vandita.kulkarni@intel.com \
    --cc=20210719072222.13369-6-shawn.c.lee@intel.com \
    --cc=cooper.chiou@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=william.tseng@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 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.