[PATCH 00/33] DC Patches Mar 6th, 2023

Qingqing Zhuo qingqing.zhuo at amd.com
Fri Mar 3 15:39:49 UTC 2023


This DC patchset brings improvements in multiple areas. In summary, we highlight:

1) Transitioning to the new DC commit sequence

There is an extended effort to migrate to the new DC commit sequence
that better adheres to the DCN hardware constraints. Most of the code
was upstreamed already but not connected to amdgpu_dm, and in this new
DC version, our DM finally started to use it for all ASICs. This should
improve stability and enable us to improve how pipe split works.

2) Drop old CONFIG_DRM_AMD_DC_DCN in favor of new CONFIG_DRM_AMD_DC_FP

For historical reasons, we created CONFIG_DRM_AMD_DC_DCN to isolate
FPU-related code to only be used for DCN. Over the years, we lost
control over this guard, and it was spread in multiple areas. In this
new DC version, there is an effort to remove all unnecessary
CONFIG_DRM_AMD_DC_DCN and replace the others for CONFIG_DRM_AMD_DC_FP,
which better describes which type of code this guard is intended for.

Additionally, this patchset brings along the following:
- Enable HostVM based on rIOMMU active
- Keep PHY active for dp confi
- Improves Z8
- Update clock table
- Code and directives clean up

Cc: Daniel Wheeler <daniel.wheeler at amd.com>

---

Agustin Gutierrez (1):
  drm/amd/display: Keep PHY active for dp config

Alvin Lee (3):
  drm/amd/display: When blanking during init loop to find OPP index
  drm/amd/display: Update to correct min FCLK when construction BB
  drm/amd/display: Pass tg and hubp inst instead of pipe index for SubVP

Aric Cyr (2):
  drm/amd/display: 3.2.225
  drm/amd/display: 3.2.226

Chris Park (1):
  drm/amd/display: Simplify register offsets

Gabe Teeger (1):
  drm/amd/display: Enable HostVM based on rIOMMU active

Harry Wentland (8):
  drm/amd/display: Drop CONFIG_DRM_AMD_DC_HDR
  drm/amd/display: Fix no-DCN build
  drm/amd/display: Drop CONFIG_DRM_AMD_DC_HDCP
  drm/amd/display: call remove_stream_from_ctx from res_pool funcs
  drm/amd/display: Build DSC without DCN config
  drm/amd/display: Drop unnecessary DCN guards
  drm/amd/display: Drop unnecessary DCN guards
  drm/amd/display: Rename DCN config to FP

Mike Hsieh (2):
  drm/amd/display: Add height granularity limitation for dsc slice
    height calculation
  drm/amd/display: fix typo in dc_dsc_config_options structure

Mustapha Ghaddar (1):
  drm/amd/display: Unify DC logging for BW Alloc

Nicholas Kazlauskas (2):
  drm/amd/display: Add minimum Z8 residency debug option
  drm/amd/display: Update minimum stutter residency for DCN314 Z8

Rodrigo Siqueira (6):
  drm/amd/display: Ensure vmin and vmax adjust for DCE
  drm/amd/display: Drop dc_commit_state in favor of dc_commit_streams
  drm/amd/display: Use dc_update_planes_and_stream
  drm/amd/display: Use DC_LOG_DC in the trasform pixel function
  drm/amd/display: Add wrapper to call planes and stream update
  drm/amd/display: Ensure that planes are in the same order

Wayne Lin (1):
  drm/amd/display: Pass the right info to drm_dp_remove_payload

