mbox series

[00/11] Add DSC fractional bpp support

Message ID 20231110101020.4067342-1-ankit.k.nautiyal@intel.com (mailing list archive)
Headers show
Series Add DSC fractional bpp support | expand

Message

Ankit Nautiyal Nov. 10, 2023, 10:10 a.m. UTC
This patch series adds support for DSC fractional compressed bpp
for MTL+. The series starts with some fixes, followed by patches that
lay groundwork to iterate over valid compressed bpps to select the
'best' compressed bpp with optimal link configuration (taken from
upstream series: https://patchwork.freedesktop.org/series/105200/).

The later patches, add changes to accommodate compressed bpp with
fractional part, including changes to QP calculations.
To get the 'best' compressed bpp, we iterate over the valid compressed
bpp values, but with fractional step size 1/16, 1/8, 1/4 or 1/2 as per
sink support.

The last 2 patches add support to depict DSC sink's fractional support,
and debugfs to enforce use of fractional bpp, while choosing an
appropriate compressed bpp.

Rev10: Rebased and added DSC Fractional support for DP MST.

Ankit Nautiyal (8):
  drm/display/dp: Add helper function to get DSC bpp precision
  drm/i915/display: Store compressed bpp in U6.4 format
  drm/i915/display: Consider fractional vdsc bpp while computing m_n
    values
  drm/i915/audio: Consider fractional vdsc bpp while computing tu_data
  drm/i915/dp: Iterate over output bpp with fractional step size
  drm/i915/dp_mst: Use precision of 1/16 for computing bpp
  drm/i916/dp_mst: Iterate over the DSC bpps as per DSC precision
    support
  drm/i915/dp_mst: Add support for forcing dsc fractional bpp via
    debugfs

Swati Sharma (2):
  drm/i915/dsc: Add debugfs entry to validate DSC fractional bpp
  drm/i915/dsc: Allow DSC only with fractional bpp when forced from
    debugfs

Vandita Kulkarni (1):
  drm/i915/dsc/mtl: Add support for fractional bpp

 drivers/gpu/drm/display/drm_dp_helper.c       | 27 ++++++
 drivers/gpu/drm/i915/display/icl_dsi.c        | 10 +--
 drivers/gpu/drm/i915/display/intel_audio.c    | 16 ++--
 drivers/gpu/drm/i915/display/intel_bios.c     |  4 +-
 drivers/gpu/drm/i915/display/intel_cdclk.c    |  5 +-
 drivers/gpu/drm/i915/display/intel_display.c  |  6 +-
 .../drm/i915/display/intel_display_debugfs.c  | 84 ++++++++++++++++++
 .../drm/i915/display/intel_display_types.h    |  4 +-
 drivers/gpu/drm/i915/display/intel_dp.c       | 87 +++++++++++--------
 drivers/gpu/drm/i915/display/intel_dp_mst.c   | 85 +++++++++++-------
 drivers/gpu/drm/i915/display/intel_fdi.c      |  3 +-
 drivers/gpu/drm/i915/display/intel_link_bw.c  |  2 +-
 .../gpu/drm/i915/display/intel_qp_tables.c    |  3 -
 drivers/gpu/drm/i915/display/intel_vdsc.c     | 29 +++++--
 include/drm/display/drm_dp_helper.h           |  1 +
 15 files changed, 266 insertions(+), 100 deletions(-)

Comments

Ankit Nautiyal Nov. 14, 2023, 10:26 a.m. UTC | #1
On 11/10/2023 3:40 PM, Ankit Nautiyal wrote:
> This patch series adds support for DSC fractional compressed bpp
> for MTL+. The series starts with some fixes, followed by patches that
> lay groundwork to iterate over valid compressed bpps to select the
> 'best' compressed bpp with optimal link configuration (taken from
> upstream series: https://patchwork.freedesktop.org/series/105200/).
>
> The later patches, add changes to accommodate compressed bpp with
> fractional part, including changes to QP calculations.
> To get the 'best' compressed bpp, we iterate over the valid compressed
> bpp values, but with fractional step size 1/16, 1/8, 1/4 or 1/2 as per
> sink support.
>
> The last 2 patches add support to depict DSC sink's fractional support,
> and debugfs to enforce use of fractional bpp, while choosing an
> appropriate compressed bpp.
>
> Rev10: Rebased and added DSC Fractional support for DP MST.

Pushed patches 1-8 to drm-intel-next, thanks for the reviews, acks.

Regards,

Ankit


>
> Ankit Nautiyal (8):
>    drm/display/dp: Add helper function to get DSC bpp precision
>    drm/i915/display: Store compressed bpp in U6.4 format
>    drm/i915/display: Consider fractional vdsc bpp while computing m_n
>      values
>    drm/i915/audio: Consider fractional vdsc bpp while computing tu_data
>    drm/i915/dp: Iterate over output bpp with fractional step size
>    drm/i915/dp_mst: Use precision of 1/16 for computing bpp
>    drm/i916/dp_mst: Iterate over the DSC bpps as per DSC precision
>      support
>    drm/i915/dp_mst: Add support for forcing dsc fractional bpp via
>      debugfs
>
> Swati Sharma (2):
>    drm/i915/dsc: Add debugfs entry to validate DSC fractional bpp
>    drm/i915/dsc: Allow DSC only with fractional bpp when forced from
>      debugfs
>
> Vandita Kulkarni (1):
>    drm/i915/dsc/mtl: Add support for fractional bpp
>
>   drivers/gpu/drm/display/drm_dp_helper.c       | 27 ++++++
>   drivers/gpu/drm/i915/display/icl_dsi.c        | 10 +--
>   drivers/gpu/drm/i915/display/intel_audio.c    | 16 ++--
>   drivers/gpu/drm/i915/display/intel_bios.c     |  4 +-
>   drivers/gpu/drm/i915/display/intel_cdclk.c    |  5 +-
>   drivers/gpu/drm/i915/display/intel_display.c  |  6 +-
>   .../drm/i915/display/intel_display_debugfs.c  | 84 ++++++++++++++++++
>   .../drm/i915/display/intel_display_types.h    |  4 +-
>   drivers/gpu/drm/i915/display/intel_dp.c       | 87 +++++++++++--------
>   drivers/gpu/drm/i915/display/intel_dp_mst.c   | 85 +++++++++++-------
>   drivers/gpu/drm/i915/display/intel_fdi.c      |  3 +-
>   drivers/gpu/drm/i915/display/intel_link_bw.c  |  2 +-
>   .../gpu/drm/i915/display/intel_qp_tables.c    |  3 -
>   drivers/gpu/drm/i915/display/intel_vdsc.c     | 29 +++++--
>   include/drm/display/drm_dp_helper.h           |  1 +
>   15 files changed, 266 insertions(+), 100 deletions(-)
>