[PATCH 00/25] DC Patches for Dec 18, 2023

Wayne Lin Wayne.Lin at amd.com
Wed Dec 13 06:12:02 UTC 2023


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

- change static screen wait frame_count for ips
- Fix hang/underflow when transitioning to ODM4:1
- Only clear symclk otg flag for HDMI
- Fix lightup regression with DP2 single display configs
- Refactor phantom resource allocation
- Refactor dc_state interface
- Wake DMCUB before executing GPINT commands
- Wake DMCUB before sending a command
- Refactor DMCUB enter/exit idle interface
- enable dcn35 idle power optimization
- fix usb-c connector_type
- add debug option for ExtendedVBlank DLG adjust
- Set test_pattern_changed update flag on pipe enable
- dereference variable before checking for zero
- get dprefclk ss info from integration info table
- skip error logging when DMUB is inactive from S3
- make flip_timestamp_in_us a 64-bit variable
- Add case for dcn35 to support usb4 dmub hpd event
- Add function for dumping clk registers
- Unify optimize_required flags and VRR adjustments
- Revert using channel_width as 2 for vram table 3.0
- remove HPO PG in driver side
- do not send commands to DMUB if DMUB is inactive from S3

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

Allen Pan (2):
  drm/amd/display: fix usb-c connector_type
  drm/amd/display: change static screen wait frame_count for ips

Alvin Lee (2):
  drm/amd/display: Revert " drm/amd/display: Use channel_width = 2 for
    vram table 3.0"
  drm/amd/display: Only clear symclk otg flag for HDMI

Anthony Koo (1):
  drm/amd/display: [FW Promotion] Release 0.0.197.0

Aric Cyr (2):
  drm/amd/display: Unify optimize_required flags and VRR adjustments
  drm/amd/display: 3.2.265

Charlene Liu (1):
  drm/amd/display: get dprefclk ss info from integration info table

Dillon Varone (2):
  drm/amd/display: Refactor dc_state interface
  drm/amd/display: Refactor phantom resource allocation

George Shen (1):
  drm/amd/display: Set test_pattern_changed update flag on pipe enable

Ilya Bakoulin (1):
  drm/amd/display: Fix hang/underflow when transitioning to ODM4:1

Johnson Chen (1):
  drm/amd/display: Add function for dumping clk registers

Josip Pavic (2):
  drm/amd/display: make flip_timestamp_in_us a 64-bit variable
  drm/amd/display: dereference variable before checking for zero

Michael Strauss (1):
  drm/amd/display: Fix lightup regression with DP2 single display
    configs

Muhammad Ahmed (2):
  drm/amd/display: remove HPO PG in driver side
  drm/amd/display: add debug option for ExtendedVBlank DLG adjust

Nicholas Kazlauskas (3):
  drm/amd/display: Refactor DMCUB enter/exit idle interface
  drm/amd/display: Wake DMCUB before sending a command
  drm/amd/display: Wake DMCUB before executing GPINT commands

Roman Li (1):
  drm/amd/display: enable dcn35 idle power optimization

Samson Tam (2):
  drm/amd/display: do not send commands to DMUB if DMUB is inactive from
    S3
  drm/amd/display: skip error logging when DMUB is inactive from S3

