[Public] Hi all, This week this patchset was tested on the following systems: Lenovo Thinkpad T14s Gen2, with AMD Ryzen 5 5650U Lenovo Thinkpad T13s Gen4 with AMD Ryzen 5 6600U Reference AMD RX6800 These systems were tested on the following display types: eDP, (1080p 60hz [4500U, 5650U]) (1920x1200 60hz [6600U]) (2560x1600 120hz[6600U]) VGA and DVI (1680x1050 60HZ [DP to VGA/DVI, USB-C to DVI/VGA]) DP/HDMI/USB-C (1440p 170hz, 4k 60hz, 4k 144hz [Includes USB-C to DP/HDMI adapters]) MST tested with Startech MST14DP123DP and 2x 4k 60Hz displays DSC tested with Cable Matters 101075 (DP to 3x DP), and 201375 (USB-C to 3x DP) with 3x 4k60 displays HP Hook G2 with 1 and 2 4k60 Displays 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 - bc9269304ec8 drm/amd/display: 3.2.218) with new patches added on top of it. This branch is used for both Ubuntu and Chrome OS testing (ChromeOS on a bi-weekly basis). Tested on Ubuntu 22.04.1 Tested-by: Daniel Wheeler <daniel.whee...@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: Alan Liu <haoping....@amd.com> Sent: January 17, 2023 7:58 AM To: Wentland, Harry <harry.wentl...@amd.com>; Li, Sun peng (Leo) <sunpeng...@amd.com>; Lakha, Bhawanpreet <bhawanpreet.la...@amd.com>; Siqueira, Rodrigo <rodrigo.sique...@amd.com>; Pillai, Aurabindo <aurabindo.pil...@amd.com>; Zhuo, Qingqing (Lillian) <qingqing.z...@amd.com>; Li, Roman <roman...@amd.com>; Lin, Wayne <wayne....@amd.com>; Wang, Chao-kai (Stylon) <stylon.w...@amd.com>; Chiu, Solomon <solomon.c...@amd.com>; Amini, Reza <reza.am...@amd.com>; Bernstein, Eric <eric.bernst...@amd.com>; Cyr, Aric <aric....@amd.com>; Kazlauskas, Nicholas <nicholas.kazlaus...@amd.com>; Lei, Jun <jun....@amd.com>; Leung, Martin <martin.le...@amd.com>; Liu, Wenjing <wenjing....@amd.com>; Pavic, Josip <josip.pa...@amd.com>; Sun, Yongqiang <yongqiang....@amd.com>; Othman, Ahmad <ahmad.oth...@amd.com>; Kotarac, Pavle <pavle.kota...@amd.com>; Gutierrez, Agustin <agustin.gutier...@amd.com>; Zuo, Jerry <jerry....@amd.com>; Mahfooz, Hamza <hamza.mahf...@amd.com>; Wheeler, Daniel <daniel.whee...@amd.com> Cc: Liu, HaoPing (Alan) <haoping....@amd.com> Subject: [PATCH IP-REVIEW 00/26] DC Patches Jan. 16, 2023 Start from: c3e3354d0433 drm/amd/display: force connector state when bpc changes during compliance Stopped at: 2452279f91cb drm/amd/display: 3.2.220 Please, pay extra attention to the following patches: - c71cc6871515a drm/amd/display: adjust MALL size available for DCN32 and DCN321 Code that changed by this patch is not synchronized between dal and upstream. Please help check if the change is ok. - ab109555e11c drm/amd/display: move eDP panel control logic to link_edp_panel_control There is a IP_CHECK_BODY label but I seem not to find the IP words in the code. Please help check it. Extra notes: - drm/amd/display: Refactor PWM Mechanism for MiniLED - drm/amd/display: Fix ABM not enabled when S3 resume I drop these 2 patches because they depend on another patch (commit 75c0c3caa0 on amd-dal) which was dropped in previous promotion cycle (DC version 3.2.217). - drm/amd/display: Avoid ASSERT for some message failures Drop this patch because such code change is already in upstream. Below are all of the patches in this promotion: Alvin Lee (4): drm/amd/display: Allow idle optimization after turning off all pipes drm/amd/display: Disable SubVP for PSR panels drm/amd/display: Use |= when assigning wm_optimized_required drm/amd/display: Set init freq for DCFCLK DS Anthony Koo (1): drm/amd/display: [FW Promotion] Release 0.0.150.0 Aric Cyr (2): drm/amd/display: 3.2.219 drm/amd/display: 3.2.220 Aurabindo Pillai (3): drm/amd/display: Revert "ignore msa parameter only if freesync is enabled" drm/amd/display: set allow_freesync parameter in DM drm/amd/display: Fix timing not changning when freesync video is enabled Dillon Varone (1): drm/amd/display: Disable MALL SS and messages for PSR supported configs Ilya Bakoulin (1): drm/amd/display: Speed up DML fast_validate path Jingwen Zhu (1): drm/amd/display: avoid disable otg when dig was disabled Qingqing Zhuo (1): drm/amd/display: force connector state when bpc changes during compliance Robin Chen (1): drm/amd/display: Pass DSC slice height to PSR FW Roman Li (1): drm/amd/display: Set hvm_enabled flag for S/G mode Saaem Rizvi (1): drm/amd/display: Correcting prefetch mode for fast validate Samson Tam (1): drm/amd/display: adjust MALL size available for DCN32 and DCN321 Stylon Wang (2): drm/amd/display: Guard Freesync HDMI parsing with dc_lock drm/amd/display: Properly reuse completion structure Sung Joon Kim (1): drm/amd/display: Enable AdaptiveSync in DC interface Wenjing Liu (5): drm/amd/display: create accessories, hwss and protocols sub folders in link drm/amd/display: move eDP panel control logic to link_edp_panel_control drm/amd/display: move dp irq handler functions from dc_link_dp to link_dp_irq_handler drm/amd/display: move dp cts functions from dc_link_dp to link_dp_cts drm/amd/display: merge dc_link_dp into dc_link .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 90 +- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 5 + .../amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 2 - .../amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 124 + .../display/amdgpu_dm/amdgpu_dm_mst_types.c | 1 - .../drm/amd/display/amdgpu_dm/amdgpu_dm_psr.c | 2 +- drivers/gpu/drm/amd/display/dc/Makefile | 3 +- .../gpu/drm/amd/display/dc/clk_mgr/clk_mgr.c | 1 + .../display/dc/clk_mgr/dcn31/dcn31_clk_mgr.c | 1 + .../dc/clk_mgr/dcn314/dcn314_clk_mgr.c | 2 +- .../dc/clk_mgr/dcn315/dcn315_clk_mgr.c | 28 +- .../dc/clk_mgr/dcn316/dcn316_clk_mgr.c | 2 +- .../display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c | 1 - drivers/gpu/drm/amd/display/dc/core/dc.c | 7 +- drivers/gpu/drm/amd/display/dc/core/dc_link.c | 1175 ++++---- .../gpu/drm/amd/display/dc/core/dc_link_dp.c | 2376 ----------------- .../drm/amd/display/dc/core/dc_link_enc_cfg.c | 1 - .../gpu/drm/amd/display/dc/core/dc_resource.c | 56 +- drivers/gpu/drm/amd/display/dc/dc.h | 3 +- drivers/gpu/drm/amd/display/dc/dc_dp_types.h | 21 +- drivers/gpu/drm/amd/display/dc/dc_link.h | 72 +- drivers/gpu/drm/amd/display/dc/dc_stream.h | 2 + drivers/gpu/drm/amd/display/dc/dc_types.h | 2 + drivers/gpu/drm/amd/display/dc/dce/dmub_psr.c | 1 + .../display/dc/dce110/dce110_hw_sequencer.c | 37 +- .../amd/display/dc/dcn10/dcn10_hw_sequencer.c | 2 - .../display/dc/dcn10/dcn10_stream_encoder.c | 9 +- .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 8 +- .../display/dc/dcn20/dcn20_stream_encoder.c | 20 +- .../dc/dcn30/dcn30_dio_stream_encoder.c | 26 + .../dc/dcn30/dcn30_dio_stream_encoder.h | 4 + .../drm/amd/display/dc/dcn30/dcn30_hwseq.c | 9 +- .../dc/dcn31/dcn31_hpo_dp_stream_encoder.c | 25 + .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 6 +- .../dc/dcn314/dcn314_dio_stream_encoder.c | 4 +- .../dc/dcn314/dcn314_dio_stream_encoder.h | 4 + .../drm/amd/display/dc/dcn314/dcn314_hwseq.c | 2 - .../dc/dcn32/dcn32_dio_stream_encoder.c | 4 +- .../drm/amd/display/dc/dcn32/dcn32_hwseq.c | 19 +- .../drm/amd/display/dc/dcn32/dcn32_resource.c | 63 +- .../drm/amd/display/dc/dcn32/dcn32_resource.h | 4 + .../display/dc/dcn32/dcn32_resource_helpers.c | 10 + .../amd/display/dc/dcn321/dcn321_resource.c | 10 +- drivers/gpu/drm/amd/display/dc/dm_helpers.h | 6 + .../drm/amd/display/dc/dml/dcn20/dcn20_fpu.c | 39 +- .../drm/amd/display/dc/dml/dcn32/dcn32_fpu.c | 55 +- .../dc/dml/dcn32/display_mode_vba_32.c | 47 +- .../amd/display/dc/dml/dcn321/dcn321_fpu.c | 5 +- .../drm/amd/display/dc/dml/display_mode_lib.h | 1 + .../gpu/drm/amd/display/dc/hdcp/hdcp_msg.c | 2 +- .../gpu/drm/amd/display/dc/inc/dc_link_dp.h | 117 - .../amd/display/dc/inc/hw/stream_encoder.h | 17 + drivers/gpu/drm/amd/display/dc/inc/link.h | 17 + drivers/gpu/drm/amd/display/dc/link/Makefile | 36 +- .../display/dc/link/accessories/link_dp_cts.c | 1055 ++++++++ .../display/dc/link/accessories/link_dp_cts.h | 33 + .../dc/link/{ => accessories}/link_dp_trace.c | 8 +- .../dc/link/{ => accessories}/link_dp_trace.h | 5 - .../dc/link/{ => hwss}/link_hwss_dio.c | 1 - .../dc/link/{ => hwss}/link_hwss_dio.h | 1 + .../dc/link/{ => hwss}/link_hwss_dpia.c | 0 .../dc/link/{ => hwss}/link_hwss_dpia.h | 0 .../dc/link/{ => hwss}/link_hwss_hpo_dp.c | 1 - .../dc/link/{ => hwss}/link_hwss_hpo_dp.h | 1 + .../dc/link/{ => protocols}/link_ddc.c | 0 .../dc/link/{ => protocols}/link_ddc.h | 0 .../link/{ => protocols}/link_dp_capability.c | 27 +- .../link/{ => protocols}/link_dp_capability.h | 13 + .../dc/link/{ => protocols}/link_dp_dpia.c | 2 - .../dc/link/{ => protocols}/link_dp_dpia.h | 0 .../dc/link/{ => protocols}/link_dp_dpia_bw.c | 0 .../dc/link/{ => protocols}/link_dp_dpia_bw.h | 0 .../dc/link/protocols/link_dp_irq_handler.c | 401 +++ .../link_dp_irq_handler.h} | 15 +- .../dc/link/{ => protocols}/link_dp_phy.c | 33 +- .../dc/link/{ => protocols}/link_dp_phy.h | 5 + .../link/{ => protocols}/link_dp_training.c | 14 +- .../link/{ => protocols}/link_dp_training.h | 3 + .../link_dp_training_128b_132b.c | 1 - .../link_dp_training_128b_132b.h | 0 .../{ => protocols}/link_dp_training_8b_10b.c | 1 - .../{ => protocols}/link_dp_training_8b_10b.h | 0 .../link_dp_training_auxless.c | 1 - .../link_dp_training_auxless.h | 0 .../{ => protocols}/link_dp_training_dpia.c | 1 - .../{ => protocols}/link_dp_training_dpia.h | 0 .../link_dp_training_fixed_vs_pe_retimer.c | 1 - .../link_dp_training_fixed_vs_pe_retimer.h | 0 .../dc/link/{ => protocols}/link_dpcd.c | 0 .../dc/link/{ => protocols}/link_dpcd.h | 0 .../link/protocols/link_edp_panel_control.c | 833 ++++++ .../link/protocols/link_edp_panel_control.h | 33 + .../dc/link/{ => protocols}/link_hpd.c | 0 .../dc/link/{ => protocols}/link_hpd.h | 0 .../gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 10 +- .../amd/display/modules/inc/mod_info_packet.h | 36 + .../display/modules/info_packet/info_packet.c | 55 + .../amd/display/modules/power/power_helpers.c | 8 +- .../amd/display/modules/power/power_helpers.h | 2 +- 99 files changed, 3929 insertions(+), 3257 deletions(-) delete mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c delete mode 100644 drivers/gpu/drm/amd/display/dc/inc/dc_link_dp.h create mode 100644 drivers/gpu/drm/amd/display/dc/link/accessories/link_dp_cts.c create mode 100644 drivers/gpu/drm/amd/display/dc/link/accessories/link_dp_cts.h rename drivers/gpu/drm/amd/display/dc/link/{ => accessories}/link_dp_trace.c (95%) rename drivers/gpu/drm/amd/display/dc/link/{ => accessories}/link_dp_trace.h (91%) rename drivers/gpu/drm/amd/display/dc/link/{ => hwss}/link_hwss_dio.c (99%) rename drivers/gpu/drm/amd/display/dc/link/{ => hwss}/link_hwss_dio.h (99%) rename drivers/gpu/drm/amd/display/dc/link/{ => hwss}/link_hwss_dpia.c (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => hwss}/link_hwss_dpia.h (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => hwss}/link_hwss_hpo_dp.c (99%) rename drivers/gpu/drm/amd/display/dc/link/{ => hwss}/link_hwss_hpo_dp.h (98%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_ddc.c (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_ddc.h (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_capability.c (98%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_capability.h (85%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_dpia.c (99%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_dpia.h (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_dpia_bw.c (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_dpia_bw.h (100%) create mode 100644 drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_irq_handler.c rename drivers/gpu/drm/amd/display/dc/link/{link_hwss_hpo_frl.h => protocols/link_dp_irq_handler.h} (80%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_phy.c (98%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_phy.h (93%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training.c (99%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training.h (98%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training_128b_132b.c (99%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training_128b_132b.h (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training_8b_10b.c (99%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training_8b_10b.h (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training_auxless.c (99%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training_auxless.h (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training_dpia.c (99%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training_dpia.h (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training_fixed_vs_pe_retimer.c (99%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dp_training_fixed_vs_pe_retimer.h (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dpcd.c (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_dpcd.h (100%) create mode 100644 drivers/gpu/drm/amd/display/dc/link/protocols/link_edp_panel_control.c create mode 100644 drivers/gpu/drm/amd/display/dc/link/protocols/link_edp_panel_control.h rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_hpd.c (100%) rename drivers/gpu/drm/amd/display/dc/link/{ => protocols}/link_hpd.h (100%) -- 2.34.1