On 9/12/2024 4:35 AM, Ville Syrjälä wrote:
On Wed, Sep 11, 2024 at 06:43:30PM +0530, Ankit Nautiyal wrote:
This patch series attempts to implement basic support
for Ultrajoiner functionality.
Rev6:
-Upgrade the debugfs functionality to enable the joining of a
specified number of pipes.
-Modify the display helpers reliant on the pipe joiner mechanism
to use number of pipes joined, instead of joiner flag.
-Checkpatch fixes.
Rev7:
-Use struct intel_display, minor refactoring, and rebase.
Rev8:
-Address comments from Ville.
-Simplified debugfs for forcing joiner, and added option to disable
joiner.
-Modified the ultra/bigjoiner helpers as suggested by Ville.
-Split few of the bigger patches as suggested.
Test-with: 20240911072204.22825-1-karthik.b.s@xxxxxxxxx
Ankit Nautiyal (11):
drm/i915/display: Simplify intel_joiner_num_pipes and its usage
drm/i915/display: Use joined pipes in intel_dp_joiner_needs_dsc
drm/i915/display: Use joined pipes in intel_mode_valid_max_plane_size
drm/i915/display: Use joined pipes in dsc helpers for slices, bpp
I have a feeling those four at least could be merged ahead of
time, and thus shrink what's left quite decently already.
Granted, you probably won't have the num_pipes value passed
in all the way from the top yet, so might have to do some
'joiner ? 2 : 1' here and there as a temporary measure.
I think getting this stuff out of the way would help
avoid confusion with the debugfs/compute_config changes
to some degree at least, and might help with bisectability,
Presumably it builds, but I'm not really convinced all the
intermediate steps would actually work 100% correctly.
Thanks for the comments and suggestions.
Agreed, will send this as a separate patch series shortly.
drm/i915/display: Check whether platform supports joiner
For this stuff I'd like to see a HAS_BIGJOINER() and
HAS_UNCOMPRESSED_JOINER() like we have for most platform
features. This also seems like good material for stuff to
merge on its own, ahead of the rest of the more complicated
stuff below.
Alright will make the changes accordingly, and send separately.
Thanks & Regards,
Ankit
drm/i915/display: Modify debugfs for joiner to force n pipes
drm/i915/display_debugfs: Allow force joiner only if supported
drm/i915/dp: Add helper to compute num pipes joined
drm/i915/display: Add debugfs support to avoid joiner
drm/i915/display: Consider ultrajoiner for computing maxdotclock
drm/i915/intel_dp: Add support for forcing ultrajoiner
Stanislav Lisovskiy (8):
drm/i915: Add some essential functionality for joiners
drm/i915: Split current joiner hw state readout
drm/i915: Add bigjoiner and uncompressed joiner hw readout sanity
checks
drm/i915: Implement hw state readout and checks for ultrajoiner
drm/i915/display: Percolate ultrajoiner info to get_joiner_config
drm/i915/display/vdsc: Add ultrajoiner support with DSC
drm/i915: Add new abstraction layer to handle pipe order for different
joiners
drm/i915: Compute config and mode valid changes for ultrajoiner
drivers/gpu/drm/i915/display/intel_ddi.c | 19 +-
drivers/gpu/drm/i915/display/intel_display.c | 423 +++++++++++++++---
drivers/gpu/drm/i915/display/intel_display.h | 17 +-
.../drm/i915/display/intel_display_debugfs.c | 84 +++-
.../drm/i915/display/intel_display_types.h | 2 +-
drivers/gpu/drm/i915/display/intel_dp.c | 138 ++++--
drivers/gpu/drm/i915/display/intel_dp.h | 14 +-
drivers/gpu/drm/i915/display/intel_dp_mst.c | 54 ++-
drivers/gpu/drm/i915/display/intel_dsi.c | 2 +-
drivers/gpu/drm/i915/display/intel_hdmi.c | 2 +-
drivers/gpu/drm/i915/display/intel_vdsc.c | 30 +-
.../gpu/drm/i915/display/intel_vdsc_regs.h | 3 +
12 files changed, 646 insertions(+), 142 deletions(-)
--
2.45.2