[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, 2560x1600 120hz, 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 * AU Optronics B160QAN02.L 2560x1600 120hz eDP The patchset consists of the amd-staging-drm-next branch (Head commit - 1b7feb62fa52857c6afc4d61b830b5a7660cda9c -> drm/amd/display/dm: drop extra parameters to create_i2c()) 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@xxxxxxx> 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: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Wayne Lin Sent: Monday, January 13, 2025 9:09 PM To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx Cc: Wentland, Harry <Harry.Wentland@xxxxxxx>; Li, Sun peng (Leo) <Sunpeng.Li@xxxxxxx>; Siqueira, Rodrigo <Rodrigo.Siqueira@xxxxxxx>; Pillai, Aurabindo <Aurabindo.Pillai@xxxxxxx>; Li, Roman <Roman.Li@xxxxxxx>; Lin, Wayne <Wayne.Lin@xxxxxxx>; Chung, ChiaHsuan (Tom) <ChiaHsuan.Chung@xxxxxxx>; Zuo, Jerry <Jerry.Zuo@xxxxxxx>; Mohamed, Zaeem <Zaeem.Mohamed@xxxxxxx>; Chiu, Solomon <Solomon.Chiu@xxxxxxx>; Wheeler, Daniel <Daniel.Wheeler@xxxxxxx>; Lin, Wayne <Wayne.Lin@xxxxxxx> Subject: [PATCH 00/11] DC Patches Jan 20 2025 This DC patchset brings improvements in multiple areas. In summary, we highlight: - Reverse the visual confirm recouts - Exclude clkoffset and ips setting for dcn351 specific - Fix cursor programming problems - Increase block_sequence array size - Use Nominal vBlank to determine vstartup if Provided - Fix clock frequencies incorrect problems for dcn401 - Add SDP programming for UHBR link as well - Support "Broadcast RGB" drm property Cc: Daniel Wheeler <daniel.wheeler@xxxxxxx> --- Aric Cyr (3): drm/amd/display: Optimize cursor position updates drm/amd/display: Add hubp cache reset when powergating drm/amd/display: 3.2.317 Austin Zheng (1): drm/amd/display: Use Nominal vBlank If Provided Instead Of Capping It Charlene Liu (1): drm/amd/display: Exclude clkoffset and ips setting for dcn351 specific Dillon Varone (1): drm/amd/display: Populate register address for dentist for dcn401 Ian Chen (1): drm/amd/display: Add AS SDP programming for UHBR link rate. Joshua Aberback (1): drm/amd/display: Increase block_sequence array size Josip Pavic (1): drm/amd/display: log destination of vertical interrupt Peterson Guo (1): drm/amd/display: Reverse the visual confirm recouts Yan Li (1): drm/amd/display: Support "Broadcast RGB" drm property .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 22 +++++- .../display/dc/clk_mgr/dcn35/dcn35_clk_mgr.c | 4 +- .../dc/clk_mgr/dcn401/dcn401_clk_mgr.c | 2 + drivers/gpu/drm/amd/display/dc/core/dc.c | 5 +- .../gpu/drm/amd/display/dc/core/dc_resource.c | 67 +++++++++++++++++ drivers/gpu/drm/amd/display/dc/dc.h | 2 +- drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c | 50 +------------ .../dc/dcn10/dcn10_hw_sequencer_debug.c | 7 +- .../src/dml2_core/dml2_core_dcn4_calcs.c | 5 +- .../drm/amd/display/dc/dpp/dcn10/dcn10_dpp.c | 10 ++- .../amd/display/dc/dpp/dcn401/dcn401_dpp_cm.c | 6 +- .../amd/display/dc/hubp/dcn10/dcn10_hubp.c | 10 ++- .../amd/display/dc/hubp/dcn10/dcn10_hubp.h | 2 + .../amd/display/dc/hubp/dcn20/dcn20_hubp.c | 9 ++- .../amd/display/dc/hubp/dcn201/dcn201_hubp.c | 1 + .../amd/display/dc/hubp/dcn21/dcn21_hubp.c | 3 + .../amd/display/dc/hubp/dcn30/dcn30_hubp.c | 3 + .../amd/display/dc/hubp/dcn31/dcn31_hubp.c | 1 + .../amd/display/dc/hubp/dcn32/dcn32_hubp.c | 1 + .../amd/display/dc/hubp/dcn35/dcn35_hubp.c | 1 + .../amd/display/dc/hubp/dcn401/dcn401_hubp.c | 13 ++-- .../amd/display/dc/hwss/dcn10/dcn10_hwseq.c | 53 ++------------ .../amd/display/dc/hwss/dcn31/dcn31_hwseq.c | 5 ++ .../amd/display/dc/hwss/dcn35/dcn35_hwseq.c | 2 + .../amd/display/dc/hwss/dcn401/dcn401_hwseq.c | 48 +------------ .../gpu/drm/amd/display/dc/inc/core_types.h | 2 +- .../amd/display/dc/inc/hw/clk_mgr_internal.h | 1 + drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h | 2 + drivers/gpu/drm/amd/display/dc/inc/hw/optc.h | 30 +------- .../amd/display/dc/inc/hw/timing_generator.h | 30 ++++++++ drivers/gpu/drm/amd/display/dc/inc/resource.h | 2 + .../amd/display/dc/optc/dcn10/dcn10_optc.c | 7 +- .../amd/display/dc/optc/dcn10/dcn10_optc.h | 2 + .../amd/display/dc/optc/dcn20/dcn20_optc.c | 1 + .../amd/display/dc/optc/dcn201/dcn201_optc.c | 1 + .../amd/display/dc/optc/dcn30/dcn30_optc.c | 1 + .../amd/display/dc/optc/dcn301/dcn301_optc.c | 1 + .../amd/display/dc/optc/dcn31/dcn31_optc.c | 71 +++++++++++++++++++ .../amd/display/dc/optc/dcn31/dcn31_optc.h | 7 +- .../amd/display/dc/optc/dcn314/dcn314_optc.c | 1 + .../amd/display/dc/optc/dcn314/dcn314_optc.h | 4 +- .../amd/display/dc/optc/dcn32/dcn32_optc.c | 1 + .../amd/display/dc/optc/dcn32/dcn32_optc.h | 3 +- .../amd/display/dc/optc/dcn35/dcn35_optc.c | 1 + .../amd/display/dc/optc/dcn35/dcn35_optc.h | 3 +- .../amd/display/dc/optc/dcn401/dcn401_optc.c | 1 + .../amd/display/dc/optc/dcn401/dcn401_optc.h | 3 +- .../dc/resource/dcn32/dcn32_resource.h | 3 +- .../dc/resource/dcn35/dcn35_resource.h | 3 +- .../dc/resource/dcn401/dcn401_resource.h | 3 +- 50 files changed, 308 insertions(+), 208 deletions(-) -- 2.37.3