Hi Dave, Daniel, New stuff for 6.3. The following changes since commit 7a18e089eff02f17eaee49fc18641f5d16a8284b: drm/amd/pm: update SMU13.0.0 reported maximum shader clock (2022-12-15 12:18:08 -0500) are available in the Git repository at: https://gitlab.freedesktop.org/agd5f/linux.git tags/amd-drm-next-6.3-2023-01-06 for you to fetch changes up to f6e856e72ce51df1e0fe67aecb5f256fbd4190a6: drm/amdgpu: update ta_secureDisplay_if.h to v27.00.00.08 (2023-01-05 11:43:46 -0500) ---------------------------------------------------------------- amd-drm-next-6.3-2023-01-06: amdgpu: - secure display support for multiple displays - DML optimizations - DCN 3.2 updates - PSR updates - DP 2.1 updates - SR-IOV RAS updates - VCN RAS support - SMU 13.x updates - Switch 1 element arrays to flexible arrays - Add RAS support for DF 4.3 - Stack size improvements - S0ix rework - Soft reset fix - Allow 0 as a vram limit on APUs - Display fixes - Misc code cleanups - Documentation fixes - Handle profiling modes for SMU13.x amdkfd: - Error handling fixes - PASID fixes radeon: - Switch 1 element arrays to flexible arrays drm: - Add DP adaptive sync DPCD definitions UAPI: - Add new INFO queries for peak and min sclk/mclk for profile modes on newer chips Proposed mesa patch: https://gitlab.freedesktop.org/mesa/drm/-/merge_requests/278 ---------------------------------------------------------------- Aaron Liu (1): drm/amdgpu: update ta_secureDisplay_if.h to v27.00.00.08 Alan Liu (3): drm/amd/display: Implement multiple secure display drm/amd/display: Fix when disabling secure_display drm/amd/display: Improvements in secure display Alex Deucher (9): drm/amdgpu/gmc9: don't touch gfxhub registers during S0ix drm/amdgpu/gmc10: don't touch gfxhub registers during S0ix drm/amdgpu/gmc11: don't touch gfxhub registers during S0ix drm/amdgpu: don't mess with SDMA clock or powergating in S0ix drm/amdgpu: for S0ix, skip SDMA 5.x+ suspend/resume Revert "drm/amdgpu: disallow gfxoff until GC IP blocks complete s2idle resume" Revert "drm/amdgpu: force exit gfxoff on sdma resume for rmb s0ix" drm/amdgpu: skip MES for S0ix as well since it's part of GFX drm/amdkfd: simplify cases Alexey Kodanev (1): drm/amd/display: drop unnecessary NULL checks in debugfs Alvin Lee (4): drm/amd/display: Block subvp if center timing is in use drm/amd/display: Clear link res when merging a pipe split drm/amd/display: Block FPO / SubVP (DRR) on HDMI VRR configs drm/amd/display: Turn on phantom OTG before disabling phantom pipe Aric Cyr (3): drm/amd/display: 3.2.216 drm/amd/display: Reorder dc_state fields to optimize clearing the struct drm/amd/display: 3.2.217 Arnd Bergmann (2): drm/amd/display: fix duplicate assignments drm/amd/pm: avoid large variable on kernel stack Aurabindo Pillai (1): drm/amd/display: set ignore msa parameter only if freesync is enabled Bhawanpreet Lakha (1): drm/amd/display: Fix dsc mismatch of acquire and validation of dsc engine Candice Li (2): drm/amdgpu: Add df v4_3 headers drm/amdgpu: Add poison mode query for df v4_3 Charlene Liu (1): Revert "drm/amd/display: correct static_screen_event_mask" Christian König (4): drm/amdgpu: use VRAM|GTT for a bunch of kernel allocations drm/amdgpu: rename vram_scratch into mem_scratch drm/amdgpu: cleanup visible vram size handling drm/amdgpu: allow zero as vram limit Dillon Varone (3): drm/amd/display: Add debug bit to disable unbounded requesting drm/amd/display: Reduce expected sdp bandwidth for dcn321 drm/amd/display: run subvp validation with supported vlevel Dmytro Laktyushkin (1): drm/amd/display: fix dc_get_edp_link_panel_inst to only consider links with panels Evan Quan (11): drm/amd/pm: drop unused SMU v13 API drm/amd/pm: fulfill swsmu peak profiling mode shader/memory clock settings drm/amd/pm: fulfill powerplay peak profiling mode shader/memory clock settings drm/amdgpu: expose peak profiling mode shader/memory clocks drm/amdgpu: expose the minimum shader/memory clock frequency drm/amdgpu: bump minor version number for DEV_INFO and SENSOR IOCTLs update drm/amd/pm: add support for WINDOW3D profile mode on SMU13.0.0 drm/amd/pm: bump SMU13.0.0 driver_if header to version 0x34 drm/amd/pm: correct the fan speed retrieving in PWM for some SMU13 asics drm/amd/pm: correct the reference clock for fan speed(rpm) calculation drm/amd/pm: add the missing mapping for PPT feature on SMU13.0.0 and 13.0.7 Fangzhi Zuo (1): drm/amd/display: Demote Error Level When ODM Transition Supported Hawking Zhang (1): drm/amdgpu: allow query error counters for specific IP block Ian Chen (1): drm/amd/display: Revert Reduce delay when sink device not able to ACK 00340h write Ilya Bakoulin (1): drm/amd/display: Speed up DML fast_validate path Jiapeng Chong (1): drm/amd/display: Remove the unused function dmub_outbox_irq_info_funcs Leo (Hanghong) Ma (1): drm/amd/display: Revert Scaler HCBlank issue workaround Leo Chen (1): drm/amd/display: Adding braces to prepare for future changes to behavior of if block Likun Gao (1): drm/amdgpu: adjust the sequence to check soft reset Michel Dänzer (1): Revert "drm/amd/display: Enable Freesync Video Mode by default" Mukul Joshi (1): drm/amdkfd: Fix kernel warning during topology setup Mustapha Ghaddar (1): drm/amd/display: Add DPIA NOTIFICATION logic Nicholas Kazlauskas (1): drm/amd/display: Defer DIG FIFO disable after VID stream enable Paulo Miguel Almeida (1): drm/radeon: Replace 1-element arrays with flexible-array members Philip Yang (2): drm/amdkfd: Fix kfd_process_device_init_vm error handling drm/amdkfd: Fix double release compute pasid Praful Swarnakar (1): drm/amd/display: Remove redundant logs from DSC code Randy Dunlap (1): drm/amd/display: fix dc/core/dc.c kernel-doc Roman Li (2): drm/amd/display: Fix potential null-deref in dm_resume drm/amd/display: Clear MST topology if it fails to resume Saleemkhan Jamadar (1): drm/amdgpu: enable VCN DPG for GC IP v11.0.4 Samson Tam (2): drm/amd/display: Check for PSR in no memory request case drm/amd/display: Uninitialized variables causing 4k60 UCLK to stay at DPM1 and not DPM0 Srinivasan Shanmugam (1): drm/amd/display: fix some coding style issues Stanley.Yang (2): drm/amdgpu: correct umc poison mode set value drm/amdgpu: remove enable ras cmd call trace Sung Joon Kim (1): drm/display: Add missing Adaptive Sync DPCD definitions Swapnil Patel (1): drm/amd/display: patch cases with unknown plane state to prevent warning Tao Zhou (7): drm/amdgpu: add RAS poison consumption handler for AI SRIOV drm/amdgpu: add RAS poison consumption handler for NV SRIOV drm/amdgpu: add RAS poison consumption handler for SRIOV drm/amdgpu: add VCN poison consumption handler for SRIOV drm/amdgpu: skip RAS error injection in SRIOV drm/amdgpu: update VCN/JPEG RAS setting drm/amdgpu: define RAS query poison mode function Tim Huang (1): drm/amdgpu: skip mes self test after s0i3 resume for MES IP v11.0 Wen Yang (1): drm/amd/display: fix array-bounds errors in dc_stream_remove_writeback() Wenjing Liu (5): drm/amd/display: use encoder type independent hwss instead of accessing enc directly drm/amd/display: add support for three new square pattern variants from DP2.1 specs drm/amd/display: move dccg programming from link hwss hpo dp to hwss drm/amd/display: update pixel rate div in enable stream drm/amd/display: allow hpo and dio encoder switching during dp retrain test hersen wu (2): drm/amd/display: save restore hdcp state when display is unplugged from mst hub drm/amd/display: phase3 mst hdcp for multiple displays xurui (1): drm/amdgpu: Retry DDC probing on DVI on failure if we got an HPD interrupt drivers/gpu/drm/amd/amdgpu/Makefile | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 14 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 39 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c | 22 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 77 ++--- drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 4 + drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 35 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 7 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 9 +- drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 28 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 26 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 187 +++++++---- drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_rlc.c | 9 +- drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.h | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 23 +- drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 44 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 7 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 26 +- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h | 1 + drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/dce_v6_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/df_v4_3.c | 61 ++++ drivers/gpu/drm/amd/amdgpu/df_v4_3.h | 31 ++ drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 33 +- drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c | 3 +- drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 3 +- drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 3 +- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 3 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.c | 2 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0_3.c | 2 +- drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 39 ++- drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c | 16 +- drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 5 +- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 5 +- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 39 ++- drivers/gpu/drm/amd/amdgpu/mes_v11_0.c | 11 +- drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/mmhub_v1_7.c | 2 +- drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/mmhub_v2_3.c | 2 +- drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.c | 2 +- drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.c | 2 +- drivers/gpu/drm/amd/amdgpu/mmhub_v9_4.c | 2 +- drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c | 6 + drivers/gpu/drm/amd/amdgpu/mxgpu_ai.h | 1 + drivers/gpu/drm/amd/amdgpu/mxgpu_nv.c | 6 + drivers/gpu/drm/amd/amdgpu/mxgpu_nv.h | 1 + drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c | 8 - drivers/gpu/drm/amd/amdgpu/soc21.c | 1 + drivers/gpu/drm/amd/amdgpu/ta_secureDisplay_if.h | 24 +- drivers/gpu/drm/amd/amdgpu/umc_v8_10.c | 24 +- drivers/gpu/drm/amd/amdkfd/kfd_device.c | 11 - drivers/gpu/drm/amd/amdkfd/kfd_process.c | 24 +- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 2 +- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 364 ++++++++++++++------- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 7 +- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crc.c | 161 ++++----- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crc.h | 26 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 110 ++----- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.h | 14 + .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 26 ++ drivers/gpu/drm/amd/display/dc/core/dc.c | 106 +++--- drivers/gpu/drm/amd/display/dc/core/dc_link.c | 9 - drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c | 1 - drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 137 ++++---- drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 54 ++- drivers/gpu/drm/amd/display/dc/core/dc_stat.c | 1 + drivers/gpu/drm/amd/display/dc/core/dc_stream.c | 9 +- drivers/gpu/drm/amd/display/dc/dc.h | 3 +- drivers/gpu/drm/amd/display/dc/dc_dp_types.h | 4 +- drivers/gpu/drm/amd/display/dc/dc_link.h | 15 +- drivers/gpu/drm/amd/display/dc/dc_stream.h | 3 +- .../amd/display/dc/dce110/dce110_hw_sequencer.c | 13 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dsc.c | 1 - drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c | 86 +++++ .../gpu/drm/amd/display/dc/dcn20/dcn20_resource.c | 3 + .../drm/amd/display/dc/dcn301/dcn301_resource.c | 3 +- .../display/dc/dcn31/dcn31_hpo_dp_link_encoder.c | 5 +- drivers/gpu/drm/amd/display/dc/dcn31/dcn31_hwseq.c | 40 --- drivers/gpu/drm/amd/display/dc/dcn31/dcn31_hwseq.h | 4 - drivers/gpu/drm/amd/display/dc/dcn31/dcn31_init.c | 4 +- drivers/gpu/drm/amd/display/dc/dcn31/dcn31_optc.c | 29 +- drivers/gpu/drm/amd/display/dc/dcn31/dcn31_optc.h | 5 +- .../display/dc/dcn314/dcn314_dio_stream_encoder.c | 6 +- .../gpu/drm/amd/display/dc/dcn314/dcn314_init.c | 4 +- .../gpu/drm/amd/display/dc/dcn314/dcn314_optc.c | 3 +- drivers/gpu/drm/amd/display/dc/dcn32/dcn32_hwseq.c | 39 ++- drivers/gpu/drm/amd/display/dc/dcn32/dcn32_hwseq.h | 2 + drivers/gpu/drm/amd/display/dc/dcn32/dcn32_init.c | 1 + .../gpu/drm/amd/display/dc/dcn32/dcn32_resource.c | 1 + .../gpu/drm/amd/display/dc/dcn32/dcn32_resource.h | 1 + .../amd/display/dc/dcn32/dcn32_resource_helpers.c | 16 +- .../drm/amd/display/dc/dcn321/dcn321_resource.c | 1 + .../gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c | 25 +- .../amd/display/dc/dml/dcn32/display_mode_vba_32.c | 37 ++- .../dc/dml/dcn32/display_mode_vba_util_32.c | 6 +- .../gpu/drm/amd/display/dc/dml/dcn321/dcn321_fpu.c | 2 +- .../gpu/drm/amd/display/dc/dml/display_mode_lib.h | 1 + drivers/gpu/drm/amd/display/dc/inc/core_types.h | 18 +- drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h | 1 + drivers/gpu/drm/amd/display/dc/inc/resource.h | 9 + .../amd/display/dc/irq/dcn201/irq_service_dcn201.c | 5 - .../gpu/drm/amd/display/dc/link/link_hwss_hpo_dp.c | 37 --- drivers/gpu/drm/amd/display/dmub/dmub_srv.h | 3 + drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 83 +++++ .../gpu/drm/amd/display/dmub/src/dmub_srv_stat.c | 21 ++ drivers/gpu/drm/amd/display/include/dpcd_defs.h | 5 +- .../drm/amd/display/include/link_service_types.h | 7 +- .../drm/amd/include/asic_reg/df/df_4_3_offset.h | 30 ++ .../drm/amd/include/asic_reg/df/df_4_3_sh_mask.h | 157 +++++++++ drivers/gpu/drm/amd/include/kgd_pp_interface.h | 2 + drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 10 +- .../gpu/drm/amd/pm/powerplay/hwmgr/smu10_hwmgr.c | 16 +- .../gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c | 76 ++++- .../gpu/drm/amd/pm/powerplay/hwmgr/smu8_hwmgr.c | 16 +- .../gpu/drm/amd/pm/powerplay/hwmgr/vega10_hwmgr.c | 31 +- .../gpu/drm/amd/pm/powerplay/hwmgr/vega12_hwmgr.c | 22 ++ .../gpu/drm/amd/pm/powerplay/hwmgr/vega20_hwmgr.c | 20 +- drivers/gpu/drm/amd/pm/powerplay/inc/hwmgr.h | 2 + .../gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c | 10 +- drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 8 + .../pm/swsmu/inc/pmfw_if/smu13_driver_if_v13_0_0.h | 2 +- drivers/gpu/drm/amd/pm/swsmu/inc/smu_v13_0.h | 6 +- drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c | 45 +-- .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c | 23 +- .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c | 39 ++- drivers/gpu/drm/radeon/atombios.h | 10 +- include/drm/display/drm_dp.h | 6 + include/uapi/drm/amdgpu_drm.h | 6 + 143 files changed, 2079 insertions(+), 1035 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdgpu/df_v4_3.c create mode 100644 drivers/gpu/drm/amd/amdgpu/df_v4_3.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/df/df_4_3_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/df/df_4_3_sh_mask.h