Wayne Lin (1):
  drm/amd/display: Add case for dcn35 to support usb4 dmub hpd event

 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c |  59 +-
 .../amd/display/amdgpu_dm/amdgpu_dm_debugfs.c |  29 +-
 drivers/gpu/drm/amd/display/dc/Makefile       |   2 +-
 .../drm/amd/display/dc/bios/bios_parser2.c    |  27 +-
 .../drm/amd/display/dc/bios/command_table2.c  |  12 +-
 .../gpu/drm/amd/display/dc/clk_mgr/clk_mgr.c  |   3 +-
 .../display/dc/clk_mgr/dcn31/dcn31_clk_mgr.c  |   2 +-
 .../dc/clk_mgr/dcn314/dcn314_clk_mgr.c        |   2 +-
 .../dc/clk_mgr/dcn315/dcn315_clk_mgr.c        |   2 +-
 .../dc/clk_mgr/dcn316/dcn316_clk_mgr.c        |   2 +-
 .../display/dc/clk_mgr/dcn35/dcn35_clk_mgr.c  |   9 +-
 drivers/gpu/drm/amd/display/dc/core/dc.c      | 300 ++----
 .../drm/amd/display/dc/core/dc_hw_sequencer.c |  19 +-
 .../gpu/drm/amd/display/dc/core/dc_resource.c | 418 +--------
 .../gpu/drm/amd/display/dc/core/dc_state.c    | 861 ++++++++++++++++++
 .../gpu/drm/amd/display/dc/core/dc_stream.c   |  46 +-
 .../gpu/drm/amd/display/dc/core/dc_surface.c  |   6 +-
 drivers/gpu/drm/amd/display/dc/dc.h           |  33 +-
 drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c  | 244 ++++-
 drivers/gpu/drm/amd/display/dc/dc_dmub_srv.h  |  59 +-
 drivers/gpu/drm/amd/display/dc/dc_helper.c    |   6 +-
 drivers/gpu/drm/amd/display/dc/dc_hw_types.h  |   2 +-
 drivers/gpu/drm/amd/display/dc/dc_plane.h     |  38 +
 .../gpu/drm/amd/display/dc/dc_plane_priv.h    |  34 +
 drivers/gpu/drm/amd/display/dc/dc_state.h     |  78 ++
 .../gpu/drm/amd/display/dc/dc_state_priv.h    | 102 +++
 drivers/gpu/drm/amd/display/dc/dc_stream.h    |  76 +-
 .../gpu/drm/amd/display/dc/dc_stream_priv.h   |  37 +
 drivers/gpu/drm/amd/display/dc/dc_types.h     |   5 +
 .../gpu/drm/amd/display/dc/dce/dmub_abm_lcd.c |  14 +-
 .../drm/amd/display/dc/dce/dmub_hw_lock_mgr.c |   2 +-
 .../gpu/drm/amd/display/dc/dce/dmub_outbox.c  |   2 +-
 drivers/gpu/drm/amd/display/dc/dce/dmub_psr.c |  33 +-
 .../gpu/drm/amd/display/dc/dcn21/dcn21_hubp.c |   2 +-
 .../display/dc/dcn31/dcn31_dio_link_encoder.c |   4 +-
 .../amd/display/dc/dcn31/dcn31_panel_cntl.c   |   4 +-
 .../display/dc/dcn32/dcn32_resource_helpers.c |  93 +-
 .../display/dc/dcn35/dcn35_dio_link_encoder.c |   5 +
 .../gpu/drm/amd/display/dc/dcn35/dcn35_init.c |   2 +-
 .../drm/amd/display/dc/dml/dcn20/dcn20_fpu.c  |   5 +-
 .../drm/amd/display/dc/dml/dcn32/dcn32_fpu.c  |  51 +-
 .../amd/display/dc/dml2/display_mode_core.c   |   2 +-
 .../drm/amd/display/dc/dml2/dml2_dc_types.h   |   1 +
 .../amd/display/dc/dml2/dml2_mall_phantom.c   |  89 +-
 .../display/dc/dml2/dml2_translation_helper.c |  10 +-
 .../gpu/drm/amd/display/dc/dml2/dml2_utils.c  |  14 +-
 .../drm/amd/display/dc/dml2/dml2_wrapper.c    |   2 +-
 .../drm/amd/display/dc/dml2/dml2_wrapper.h    |  35 +-
 .../amd/display/dc/hwss/dce110/dce110_hwseq.c |  13 +-
 .../amd/display/dc/hwss/dcn10/dcn10_hwseq.c   |  35 +-
 .../amd/display/dc/hwss/dcn10/dcn10_hwseq.h   |   7 +-
 .../amd/display/dc/hwss/dcn20/dcn20_hwseq.c   |  79 +-
 .../amd/display/dc/hwss/dcn20/dcn20_hwseq.h   |   2 +-
 .../amd/display/dc/hwss/dcn201/dcn201_hwseq.c |   8 +-
 .../amd/display/dc/hwss/dcn201/dcn201_hwseq.h |   2 +-
 .../amd/display/dc/hwss/dcn21/dcn21_hwseq.c   |   4 +-
 .../amd/display/dc/hwss/dcn30/dcn30_hwseq.c   |  12 +-
 .../amd/display/dc/hwss/dcn31/dcn31_hwseq.c   |   7 +-
 .../amd/display/dc/hwss/dcn32/dcn32_hwseq.c   |  78 +-
 .../amd/display/dc/hwss/dcn35/dcn35_hwseq.c   |  58 +-
 .../amd/display/dc/hwss/dcn35/dcn35_hwseq.h   |   6 +-
 .../drm/amd/display/dc/hwss/hw_sequencer.h    |   8 +-
 .../display/dc/hwss/hw_sequencer_private.h    |   1 +
 .../gpu/drm/amd/display/dc/inc/core_types.h   |  20 +-
 .../gpu/drm/amd/display/dc/inc/hw/clk_mgr.h   |  19 +
 .../gpu/drm/amd/display/dc/inc/hw/hw_shared.h |   1 +
 drivers/gpu/drm/amd/display/dc/inc/resource.h |   1 -
 .../dc/link/protocols/link_dp_capability.c    |   2 +-
 .../display/dc/link/protocols/link_dp_dpia.c  |   3 +-
 .../amd/display/dc/optc/dcn32/dcn32_optc.c    |   7 +
 .../amd/display/dc/optc/dcn35/dcn35_optc.c    |   7 +
 .../dc/resource/dcn32/dcn32_resource.c        | 134 +--
 .../dc/resource/dcn32/dcn32_resource.h        |  14 -
 .../dc/resource/dcn321/dcn321_resource.c      |  25 +-
 .../dc/resource/dcn35/dcn35_resource.c        |   8 +-
 drivers/gpu/drm/amd/display/dmub/dmub_srv.h   |  22 +
 .../gpu/drm/amd/display/dmub/inc/dmub_cmd.h   |   2 +-
 .../gpu/drm/amd/display/dmub/src/dmub_srv.c   |  15 +
 .../display/include/grph_object_ctrl_defs.h   |   2 +
 79 files changed, 2147 insertions(+), 1338 deletions(-)
 create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_state.c
 create mode 100644 drivers/gpu/drm/amd/display/dc/dc_plane.h
 create mode 100644 drivers/gpu/drm/amd/display/dc/dc_plane_priv.h
 create mode 100644 drivers/gpu/drm/amd/display/dc/dc_state.h
 create mode 100644 drivers/gpu/drm/amd/display/dc/dc_state_priv.h
 create mode 100644 drivers/gpu/drm/amd/display/dc/dc_stream_priv.h

-- 
2.37.3



More information about the amd-gfx mailing list