[PATCH 00/24] DC Patches June 2nd, 2025

Wheeler, Daniel Daniel.Wheeler at amd.com
Mon Jun 2 13:24:25 UTC 2025


[Public]

Hi all,

This week this patchset was tested on 4 systems, two dGPU and two APU based, and tested across multiple display and connection types.

APU
        * Single Display eDP -> 1080p 60hz, 1920x1200 165hz
        * Single Display DP (SST DSC) -> 4k144hz, 4k240hz
        * Multi display -> eDP + DP/HDMI/USB-C -> 1080p 60hz eDP + 4k 144hz, 4k 240hz (Includes USB-C to DP/HDMI adapters)
        * Thunderbolt -> LG Ultrafine 5k
        * MST DSC -> Cable Matters 101075 (DP to 3x DP) with 3x 4k60hz displays, HP Hook G2 with 2x 4k60hz displays
        * USB 4 -> HP Hook G4, Lenovo Thunderbolt Dock, both with 2x 4k60hz DP and 1x 4k60hz HDMI displays
        * SST PCON -> Club3D CAC-1085 + 1x 4k 144hz, FRL3, at a max resolution supported by the dongle of 4k 120hz YUV420 12bpc.
        * MST PCON -> 1x 4k 144hz, FRL3, at a max resolution supported by the adapter of 4k 120hz RGB 8bpc.

DGPU
        * Single Display DP (SST DSC) -> 4k144hz, 4k240hz
        * Multiple Display DP -> 4k240hz + 4k144hz
        * MST (Startech MST14DP123DP [DP to 3x DP] and 2x 4k 60hz displays)
        * MST DSC (with Cable Matters 101075 [DP to 3x DP] with 3x 4k60hz displays)

The testing is a mix of automated and manual tests. Manual testing includes (but is not limited to)
        * Changing display configurations and settings
        * Video/Audio playback
        * Benchmark testing
        * Suspend/Resume testing
        * Feature testing (Freesync, HDCP, etc.)

Automated testing includes (but is not limited to)
        * Script testing (scripts to automate some of the manual checks)
        * IGT testing

The testing is mainly tested on the following displays, but occasionally there are tests with other displays
        * Samsung G8 Neo 4k240hz
        * Samsung QN55QN95B 4k 120hz
        * Acer XV322QKKV 4k144hz
        * HP U27 4k Wireless 4k60hz
        * LG 27UD58B 4k60hz
        * LG 32UN650WA 4k60hz
        * LG Ultrafine 5k 5k60hz
        * AU Optronics B140HAN01.1 1080p 60hz eDP
        * AU Optronics B160UAN01.J 1920x1200 165hz eDP

The patchset consists of the amd-staging-drm-next branch (Head commit - b693472094cd4b6cc96715df2e1a17d1ebf85313 drm/amd/display: [FW Promotion] Release 0.1.11.0) with new patches added on top of it.

Tested on Ubuntu 24.04.1, on Wayland and X11, using KDE Plasma and Gnome.

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

Thank you,

Dan Wheeler
Sr. Technologist  |  AMD
SW Display
------------------------------------------------------------------------------------------------------------------
1 Commerce Valley Dr E, Thornhill, ON L3T 7X6
Facebook |  Twitter |  amd.com


-----Original Message-----
From: Wayne Lin <Wayne.Lin at amd.com>
Sent: Tuesday, May 27, 2025 10:49 PM
To: amd-gfx at lists.freedesktop.org
Cc: Wentland, Harry <Harry.Wentland at amd.com>; Li, Sun peng (Leo) <Sunpeng.Li at amd.com>; Pillai, Aurabindo <Aurabindo.Pillai at amd.com>; Li, Roman <Roman.Li at amd.com>; Lin, Wayne <Wayne.Lin at amd.com>; Chung, ChiaHsuan (Tom) <ChiaHsuan.Chung at amd.com>; Zuo, Jerry <Jerry.Zuo at amd.com>; Wheeler, Daniel <Daniel.Wheeler at amd.com>; Wu, Ray <Ray.Wu at amd.com>; Hung, Alex <Alex.Hung at amd.com>; Lin, Wayne <Wayne.Lin at amd.com>
Subject: [PATCH 00/24] DC Patches June 2nd, 2025

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

- Fixes for DML21
- Support OLED SDR with AMD ABC
- Indirect buffer transport for FAMS2 commands
- Correct stream attributes setup timing
- Correct non-OLED pre_T11_delay
- Optime boot-up consuming time
- Add support for 2nd sharpening range
- Fix on chroma planes scaling
- Fix brightness relevant settings
- Fix calling blanking stream twice
- Extend dc mode validation types to support more scenarios
- Update DMCUB loading sequence for DCN3.5

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

