[PATCH 00/19] Ultrajoiner basic functionality series

Ville Syrjälä ville.syrjala at linux.intel.com
Wed Sep 11 23:05:52 UTC 2024


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 at intel.com
> 
> 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.

>   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.

>   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

-- 
Ville Syrjälä
Intel


More information about the Intel-gfx mailing list