[PATCH 00/25] DC Patches for Dec 18, 2023
Wheeler, Daniel
Daniel.Wheeler at amd.com
Thu Dec 14 22:22:07 UTC 2023
[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 - cf25f7abf109 drm/amdgpu: xgmi_fill_topology_info) 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 at 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: Wayne Lin <Wayne.Lin at amd.com>
Sent: Wednesday, December 13, 2023 1:12 AM
To: amd-gfx at lists.freedesktop.org
Cc: Wentland, Harry <Harry.Wentland at amd.com>; Li, Sun peng (Leo) <Sunpeng.Li at amd.com>; Siqueira, Rodrigo <Rodrigo.Siqueira at amd.com>; Pillai, Aurabindo <Aurabindo.Pillai at amd.com>; Li, Roman <Roman.Li at amd.com>; Lin, Wayne <Wayne.Lin at amd.com>; Wang, Chao-kai (Stylon) <Stylon.Wang at amd.com>; Gutierrez, Agustin <Agustin.Gutierrez at amd.com>; Chung, ChiaHsuan (Tom) <ChiaHsuan.Chung at amd.com>; Wu, Hersen <hersenxs.wu at amd.com>; Zuo, Jerry <Jerry.Zuo at amd.com>; Lin, Wayne <Wayne.Lin at amd.com>; Wheeler, Daniel <Daniel.Wheeler at amd.com>
Subject: [PATCH 00/25] DC Patches for Dec 18, 2023
This DC patchset brings improvements in multiple areas. In summary, we highlight:
- change static screen wait frame_count for ips
- Fix hang/underflow when transitioning to ODM4:1
- Only clear symclk otg flag for HDMI
- Fix lightup regression with DP2 single display configs
- Refactor phantom resource allocation
- Refactor dc_state interface
- Wake DMCUB before executing GPINT commands
- Wake DMCUB before sending a command
- Refactor DMCUB enter/exit idle interface
- enable dcn35 idle power optimization
- fix usb-c connector_type
- add debug option for ExtendedVBlank DLG adjust
- Set test_pattern_changed update flag on pipe enable
- dereference variable before checking for zero
- get dprefclk ss info from integration info table
- skip error logging when DMUB is inactive from S3
- make flip_timestamp_in_us a 64-bit variable
- Add case for dcn35 to support usb4 dmub hpd event
- Add function for dumping clk registers
- Unify optimize_required flags and VRR adjustments
- Revert using channel_width as 2 for vram table 3.0
- remove HPO PG in driver side
- do not send commands to DMUB if DMUB is inactive from S3
Cc: Daniel Wheeler <daniel.wheeler at amd.com>
---
Allen Pan (2):
drm/amd/display: fix usb-c connector_type
drm/amd/display: change static screen wait frame_count for ips
Alvin Lee (2):
drm/amd/display: Revert " drm/amd/display: Use channel_width = 2 for
vram table 3.0"
drm/amd/display: Only clear symclk otg flag for HDMI
Anthony Koo (1):
drm/amd/display: [FW Promotion] Release 0.0.197.0
Aric Cyr (2):
drm/amd/display: Unify optimize_required flags and VRR adjustments
drm/amd/display: 3.2.265
Charlene Liu (1):
drm/amd/display: get dprefclk ss info from integration info table
Dillon Varone (2):
drm/amd/display: Refactor dc_state interface
drm/amd/display: Refactor phantom resource allocation
George Shen (1):
drm/amd/display: Set test_pattern_changed update flag on pipe enable
Ilya Bakoulin (1):
drm/amd/display: Fix hang/underflow when transitioning to ODM4:1
Johnson Chen (1):
drm/amd/display: Add function for dumping clk registers
Josip Pavic (2):
drm/amd/display: make flip_timestamp_in_us a 64-bit variable
drm/amd/display: dereference variable before checking for zero
Michael Strauss (1):
drm/amd/display: Fix lightup regression with DP2 single display
configs
Muhammad Ahmed (2):
drm/amd/display: remove HPO PG in driver side
drm/amd/display: add debug option for ExtendedVBlank DLG adjust
Nicholas Kazlauskas (3):
drm/amd/display: Refactor DMCUB enter/exit idle interface
drm/amd/display: Wake DMCUB before sending a command
drm/amd/display: Wake DMCUB before executing GPINT commands
Roman Li (1):
drm/amd/display: enable dcn35 idle power optimization
Samson Tam (2):
drm/amd/display: do not send commands to DMUB if DMUB is inactive from
S3
drm/amd/display: skip error logging when DMUB is inactive from S3
Wayne Lin (1):
drm/amd/display: Add case for dcn35 to support usb4 dmub hpd event
.../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 59 +- .../amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 29 +-
drivers/gpu/drm/amd/display/dc/Makefile | 2 +-
.../drm/amd/display/dc/bios/bios_parser2.c | 27 +-
.../drm/amd/display/dc/bios/command_table2.c | 12 +-
.../gpu/drm/amd/display/dc/clk_mgr/clk_mgr.c | 3 +-
.../display/dc/clk_mgr/dcn31/dcn31_clk_mgr.c | 2 +-
.../dc/clk_mgr/dcn314/dcn314_clk_mgr.c | 2 +-
.../dc/clk_mgr/dcn315/dcn315_clk_mgr.c | 2 +-
.../dc/clk_mgr/dcn316/dcn316_clk_mgr.c | 2 +-
.../display/dc/clk_mgr/dcn35/dcn35_clk_mgr.c | 9 +-
drivers/gpu/drm/amd/display/dc/core/dc.c | 300 ++----
.../drm/amd/display/dc/core/dc_hw_sequencer.c | 19 +- .../gpu/drm/amd/display/dc/core/dc_resource.c | 418 +--------
.../gpu/drm/amd/display/dc/core/dc_state.c | 861 ++++++++++++++++++
.../gpu/drm/amd/display/dc/core/dc_stream.c | 46 +-
.../gpu/drm/amd/display/dc/core/dc_surface.c | 6 +-
drivers/gpu/drm/amd/display/dc/dc.h | 33 +-
drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c | 244 ++++- drivers/gpu/drm/amd/display/dc/dc_dmub_srv.h | 59 +-
drivers/gpu/drm/amd/display/dc/dc_helper.c | 6 +-
drivers/gpu/drm/amd/display/dc/dc_hw_types.h | 2 +-
drivers/gpu/drm/amd/display/dc/dc_plane.h | 38 +
.../gpu/drm/amd/display/dc/dc_plane_priv.h | 34 +
drivers/gpu/drm/amd/display/dc/dc_state.h | 78 ++
.../gpu/drm/amd/display/dc/dc_state_priv.h | 102 +++
drivers/gpu/drm/amd/display/dc/dc_stream.h | 76 +-
.../gpu/drm/amd/display/dc/dc_stream_priv.h | 37 +
drivers/gpu/drm/amd/display/dc/dc_types.h | 5 +
.../gpu/drm/amd/display/dc/dce/dmub_abm_lcd.c | 14 +-
.../drm/amd/display/dc/dce/dmub_hw_lock_mgr.c | 2 +-
.../gpu/drm/amd/display/dc/dce/dmub_outbox.c | 2 +-
drivers/gpu/drm/amd/display/dc/dce/dmub_psr.c | 33 +-
.../gpu/drm/amd/display/dc/dcn21/dcn21_hubp.c | 2 +-
.../display/dc/dcn31/dcn31_dio_link_encoder.c | 4 +-
.../amd/display/dc/dcn31/dcn31_panel_cntl.c | 4 +-
.../display/dc/dcn32/dcn32_resource_helpers.c | 93 +-
.../display/dc/dcn35/dcn35_dio_link_encoder.c | 5 +
.../gpu/drm/amd/display/dc/dcn35/dcn35_init.c | 2 +-
.../drm/amd/display/dc/dml/dcn20/dcn20_fpu.c | 5 +-
.../drm/amd/display/dc/dml/dcn32/dcn32_fpu.c | 51 +-
.../amd/display/dc/dml2/display_mode_core.c | 2 +-
.../drm/amd/display/dc/dml2/dml2_dc_types.h | 1 +
.../amd/display/dc/dml2/dml2_mall_phantom.c | 89 +-
.../display/dc/dml2/dml2_translation_helper.c | 10 +- .../gpu/drm/amd/display/dc/dml2/dml2_utils.c | 14 +-
.../drm/amd/display/dc/dml2/dml2_wrapper.c | 2 +-
.../drm/amd/display/dc/dml2/dml2_wrapper.h | 35 +-
.../amd/display/dc/hwss/dce110/dce110_hwseq.c | 13 +-
.../amd/display/dc/hwss/dcn10/dcn10_hwseq.c | 35 +-
.../amd/display/dc/hwss/dcn10/dcn10_hwseq.h | 7 +-
.../amd/display/dc/hwss/dcn20/dcn20_hwseq.c | 79 +-
.../amd/display/dc/hwss/dcn20/dcn20_hwseq.h | 2 +-
.../amd/display/dc/hwss/dcn201/dcn201_hwseq.c | 8 +-
.../amd/display/dc/hwss/dcn201/dcn201_hwseq.h | 2 +-
.../amd/display/dc/hwss/dcn21/dcn21_hwseq.c | 4 +-
.../amd/display/dc/hwss/dcn30/dcn30_hwseq.c | 12 +-
.../amd/display/dc/hwss/dcn31/dcn31_hwseq.c | 7 +-
.../amd/display/dc/hwss/dcn32/dcn32_hwseq.c | 78 +-
.../amd/display/dc/hwss/dcn35/dcn35_hwseq.c | 58 +-
.../amd/display/dc/hwss/dcn35/dcn35_hwseq.h | 6 +-
.../drm/amd/display/dc/hwss/hw_sequencer.h | 8 +-
.../display/dc/hwss/hw_sequencer_private.h | 1 +
.../gpu/drm/amd/display/dc/inc/core_types.h | 20 +-
.../gpu/drm/amd/display/dc/inc/hw/clk_mgr.h | 19 +
.../gpu/drm/amd/display/dc/inc/hw/hw_shared.h | 1 +
drivers/gpu/drm/amd/display/dc/inc/resource.h | 1 -
.../dc/link/protocols/link_dp_capability.c | 2 +-
.../display/dc/link/protocols/link_dp_dpia.c | 3 +-
.../amd/display/dc/optc/dcn32/dcn32_optc.c | 7 +
.../amd/display/dc/optc/dcn35/dcn35_optc.c | 7 +
.../dc/resource/dcn32/dcn32_resource.c | 134 +--
.../dc/resource/dcn32/dcn32_resource.h | 14 -
.../dc/resource/dcn321/dcn321_resource.c | 25 +-
.../dc/resource/dcn35/dcn35_resource.c | 8 +-
drivers/gpu/drm/amd/display/dmub/dmub_srv.h | 22 +
.../gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 2 +-
.../gpu/drm/amd/display/dmub/src/dmub_srv.c | 15 +
.../display/include/grph_object_ctrl_defs.h | 2 +
79 files changed, 2147 insertions(+), 1338 deletions(-) create mode 100644 drivers/gpu/drm/amd/display/dc/core/dc_state.c
create mode 100644 drivers/gpu/drm/amd/display/dc/dc_plane.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dc_plane_priv.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dc_state.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dc_state_priv.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dc_stream_priv.h
--
2.37.3
More information about the amd-gfx
mailing list