From: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
To: intel-gfx@lists.freedesktop.org
Cc: intel-xe@lists.freedesktop.org, suraj.kandpal@intel.com
Subject: [PATCH 6/7] drm/i915/dp: Ensure hactive is divisible by slice count
Date: Sun, 27 Oct 2024 19:15:56 +0530 [thread overview]
Message-ID: <20241027134557.862036-7-ankit.k.nautiyal@intel.com> (raw)
In-Reply-To: <20241027134557.862036-1-ankit.k.nautiyal@intel.com>
According to the DSC spec, the slice width should be chosen such that
the picture width (hactive) is evenly divisible by the slice width.
If not, extra pixels (padding) must be added to the last slice to
ensure all slices have the same width.
Currently, we do not support handling these extra pixels.
Therefore, select a slice count that evenly divides the hactive
(slice_width = hactive / slice_count).
This check is already implemented for DSI, where the slice count is
selected from the BIOS.
For DP, currently with 1, 2, 4 slices per pipe it is unlikely to have
slice count not being able to divide hactive, but with 3 DSC engines
and 3 slices, we can have such cases. Adding this check prepares for
future scenarios where such configurations might be used.
Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
---
drivers/gpu/drm/i915/display/intel_dp.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index dbb1d75c0576..d7d42eac4be3 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -1038,6 +1038,9 @@ u8 intel_dp_dsc_get_slice_count(const struct intel_connector *connector,
if (num_joined_pipes > 1 && valid_dsc_slicecount[i] < 2)
continue;
+ if (mode_hdisplay % test_slice_count)
+ continue;
+
if (min_slice_count <= test_slice_count)
return test_slice_count;
}
--
2.45.2
next prev parent reply other threads:[~2024-10-27 13:44 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-27 13:45 [PATCH 0/7] Add support for 3 VDSC engines 12 slices Ankit Nautiyal
2024-10-27 13:45 ` [PATCH 1/7] drm/i915/dp: Update Comment for Valid DSC Slices per Line Ankit Nautiyal
2024-10-27 13:45 ` [PATCH 2/7] drm/i915/display: Prepare for dsc 3 stream splitter Ankit Nautiyal
2024-10-28 4:26 ` Nautiyal, Ankit K
2024-10-27 13:45 ` [PATCH 3/7] drm/i915/vdsc: Use VDSC0/VDSC1 for LEFT/RIGHT VDSC engine Ankit Nautiyal
2024-10-27 13:45 ` [PATCH 4/7] drm/i915/vdsc: Introduce 3rd VDSC engine VDSC2 Ankit Nautiyal
2024-10-27 13:45 ` [PATCH 5/7] drm/i915/vdsc: Add support for read/write PPS for 3rd DSC engine Ankit Nautiyal
2024-10-27 13:45 ` Ankit Nautiyal [this message]
2024-10-27 13:45 ` [PATCH 7/7] drm/i915/dp: Enable 3 DSC engines for 12 slices Ankit Nautiyal
2024-10-27 13:49 ` ✓ CI.Patch_applied: success for Add support for 3 VDSC engines 12 slices (rev6) Patchwork
2024-10-27 13:49 ` ✓ CI.checkpatch: " Patchwork
2024-10-27 13:50 ` ✓ CI.KUnit: " Patchwork
2024-10-27 14:02 ` ✓ CI.Build: " Patchwork
2024-10-27 14:04 ` ✓ CI.Hooks: " Patchwork
2024-10-27 14:06 ` ✗ CI.checksparse: warning " Patchwork
2024-10-27 14:40 ` ✗ CI.BAT: failure " Patchwork
2024-10-27 18:20 ` ✗ CI.FULL: " Patchwork
2024-11-06 13:00 ` [PATCH 0/7] Add support for 3 VDSC engines 12 slices Nautiyal, Ankit K
-- strict thread matches above, loose matches on Subject: below --
2024-10-30 4:10 Ankit Nautiyal
2024-10-30 4:10 ` [PATCH 6/7] drm/i915/dp: Ensure hactive is divisible by slice count Ankit Nautiyal
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=20241027134557.862036-7-ankit.k.nautiyal@intel.com \
--to=ankit.k.nautiyal@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--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