---
Alvin Lee (1):
  drm/amd/display: Re-order FAMS2 sub commands

Austin Zheng (1):
  drm/amd/display: DML21 Fixes

Camille Cho (1):
  drm/amd/display: Support OLED SDR with AMD ABC

Cruise Hung (1):
  drm/amd/display: Use DC log instead of using DM error msg

Jingwen Zhu (1):
  drm/amd/display: Add disconnect case on dongle check

Mario Limonciello (3):
  drm/amd/display: Drop unnecessary `amdgpu` prefix
  drm/amd/display: Add debugging message for brightness caps
  drm/amd/display: Fix default DC and AC levels

Michael Strauss (1):
  drm/amd/display: Call setup_stream_attribute after stream enc clk is
    ungated

Navid Assadian (1):
  drm/amd/display: Do not bypass chroma scaling in 1:1 case

Nicholas Kazlauskas (1):
  drm/amd/display: Update DMCUB loading sequence for DCN3.5

Oleh Kuzhylnyi (2):
  drm/amd/display: Indirect buffer transport for FAMS2 commands
  drm/amd/display: Add DML path for FAMS methods

Ray Wu (1):
  drm/amd/display: Move vmalloc include to header file

Samson Tam (1):
  drm/amd/display: Add support for 2nd sharpening range

Taimur Hassan (4):
  drm/amd/display: [FW Promotion] Release 0.1.11.0
  drm/amd/display: [FW Promotion] Release 0.1.12.0
  drm/amd/display: Promote DAL to 3.2.335
  drm/amd/display: Promote DAL to 3.2.336

Wayne Lin (1):
  drm/amd/display: Avoid trying AUX transactions on disconnected ports

Yan Li (1):
  drm/amd/display: replace fast_validate with enum dc_validate_mode

Yihan Zhu (1):
  drm/amd/display: move RMCM programming

