Hi Dave, Simona, Updates for 6.12. The following changes since commit e55ef65510a401862b902dc979441ea10ae25c61: Merge tag 'amd-drm-next-6.12-2024-08-26' of https://gitlab.freedesktop.org/agd5f/linux into drm-next (2024-08-27 14:33:12 +0200) are available in the Git repository at: https://gitlab.freedesktop.org/agd5f/linux.git tags/amd-drm-next-6.12-2024-09-06 for you to fetch changes up to 7a199557643e993d4e7357860624b8aa5d8f4340: Revert "drm/amdgpu: align pp_power_profile_mode with kernel docs" (2024-09-05 14:27:41 -0400) ---------------------------------------------------------------- amd-drm-next-6.12-2024-09-06: amdgpu: - IPS updates - Post divider fix - DML2 updates - Misc static checker fixes - DCN 3.5 fixes - Replay fixes - DMCUB updates - SWSMU fixes - DP MST fixes - Add debug flag for per queue resets - devcoredump updates - SR-IOV fixes - MES fixes - Always allocate cleared VRAM for GEM - Pipe reset for GC 9.4.3 - ODM policy fixes - Per queue reset support for GC 10 - Per queue reset support for GC 11 - Per queue reset support for GC 12 - Display flickering fixes - MPO fixes - Display sharpening updates amdkfd: - SVM fix for IH for APUs ---------------------------------------------------------------- Ahmed, Muhammad (1): drm/amd/display: guard write a 0 post_divider value to HW Alex Deucher (25): drm/amdgpu: align pp_power_profile_mode with kernel docs drm/amdgpu/swsmu: fix ordering for setting workload_mask drm/amdgpu/smu13.0.7: print index for profiles drm/amdgpu/swsmu: always force a state reprogram on init drm/amdgpu: add experimental resets debug flag drm/amdgpu/gfx9: put queue resets behind a debug option drm/amdgpu/gfx11: return early in preempt_ib() drm/amdgpu/gfx12: return early in preempt_ib() drm/amdgpu: always allocate cleared VRAM for GEM allocations drm/amdgpu/gfx11: add ring reset callbacks drm/amdgpu/gfx11: rename gfx_v11_0_gfx_init_queue() drm/amdgpu/gfx10: add ring reset callbacks drm/amdgpu/gfx10: rework reset sequence drm/amdgpu/gfx12: add ring reset callbacks drm/amdgpu/gfx12: fallback to driver reset compute queue directly drm/amdgpu/gfx10: per queue reset only on bare metal drm/amdgpu/gfx11: per queue reset only on bare metal drm/amdgpu/gfx12: per queue reset only on bare metal drm/amdgpu/gfx10: use proper rlc safe mode helpers drm/amdgpu/gfx11: use proper rlc safe mode helpers drm/amdgpu/gfx12: use proper rlc safe mode helpers drm/amdgpu/gfx12: use rlc safe mode for soft recovery drm/amdgpu/gfx11: use rlc safe mode for soft recovery drm/amdgpu/gfx10: use rlc safe mode for soft recovery Revert "drm/amdgpu: align pp_power_profile_mode with kernel docs" Alvin Lee (2): drm/amd/display: Don't skip clock updates in overclocking drm/amd/display: Wait for all pending cleared before full update Aric Cyr (2): drm/amd/display: 3.2.298 drm/amd/display: 3.2.299 Aurabindo Pillai (1): drm/amd/display: do not set traslate_by_source for DCN401 cursor ChunTao Tso (1): drm/amd/display: Retry Replay residency Daniel Sa (2): drm/amd/display: Resolve Coverity Issues drm/amd/display: only trigger BIOS related assert for older ASICs Dennis Chan (1): drm/amd/display: Add Replay Low Refresh Rate parameters in dc type. Dillon Varone (3): drm/amd/display: Fix MS/MP mismatches in dml21 for dcn401 Revert "drm/amd/display: Wait for all pending cleared before full update" drm/amd/display: Block timing sync for different signals in PMO Fangzhi Zuo (3): drm/amd/display: Fix Synaptics Cascaded Panamera DSC Determination drm/amd/display: Add DSC Debug Log drm/amdgpu/display: Fix a mistake in revert commit Gabe Teeger (1): drm/amd/display: fix graphics hang in multi-display mst case Hansen Dsouza (1): drm/amd/display: Fix flickering caused by dccg Jack Xiao (1): drm/amdgpu/mes: add mes mapping legacy queue switch Jiadong Zhu (6): drm/amdgpu/gfx11: wait for reset done before remap drm/amdgpu/gfx10: remap queue after reset successfully drm/amdgpu/gfx10: wait for reset done before remap drm/amdgpu/mes: modify mes api for mmio queue reset drm/amdgpu/mes: implement amdgpu_mes_reset_hw_queue_mmio drm/amdgpu/mes11: implement mmio queue reset for gfx11 Leo Li (3): drm/amd: Introduce additional IPS debug flags drm/amd/display: Determine IPS mode by ASIC and PMFW versions drm/amd/display: Lock DC and exit IPS when changing backlight Meenakshikumar Somasundaram (1): drm/amd/display: Add dpia debug option to control power management Nicholas Kazlauskas (2): drm/amd/display: Allocate DCN35 clock table transfer buffers in GART drm/amd/display: Notify DMCUB of D0/D3 state Nicholas Susanto (1): drm/amd/display: Fix DCN35 set min dispclk logic Prike Liang (2): drm/amdgpu/gfx9.4.3: Implement compute pipe reset drm/amdgpu/gfx11: fallback to driver reset compute queue directly (v2) Relja Vojvodic (1): drm/amd/display: Add sharpness control interface Samson Tam (5): drm/amd/display: add back quality EASF and ISHARP and dc dependency changes drm/amd/display: add improvements for text display and HDR DWM and MPO drm/amd/display: add sharpness support for windowed YUV420 video drm/amd/display: re-enable Dynamic ODM policy drm/amd/display: disable sharpness if HDR Multiplier is too large Sunil Khatri (1): drm/amdgpu: Move the dumping log out of for loop Trigger Huang (2): drm/amdgpu: skip printing vram_lost if needed drm/amdgpu: Do core dump immediately when job tmo Victor Zhao (1): drm/amd/amdgpu: move drain_workqueue before shutdown is set Yifan Zhang (1): drm/amdkfd: Don't drain ih1 for APU Zaeem Mohamed (2): drm/amdgpu/display: SPDX copyright for spl_os_types.h drm/amdgpu/display: remove unnecessary TODO spl_os_types.h Documentation/gpu/amdgpu/driver-core.rst | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c | 4 + drivers/gpu/drm/amd/amdgpu/amdgpu_dev_coredump.c | 20 +- drivers/gpu/drm/amd/amdgpu/amdgpu_dev_coredump.h | 7 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 6 + drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 3 + drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 67 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.c | 23 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h | 15 +- drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 166 +- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 116 +- drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c | 106 +- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 4 + drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.c | 133 +- drivers/gpu/drm/amd/amdgpu/mes_v11_0.c | 129 +- drivers/gpu/drm/amd/amdgpu/mes_v12_0.c | 9 +- drivers/gpu/drm/amd/amdkfd/kfd_svm.c | 13 +- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 54 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 18 +- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 135 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c | 5 +- .../gpu/drm/amd/display/dc/bios/command_table2.c | 2 +- .../amd/display/dc/clk_mgr/dcn35/dcn35_clk_mgr.c | 12 +- .../amd/display/dc/clk_mgr/dcn401/dcn401_clk_mgr.c | 3 - drivers/gpu/drm/amd/display/dc/core/dc.c | 12 +- drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 2 - drivers/gpu/drm/amd/display/dc/dc.h | 8 +- drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c | 30 +- drivers/gpu/drm/amd/display/dc/dc_dmub_srv.h | 24 +- drivers/gpu/drm/amd/display/dc/dc_spl_translate.c | 102 +- drivers/gpu/drm/amd/display/dc/dc_spl_translate.h | 1 + drivers/gpu/drm/amd/display/dc/dc_stream.h | 3 + drivers/gpu/drm/amd/display/dc/dc_types.h | 19 + .../gpu/drm/amd/display/dc/dccg/dcn20/dcn20_dccg.h | 11 + .../gpu/drm/amd/display/dc/dccg/dcn35/dcn35_dccg.c | 92 +- drivers/gpu/drm/amd/display/dc/dce/dmub_replay.c | 18 +- .../dc/dml2/dml21/dml21_translation_helper.c | 8 + .../amd/display/dc/dml2/dml21/inc/dml_top_types.h | 1 - .../dml21/src/dml2_core/dml2_core_dcn4_calcs.c | 68 +- .../dml21/src/dml2_core/dml2_core_shared_types.h | 5 + .../dc/dml2/dml21/src/dml2_pmo/dml2_pmo_dcn3.c | 3 +- .../dml2/dml21/src/dml2_pmo/dml2_pmo_dcn4_fams2.c | 6 +- .../dml21/src/dml2_top/dml2_top_optimization.c | 1 - .../drm/amd/display/dc/dml2/dml2_internal_types.h | 2 +- .../amd/display/dc/dml2/dml2_translation_helper.c | 67 +- .../amd/display/dc/dml2/dml2_translation_helper.h | 2 +- drivers/gpu/drm/amd/display/dc/dml2/dml2_utils.c | 12 +- .../amd/display/dc/dpp/dcn401/dcn401_dpp_dscl.c | 588 ++++--- .../drm/amd/display/dc/hwss/dcn35/dcn35_hwseq.c | 45 - .../display/dc/resource/dcn401/dcn401_resource.c | 7 + drivers/gpu/drm/amd/display/dc/spl/Makefile | 2 +- drivers/gpu/drm/amd/display/dc/spl/dc_spl.c | 1363 ++++++++++------ .../gpu/drm/amd/display/dc/spl/dc_spl_filters.c | 15 + .../gpu/drm/amd/display/dc/spl/dc_spl_filters.h | 15 + .../drm/amd/display/dc/spl/dc_spl_isharp_filters.c | 351 +++- .../drm/amd/display/dc/spl/dc_spl_isharp_filters.h | 35 +- .../amd/display/dc/spl/dc_spl_scl_easf_filters.c | 1726 ++++++++++++++++++++ .../amd/display/dc/spl/dc_spl_scl_easf_filters.h | 38 + .../drm/amd/display/dc/spl/dc_spl_scl_filters.c | 91 +- .../drm/amd/display/dc/spl/dc_spl_scl_filters.h | 55 +- .../amd/display/dc/spl/dc_spl_scl_filters_old.c | 25 - drivers/gpu/drm/amd/display/dc/spl/dc_spl_types.h | 72 +- .../gpu/drm/amd/display/dc/spl/spl_custom_float.c | 151 ++ .../gpu/drm/amd/display/dc/spl/spl_custom_float.h | 29 + drivers/gpu/drm/amd/display/dc/spl/spl_debug.h | 25 + .../gpu/drm/amd/display/dc/spl/spl_fixpt31_32.c | 497 ++++++ .../gpu/drm/amd/display/dc/spl/spl_fixpt31_32.h | 525 ++++++ drivers/gpu/drm/amd/display/dc/spl/spl_os_types.h | 30 +- drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 40 +- drivers/gpu/drm/amd/include/amd_shared.h | 75 +- drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 17 +- .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c | 4 +- 75 files changed, 6024 insertions(+), 1359 deletions(-) create mode 100644 drivers/gpu/drm/amd/display/dc/spl/dc_spl_filters.c create mode 100644 drivers/gpu/drm/amd/display/dc/spl/dc_spl_filters.h create mode 100644 drivers/gpu/drm/amd/display/dc/spl/dc_spl_scl_easf_filters.c create mode 100644 drivers/gpu/drm/amd/display/dc/spl/dc_spl_scl_easf_filters.h delete mode 100644 drivers/gpu/drm/amd/display/dc/spl/dc_spl_scl_filters_old.c create mode 100644 drivers/gpu/drm/amd/display/dc/spl/spl_custom_float.c create mode 100644 drivers/gpu/drm/amd/display/dc/spl/spl_custom_float.h create mode 100644 drivers/gpu/drm/amd/display/dc/spl/spl_debug.h create mode 100644 drivers/gpu/drm/amd/display/dc/spl/spl_fixpt31_32.c create mode 100644 drivers/gpu/drm/amd/display/dc/spl/spl_fixpt31_32.h