[PATCH v3 00/10] drm/i915: move DSC RC tables to drm_dsc_helper.c
Dmitry Baryshkov
dmitry.baryshkov at linaro.org
Wed Mar 29 00:37:00 UTC 2023
Other platforms (msm) will benefit from sharing the DSC config setup
functions. This series moves parts of static DSC config data from the
i915 driver to the common helpers to be used by other drivers.
Note: the RC parameters were cross-checked against config files found in
DSC model 2021062, 20161212 (and 20150914). The first patch modifies
tables according to those config files, while preserving parameter
values using the code. I have not changed one of the values in the
pre-SCR config file as it clearly looks like a typo in the config file,
considering the table E in DSC 1.1 and in the DSC 1.1 SCR.
Chances since v2:
- Rebased on top of drm-intel-next
Chances since v1:
- Made drm_dsc_rc_buf_thresh static rather than exporting it
- Switched drm_dsc_rc_buf_thresh loop to use ARRAY_SIZE. Added
BUILD_BUG_ON's to be sure that array sizes are correct
- Fixed rc_parameters_data indentation to be logical and tidy
- Fixed drm_dsc_setup_rc_params() kerneldoc
- Added a clause to drm_dsc_setup_rc_params() to verify bpp and bpc
being set.
- Fixed range_bpg_offset programming in calculate_rc_params()
- Fixed bpp vs bpc bug in intel_dsc_compute_params()
- Added FIXME comment next to the customizations in
intel_dsc_compute_params().
Dmitry Baryshkov (10):
drm/i915/dsc: change DSC param tables to follow the DSC model
drm/i915/dsc: move rc_buf_thresh values to common helper
drm/i915/dsc: move DSC tables to DRM DSC helper
drm/i915/dsc: stop using interim structure for calculated params
drm/display/dsc: use flat array for rc_parameters lookup
drm/display/dsc: split DSC 1.2 and DSC 1.1 (pre-SCR) parameters
drm/display/dsc: include the rest of pre-SCR parameters
drm/display/dsc: add YCbCr 4:2:2 and 4:2:0 RC parameters
drm/display/dsc: add helper to set semi-const parameters
drm/msm/dsi: use new helpers for DSC setup
drivers/gpu/drm/display/drm_dsc_helper.c | 1007 +++++++++++++++++++++
drivers/gpu/drm/i915/display/intel_vdsc.c | 443 +--------
drivers/gpu/drm/msm/dsi/dsi_host.c | 61 +-
include/drm/display/drm_dsc_helper.h | 10 +
4 files changed, 1072 insertions(+), 449 deletions(-)
--
2.39.2
More information about the dri-devel
mailing list