[Public] Hi all, This week this patchset was tested on the following systems: • Lenovo ThinkBook T13s Gen4 with AMD Ryzen 5 6600U • MSI Gaming X Trio RX 6800 • Gigabyte Gaming OC RX 7900 XTX These systems were tested on the following display/connection types: • eDP, (1080p 60hz [5650U]) (1920x1200 60hz [6600U]) (2560x1600 120hz[6600U]) • VGA and DVI (1680x1050 60hz [DP to VGA/DVI, USB-C to VGA/DVI]) • DP/HDMI/USB-C (1440p 170hz, 4k 60hz, 4k 144hz, 4k 240hz [Includes USB-C to DP/HDMI adapters]) • Thunderbolt (LG Ultrafine 5k) • MST (Startech MST14DP123DP [DP to 3x DP] and 2x 4k 60Hz displays) • DSC (with Cable Matters 101075 [DP to 3x DP] with 3x 4k60 displays, and HP Hook G2 with 1 4k60 display) • USB 4 (Kensington SD5700T and 1x 4k 60Hz display) • PCON (Club3D CAC-1085 and 1x 4k 144Hz display [at 4k 120HZ, as that is the max the adapter supports]) The testing is a mix of automated and manual tests. Manual testing includes (but is not limited to): • Changing display configurations and settings • Benchmark testing • Feature testing (Freesync, etc.) Automated testing includes (but is not limited to): • Script testing (scripts to automate some of the manual checks) • IGT testing The patchset consists of the amd-staging-drm-next branch (Head commit - 16e25cc8375f59ff2a16a762d102e398ecba3d0d -> drm/amdgpu: Add lock around VF RLCG interface) with new patches added on top of it. Tested on Ubuntu 22.04.3, 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 amd.com -----Original Message----- From: Mohamed, Zaeem <Zaeem.Mohamed@xxxxxxx> Sent: Friday, May 31, 2024 12:51 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>; Gutierrez, Agustin <Agustin.Gutierrez@xxxxxxx>; Chung, ChiaHsuan (Tom) <ChiaHsuan.Chung@xxxxxxx>; Zuo, Jerry <Jerry.Zuo@xxxxxxx>; Mohamed, Zaeem <Zaeem.Mohamed@xxxxxxx>; Wheeler, Daniel <Daniel.Wheeler@xxxxxxx> Subject: [PATCH 00/32] DC Patches May 20, 2024 This DC patchset brings improvements in multiple areas. In summary, we have: * DML2 fixes * FAMS2 Improvements * Fix YUV video color corruption, oled eDP not lighting up DCN401 * add UCLK p-state support message for DCN401 * Extends PSRSU residency mode * Introducing deferred replay coasting vtotal update * Fix DSC slice and delay calculations Cc: Daniel Wheeler <daniel.wheeler@xxxxxxx> Alex Hung (1): drm/amd/display: Increase MAX_LINKS by 2 Alvin Lee (4): drm/amd/display: Only program P-State force if pipe config changed drm/amd/display: Move fpo_in_use to stream_status drm/amd/display: Use current_state when checking old_pipe subvp type drm/amd/display: Program DIG FE source select for DVI before PHY en Aric Cyr (1): SWDEV-1 - dc: 3.2.287 Chiawen Huang (1): drm/amd/display: add set ips disable Chris Park (1): drm/amd/display: Support new VA page table block size Chun-LiangChang (1): drm/amd/display: Add params of set_abm_event for VB Scaling ChunTao Tso (1): drm/amd/display: Introduce deferred Replay coasting vtotal update Daniel Sa (1): drm/amd/display: Fetch Mall caps from DC Dillon Varone (5): drm/amd/display: Wait for hardmins to complete on dcn401 drm/amd/display: Add UCLK p-state support message to dcn401 drm/amd/display: Force max clocks unconditionally when p-state is unsupported drm/amd/display: Add recovery timeout to FAMS2 drm/amd/display: Various DML2 fixes for FAMS2 Fangzhi Zuo (1): drm/amd/display: Prevent IPX From Link Detect and Set Mode Jack Chang (1): drm/amd/display: Extend PSRSU residency mode Joan Lee (1): drm/amd/display: Add retires when read DPCD Joshua Aberback (2): drm/amd/display: Fix swapped dimension calculations drm/amd/display: workaround for oled eDP not lighting up on DCN401 Lewis Huang (1): drm/amd/display: Add monitor patch skip disable crtc during psr and ips1 Nicholas Kazlauskas (2): drm/amd/display: Add outbox notification support for HPD redetect drm/amd/display: Guard reading 3DLUT registers for dcn32/dcn35 Nicholas Susanto (1): drm/amd/display: Fix DML2 logic to set clk state to min Relja Vojvodic (1): drm/amd/display: Updated optc401_set_drr to use dcn401 functions Samson Tam (1): drm/amd/display: fix YUV video color corruption in DCN401 Sung Joon Kim (1): drm/amd/display: Fix DSC slice and delay calculations Wayne Lin (1): drm/amd/display: Change the order of setting DP_IS_USB_C flag Wenjing Liu (1): drm/amd/display: turn on symclk for dio virtual stream in dpms sequence Yihan Zhu (1): drm/amd/display: bypass ODM before CRTC off yi-lchen (1): drm/amd/display: Keep VBios pixel rate div setting until next mode set .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 10 ++ .../amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 2 +- .../amd/display/dc/clk_mgr/dcn401/dalsmc.h | 3 +- .../dc/clk_mgr/dcn401/dcn401_clk_mgr.c | 165 +++++++++++------- .../dc/clk_mgr/dcn401/dcn401_clk_mgr.h | 3 +- .../clk_mgr/dcn401/dcn401_clk_mgr_smu_msg.c | 127 +++++++++++++- .../clk_mgr/dcn401/dcn401_clk_mgr_smu_msg.h | 6 +- drivers/gpu/drm/amd/display/dc/core/dc.c | 10 ++ .../gpu/drm/amd/display/dc/core/dc_resource.c | 12 +- drivers/gpu/drm/amd/display/dc/dc.h | 6 +- drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c | 16 +- drivers/gpu/drm/amd/display/dc/dc_stream.h | 2 +- drivers/gpu/drm/amd/display/dc/dc_types.h | 2 + .../amd/display/dc/dccg/dcn314/dcn314_dccg.c | 12 +- .../amd/display/dc/dccg/dcn32/dcn32_dccg.c | 12 +- .../amd/display/dc/dccg/dcn35/dcn35_dccg.c | 13 +- .../amd/display/dc/dccg/dcn401/dcn401_dccg.c | 5 +- .../gpu/drm/amd/display/dc/dce/dmub_abm_lcd.c | 18 ++ .../gpu/drm/amd/display/dc/dce/dmub_abm_lcd.h | 2 + drivers/gpu/drm/amd/display/dc/dce/dmub_psr.c | 5 +- drivers/gpu/drm/amd/display/dc/dce/dmub_psr.h | 3 +- .../dc/dcn32/dcn32_dio_stream_encoder.c | 40 +---- .../display/dc/dcn35/dcn35_dio_link_encoder.c | 10 +- .../dc/dcn35/dcn35_dio_stream_encoder.c | 39 +---- .../dc/dcn401/dcn401_dio_stream_encoder.c | 3 +- .../drm/amd/display/dc/dml/dcn30/dcn30_fpu.c | 6 +- .../drm/amd/display/dc/dml/dcn32/dcn32_fpu.c | 15 +- .../amd/display/dc/dml2/display_mode_core.c | 45 +++-- .../dc/dml2/display_mode_core_structs.h | 1 + .../dc/dml2/dml21/dml21_translation_helper.c | 2 +- .../amd/display/dc/dml2/dml21/dml21_utils.c | 7 +- .../amd/display/dc/dml2/dml21/dml21_utils.h | 4 +- .../amd/display/dc/dml2/dml21/dml21_wrapper.c | 6 +- .../dml2/dml21/src/dml2_core/dml2_core_dcn4.c | 1 - .../src/dml2_core/dml2_core_dcn4_calcs.c | 29 --- .../dml21/src/dml2_pmo/dml2_pmo_dcn4_fams2.c | 2 +- .../display/dc/dml2/dml2_translation_helper.c | 1 + .../drm/amd/display/dc/dml2/dml2_wrapper.c | 18 +- .../drm/amd/display/dc/dpp/dcn30/dcn30_dpp.c | 29 +-- .../display/dc/dpp/dcn401/dcn401_dpp_dscl.c | 16 +- .../display/dc/hubbub/dcn20/dcn20_hubbub.c | 27 ++- .../amd/display/dc/hwss/dce110/dce110_hwseq.c | 24 ++- .../amd/display/dc/hwss/dcn20/dcn20_hwseq.c | 23 +-- .../amd/display/dc/hwss/dcn314/dcn314_hwseq.c | 21 +++ .../amd/display/dc/hwss/dcn314/dcn314_hwseq.h | 2 + .../amd/display/dc/hwss/dcn314/dcn314_init.c | 1 + .../amd/display/dc/hwss/dcn32/dcn32_hwseq.c | 63 ++++++- .../amd/display/dc/hwss/dcn32/dcn32_hwseq.h | 2 + .../amd/display/dc/hwss/dcn32/dcn32_init.c | 1 + .../amd/display/dc/hwss/dcn35/dcn35_init.c | 1 + .../amd/display/dc/hwss/dcn351/dcn351_init.c | 1 + .../drm/amd/display/dc/hwss/hw_sequencer.h | 3 + .../gpu/drm/amd/display/dc/inc/core_types.h | 6 + drivers/gpu/drm/amd/display/dc/inc/hw/dccg.h | 5 + .../gpu/drm/amd/display/dc/inc/hw/dchubbub.h | 9 +- .../gpu/drm/amd/display/dc/inc/hw/hw_shared.h | 2 +- .../amd/display/dc/inc/hw/stream_encoder.h | 2 +- drivers/gpu/drm/amd/display/dc/inc/link.h | 2 +- .../amd/display/dc/link/hwss/link_hwss_dio.c | 7 +- .../gpu/drm/amd/display/dc/link/link_dpms.c | 33 ++-- .../dc/link/protocols/link_dp_capability.c | 3 + .../dc/link/protocols/link_dp_irq_handler.c | 26 ++- .../link/protocols/link_edp_panel_control.c | 7 +- .../link/protocols/link_edp_panel_control.h | 2 +- .../amd/display/dc/optc/dcn10/dcn10_optc.c | 4 +- .../amd/display/dc/optc/dcn31/dcn31_optc.c | 11 ++ .../amd/display/dc/optc/dcn401/dcn401_optc.c | 2 +- .../dc/resource/dcn30/dcn30_resource.c | 8 +- .../dc/resource/dcn32/dcn32_resource.c | 4 + .../dc/resource/dcn401/dcn401_resource.c | 1 + drivers/gpu/drm/amd/display/dmub/dmub_srv.h | 2 + .../gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 95 +++++++++- .../drm/amd/display/dmub/src/dmub_srv_stat.c | 6 + .../amd/display/modules/power/power_helpers.c | 14 ++ .../amd/display/modules/power/power_helpers.h | 5 + 75 files changed, 810 insertions(+), 323 deletions(-) -- 2.34.1