[PATCH 00/34] DC Patches Aug 10 2026

Tom Chung <[email protected]> Wed, 5 Aug 2026 14:36:12 +0800
Newsgroups org.freedesktop.lists.amd-gfx
Message-ID <[email protected]>
This DC patchset brings improvements in multiple areas. In summary, we have:

- DCN6 fixes on GPUVM calculations, HostVM and SOCBB VM config,
  clkmgr interfaces, and peak bandwidth measurement
- Unified fast update classification paths and inbox0 HW lock on DCN35
- HDMI FRL fixes on LT timeout behaviour and cap restore during
  non-destructive link verify
- Greatly enhanced KUnit coverage across CRTC, VRR, and cursor paths
- eDP panel polarity control, FreeSync range quirk, and Z8-based
  zstate support
- DCE ASIC code gated behind CONFIG_DRM_AMD_DC_DCE for DCN-only builds
- Fixes on HPD filter programming, DMUB DIG PHY wait, dcn42b
  force_min_dcfclk clamp, audio tests, and UTM client QC profile override


Cc: Daniel Wheeler <[email protected]>

Alex Hung (7):
  drm/amd/display: test stream VRR updates
  drm/amd/display: test VRR IRQ parameters
  drm/amd/display: test VRR transitions
  drm/amd/display: test dm_check_cursor_fb
  drm/amd/display: test native cursor state check
  drm/amd/display: test dm_plane_color_pipeline_active
  drm/amd/display: test amdgpu_dm_crtc_get_cursor_mode

Alvin Lee (2):
  drm/amd/display: Update dcn60 clkmgr interfaces
  drm/amd/display: Apply workaround to limit SopCount for now

Bhawanpreet Lakha (6):
  drm/amd/display: Cover crtc duplicate_state stream and null guard
  drm/amd/display: Cover crtc destroy callback
  drm/amd/display: Add reset_state existing-state branch test
  drm/amd/display: Add amdgpu_dm_crtc_late_register test
  drm/amd/display: Add amdgpu_dm_crtc_init tests
  drm/amd/display: Add KUnit tests for
    amdgpu_dm_crtc_helper_atomic_check

Charlene Liu (2):
  drm/amd/display: fix HPD program filter programming
  drm/amd/display: add a NULL pointer check

Dillon Varone (1):
  drm/amd/display: Add support for overriding UTM client QC profile

Fangzhi Zuo (2):
  drm/amd/display: Force FreeSync range minimum on quirky panels
  drm/amd/display: restore FRL cap on non-destructive HDMI link verify

Gabe Teeger (1):
  drm/amd/display: clamp force_min_dcfclk to dcn42b range

Gaghik Khachatrian (1):
  drm/amd/display: gate DCE ASIC code behind CONFIG_DRM_AMD_DC_DCE

Harry VanZyllDeJong (1):
  drm/amd/display: eDP panel polarity control and test support

Nicholas Kazlauskas (2):
  drm/amd/display: Fix crash in DCN5/6 calcs when GPUVM enabled
  drm/amd/display: Fix HostVM init and SOCBB VM config for DCN6

Ovidiu Bunea (1):
  drm/amd/display: Decide zstate_support based off Z8 global support

Rafal Ostrowski (1):
  drm/amd/display: Unify fast update classification paths

Ray Wu (1):
  drm/amd/display: Align KUnit tests Makefile license header

Relja Vojvodic (1):
  drm/amd/display: Update and revert FRL LT Timeout behaviour

Sridevi Arvindekar (1):
  drm/amd/display: Fix audio test errors

Taimur Hassan (1):
  drm/amd/display: Promote DC to 3.2.393

Wayne Lin (1):
  drm/amd/display: Extend DMUB wait for DIG PHY programming commands

Wenjing Liu (1):
  drm/amd/display: Fix DCN6 peak bandwidth measurement overshoot

