From: "Nautiyal, Ankit K" <ankit.k.nautiyal@intel.com>
To: Suraj Kandpal <suraj.kandpal@intel.com>,
<intel-xe@lists.freedesktop.org>,
<intel-gfx@lists.freedesktop.org>
Cc: <matthew.d.roper@intel.com>
Subject: Re: [PATCH 4/4] drm/i915/xe3lpd: Prune modes for YUV420
Date: Thu, 24 Oct 2024 17:50:21 +0530 [thread overview]
Message-ID: <f8a49bd7-dd50-422b-b79f-3c83b15b4acb@intel.com> (raw)
In-Reply-To: <20241024035552.94363-5-suraj.kandpal@intel.com>
On 10/24/2024 9:25 AM, Suraj Kandpal wrote:
> We only support resolution up to 4k for single pipe when using
> YUV420 format so we prune these modes and restrict the plane size
> at src.
This applies from MTL+ onwards, where the scaler can handle horizontal
source sizes up to 4096 (Bspec: 50441).
Prior platforms support horizontal source sizes up to 5120.
For YCBCR420-only mode, a scaler is required to downsample 444 to 420
before sending to the sink. If there is a mode with hactive > 4096, this
creates a problem, so pruning such modes is necessary for the platforms
that have the above restriction.
However, if a PCON is present and can support 444 to 420 conversion, we
can still display the mode by configuring the PCON for this conversion.
So need to capture the above reasoning, and prune such modes, if its not
a branch device or if pcon doesnt support 444-420 conversion.
Regards,
Ankit
>
> Signed-off-by: Suraj Kandpal <suraj.kandpal@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_dp.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
> index e0baad468d76..edaea5e8c53c 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -1373,6 +1373,7 @@ intel_dp_mode_valid(struct drm_connector *_connector,
> {
> struct intel_connector *connector = to_intel_connector(_connector);
> struct intel_dp *intel_dp = intel_attached_dp(connector);
> + enum intel_output_format sink_format;
> struct drm_i915_private *dev_priv = to_i915(connector->base.dev);
> const struct drm_display_mode *fixed_mode;
> int target_clock = mode->clock;
> @@ -1407,6 +1408,11 @@ intel_dp_mode_valid(struct drm_connector *_connector,
> mode->hdisplay, target_clock);
> max_dotclk *= num_joined_pipes;
>
> + sink_format = intel_dp_sink_format(connector, mode);
> + if (sink_format == INTEL_OUTPUT_FORMAT_YCBCR420 &&
> + mode->hdisplay > 4096)
> + return MODE_NO_420;
> +
> if (target_clock > max_dotclk)
> return MODE_CLOCK_HIGH;
>
next prev parent reply other threads:[~2024-10-24 12:20 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-24 3:55 [PATCH 0/4] Add 6k resolution support for a single CRTC Suraj Kandpal
2024-10-24 3:55 ` [PATCH 1/4] drm/i915/xe3lpd: Increase resolution for plane to support 6k Suraj Kandpal
2024-10-24 11:46 ` Nautiyal, Ankit K
2024-10-24 19:48 ` Matt Roper
2024-10-25 4:05 ` Nautiyal, Ankit K
2024-10-24 3:55 ` [PATCH 2/4] drm/i915/xe3lpd: Increase max_h max_v for PSR Suraj Kandpal
2024-10-24 13:04 ` Nautiyal, Ankit K
2024-10-24 19:59 ` Matt Roper
2024-10-24 3:55 ` [PATCH 3/4] drm/i914/xe3lpd: Increase bigjoiner limitations Suraj Kandpal
2024-10-24 11:51 ` Nautiyal, Ankit K
2024-10-24 3:55 ` [PATCH 4/4] drm/i915/xe3lpd: Prune modes for YUV420 Suraj Kandpal
2024-10-24 12:20 ` Nautiyal, Ankit K [this message]
2024-10-24 20:27 ` ✓ CI.Patch_applied: success for Add 6k resolution support for a single CRTC (rev2) Patchwork
2024-10-24 20:27 ` ✓ CI.checkpatch: " Patchwork
2024-10-24 20:28 ` ✓ CI.KUnit: " Patchwork
2024-10-24 20:40 ` ✓ CI.Build: " Patchwork
2024-10-24 20:42 ` ✓ CI.Hooks: " Patchwork
2024-10-24 20:44 ` ✗ CI.checksparse: warning " Patchwork
2024-10-24 21:16 ` ✗ CI.BAT: failure " Patchwork
2024-10-26 3:25 ` ✗ CI.FULL: " Patchwork
-- strict thread matches above, loose matches on Subject: below --
2024-10-15 6:10 [PATCH 0/4] Add 6k resolution support for a single CRTC Suraj Kandpal
2024-10-15 6:10 ` [PATCH 4/4] drm/i915/xe3lpd: Prune modes for YUV420 Suraj Kandpal
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=f8a49bd7-dd50-422b-b79f-3c83b15b4acb@intel.com \
--to=ankit.k.nautiyal@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=matthew.d.roper@intel.com \
--cc=suraj.kandpal@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