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. This week was also the
last promotion test ran on Ubuntu 24.04. There won't be any testing this week
as we had a holiday this past Monday, so the first test on Ubuntu 26.04 will
begin next week.
APU
* Single Display eDP -> 1080p 60hz, 1920x1200 165hz, 3840x2400 60hz
* 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
* Samsung ATNA60YV02-0 3840x2400 60Hz OLED eDP
The patchset consists of the amd-staging-drm-next branch (Head commit ->
22055267cc98e8b94ac506d5c9dc5589e4cb09ea -> drm/amd/display: Enable DCN42 PMO
policy) with new patches added on top of it.
Tested on Ubuntu 24.04.4, on Wayland and X11, using Gnome.
Tested-by: Dan Wheeler <[email protected]>
Thank you,
Dan Wheeler
Sr. Technologist | AMD
SW Display
------------------------------------------------------------------------------------------------------------------
1 Commerce Valley Dr E, Thornhill, ON L3T 7X6
amd.com
Thank you,
Dan Wheeler
Sr. Technologist | AMD
SW Display
------------------------------------------------------------------------------------------------------------------
1 Commerce Valley Dr E, Thornhill, ON L3T 7X6
amd.com
-----Original Message-----
From: [email protected] <[email protected]>
Sent: Wednesday, May 13, 2026 10:29 AM
To: [email protected]
Cc: Wentland, Harry <[email protected]>; Li, Sun peng (Leo)
<[email protected]>; Pillai, Aurabindo <[email protected]>; Li, Roman
<[email protected]>; Lin, Wayne <[email protected]>; Chung, ChiaHsuan (Tom)
<[email protected]>; Zuo, Jerry <[email protected]>; Wheeler, Daniel
<[email protected]>; Wu, Ray <[email protected]>; LIPSKI, IVAN
<[email protected]>; Hung, Alex <[email protected]>; Lin, Ping Lei
<[email protected]>; Chen, Chen-Yu <[email protected]>
Subject: [PATCH 00/28] DC Patches May 13, 2026
From: Ivan Lipski <[email protected]>
This DC patchset brings improvements in multiple areas. In summary, we
highlight:
- Add amdgpu_dm KUnit test for:
* CRC function
* HDCP process_output
* colorop TF bitmasks
* color helpers
* PSR and Replay functions
* ISM functions
- Fix eDP receiver ready status check in T7 sequence
- Enable dcn42 pstate pmo
- Refactor PSR. Replay and ABM functionality into dedicated power modules
- Fix assertion due to disable/enable CM blocks
- Enable additional wait for pipe pending checks
- Fix ISM dc_lock deadlock during suspend
- Use lockdep_assert_held() for dc_lock check
- Fix clear PSR config flow
- Exclude the MST overhead from BW deallocation
- Allow power up even w/ powergating disabled on DCN42
- Fix integer overflow in bios_get_image()
- Validate GPIO pin LUT table size before iterating
- Add Auxless-ALPM support in VESA Panel Replay
- Add debug option for replay ESD recovery
- Validate payload length and link_index in dc_process_dmub_aux_transfer_async
- Add ADDR3 swizzle modes
Cc: Dan Wheeler <[email protected]>
Alex Hung (6):
drm/amd/display: Add KUnit test for HDCP process_output
drm/amd/display: Add KUnit test for colorop TF bitmasks
drm/amd/display: Add KUnit test for color helpers
drm/amd/display: Add KUnit test for PSR function
drm/amd/display: Add KUnit test for replay
drm/amd/display: Add KUnit test for ISM functions
Aric Cyr (2):
drm/amd/display: Fix assertion due to disable/enable CM blocks
drm/amd/display: Enable additional wait for pipe pending checks
Aurabindo Pillai (1):
drm/amd/display: Add KUnit test for CRC function
Charlene Liu (1):
drm/amd/display: Allow power up when PG disallowed in driver
Cruise Hung (1):
drm/amd/display: Exclude the MST overhead from BW deallocation
Dmytro Laktyushkin (1):
drm/amd/display: Enable dcn42 pstate pmo
Harry Wentland (3):
drm/amd/display: Fix integer overflow in bios_get_image()
drm/amd/display: Validate GPIO pin LUT table size before iterating
drm/amd/display: Validate payload length and link_index in
dc_process_dmub_aux_transfer_async
James Lin (2):
drm/amd/display: Add some missing code for dcn42
Revert "drm/amd/display: dmub_cmd.h: add missing kernel-doc for enums"
Leon Huang (2):
drm/amd/display: Fix clear PSR config flow
drm/amd/display: Add Auxless-ALPM support in VESA Panel Replay
Lohita Mudimela (2):
drm/amd/display: Refactor PSR functionality into dedicated power_psr
module
drm/amd/display: Refactor Replay functionality into dedicated
power_replay module
Nicholas Kazlauskas (1):
drm/amd/display: Enable DCN42 PMO policy
Ray Wu (2):
drm/amd/display: Fix ISM dc_lock deadlock during suspend
drm/amd/display: Use lockdep_assert_held() for dc_lock check
Sung-huai Wang (1):
drm/amd/display: Fix eDP receiver ready status check in T7 sequence
Taimur Hassan (1):
drm/amd/display: Promote DC to 3.2.383
Wei-Guang Li (1):
drm/amd/display: Add debug option for replay ESD recovery
Wenxian Wang (1):
drm/amd/display: Add ADDR3 swizzle modes
drivers/gpu/drm/amd/display/Kconfig | 12 +
.../gpu/drm/amd/display/amdgpu_dm/Makefile | 5 +
.../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 25 +-
.../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 2 -
.../amd/display/amdgpu_dm/amdgpu_dm_color.c | 65 +-
.../amd/display/amdgpu_dm/amdgpu_dm_color.h | 89 ++
.../drm/amd/display/amdgpu_dm/amdgpu_dm_crc.c | 17 +-
.../drm/amd/display/amdgpu_dm/amdgpu_dm_crc.h | 7 +
.../amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 5 +-
.../amd/display/amdgpu_dm/amdgpu_dm_hdcp.h | 13 +-
.../drm/amd/display/amdgpu_dm/amdgpu_dm_ism.c | 80 +-
.../drm/amd/display/amdgpu_dm/amdgpu_dm_ism.h | 11 +
.../amdgpu_dm/amdgpu_dm_kunit_helpers.h | 19 +
.../drm/amd/display/amdgpu_dm/amdgpu_dm_psr.c | 6 +-
.../drm/amd/display/amdgpu_dm/amdgpu_dm_psr.h | 5 +
.../amd/display/amdgpu_dm/amdgpu_dm_replay.c | 3 +
.../amd/display/amdgpu_dm/tests/.kunitconfig | 14 +
.../drm/amd/display/amdgpu_dm/tests/Makefile | 18 +
.../amdgpu_dm/tests/amdgpu_dm_color_test.c | 1071 +++++++++++++
.../amdgpu_dm/tests/amdgpu_dm_colorop_test.c | 161 ++
.../amdgpu_dm/tests/amdgpu_dm_crc_test.c | 121 ++
.../amdgpu_dm/tests/amdgpu_dm_hdcp_test.c | 175 +++
.../amdgpu_dm/tests/amdgpu_dm_ism_test.c | 636 ++++++++
.../amdgpu_dm/tests/amdgpu_dm_psr_test.c | 255 ++++
.../amdgpu_dm/tests/amdgpu_dm_replay_test.c | 206 +++
.../drm/amd/display/dc/bios/bios_parser2.c | 9 +
.../amd/display/dc/bios/bios_parser_helper.c | 9 +-
.../display/dc/clk_mgr/dcn42/dcn42_clk_mgr.c | 2 +
drivers/gpu/drm/amd/display/dc/core/dc.c | 6 +-
drivers/gpu/drm/amd/display/dc/dc.h | 3 +-
drivers/gpu/drm/amd/display/dc/dc_hw_types.h | 4 +-
.../dml2_0/dml21/dml21_translation_helper.c | 5 +-
.../dc/dml2_0/dml21/inc/dml_top_types.h | 1 +
.../dml21/src/dml2_pmo/dml2_pmo_dcn42.c | 144 +-
.../dml21/src/dml2_pmo/dml2_pmo_dcn42.h | 1 +
.../dml21/src/dml2_pmo/dml2_pmo_dcn4_fams2.c | 4 -
.../dml21/src/dml2_pmo/dml2_pmo_factory.c | 16 +
.../dml21/src/dml2_top/dml2_top_soc15.c | 30 +-
.../drm/amd/display/dc/dml2_0/dml2_wrapper.h | 1 +
.../drm/amd/display/dc/dpp/dcn30/dcn30_dpp.c | 3 +
.../amd/display/dc/dpp/dcn30/dcn30_dpp_cm.c | 1 +
.../display/dc/dpp/dcn401/dcn401_dpp_dscl.c | 1 +
.../display/dc/hubbub/dcn401/dcn401_hubbub.c | 2 +
.../amd/display/dc/hwss/dcn10/dcn10_hwseq.c | 8 +-
.../amd/display/dc/hwss/dcn10/dcn10_init.c | 2 +
.../amd/display/dc/hwss/dcn20/dcn20_init.c | 2 +
.../amd/display/dc/hwss/dcn30/dcn30_init.c | 2 +
.../amd/display/dc/hwss/dcn301/dcn301_init.c | 2 +
.../amd/display/dc/hwss/dcn31/dcn31_init.c | 2 +
.../amd/display/dc/hwss/dcn314/dcn314_init.c | 2 +
.../amd/display/dc/hwss/dcn32/dcn32_init.c | 2 +
.../amd/display/dc/hwss/dcn401/dcn401_init.c | 2 +
.../amd/display/dc/hwss/dcn42/dcn42_hwseq.c | 5 +-
drivers/gpu/drm/amd/display/dc/inc/hw/optc.h | 1 -
.../gpu/drm/amd/display/dc/link/link_dpms.c | 41 +-
.../dc/link/protocols/link_dp_irq_handler.c | 14 +-
.../dc/link/protocols/link_dp_panel_replay.c | 13 +
.../link/protocols/link_edp_panel_control.c | 26 +-
.../amd/display/dc/optc/dcn35/dcn35_optc.c | 1 -
.../amd/display/dc/optc/dcn42/dcn42_optc.c | 2 -
.../amd/display/dc/pg/dcn42/dcn42_pg_cntl.c | 43 +-
.../dc/resource/dcn42/dcn42_resource.c | 12 +-
.../dc/resource/dcn42/dcn42_resource.h | 7 +
.../gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 156 +-
.../drm/amd/display/modules/inc/mod_power.h | 23 -
.../drm/amd/display/modules/power/Makefile | 4 +-
.../gpu/drm/amd/display/modules/power/power.c | 1343 +----------------
.../drm/amd/display/modules/power/power_abm.c | 98 --
.../amd/display/modules/power/power_helpers.c | 250 ---
.../amd/display/modules/power/power_helpers.h | 121 ++
.../drm/amd/display/modules/power/power_psr.c | 665 ++++++++
.../amd/display/modules/power/power_replay.c | 911 +++++++++++
72 files changed, 5060 insertions(+), 1963 deletions(-) create mode 100644
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.h
create mode 100644
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_kunit_helpers.h
create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/tests/.kunitconfig
create mode 100644 drivers/gpu/drm/amd/display/amdgpu_dm/tests/Makefile
create mode 100644
drivers/gpu/drm/amd/display/amdgpu_dm/tests/amdgpu_dm_color_test.c
create mode 100644
drivers/gpu/drm/amd/display/amdgpu_dm/tests/amdgpu_dm_colorop_test.c
create mode 100644
drivers/gpu/drm/amd/display/amdgpu_dm/tests/amdgpu_dm_crc_test.c
create mode 100644
drivers/gpu/drm/amd/display/amdgpu_dm/tests/amdgpu_dm_hdcp_test.c
create mode 100644
drivers/gpu/drm/amd/display/amdgpu_dm/tests/amdgpu_dm_ism_test.c
create mode 100644
drivers/gpu/drm/amd/display/amdgpu_dm/tests/amdgpu_dm_psr_test.c
create mode 100644
drivers/gpu/drm/amd/display/amdgpu_dm/tests/amdgpu_dm_replay_test.c
create mode 100644 drivers/gpu/drm/amd/display/modules/power/power_psr.c
create mode 100644 drivers/gpu/drm/amd/display/modules/power/power_replay.c
--
2.43.0