Hi Dave, Daniel, New stuff for 6.4. The following changes since commit 424b3d7582a2a4a7c45d405225ac70cff97f2e4a: drm/amd/pm: downgrade log level upon SMU IF version mismatch (2023-02-23 17:35:59 -0500) are available in the Git repository at: https://gitlab.freedesktop.org/agd5f/linux.git tags/amd-drm-next-6.4-2023-03-17 for you to fetch changes up to 7ee938ac006096fe9c3f1075f56b9263587c150f: drm/amdgpu: Don't resume IOMMU after incomplete init (2023-03-15 18:45:27 -0400) ---------------------------------------------------------------- amd-drm-next-6.4-2023-03-17: amdgpu: - Misc code cleanups - Documentation fixes - Make kobj structures const - Add thermal throttling adjustments for supported APUs - UMC RAS fixes - Display reset fixes - DCN 3.2 fixes - Freesync fixes - DC code reorg - Generalize dmabuf import to work with KFD - DC DML fixes - SRIOV fixes - UVD code cleanups - IH 4.4.2 updates - HDP 4.4.2 updates - SDMA 4.4.2 updates - PSP 13.0.6 updates - Add capped/uncapped workload handling for supported APUs - DCN 3.1.4 updates - Re-org DC Kconfig - USB4 fixes - Reorg DC plane and stream handling - Register vga_switcheroo for apple-gmux - SMU 13.0.6 updates - Fix error checking in read_mm_registers functions for affected families - VCN 4.0.4 fix - Drop redundant pci_enable_pcie_error_reporting() call - RDNA2 SMU OD suspend/resume fix - Expose additional memory stats via fdinfo - RAS fixes - Misc display fixes - DP MST fixes - IOMMU regression fix for KFD amdkfd: - Make kobj structures const - Support for exporting buffers via dmabuf - Multi-VMA page migration fixes - NBIO fixes - Misc code cleanups - Fix possible double free - Fix possible UAF radeon: - iMac fix UAPI: - KFD dmabuf export support. Required for importing KFD buffers into GEM contexts and for RDMA P2P support. Proposed user mode changes: https://github.com/fxkamd/ROCT-Thunk-Interface/commits/fxkamd/dmabuf ---------------------------------------------------------------- Agustin Gutierrez (1): drm/amd/display: Keep PHY active for dp config Alex Deucher (6): drm/amdgpu: fix error checking in amdgpu_read_mm_registers for soc15 drm/amdgpu: fix error checking in amdgpu_read_mm_registers for soc21 drm/amdgpu: fix error checking in amdgpu_read_mm_registers for nv Revert "drm/amdgpu/display: change pipe policy for DCN 2.1" Revert "drm/amd/display: Pass proper parent for DM backlight device registration" drm/amdgpu/nv: fix codec array for SR_IOV Alex Hung (1): drm/amd/display: fix shift-out-of-bounds in CalculateVMAndRowBytes Alvin Lee (5): drm/amd/display: DAL to program DISPCLK WDIVIDER if PMFW doesn't drm/amd/display: When blanking during init loop to find OPP index drm/amd/display: Update to correct min FCLK when construction BB drm/amd/display: Pass tg and hubp inst instead of pipe index for SubVP drm/amd/display: Use DPP inst instead of pipe idx for DPP DTO programming Anthony Koo (1): drm/amd/display: [FW Promotion] Release 0.0.158.0 Aric Cyr (9): drm/amd/display: Reduce CPU busy-waiting for long delays Revert "drm/amd/display: Do not set DRR on pipe commit" Revert "drm/amd/display: Fix FreeSync active bit issue" drm/amd/display: Only wait for blank completion if OTG active drm/amd/display: Do not update DRR while BW optimizations pending drm/amd/display: Promote DAL to 3.2.224 drm/amd/display: 3.2.225 drm/amd/display: 3.2.226 drm/amd/display: 3.2.227 Arthur Grillo (2): drm/amd/display: Remove unused local variables drm/amd/display: Remove unused local variables and function Aurabindo Pillai (1): drm/amd/display: fix clock sequence logic for DCN32 Ayush Gupta (2): drm/amd/display: populate subvp cmd info only for the top pipe drm/amd/display: disconnect MPCC only on OTG change Benjamin Cheng (1): drm/amd/display: Write to correct dirty_rect Bhawanpreet Lakha (1): drm/amd/display: Fix HDCP failing to enable after suspend Bjorn Helgaas (1): drm/amdgpu: Drop redundant pci_enable_pcie_error_reporting() Błażej Szczygieł (1): drm/amd/pm: Fix sienna cichlid incorrect OD volage after resume Candice Li (3): drm/amdgpu: Make umc_v8_10_convert_error_address static and remove unused variable drm/amdgpu: Support umc node harvest config on umc v8_10 drm/amd/pm: Enable ecc_info table support for smu v13_0_10 Chia-I Wu (2): drm/amdkfd: fix a potential double free in pqm_create_queue drm/amdkfd: fix potential kgd_mem UAFs Chris Park (1): drm/amd/display: Simplify register offsets Christian König (2): drm/amdgpu: stop waiting in amdgpu_uvd_send_msg drm/amdgpu: simplify amdgpu_uvd_send_msg Cruise Hung (1): drm/amd/display: Fix DP MST sinks removal issue Daniel Phillips (1): amdkfd: Memory availability can never be negative David Belanger (1): drm/amdkfd: Fixed kfd_process cleanup on module exit. David Tadokoro (3): drm/amd/display: add prefix to amdgpu_dm_plane.h functions drm/amd/display: remove legacy fields of dc_plane_cap struct drm/amd/display: add prefix to amdgpu_dm_crtc.h functions Deepak R Varma (1): drm/amd/display: Simplify same effect if/else blocks Fangzhi Zuo (2): drm/amd/display: Add DSC Support for Synaptics Cascaded MST Hub drm/amd/display: Take FEC Overhead into Timeslot Calculation Felix Kuehling (4): drm/amdgpu: Generalize KFD dmabuf import drm/amdkfd: Implement DMA buf fd export from KFD drm/amdgpu: Optimize end of non-contig VA ranges drm/amdgpu: Don't resume IOMMU after incomplete init Gabe Teeger (1): drm/amd/display: Enable HostVM based on rIOMMU active Guchun Chen (3): drm/amdgpu: drop pm_sysfs_en flag from amdgpu_device structure drm/amdgpu: use drm_device pointer directly rather than convert again drm/amdgpu: move poll enabled/disable into non DC path Guilherme G. Piccoli (1): drm/amdgpu/vcn: Disable indirect SRAM on Vangogh broken BIOSes Hamza Mahfooz (1): drm/amd/display: use a more accurate check in dm_helpers_dp_read_dpcd() Hans de Goede (1): drm/amd/display: Pass proper parent for DM backlight device registration Harry Wentland (12): drm/amd/display: Don't restrict bpc to 8 bpc drm/amd/display: Format input and output CSC matrix drm/display: Don't block HDR_OUTPUT_METADATA on unknown EOTF drm/connector: print max_requested_bpc in state debugfs drm/amd/display: Drop CONFIG_DRM_AMD_DC_HDR drm/amd/display: Fix no-DCN build drm/amd/display: Drop CONFIG_DRM_AMD_DC_HDCP drm/amd/display: call remove_stream_from_ctx from res_pool funcs drm/amd/display: Build DSC without DCN config drm/amd/display: Drop unnecessary DCN guards drm/amd/display: Drop unnecessary DCN guards drm/amd/display: Rename DCN config to FP Hawking Zhang (22): drm/amdgpu: add IH ip block for IH 4.4.2 drm/amdgpu: add hdp v4_4_2 ip headers drm/amdgpu: add HDP ip block for HDP 4.4.2 drm/amdgpu: add sdma v4_4_2 ip headers drm/amdgpu: add psp early init for PSP 13.0.6 drm/amdgpu: init sos microcode for psp v13_0_6 drm/amdgpu: initialize ta ucode for psp v13_0_6 drm/amdgpu: add PSP ip block for PSP 13.0.6 drm/amdgpu: add mp v13_0_6 ip headers drm/amdgpu: Move jpeg ras block init to ras sw_init drm/amdgpu: Move vcn ras block init to ras sw_init drm/amdgpu: Move umc ras block init to gmc ras sw_init drm/amdgpu: Correct gfx ras_late_init callback drm/amdgpu: Move mmhub ras block init to ras sw_init drm/amdgpu: Move hdp ras block init to ras sw_init drm/amdgpu: Rework mca ras sw_init drm/amdgpu: Rework xgmi_wafl_pcs ras sw_init drm/amdgpu: Rework pcie_bif ras sw_init drm/amdgpu: drop ras check at asic level for new blocks drm/amdgpu: Move to common indirect reg access helper drm/amdgpu: Move to common helper to query soc rev_id drm/amdgpu: Retire pcie_gen3_enable function Hersen Wu (1): drm/amd/display: dcn32/321 dsc_pg_control not executed properly Horatio Zhang (1): drm/amdgpu: fix ttm_bo calltrace warning in psp_hw_fini Husain Alshehhi (1): drivers/gpu: fix typo in comment Jane Jian (1): drm/amdgpu/vcn: custom video info caps for sriov Jasdeep Dhillon (1): drm/amd/display: Updating Video Format Fall Back Policy. Jiapeng Chong (2): drm/amd/display: Modify mismatched function name drm/amd/display: Use swap() instead of open coding it Kun Liu (3): drm/amdgpu: added a sysfs interface for thermal throttling drm/amdgpu: added a sysfs interface for thermal throttling drm/amdgpu: fix no previous prototype warning Le Ma (5): drm/amdgpu: set ih chicken bit for IH 4.4.2 drm/amdgpu: skip ih2 rb allocation for IH 4.4.2 drm/amdgpu: skip hdp invalidation for HDP 4.4.2 drm/amdgpu: add sdma v4_4_2 support (v4) drm/amdgpu: set sdma v4_4_2 ip block Lijo Lazar (3): drm/amd/pm: Add PMFW headers for SMU 13.0.6 drm/amd/pm: Add SMU 13.0.6 support drm/amd/pm: Remove unavailable temperature params Marek Olšák (1): drm/amdgpu: expose more memory stats in fdinfo Mario Limonciello (2): drm/amd: Fix initialization for nbio 7.5.1 drm/amd: Fix initialization mistake for NBIO 7.3.0 Mark Hawrylak (1): drm/radeon: Fix eDP for single-display iMac11,2 Mike Hsieh (2): drm/amd/display: Add height granularity limitation for dsc slice height calculation drm/amd/display: fix typo in dc_dsc_config_options structure Muhammad Usama Anjum (1): drm/amdgpu: remove dead code Mustapha Ghaddar (4): drm/amd/display: Allocation at stream Enable drm/amd/display: Update BW ALLOCATION Function declaration drm/amd/display: Unify DC logging for BW Alloc drm/amd/display: Add Validate BW for USB4 Links Nicholas Kazlauskas (2): drm/amd/display: Add minimum Z8 residency debug option drm/amd/display: Update minimum stutter residency for DCN314 Z8 Orlando Chamberlain (1): drm/amdgpu: register a vga_switcheroo client for MacBooks with apple-gmux Paul Hsieh (1): drm/amd/display: Correct DML calculation to align HW formula Perry Yuan (3): drm/amdgpu/pm: add capped/uncapped power profile modes drm/amdgpu: map new capped and uncapped mode power profiles for Vangogh drm/amdgpu: skip the invalid workload type Peter Foley (1): amdgpu: Avoid building on UML Robin Chen (1): drm/amd/display: hpd rx irq not working with eDP interface Rodrigo Siqueira (6): drm/amd/display: Ensure vmin and vmax adjust for DCE drm/amd/display: Drop dc_commit_state in favor of dc_commit_streams drm/amd/display: Use dc_update_planes_and_stream drm/amd/display: Use DC_LOG_DC in the trasform pixel function drm/amd/display: Add wrapper to call planes and stream update drm/amd/display: Ensure that planes are in the same order Ryan Lin (1): drm/amd/display: Ext displays with dock can't recognized after resume Saaem Rizvi (1): drm/amd/display: Remove OTG DIV register write for Virtual signals. Samson Tam (3): drm/amd/display: enable DPG when disabling plane for phantom pipe drm/amd/display: reallocate DET for dual displays with high pixel rate ratio drm/amd/display: fix assert condition Shashank Sharma (1): drm/amdgpu: fix return value check in kfd Shirish S (1): drm/amd/display: add sysfs entry to read PSR residency from firmware Stylon Wang (1): drm/amd/display: Clearly states if long or short HPD event in dmesg logs Sung Joon Kim (1): drm/amd/display: Extend Freesync over PCon support for more devices Swapnil Patel (2): drm/amd/display: Update clock table to include highest clock setting drm/amd/display: default values for luminance range if they are 0 Thomas Weißschuh (2): drm/amdgpu: make kobj_type structures constant drm/amdkfd: Make kobj_type structures constant Tim Huang (1): drm/amd/pm: bump SMU 13.0.4 driver_if header version Tom Rix (6): drm/amdgpu: remove unused variable ring drm/amd/display: change several dcn201 variables storage-class-specifier to static drm/amd/display: change several dcn20 variables storage-class-specifier to static drm/amd/display: change several dcn30 variables storage-class-specifier to static drm/amd/display: remove unused variable res_pool drm/amd/display: remove unused variable available Tom St Denis (1): drm/amd/amdgpu: Add missing INT_STAT_DEBUG registers to GC 10.1 and 10.3 headers Veerabadhran Gopalakrishnan (1): drm/amdgpu/soc21: Add video cap query support for VCN_4_0_4 Wayne Lin (1): drm/amd/display: Pass the right info to drm_dp_remove_payload Wenjing Liu (8): drm/amd/display: merge dc_link.h into dc.h and dc_types.h drm/amd/display: remove empty dc_link.c drm/amd/display: move dc_link functions in accessories folder to dc_link_exports drm/amd/display: move dc_link functions in link root folder to dc_link_exports drm/amd/display: link link_dp_dpia_bw.o in makefile drm/amd/display: move dc_link functions in protocols folder to dc_link_exports drm/amd/display: replace all dc_link function call in link with link functions drm/amd/display: convert link.h functions to function pointer style Wesley Chalmers (2): drm/amd/display: Do not set DRR on pipe Commit drm/amd/display: Make DCN32 functions available to future DCNs Xiaogang Chen (2): drm/amdkfd: Fix BO offset for multi-VMA page migration drm/amdkfd: Get prange->offset after svm_range_vram_node_new Yifan Zha (1): drm/amdgpu: Init MMVM_CONTEXTS_DISABLE in gmc11 golden setting under SRIOV Yihan Zhu (1): drm/amd/display: update pixel format in DP hw sequence Zhikai Zhai (1): drm/amd/display: reset the scaler boundary mode bobzhou (3): drm/amdgpu/vcn: fix compilation issue with legacy gcc drm/amdgpu: remove unused variable drm/amd: fix compilation issue with legacy gcc leiyaoyao (1): drm/amdgpu: Stop clearing kiq position during fini lyndonli (2): drm/amdgpu: Fix call trace warning and hang when removing amdgpu device drm/amdgpu: Fix the warning info when removing amdgpu device tiancyin (1): drm/amd/display: fix dm irq error message in gpu recover .../gpu/amdgpu/display/display-manager.rst | 2 +- drivers/gpu/drm/amd/amdgpu/Kconfig | 1 + drivers/gpu/drm/amd/amdgpu/Makefile | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 88 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 84 +- drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 27 +- drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 4 + drivers/gpu/drm/amd/amdgpu/amdgpu_fdinfo.c | 24 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 41 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c | 48 + drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.h | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_jpeg.c | 29 +- drivers/gpu/drm/amd/amdgpu/amdgpu_jpeg.h | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mca.c | 72 + drivers/gpu/drm/amd/amdgpu/amdgpu_mca.h | 9 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 46 + drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.h | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 23 + drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 29 +- drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 25 +- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 24 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 22 +- drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 30 + drivers/gpu/drm/amd/amdgpu/amdgpu_umc.h | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 32 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 48 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.h | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h | 4 + drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 25 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 30 +- drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgv_sriovmsg.h | 3 +- drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 15 +- drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 26 +- drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c | 28 +- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 59 +- drivers/gpu/drm/amd/amdgpu/hdp_v4_0.c | 8 +- drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.c | 6 +- drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/mca_v3_0.c | 44 +- drivers/gpu/drm/amd/amdgpu/mca_v3_0.h | 4 +- drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.c | 3 + drivers/gpu/drm/amd/amdgpu/nbio_v7_2.c | 9 + drivers/gpu/drm/amd/amdgpu/nv.c | 84 +- drivers/gpu/drm/amd/amdgpu/psp_v13_0.c | 2 + drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c | 1967 ++++++++++++ .../dc/core/dc_link.c => amdgpu/sdma_v4_4_2.h} | 13 +- drivers/gpu/drm/amd/amdgpu/soc15.c | 81 +- drivers/gpu/drm/amd/amdgpu/soc21.c | 183 +- drivers/gpu/drm/amd/amdgpu/umc_v8_10.c | 15 +- drivers/gpu/drm/amd/amdgpu/umc_v8_10.h | 4 +- drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c | 6 +- drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c | 11 +- drivers/gpu/drm/amd/amdgpu/vega20_ih.c | 15 +- drivers/gpu/drm/amd/amdgpu/vi.c | 20 - drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 71 +- drivers/gpu/drm/amd/amdkfd/kfd_device.c | 11 +- drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_migrate.c | 33 +- drivers/gpu/drm/amd/amdkfd/kfd_module.c | 1 + drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 1 + drivers/gpu/drm/amd/amdkfd/kfd_process.c | 75 +- .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c | 4 +- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 10 +- drivers/gpu/drm/amd/display/Kconfig | 14 +- drivers/gpu/drm/amd/display/Makefile | 4 - drivers/gpu/drm/amd/display/amdgpu_dm/Makefile | 4 +- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 242 +- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 4 - .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c | 26 +- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.h | 14 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 33 +- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 3 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 71 +- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 88 +- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.h | 15 + .../drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c | 149 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_plane.h | 12 +- drivers/gpu/drm/amd/display/dc/Makefile | 7 +- drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c | 2 +- drivers/gpu/drm/amd/display/dc/clk_mgr/Makefile | 2 +- drivers/gpu/drm/amd/display/dc/clk_mgr/clk_mgr.c | 16 +- .../amd/display/dc/clk_mgr/dcn201/dcn201_clk_mgr.c | 2 +- .../drm/amd/display/dc/clk_mgr/dcn21/rn_clk_mgr.c | 2 +- .../drm/amd/display/dc/clk_mgr/dcn301/vg_clk_mgr.c | 19 +- .../amd/display/dc/clk_mgr/dcn314/dcn314_clk_mgr.c | 5 + .../amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c | 79 +- .../amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.h | 3 + drivers/gpu/drm/amd/display/dc/core/dc.c | 377 +-- .../gpu/drm/amd/display/dc/core/dc_hw_sequencer.c | 38 +- .../gpu/drm/amd/display/dc/core/dc_link_enc_cfg.c | 2 +- .../gpu/drm/amd/display/dc/core/dc_link_exports.c | 411 ++- drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 21 +- drivers/gpu/drm/amd/display/dc/core/dc_vm_helper.c | 2 - drivers/gpu/drm/amd/display/dc/dc.h | 588 +++- drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c | 13 +- drivers/gpu/drm/amd/display/dc/dc_dp_types.h | 173 +- drivers/gpu/drm/amd/display/dc/dc_dsc.h | 11 +- drivers/gpu/drm/amd/display/dc/dc_hw_types.h | 16 +- drivers/gpu/drm/amd/display/dc/dc_link.h | 577 ---- drivers/gpu/drm/amd/display/dc/dc_types.h | 117 +- drivers/gpu/drm/amd/display/dc/dce/dce_aux.c | 9 +- .../gpu/drm/amd/display/dc/dce/dce_clock_source.c | 27 +- .../gpu/drm/amd/display/dc/dce/dce_clock_source.h | 6 - drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c | 2 +- drivers/gpu/drm/amd/display/dc/dce/dce_transform.c | 5 +- drivers/gpu/drm/amd/display/dc/dce/dmub_abm.c | 2 +- drivers/gpu/drm/amd/display/dc/dce/dmub_psr.c | 2 +- drivers/gpu/drm/amd/display/dc/dce/dmub_psr.h | 5 +- .../amd/display/dc/dce110/dce110_hw_sequencer.c | 62 +- .../amd/display/dc/dce110/dce110_hw_sequencer.h | 2 - .../drm/amd/display/dc/dce110/dce110_resource.c | 3 - drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h | 4 + .../gpu/drm/amd/display/dc/dcn10/dcn10_dpp_dscl.c | 4 + drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dwb.c | 5 - drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dwb.h | 4 - .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 8 +- .../drm/amd/display/dc/dcn10/dcn10_link_encoder.c | 3 +- .../gpu/drm/amd/display/dc/dcn10/dcn10_resource.c | 2 - .../amd/display/dc/dcn10/dcn10_stream_encoder.c | 10 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dsc.c | 2 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dwb.c | 2 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c | 23 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_mmhubbub.c | 2 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_mpc.c | 2 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_resource.c | 11 +- .../amd/display/dc/dcn20/dcn20_stream_encoder.c | 3 +- drivers/gpu/drm/amd/display/dc/dcn201/dcn201_dpp.c | 7 - .../gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c | 2 - drivers/gpu/drm/amd/display/dc/dcn201/dcn201_mpc.c | 2 +- .../drm/amd/display/dc/dcn201/dcn201_resource.c | 6 +- drivers/gpu/drm/amd/display/dc/dcn21/dcn21_hwseq.c | 4 +- .../gpu/drm/amd/display/dc/dcn21/dcn21_resource.c | 4 +- drivers/gpu/drm/amd/display/dc/dcn30/dcn30_afmt.c | 2 - .../display/dc/dcn30/dcn30_dio_stream_encoder.c | 1 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dpp.h | 2 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dwb.c | 2 +- drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubp.c | 4 - drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hwseq.c | 12 +- .../gpu/drm/amd/display/dc/dcn30/dcn30_mmhubbub.c | 2 +- drivers/gpu/drm/amd/display/dc/dcn30/dcn30_mpc.c | 2 +- .../gpu/drm/amd/display/dc/dcn30/dcn30_resource.c | 11 +- .../drm/amd/display/dc/dcn301/dcn301_resource.c | 2 - .../drm/amd/display/dc/dcn302/dcn302_resource.c | 11 +- .../drm/amd/display/dc/dcn303/dcn303_resource.c | 13 +- drivers/gpu/drm/amd/display/dc/dcn31/dcn31_apg.c | 41 - .../amd/display/dc/dcn31/dcn31_dio_link_encoder.c | 5 +- .../display/dc/dcn31/dcn31_hpo_dp_link_encoder.c | 1 - .../display/dc/dcn31/dcn31_hpo_dp_stream_encoder.c | 2 +- drivers/gpu/drm/amd/display/dc/dcn31/dcn31_hwseq.c | 14 +- .../gpu/drm/amd/display/dc/dcn31/dcn31_resource.c | 2 - .../display/dc/dcn314/dcn314_dio_stream_encoder.c | 8 +- .../gpu/drm/amd/display/dc/dcn314/dcn314_hwseq.c | 2 +- .../drm/amd/display/dc/dcn314/dcn314_resource.c | 3 +- .../drm/amd/display/dc/dcn315/dcn315_resource.c | 2 - .../drm/amd/display/dc/dcn316/dcn316_resource.c | 2 - drivers/gpu/drm/amd/display/dc/dcn32/dcn32_dccg.h | 36 - .../display/dc/dcn32/dcn32_dio_stream_encoder.c | 4 +- .../display/dc/dcn32/dcn32_dio_stream_encoder.h | 64 - .../display/dc/dcn32/dcn32_hpo_dp_link_encoder.c | 1 - .../gpu/drm/amd/display/dc/dcn32/dcn32_hubbub.h | 62 - drivers/gpu/drm/amd/display/dc/dcn32/dcn32_hubp.h | 6 - drivers/gpu/drm/amd/display/dc/dcn32/dcn32_hwseq.c | 119 +- drivers/gpu/drm/amd/display/dc/dcn32/dcn32_hwseq.h | 4 + drivers/gpu/drm/amd/display/dc/dcn32/dcn32_init.c | 2 +- drivers/gpu/drm/amd/display/dc/dcn32/dcn32_mpc.c | 8 +- drivers/gpu/drm/amd/display/dc/dcn32/dcn32_mpc.h | 13 + drivers/gpu/drm/amd/display/dc/dcn32/dcn32_optc.h | 71 - .../gpu/drm/amd/display/dc/dcn32/dcn32_resource.c | 23 +- .../amd/display/dc/dcn32/dcn32_resource_helpers.c | 47 +- .../drm/amd/display/dc/dcn321/dcn321_resource.c | 12 +- drivers/gpu/drm/amd/display/dc/dml/Makefile | 2 +- .../gpu/drm/amd/display/dc/dml/dcn20/dcn20_fpu.c | 7 +- .../amd/display/dc/dml/dcn30/display_mode_vba_30.c | 8 +- .../display/dc/dml/dcn30/display_rq_dlg_calc_30.c | 3 - .../amd/display/dc/dml/dcn31/display_mode_vba_31.c | 299 +- .../display/dc/dml/dcn31/display_rq_dlg_calc_31.c | 2 - .../gpu/drm/amd/display/dc/dml/dcn314/dcn314_fpu.c | 4 + .../display/dc/dml/dcn314/display_mode_vba_314.c | 299 +- .../gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c | 7 +- .../amd/display/dc/dml/dcn32/display_mode_vba_32.c | 7 +- .../dc/dml/dcn32/display_mode_vba_util_32.c | 6 +- .../dc/dml/dcn32/display_mode_vba_util_32.h | 3 +- .../gpu/drm/amd/display/dc/dml/dcn321/dcn321_fpu.c | 5 +- drivers/gpu/drm/amd/display/dc/dsc/dc_dsc.c | 86 +- drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c | 2 + drivers/gpu/drm/amd/display/dc/hdcp/hdcp_msg.c | 2 +- drivers/gpu/drm/amd/display/dc/inc/core_types.h | 2 - drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h | 54 +- drivers/gpu/drm/amd/display/dc/inc/hw/dwb.h | 8 +- drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h | 2 +- drivers/gpu/drm/amd/display/dc/inc/hw/hw_shared.h | 14 - .../gpu/drm/amd/display/dc/inc/hw/link_encoder.h | 52 - .../gpu/drm/amd/display/dc/inc/hw/stream_encoder.h | 1 - .../drm/amd/display/dc/inc/hw/timing_generator.h | 2 +- .../drm/amd/display/dc/inc/hw_sequencer_private.h | 2 +- drivers/gpu/drm/amd/display/dc/inc/link.h | 351 ++- drivers/gpu/drm/amd/display/dc/inc/resource.h | 2 +- drivers/gpu/drm/amd/display/dc/link/Makefile | 2 +- .../amd/display/dc/link/accessories/link_dp_cts.c | 65 +- .../amd/display/dc/link/accessories/link_dp_cts.h | 19 +- .../display/dc/link/accessories/link_dp_trace.c | 21 +- .../display/dc/link/accessories/link_dp_trace.h | 17 +- .../drm/amd/display/dc/link/hwss/link_hwss_dio.c | 22 +- .../amd/display/dc/link/hwss/link_hwss_hpo_dp.c | 8 +- .../gpu/drm/amd/display/dc/link/link_detection.c | 123 +- .../gpu/drm/amd/display/dc/link/link_detection.h | 15 +- drivers/gpu/drm/amd/display/dc/link/link_dpms.c | 78 +- drivers/gpu/drm/amd/display/dc/link/link_dpms.h | 23 +- drivers/gpu/drm/amd/display/dc/link/link_factory.c | 274 +- drivers/gpu/drm/amd/display/dc/link/link_factory.h | 2 + .../gpu/drm/amd/display/dc/link/link_resource.h | 3 +- .../gpu/drm/amd/display/dc/link/link_validation.c | 14 +- .../gpu/drm/amd/display/dc/link/link_validation.h | 7 + .../drm/amd/display/dc/link/protocols/link_ddc.c | 24 +- .../drm/amd/display/dc/link/protocols/link_ddc.h | 32 + .../display/dc/link/protocols/link_dp_capability.c | 70 +- .../display/dc/link/protocols/link_dp_capability.h | 28 + .../amd/display/dc/link/protocols/link_dp_dpia.c | 3 +- .../amd/display/dc/link/protocols/link_dp_dpia.h | 4 +- .../display/dc/link/protocols/link_dp_dpia_bw.c | 176 +- .../display/dc/link/protocols/link_dp_dpia_bw.h | 52 +- .../dc/link/protocols/link_dp_irq_handler.c | 30 +- .../dc/link/protocols/link_dp_irq_handler.h | 12 +- .../amd/display/dc/link/protocols/link_dp_phy.c | 10 +- .../amd/display/dc/link/protocols/link_dp_phy.h | 3 + .../display/dc/link/protocols/link_dp_training.c | 26 +- .../display/dc/link/protocols/link_dp_training.h | 3 + .../dc/link/protocols/link_dp_training_auxless.c | 2 +- .../dc/link/protocols/link_dp_training_auxless.h | 2 +- .../dc/link/protocols/link_dp_training_dpia.c | 7 +- .../dc/link/protocols/link_dp_training_dpia.h | 2 +- .../dc/link/protocols/link_edp_panel_control.c | 51 +- .../dc/link/protocols/link_edp_panel_control.h | 30 + .../drm/amd/display/dc/link/protocols/link_hpd.c | 14 +- .../drm/amd/display/dc/link/protocols/link_hpd.h | 7 + drivers/gpu/drm/amd/display/dc/os_types.h | 4 +- drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 22 +- .../include/{hdcp_types.h => hdcp_msg_types.h} | 0 .../drm/amd/display/include/link_service_types.h | 26 - .../drm/amd/display/modules/freesync/freesync.c | 12 +- .../gpu/drm/amd/display/modules/hdcp/hdcp_log.h | 2 - drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h | 1 + .../drm/amd/display/modules/power/power_helpers.c | 7 - .../drm/amd/include/asic_reg/gc/gc_10_1_0_offset.h | 4 + .../amd/include/asic_reg/gc/gc_10_1_0_sh_mask.h | 54 + .../drm/amd/include/asic_reg/gc/gc_10_3_0_offset.h | 4 + .../amd/include/asic_reg/gc/gc_10_3_0_sh_mask.h | 54 + .../amd/include/asic_reg/hdp/hdp_4_4_2_offset.h | 219 ++ .../amd/include/asic_reg/hdp/hdp_4_4_2_sh_mask.h | 663 ++++ .../drm/amd/include/asic_reg/mp/mp_13_0_6_offset.h | 456 +++ .../amd/include/asic_reg/mp/mp_13_0_6_sh_mask.h | 674 ++++ .../amd/include/asic_reg/sdma/sdma_4_4_2_offset.h | 1109 +++++++ .../amd/include/asic_reg/sdma/sdma_4_4_2_sh_mask.h | 3276 ++++++++++++++++++++ drivers/gpu/drm/amd/include/kgd_pp_interface.h | 4 + drivers/gpu/drm/amd/pm/amdgpu_dpm.c | 28 + drivers/gpu/drm/amd/pm/amdgpu_pm.c | 79 + drivers/gpu/drm/amd/pm/inc/amdgpu_dpm.h | 3 + drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 30 + drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h | 12 + .../pm/swsmu/inc/pmfw_if/smu11_driver_if_vangogh.h | 4 +- .../pm/swsmu/inc/pmfw_if/smu13_driver_if_v13_0_4.h | 4 +- .../pm/swsmu/inc/pmfw_if/smu13_driver_if_v13_0_6.h | 141 + .../amd/pm/swsmu/inc/pmfw_if/smu_v13_0_6_pmfw.h | 212 ++ .../amd/pm/swsmu/inc/pmfw_if/smu_v13_0_6_ppsmc.h | 95 + drivers/gpu/drm/amd/pm/swsmu/inc/smu_types.h | 4 +- drivers/gpu/drm/amd/pm/swsmu/inc/smu_v13_0.h | 7 +- .../drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c | 43 +- drivers/gpu/drm/amd/pm/swsmu/smu11/vangogh_ppt.c | 23 +- drivers/gpu/drm/amd/pm/swsmu/smu13/Makefile | 2 +- drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c | 11 +- .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c | 79 +- .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.c | 2069 ++++++++++++ .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.h | 32 + .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c | 4 +- drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c | 4 +- drivers/gpu/drm/display/drm_hdmi_helper.c | 6 +- drivers/gpu/drm/drm_atomic.c | 1 + drivers/gpu/drm/radeon/atombios_encoders.c | 5 +- include/uapi/linux/kfd_ioctl.h | 14 +- 286 files changed, 16293 insertions(+), 3367 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c create mode 100644 drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c rename drivers/gpu/drm/amd/{display/dc/core/dc_link.c => amdgpu/sdma_v4_4_2.h} (82%) delete mode 100644 drivers/gpu/drm/amd/display/dc/dc_link.h rename drivers/gpu/drm/amd/display/include/{hdcp_types.h => hdcp_msg_types.h} (100%) create mode 100644 drivers/gpu/drm/amd/include/asic_reg/hdp/hdp_4_4_2_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/hdp/hdp_4_4_2_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/mp/mp_13_0_6_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/mp/mp_13_0_6_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/sdma/sdma_4_4_2_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/sdma/sdma_4_4_2_sh_mask.h create mode 100644 drivers/gpu/drm/amd/pm/swsmu/inc/pmfw_if/smu13_driver_if_v13_0_6.h create mode 100644 drivers/gpu/drm/amd/pm/swsmu/inc/pmfw_if/smu_v13_0_6_pmfw.h create mode 100644 drivers/gpu/drm/amd/pm/swsmu/inc/pmfw_if/smu_v13_0_6_ppsmc.h create mode 100644 drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.c create mode 100644 drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.h