Wenjing Liu (5):
  drm/amd/display: move dc_link functions in accessories folder to
    dc_link_exports
  drm/amd/display: move dc_link functions in link root folder to
    dc_link_exports
  drm/amd/display: link link_dp_dpia_bw.o in makefile
  drm/amd/display: move dc_link functions in protocols folder to
    dc_link_exports
  drm/amd/display: replace all dc_link function call in link with link
    functions

 drivers/gpu/drm/amd/display/Kconfig           |  14 +-
 drivers/gpu/drm/amd/display/Makefile          |   4 -
 .../gpu/drm/amd/display/amdgpu_dm/Makefile    |   4 +-
 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 150 ++---
 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h |   4 -
 .../amd/display/amdgpu_dm/amdgpu_dm_debugfs.c |  11 +-
 .../amd/display/amdgpu_dm/amdgpu_dm_helpers.c |  65 +-
 .../display/amdgpu_dm/amdgpu_dm_mst_types.c   |  39 +-
 .../amd/display/amdgpu_dm/amdgpu_dm_plane.c   | 129 ----
 drivers/gpu/drm/amd/display/dc/Makefile       |   7 +-
 .../drm/amd/display/dc/bios/bios_parser2.c    |   2 +-
 .../gpu/drm/amd/display/dc/clk_mgr/Makefile   |   2 +-
 .../gpu/drm/amd/display/dc/clk_mgr/clk_mgr.c  |   8 +-
 .../amd/display/dc/clk_mgr/dcn21/rn_clk_mgr.c |   2 +-
 .../dc/clk_mgr/dcn314/dcn314_clk_mgr.c        |   5 +
 drivers/gpu/drm/amd/display/dc/core/dc.c      |  90 +--
 .../drm/amd/display/dc/core/dc_link_exports.c | 294 ++++++++-
 .../gpu/drm/amd/display/dc/core/dc_resource.c |   8 +-
 .../drm/amd/display/dc/core/dc_vm_helper.c    |   2 -
 drivers/gpu/drm/amd/display/dc/dc.h           |  35 +-
 drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c  |  10 +-
 drivers/gpu/drm/amd/display/dc/dc_dp_types.h  |  66 +-
 drivers/gpu/drm/amd/display/dc/dc_dsc.h       |  11 +-
 drivers/gpu/drm/amd/display/dc/dc_hw_types.h  |   2 +-
 drivers/gpu/drm/amd/display/dc/dc_link.h      | 579 ------------------
 drivers/gpu/drm/amd/display/dc/dc_types.h     |   6 -
 .../drm/amd/display/dc/dce/dce_clock_source.c |  27 +-
 .../drm/amd/display/dc/dce/dce_clock_source.h |   6 -
 .../drm/amd/display/dc/dce/dce_transform.c    |   5 +-
 .../display/dc/dce110/dce110_hw_sequencer.h   |   2 -
 .../gpu/drm/amd/display/dc/dcn10/dcn10_dwb.c  |   5 -
 .../gpu/drm/amd/display/dc/dcn10/dcn10_dwb.h  |   4 -
 .../display/dc/dcn10/dcn10_stream_encoder.c   |   3 +-
 .../amd/display/dc/dcn303/dcn303_resource.c   |   2 -
 .../display/dc/dcn31/dcn31_dio_link_encoder.c |   5 +-
 .../drm/amd/display/dc/dcn31/dcn31_hwseq.c    |   4 +-
 .../amd/display/dc/dcn314/dcn314_resource.c   |   1 +
 .../gpu/drm/amd/display/dc/dcn32/dcn32_dccg.h |  36 --
 .../dc/dcn32/dcn32_dio_stream_encoder.c       |   2 -
 .../dc/dcn32/dcn32_dio_stream_encoder.h       |  64 --
 .../drm/amd/display/dc/dcn32/dcn32_hubbub.h   |  62 --
 .../gpu/drm/amd/display/dc/dcn32/dcn32_hubp.h |   6 -
 .../drm/amd/display/dc/dcn32/dcn32_hwseq.c    |  83 +++
 .../drm/amd/display/dc/dcn32/dcn32_hwseq.h    |   4 +
 .../gpu/drm/amd/display/dc/dcn32/dcn32_init.c |   2 +-
 .../gpu/drm/amd/display/dc/dcn32/dcn32_optc.h |  71 ---
 drivers/gpu/drm/amd/display/dc/dml/Makefile   |   2 +-
 .../drm/amd/display/dc/dml/dcn20/dcn20_fpu.c  |   3 +-
 .../dc/dml/dcn30/display_mode_vba_30.c        |   2 -
 .../dc/dml/dcn30/display_rq_dlg_calc_30.c     |   3 -
 .../amd/display/dc/dml/dcn314/dcn314_fpu.c    |   4 +
 .../drm/amd/display/dc/dml/dcn32/dcn32_fpu.c  |   5 +-
 .../dc/dml/dcn32/display_mode_vba_32.c        |   6 +-
 .../dc/dml/dcn32/display_mode_vba_util_32.c   |   6 +-
 .../dc/dml/dcn32/display_mode_vba_util_32.h   |   3 +-
 .../amd/display/dc/dml/dcn321/dcn321_fpu.c    |   5 +-
 drivers/gpu/drm/amd/display/dc/dsc/dc_dsc.c   |  33 +-
 drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c  |   2 +
 .../gpu/drm/amd/display/dc/hdcp/hdcp_msg.c    |   2 +-
 .../gpu/drm/amd/display/dc/inc/core_types.h   |   2 -
 drivers/gpu/drm/amd/display/dc/inc/hw/dwb.h   |   8 +-
 drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h  |   2 +-
 .../amd/display/dc/inc/hw/timing_generator.h  |   2 +-
 .../amd/display/dc/inc/hw_sequencer_private.h |   2 +-
 drivers/gpu/drm/amd/display/dc/inc/link.h     | 128 +++-
 drivers/gpu/drm/amd/display/dc/inc/resource.h |   2 +-
 drivers/gpu/drm/amd/display/dc/link/Makefile  |   2 +-
 .../display/dc/link/accessories/link_dp_cts.c |  47 +-
 .../display/dc/link/accessories/link_dp_cts.h |  19 +-
 .../dc/link/accessories/link_dp_trace.c       |  13 +-
 .../dc/link/accessories/link_dp_trace.h       |  12 +-
 .../drm/amd/display/dc/link/link_detection.c  |  16 +-
 .../drm/amd/display/dc/link/link_detection.h  |   6 +
 .../gpu/drm/amd/display/dc/link/link_dpms.c   |  20 +-
 .../drm/amd/display/dc/link/link_factory.c    |  84 ++-
 .../drm/amd/display/dc/link/link_resource.h   |   3 -
 .../drm/amd/display/dc/link/link_validation.c |   9 +-
 .../amd/display/dc/link/protocols/link_ddc.c  |  24 +-
 .../amd/display/dc/link/protocols/link_ddc.h  |   3 +
 .../dc/link/protocols/link_dp_capability.c    |  58 +-
 .../dc/link/protocols/link_dp_capability.h    |  19 +
 .../display/dc/link/protocols/link_dp_dpia.c  |   2 +-
 .../display/dc/link/protocols/link_dp_dpia.h  |   4 +-
 .../dc/link/protocols/link_dp_dpia_bw.c       |  97 ++-
 .../dc/link/protocols/link_dp_dpia_bw.h       |  26 +-
 .../dc/link/protocols/link_dp_irq_handler.c   |  30 +-
 .../dc/link/protocols/link_dp_irq_handler.h   |  12 +-
 .../display/dc/link/protocols/link_dp_phy.c   |  10 +-
 .../display/dc/link/protocols/link_dp_phy.h   |   8 +-
 .../dc/link/protocols/link_dp_training.c      |  17 +-
 .../dc/link/protocols/link_dp_training.h      |   3 +
 .../link/protocols/link_dp_training_auxless.c |   2 +-
 .../link/protocols/link_dp_training_auxless.h |   2 +-
 .../dc/link/protocols/link_dp_training_dpia.c |   4 +-
 .../dc/link/protocols/link_dp_training_dpia.h |   2 +-
 .../link/protocols/link_edp_panel_control.c   |  31 +-
 .../link/protocols/link_edp_panel_control.h   |  20 +
 .../amd/display/dc/link/protocols/link_hpd.c  |  14 +-
 .../amd/display/dc/link/protocols/link_hpd.h  |   4 +
 drivers/gpu/drm/amd/display/dc/os_types.h     |   4 +-
 .../{hdcp_types.h => hdcp_msg_types.h}        |   0
 .../drm/amd/display/modules/hdcp/hdcp_log.h   |   2 -
 .../amd/display/modules/power/power_helpers.c |   7 -
 103 files changed, 1216 insertions(+), 1585 deletions(-)
 delete mode 100644 drivers/gpu/drm/amd/display/dc/dc_link.h
 rename drivers/gpu/drm/amd/display/include/{hdcp_types.h => hdcp_msg_types.h} (100%)

-- 
2.34.1



More information about the amd-gfx mailing list