Zhongwei Zhang (2):
  drm/amd/display: Correct non-OLED pre_T11_delay.
  drm/amd/display: Avoid calling blank_stream() twice

 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c |  48 +--
 .../display/amdgpu_dm/amdgpu_dm_mst_types.c   |   6 +-
 drivers/gpu/drm/amd/display/dc/core/dc.c      |  12 +-
 .../gpu/drm/amd/display/dc/core/dc_resource.c |  12 +-
 drivers/gpu/drm/amd/display/dc/dc.h           |  47 ++-
 drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c  |  59 +++-  .../gpu/drm/amd/display/dc/dc_spl_translate.c |  19 +-
 drivers/gpu/drm/amd/display/dc/dc_types.h     |  10 +-
 .../drm/amd/display/dc/dml/calcs/dcn_calcs.c  |   6 +-
 .../drm/amd/display/dc/dml/dcn20/dcn20_fpu.c  |  45 ++-  .../drm/amd/display/dc/dml/dcn20/dcn20_fpu.h  |  12 +-
 .../drm/amd/display/dc/dml/dcn30/dcn30_fpu.c  |   6 +-
 .../drm/amd/display/dc/dml/dcn31/dcn31_fpu.h  |   2 +-
 .../amd/display/dc/dml/dcn314/dcn314_fpu.c    |   4 +-
 .../amd/display/dc/dml/dcn314/dcn314_fpu.h    |   2 +-
 .../drm/amd/display/dc/dml/dcn32/dcn32_fpu.c  |  30 +-
 .../drm/amd/display/dc/dml/dcn32/dcn32_fpu.h  |   2 +-
 .../drm/amd/display/dc/dml/dcn35/dcn35_fpu.c  |   4 +-
 .../drm/amd/display/dc/dml/dcn35/dcn35_fpu.h  |   2 +-
 .../amd/display/dc/dml/dcn351/dcn351_fpu.c    |   4 +-
 .../amd/display/dc/dml/dcn351/dcn351_fpu.h    |   2 +-
 .../dc/dml2/dml21/dml21_translation_helper.c  |   4 +-
 .../amd/display/dc/dml2/dml21/dml21_utils.c   |  14 +-
 .../amd/display/dc/dml2/dml21/dml21_wrapper.c |   9 +-
 .../amd/display/dc/dml2/dml21/dml21_wrapper.h |  11 +-
 .../amd/display/dc/dml2/dml21/inc/dml_top.h   |   1 -
 .../display/dc/dml2/dml21/inc/dml_top_types.h |  10 +-
 .../src/dml2_core/dml2_core_dcn4_calcs.c      |   7 +-
 .../src/dml2_core/dml2_core_shared_types.h    |  82 ++++-
 .../dml2/dml21/src/dml2_dpmm/dml2_dpmm_dcn4.c |   3 -
 .../src/inc/dml2_internal_shared_types.h      |  10 +-
 .../amd/display/dc/dml2/dml2_mall_phantom.c   |   2 +-
 .../drm/amd/display/dc/dml2/dml2_wrapper.c    |  11 +-
 .../drm/amd/display/dc/dml2/dml2_wrapper.h    |   4 +-
 .../amd/display/dc/hwss/dce110/dce110_hwseq.c |  11 +-
 .../amd/display/dc/hwss/dcn20/dcn20_hwseq.c   |  12 +-
 .../amd/display/dc/hwss/dcn31/dcn31_hwseq.c   |  11 +-
 .../amd/display/dc/hwss/dcn401/dcn401_hwseq.c | 292 +-----------------
 .../amd/display/dc/hwss/dcn401/dcn401_hwseq.h |   8 -
 .../display/dc/hwss/hw_sequencer_private.h    |   1 +
 .../gpu/drm/amd/display/dc/inc/core_types.h   |   9 +-
 .../gpu/drm/amd/display/dc/inc/dcn_calcs.h    |   2 +-
 .../gpu/drm/amd/display/dc/link/link_dpms.c   |   6 +-
 .../drm/amd/display/dc/link/link_validation.c |   8 +
 .../dc/link/protocols/link_dp_capability.c    |   2 +-
 .../link/protocols/link_edp_panel_control.c   |  21 ++
 .../drm/amd/display/dc/mpc/dcn32/dcn32_mpc.c  |   3 -
 drivers/gpu/drm/amd/display/dc/os_types.h     |   1 +
 .../dc/resource/dce100/dce100_resource.c      |   2 +-
 .../dc/resource/dce110/dce110_resource.c      |   2 +-
 .../dc/resource/dce112/dce112_resource.c      |   2 +-
 .../dc/resource/dce112/dce112_resource.h      |   2 +-
 .../dc/resource/dce60/dce60_resource.c        |   2 +-
 .../dc/resource/dce80/dce80_resource.c        |   2 +-
 .../dc/resource/dcn10/dcn10_resource.c        |   4 +-
 .../dc/resource/dcn20/dcn20_resource.c        |   8 +-
 .../dc/resource/dcn20/dcn20_resource.h        |   4 +-
 .../dc/resource/dcn21/dcn21_resource.c        |   8 +-
 .../dc/resource/dcn21/dcn21_resource.h        |   2 +-
 .../dc/resource/dcn30/dcn30_resource.c        |  22 +-
 .../dc/resource/dcn30/dcn30_resource.h        |   6 +-
 .../dc/resource/dcn31/dcn31_resource.c        |  18 +-
 .../dc/resource/dcn31/dcn31_resource.h        |   4 +-
 .../dc/resource/dcn314/dcn314_resource.c      |  14 +-
 .../dc/resource/dcn314/dcn314_resource.h      |   2 +-
 .../dc/resource/dcn315/dcn315_resource.c      |   4 +-
 .../dc/resource/dcn316/dcn316_resource.c      |   4 +-
 .../dc/resource/dcn32/dcn32_resource.c        |  26 +-
 .../dc/resource/dcn32/dcn32_resource.h        |   4 +-
 .../dc/resource/dcn35/dcn35_resource.c        |   6 +-
 .../dc/resource/dcn351/dcn351_resource.c      |   6 +-
 .../dc/resource/dcn36/dcn36_resource.c        |   6 +-
 .../dc/resource/dcn401/dcn401_resource.c      |  31 +-
 .../dc/resource/dcn401/dcn401_resource.h      |   2 +-
 drivers/gpu/drm/amd/display/dc/sspl/dc_spl.c  |  28 +-
 .../dc/virtual/virtual_stream_encoder.c       |   7 +
 drivers/gpu/drm/amd/display/dmub/dmub_srv.h   |   2 +
 .../gpu/drm/amd/display/dmub/inc/dmub_cmd.h   | 204 +++++++++++-
 .../gpu/drm/amd/display/dmub/src/dmub_dcn35.c |  16 +-
 .../gpu/drm/amd/display/dmub/src/dmub_srv.c   |   9 +-
 80 files changed, 771 insertions(+), 577 deletions(-)

--
2.43.0



More information about the amd-gfx mailing list