YiLing Chen (1):
  drm/amd/display: Extend inbox0 HW lock support to DCN35

 drivers/gpu/drm/amd/display/Kconfig           |   9 +
 .../display/amdgpu_dm/amdgpu_dm_connector.c   |  12 +
 .../amd/display/amdgpu_dm/amdgpu_dm_crtc.c    |  10 +-
 .../amd/display/amdgpu_dm/amdgpu_dm_crtc.h    |   6 +
 .../amd/display/amdgpu_dm/amdgpu_dm_cursor.c  |  16 +-
 .../amd/display/amdgpu_dm/amdgpu_dm_cursor.h  |   6 +
 .../display/amdgpu_dm/amdgpu_dm_freesync.c    |   3 +
 .../amd/display/amdgpu_dm/amdgpu_dm_helpers.c |  18 +
 .../drm/amd/display/amdgpu_dm/tests/Makefile  |   4 +-
 .../amdgpu_dm/tests/amdgpu_dm_crtc_test.c     | 645 ++++++++++++++++
 .../amdgpu_dm/tests/amdgpu_dm_cursor_test.c   | 694 ++++++++++++++++++
 .../amdgpu_dm/tests/amdgpu_dm_freesync_test.c | 407 ++++++++++
 .../amdgpu_dm/tests/amdgpu_dm_helpers_test.c  |  17 +
 .../display/dc/bios/command_table_helper.c    |   7 +-
 .../display/dc/bios/command_table_helper2.c   |   2 +
 .../gpu/drm/amd/display/dc/clk_mgr/Makefile   |   8 +
 .../gpu/drm/amd/display/dc/clk_mgr/clk_mgr.c  |   4 +
 .../display/dc/clk_mgr/dce100/dce_clk_mgr.c   | 115 ---
 .../display/dc/clk_mgr/dce100/dce_clk_mgr.h   |   8 +-
 .../dc/clk_mgr/dce112/dce112_clk_mgr.c        |  59 --
 .../dc/clk_mgr/dce112/dce112_clk_mgr.h        |   4 +-
 .../display/dc/clk_mgr/dcn10/dcn10_clk_mgr.c  | 181 +++++
 .../display/dc/clk_mgr/dcn10/dcn10_clk_mgr.h  |  29 +
 .../dc/clk_mgr/dcn42b/dcn42b_clk_mgr.c        |  30 +-
 .../drm/amd/display/dc/clk_mgr/dcn60/dalsmc.h | 344 ++-------
 .../display/dc/clk_mgr/dcn60/dcn60_clk_mgr.c  | 115 +--
 .../display/dc/clk_mgr/dcn60/dcn60_clk_mgr.h  |  17 +-
 .../dc/clk_mgr/dcn60/dcn60_clk_mgr_smu_msg.c  | 220 +++++-
 .../dc/clk_mgr/dcn60/dcn60_clk_mgr_smu_msg.h  | 167 ++++-
 .../dc/clk_mgr/dcn60/dcn60_smu_driver_if.h    |  76 ++
 drivers/gpu/drm/amd/display/dc/core/dc.c      | 246 +------
 .../drm/amd/display/dc/core/dc_link_exports.c |  22 +
 .../gpu/drm/amd/display/dc/core/dc_resource.c |  79 ++
 drivers/gpu/drm/amd/display/dc/dc.h           |  42 +-
 drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c  |  54 +-
 drivers/gpu/drm/amd/display/dc/dc_dmub_srv.h  |  27 +
 drivers/gpu/drm/amd/display/dc/dc_stream.h    |   3 +
 drivers/gpu/drm/amd/display/dc/dc_types.h     |   1 +
 .../display/dc/dio/dcn10/dcn10_link_encoder.c |  10 +-
 .../dc/dio/dcn42/dcn42_dio_link_encoder.c     |   4 +-
 .../dml2_0/dml21/dml21_translation_helper.c   |   2 +-
 .../dc/dml2_0/dml21/inc/dml_top_types.h       |   1 +
 .../dml21/src/dml2_core/dml2_core_dcn4.c      |   4 +
 .../src/dml2_core/dml2_core_dcn4_calcs.c      |  15 +
 .../src/dml2_core/dml2_core_dcn4_calcs.h      |   1 +
 .../dml2_core/dml2_core_dcn5_calcs_dchub.c    |   2 +-
 .../src/dml2_core/dml2_core_shared_types.h    |   2 +
 .../gpu/drm/amd/display/dc/gpio/hw_factory.c  |   4 +
 .../drm/amd/display/dc/gpio/hw_translate.c    |   4 +
 .../display/dc/hubbub/dcn10/dcn10_hubbub.h    |  11 +-
 .../display/dc/hubbub/dcn60/dcn60_hubbub.c    | 206 +++++-
 .../display/dc/hubbub/dcn60/dcn60_hubbub.h    |  19 +-
 drivers/gpu/drm/amd/display/dc/hwss/Makefile  |   6 +
 .../amd/display/dc/hwss/dce110/dce110_hwseq.c |   2 +
 .../amd/display/dc/hwss/dcn35/dcn35_hwseq.c   |  46 ++
 .../amd/display/dc/hwss/dcn35/dcn35_hwseq.h   |   4 +
 .../amd/display/dc/hwss/dcn35/dcn35_init.c    |   2 +
 .../amd/display/dc/hwss/dcn351/dcn351_init.c  |   2 +
 .../amd/display/dc/hwss/dcn401/dcn401_hwseq.c |  15 +-
 .../amd/display/dc/hwss/dcn401/dcn401_hwseq.h |   2 +-
 .../amd/display/dc/hwss/dcn42/dcn42_hwseq.c   |  13 +-
 .../amd/display/dc/hwss/dcn42/dcn42_hwseq.h   |   2 +-
 .../amd/display/dc/hwss/dcn60/dcn60_hwseq.c   |  16 +-
 .../drm/amd/display/dc/hwss/hw_sequencer.h    |   2 +-
 .../gpu/drm/amd/display/dc/inc/hw/dchubbub.h  |   1 +
 .../gpu/drm/amd/display/dc/inc/link_service.h |   5 +-
 drivers/gpu/drm/amd/display/dc/irq/Makefile   |   2 +
 .../dc/irq/dce110/irq_service_dce110.c        |  21 -
 .../dc/irq/dce110/irq_service_dce110.h        |   9 -
 .../gpu/drm/amd/display/dc/irq/irq_service.c  |  28 +
 .../gpu/drm/amd/display/dc/irq/irq_service.h  |   9 +
 .../drm/amd/display/dc/link/link_detection.c  |   2 +-
 .../drm/amd/display/dc/link/link_factory.c    |   4 +
 .../link/protocols/link_edp_panel_control.c   |  30 +
 .../link/protocols/link_edp_panel_control.h   |   4 +
 .../display/dc/link/protocols/link_hdmi_frl.c |  32 +-
 .../gpu/drm/amd/display/dc/resource/Makefile  |   4 +
 .../dc/resource/dce112/dce112_resource.c      |  62 --
 .../dc/resource/dcn60/dcn60_resource.c        |  10 +-
 .../dc/resource/dcn60/dcn60_resource.h        |   9 +-
 .../dcn60/dcn60_soc_and_ip_translator.c       |   6 +-
 .../gpu/drm/amd/display/include/dal_asic_id.h |   5 +
 82 files changed, 3357 insertions(+), 990 deletions(-)
 create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn10/dcn10_clk_mgr.c
 create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn10/dcn10_clk_mgr.h
 create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn60/dcn60_smu_driver_if.h

-- 
2.43.0