Message ID | 20240911131349.933814-1-ankit.k.nautiyal@intel.com (mailing list archive) |
---|---|
Headers | show |
Series | Ultrajoiner basic functionality series | expand |
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@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
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@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. 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