From patchwork Wed Nov 14 16:51:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Alex Deucher X-Patchwork-Id: 10682939 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id AF40C139B for ; Wed, 14 Nov 2018 16:51:32 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9D6C82BC43 for ; Wed, 14 Nov 2018 16:51:32 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 91D512BBAF; Wed, 14 Nov 2018 16:51:32 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 130952BBAF for ; Wed, 14 Nov 2018 16:51:30 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id ADC596E0AE; Wed, 14 Nov 2018 16:51:27 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-qk1-x742.google.com (mail-qk1-x742.google.com [IPv6:2607:f8b0:4864:20::742]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1F30B6E0AE; Wed, 14 Nov 2018 16:51:26 +0000 (UTC) Received: by mail-qk1-x742.google.com with SMTP id m5so26961009qka.9; Wed, 14 Nov 2018 08:51:26 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=v5J3jKk5Ai+pjYyYoHr6Tr2ri6aukFJZaS7qN8NfmVA=; b=U20vxEgIwLOxpw6N48QgxF7XuSqfd8egGEzObaY0q1PWMiVmhGOguPRsdDnYBxmlif U9lnARDKACrqYGfU23YPsIdvkc5YJDV4Rwa6TS/Nz+vw1hRrkDoTBct3LLLVuI2HvaiY eO0gmS2oVgTKQXu6P4AAG5lmzg64aoTwW63VR32rPlLSYj828E+K8uODAmSEwZBc7jYY nLXSYxB0BAVPZRZBxKOZ95tmO0KID12vRCy/Ynw3PFFTpI4Sqq0dQ3TI6nXIZcVQs6MB P4ndU1VJ1gWhsThHTKZWsNKhJ7/ewc4VJYJv/o6NIzBDhuvWmDSal25ZdayNfEiGUOLb LE1w== X-Gm-Message-State: AGRZ1gL6SC3XkTkn1z/TVag8gpZGzTVriQeEeDWhXEIqdT0hIvTZZFj2 FniJ6GE1Xj5ZpqDaayfuY4o8FHwF X-Google-Smtp-Source: AJdET5ch70F50yFIQhBFD12g0IxnDrtXh+gLNMg+FadgKWduJywY8qYDpR6JniJ0s6hSLxuhIVoNvg== X-Received: by 2002:a37:a5d1:: with SMTP id o200mr2431465qke.328.1542214284556; Wed, 14 Nov 2018 08:51:24 -0800 (PST) Received: from localhost.localdomain ([71.219.49.5]) by smtp.gmail.com with ESMTPSA id a54sm5967136qtc.17.2018.11.14.08.51.22 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 14 Nov 2018 08:51:23 -0800 (PST) From: Alex Deucher X-Google-Original-From: Alex Deucher To: amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, airlied@gmail.com Subject: [pull] amdgpu, amdkfd, ttm, scheduler drm-next-4.21 Date: Wed, 14 Nov 2018 11:51:13 -0500 Message-Id: <20181114165113.3751-1-alexander.deucher@amd.com> X-Mailer: git-send-email 2.13.6 MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Alex Deucher Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP Hi Dave, New features for 4.21: amdgpu: - Support for SDMA paging queue on vega - Put compute EOP buffers into vram for better performance - Share more code with amdkfd - Support for scanout with DCC on gfx9 - Initial kerneldoc for DC - Updated SMU firmware support for gfx8 chips - Rework CSA handling for eventual support for preemption - XGMI PSP support - Clean up RLC handling - Enable GPU reset by default on VI, SOC15 dGPUs - Ring and IB test cleanups amdkfd: - Share more code with amdgpu ttm: - Move global init out of the drivers scheduler: - Track if schedulers are ready for work - Timeout/fault handling changes to facilitate GPU recovery The following changes since commit 651022382c7f8da46cb4872a545ee1da6d097d2a: Linux 4.20-rc1 (2018-11-04 15:37:52 -0800) are available in the git repository at: git://people.freedesktop.org/~agd5f/linux drm-next-4.21 for you to fetch changes up to 36b486bc682114a2f1001cbf1a87f21ae381bfc1: drm/amdgpu: log smu version (2018-11-12 15:55:30 -0500) ---------------------------------------------------------------- Alex Deucher (11): drm/amdgpu/sdma4: APUs do not have a page queue drm/amdgpu/amdkfd: clean up mmhub and gfxhub includes drm/amdgpu: update smu firmware images for VI variants (v2) drm/amdgpu/vega20: add CLK base offset drm/amdgpu/display: check if fbc is available in set_static_screen_control (v2) drm/amdgpu: add DC feature mask module parameter drm/amdgpu/display/dc: add FBC to dc_config drm/amdgpu/display/dm: handle FBC dc feature parameter drm/amdgpu/display/dce11: only enable FBC when selected drm/amdgpu/sdma4: use paging queue for buffer funcs drm/amdgpu/gfx9: rework lbpw enable code Amber Lin (3): drm/amdkfd: Simplify kfd2kgd interface drm/amdgpu: Remove unused function pointers drm/amdkfd: Add proper prefix to functions Andrey Grodzovsky (3): drm/sched: Add boolean to mark if sched is ready to work v5 drm/amdgpu: Retire amdgpu_ring.ready flag v4 drm/amdgpu: Enable default GPU reset for dGPU on gfx8/9 v3 Anthony Koo (3): drm/amd/display: Expand dc to use 16.16 bit backlight drm/amd/display: Fix some backlight variable styling drm/amd/display: Expose target backlight level Aric Cyr (1): drm/amd/display: Fix up coverity issues Bhawanpreet Lakha (3): drm/amd/display: explicit uint64_t casting drm/amd/display: rename cstate_pstate_watermarks_st1 drm/amd/display: Fix potential nullptr error Charlene Liu (2): drm/amd/display: Check if hubp function hooks exist before calling them drm/amd/display: remove CRTC_3D_STRUCTURE_V_UPDATE_MODE bit programming. Christian König (28): drm/amdgpu: fix sdma v4 startup under SRIOV drm/amdgpu: add basics for SDMA page queue support drm/amdgpu: remove non gfx specific handling from sdma_v4_0_gfx_resume drm/amdgpu: remove SRIOV specific handling from sdma_v4_0_gfx_resume drm/amdgpu: add some [WR]REG32_SDMA macros to sdma_v4_0.c drm/amdgpu: activate paging queue on SDMA v4 drm/amdgpu: use paging queue for VM page table updates drm/sched: make sure timer is restarted drm/sched: add drm_sched_fault drm/amdgpu: remove illegal instruction stub from si_dma.c drm/amdgpu: use scheduler fault instead of reset work drm/ttm: use a static ttm_mem_global instance drm/ttm: make the device list mutex static drm/ttm: use a static ttm_bo_global instance drm/ttm: initialize globals during device init (v2) drm/amdgpu: further ring test cleanups drm/amdgpu: cleanup amdgpu_ib_ring_tests drm/amdgpu: cleanup skipping IB test on KIQ drm/amdgpu: remove messages from IB tests drm/amdgpu: use ring name instead of idx in traces drm/amdgpu: cleanup uvd_v6_0_ring_test_ring drm/amdgpu: cleanup si_dma_ring_test_ib drm/amdgpu: drop the remaining uses of ring idx in messages drm/amdkfd: fix interrupt spin lock drm/amdgpu: remove nonsense in_interrupt() checks drm/amdgpu: cleanup GMC v9 TLB invalidation drm/amdgpu: drop the busy wait for GMC v9 TLB invalidations drm/amdgpu: use GMC v9 KIQ workaround only for the GFXHUB Daniel Kurtz (1): drm/amdgpu: refactor smu8_send_msg_to_smc and WARN_ON time out David Francis (2): drm/amd/display: initialize dc_transfer_func->ctx drm/amd: Don't fail on backlight = 0 Dmitry V. Levin (2): uapi: fix linux/kfd_ioctl.h userspace compilation errors uapi: fix more linux/kfd_ioctl.h userspace compilation errors Dmytro Laktyushkin (10): drm/amd/display: handle max_vstartup larger than vblank_end drm/amd/display: move pplib/smu notification to dccg block drm/amd/display: remove safe_to_lower flag from dc, use 2 functions instead drm/amd/display: clean up base dccg struct drm/amd/display: split dccg clock manager into asic folders drm/amd/display: rename dccg to clk_mgr drm/amd/display: add dccg block drm/amd/display: fix dml max voltage state drm/amd/display: remove interlace scaling adjustment drm/amd/display: fix mirror rotation scaling math Eric Bernstein (2): drm/amd/display: Add link encoder dp_ycbcr420_supported feature flag drm/amd/display: Remove some old TODO's Eric Yang (1): drm/amd/display: fix report display count logic Evan Quan (5): drm/amdgpu: disable SDMA page queue on Vega20 drm/amd/powerplay: do the comparison in the right Khz granularity drm/amd/powerplay: set a default fclk/gfxclk ratio drm/amd/powerplay: always use fast UCLK switching when UCLK DPM enabled drm/amdgpu: set Vega20 LBPW as disabled at default Fatemeh Darbehani (6): drm/amd/display: dc 3.2.01 drm/amd/display: Retiring set_display_requirements in dm_pp_smu.h - part1 drm/amd/display: Retiring set_display_requirements in dm_pp_smu.h - part2 drm/amd/display: Retiring set_display_requirements in dm_pp_smu.h - part3 drm/amd/display: Retiring set_display_requirements in dm_pp_smu.h - part4 drm/amd/display: Remove the check to see if pp_display_cfg is changed Frank.Min (1): drm/amdgpu: fix sdma doorbell comments typo Gustavo A. R. Silva (2): drm/radeon/r420: mark expected switch fall-through drm/radeon/r300: Mark expected switch fall-throughs Harmanprit Tatla (1): drm/amd/display: Freesync does not engage on some displays Harry Wentland (2): drm/amdgpu: Drop amdgpu_plane drm/amd/display: Stop leaking planes Hawking Zhang (13): drm/amdgpu/psp: avoid hard-code fence value pre submission drm/amdgpu/psp: add structure for xgmi ta and its shared buffer drm/amdgpu/psp: init/de-init xgmi ta microcode drm/amdgpu/psp: add helper function to load/unload xgmi ta drm/amdgpu/psp: add xgmi ta header drm/amdgpu/psp: add helper function to invoke xgmi ta per ta cmd_id drm/amdgpu/psp: initialize xgmi session (v2) drm/amdgpu/psp: add get_node_id function drm/amdgpu/psp: add get_hive_id function drm/amdgpu/psp: update topology info structures drm/amdgpu/psp: add get_topology_info function drm/amdgpu/psp: add set_topology_info function drm/amdgpu: fix frame size of amdgpu_xgmi_add_devices excceed 1024 bytes Huang Rui (1): drm/amdgpu: add ring test for page queue Jerry (Fangzhi) Zuo (2): drm/amd/display: Cleanup MST non-atomic code workaround drm/amd/display: Drop reusing drm connector for MST Jim Qu (1): drm/amd/powerplay: correct code style John Clements (1): drm/amdgpu: Revised PSP comments Junwei Zhang (2): drm/amdgpu: disable page queue on SDMA for Vega12 drm/amdgpu: fix gfx wptr for sdma v4 Krunoslav Kovac (2): drm/amd/display: Set gamma not working on MPO planes drm/amd/display: Remove program_csc_matrix Leo Li (2): drm/amd/display: Initial documentation for AMDgpu DC drm/amd: Update atom_smu_info_v3_3 structure Lewis Huang (1): drm/amd/display: Add condition to sync eDP SW status and HW status Likun Gao (3): drm/amdgpu: unify rlc function into structure drm/amdgpu: separate amdgpu_rlc into a single file drm/amdgpu: abstract the function of enter/exit safe mode for RLC Lyude Paul (1): drm/amd/amdgpu/dm: Fix dm_dp_create_fake_mst_encoder() Marek Olšák (2): drm/amdgpu: put HQD EOP buffers into VRAM drm/amdgpu: increase the size of HQD EOP buffers Nevenko Stupar (2): drm/amd/display: expose hwseq functions and add registers drm/amd/display: Add missing pipes registers for VGA enable/disable Nicholas Kazlauskas (2): drm/amdgpu: Add DCC flags for GFX9 amdgpu_bo drm/amd/display: Guard against null stream_state in set_crc_source Oak Zeng (1): drm/amdgpu: Added a few comments for gart Philip Yang (1): drm/amdgpu: fix sdma v4 ring is disabled accidently Rex Zhu (8): drm/amdgpu: Reverse the sequence of ctx_mgr_fini and vm_fini in amdgpu_driver_postclose_kms drm/amdgpu: Remove useless csa gpu address in vmid0 drm/amdgpu: Refine CSA related functions drm/amdgpu: Move csa related code to separate file drm/amdgpu: Change AMDGPU_CSA_SIZE to 128K drm/amdgpu: Modify the argument of emit_ib interface drm/amdgpu: Refine function name drm/amdgpu: Add helper function to get sdma index Samuel Pitoiset (1): drm/amdgpu: print an error when the parser can't be initialized Shaokun Zhang (1): drm/amd/display: Fix misleading buffer information Sharat Masetty (1): drm/scheduler: Add drm_sched_job_cleanup Shirish S (1): drm/amdgpu: log smu version SivapiriyanKumarasamy (6): drm/amd/display: Add support for Freesync 2 HDR and Content to Display Mapping drm/amd/display: dc 3.2.02 drm/amd/display: Fix incorrect end slope of EETF drm/amd/display: Remove stream_res tg null check in commit planes drm/amd/display: 3.2.03 drm/amd/display: Clip all remaining regamma points after first clipped point Steven Chiu (1): drm/amd/display: 3.2.04 Thomas Zimmermann (3): drm/ttm: Rename ttm_bo_global_{init,release}() to ttm_bo_global_ref_{,}() drm/ttm: Provide ttm_bo_global_{init/release}() for struct ttm_bo_global drm: Remove drm_global.{c,h} v2 Trigger Huang (2): drm/ttm: Fix bo_global and mem_global kfree error drm/amdgpu: disable page queue on Vega10 SR-IOV VF Yong Zhao (8): drm/amdkfd: Delete unnecessary register settings drm/amdgpu: Expose *_setup_vm_pt_regs for kfd to use drm/amdkfd: Use functions from amdgpu for setting up page table base drm/amdkfd: Delete a duplicate statement in set_pasid_vmid_mapping() drm/amdkfd: page_table_base already have the flags needed drm/amdkfd: Remove unnecessary register setting when invalidating tlb in kfd drm/amdgpu: Reorganize amdgpu_gmc_flush_gpu_tlb() for kfd to use drm/amdkfd: Use functions from amdgpu to invalidate vmid in kfd Yue Haibing (1): drm/radeon: remove set but not used variable 'rdev' YueHaibing (3): drm/radeon/kms: remove set but not used variable 'pll' drm/amd/powerplay: remove duplicated includes drm/ttm: remove set but not used variable 'driver' shaoyunl (1): drm/amdgpu: Each PSP need to get latest topology info on XGMI configuration zhong jiang (1): drm/amdkfd: Use kmemdup instead of duplicating its function Documentation/gpu/amdgpu-dc.rst | 68 ++ Documentation/gpu/drivers.rst | 1 + Documentation/gpu/drm-mm.rst | 4 +- drivers/gpu/drm/Makefile | 2 +- drivers/gpu/drm/amd/amdgpu/Makefile | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 20 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 20 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 25 - drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 25 - drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c | 120 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 33 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_csa.c | 117 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_csa.h | 39 + drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 39 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 11 + drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gart.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.h | 54 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.h | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 49 +- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 21 - drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_job.h | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 25 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 223 ++++- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 61 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 28 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_rlc.c | 282 ++++++ drivers/gpu/drm/amd/amdgpu/amdgpu_rlc.h | 98 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 28 +- drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 15 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 105 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h | 2 - drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h | 12 + drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 18 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | 38 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vce.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 100 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c | 140 +-- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 36 +- drivers/gpu/drm/amd/amdgpu/ci_dpm.c | 6 +- drivers/gpu/drm/amd/amdgpu/cik_sdma.c | 66 +- drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c | 144 ++-- drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 276 ++---- drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 351 +++----- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 382 ++++----- drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c | 19 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.h | 2 + drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c | 5 +- drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 5 +- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 4 +- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 110 +-- drivers/gpu/drm/amd/amdgpu/kv_dpm.c | 6 +- drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c | 19 +- drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.h | 2 + drivers/gpu/drm/amd/amdgpu/psp_v11_0.c | 141 ++- drivers/gpu/drm/amd/amdgpu/psp_v3_1.c | 4 +- drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c | 69 +- drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 69 +- drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 702 ++++++++++----- drivers/gpu/drm/amd/amdgpu/si_dma.c | 68 +- drivers/gpu/drm/amd/amdgpu/ta_xgmi_if.h | 130 +++ drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c | 29 +- drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c | 28 +- drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | 76 +- drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c | 74 +- drivers/gpu/drm/amd/amdgpu/vce_v2_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | 13 +- drivers/gpu/drm/amd/amdgpu/vce_v4_0.c | 15 +- drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c | 42 +- drivers/gpu/drm/amd/amdgpu/vega20_reg_init.c | 1 + drivers/gpu/drm/amd/amdkfd/cik_event_interrupt.c | 3 +- drivers/gpu/drm/amd/amdkfd/cik_regs.h | 2 - drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 21 +- drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 9 +- drivers/gpu/drm/amd/amdkfd/kfd_device.c | 12 +- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 24 +- drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c | 3 +- drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c | 5 +- drivers/gpu/drm/amd/amdkfd/kfd_pasid.c | 5 +- drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 1 + drivers/gpu/drm/amd/amdkfd/kfd_process.c | 34 +- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 10 +- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 183 ++-- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 78 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_color.c | 2 +- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crc.c | 5 + .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c | 115 ++- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 79 +- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.h | 1 - .../drm/amd/display/amdgpu_dm/amdgpu_dm_pp_smu.c | 20 +- drivers/gpu/drm/amd/display/dc/bios/bios_parser.c | 2 +- drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c | 2 + .../drm/amd/display/dc/bios/bios_parser_helper.c | 93 ++ .../drm/amd/display/dc/bios/bios_parser_helper.h | 4 + drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c | 32 +- drivers/gpu/drm/amd/display/dc/core/dc.c | 60 +- drivers/gpu/drm/amd/display/dc/core/dc_debug.c | 7 +- drivers/gpu/drm/amd/display/dc/core/dc_link.c | 59 +- drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 76 +- drivers/gpu/drm/amd/display/dc/core/dc_stream.c | 1 + drivers/gpu/drm/amd/display/dc/core/dc_surface.c | 1 + drivers/gpu/drm/amd/display/dc/dc.h | 10 +- drivers/gpu/drm/amd/display/dc/dc_bios_types.h | 5 + drivers/gpu/drm/amd/display/dc/dc_link.h | 11 +- drivers/gpu/drm/amd/display/dc/dce/Makefile | 2 +- drivers/gpu/drm/amd/display/dc/dce/dce_abm.c | 104 ++- drivers/gpu/drm/amd/display/dc/dce/dce_clk_mgr.c | 879 +++++++++++++++++++ .../display/dc/dce/{dce_clocks.h => dce_clk_mgr.h} | 105 ++- drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c | 947 --------------------- drivers/gpu/drm/amd/display/dc/dce/dce_hwseq.h | 52 ++ .../gpu/drm/amd/display/dc/dce/dce_link_encoder.c | 2 +- .../amd/display/dc/dce100/dce100_hw_sequencer.c | 73 +- .../amd/display/dc/dce100/dce100_hw_sequencer.h | 5 +- .../drm/amd/display/dc/dce100/dce100_resource.c | 25 +- .../amd/display/dc/dce110/dce110_hw_sequencer.c | 282 +----- .../amd/display/dc/dce110/dce110_hw_sequencer.h | 11 +- .../drm/amd/display/dc/dce110/dce110_resource.c | 33 +- .../drm/amd/display/dc/dce112/dce112_resource.c | 39 +- .../drm/amd/display/dc/dce120/dce120_resource.c | 20 +- .../drm/amd/display/dc/dce80/dce80_hw_sequencer.c | 3 +- .../gpu/drm/amd/display/dc/dce80/dce80_resource.c | 41 +- drivers/gpu/drm/amd/display/dc/dcn10/Makefile | 2 +- .../gpu/drm/amd/display/dc/dcn10/dcn10_clk_mgr.c | 379 +++++++++ .../gpu/drm/amd/display/dc/dcn10/dcn10_clk_mgr.h | 37 + .../gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.c | 253 ++++-- .../gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.h | 2 +- .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 163 ++-- .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.h | 20 + .../drm/amd/display/dc/dcn10/dcn10_link_encoder.c | 8 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.c | 17 +- .../gpu/drm/amd/display/dc/dcn10/dcn10_resource.c | 32 +- drivers/gpu/drm/amd/display/dc/dm_pp_smu.h | 28 +- drivers/gpu/drm/amd/display/dc/dm_services_types.h | 18 +- .../drm/amd/display/dc/dml/display_mode_structs.h | 3 +- drivers/gpu/drm/amd/display/dc/inc/bw_fixed.h | 2 +- drivers/gpu/drm/amd/display/dc/inc/core_types.h | 5 +- drivers/gpu/drm/amd/display/dc/inc/dcn_calcs.h | 2 +- drivers/gpu/drm/amd/display/dc/inc/hw/abm.h | 12 +- .../dc/inc/hw/{display_clock.h => clk_mgr.h} | 34 +- drivers/gpu/drm/amd/display/dc/inc/hw/dccg.h | 44 + drivers/gpu/drm/amd/display/dc/inc/hw/hw_shared.h | 16 +- .../gpu/drm/amd/display/dc/inc/hw/link_encoder.h | 3 +- drivers/gpu/drm/amd/display/dc/inc/hw/mem_input.h | 4 +- drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h | 20 +- drivers/gpu/drm/amd/display/dc/inc/resource.h | 3 - .../drm/amd/display/modules/color/color_gamma.c | 186 +++- .../drm/amd/display/modules/color/color_gamma.h | 11 +- .../drm/amd/display/modules/freesync/freesync.c | 37 +- drivers/gpu/drm/amd/include/amd_shared.h | 4 + drivers/gpu/drm/amd/include/atomfirmware.h | 7 +- drivers/gpu/drm/amd/include/kgd_kfd_interface.h | 115 --- .../gpu/drm/amd/powerplay/hwmgr/smu7_powertune.c | 12 +- .../gpu/drm/amd/powerplay/hwmgr/vega10_powertune.c | 36 +- drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c | 192 ++--- drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.h | 1 + drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 1 - drivers/gpu/drm/amd/powerplay/inc/smu7_common.h | 4 - drivers/gpu/drm/amd/powerplay/inc/vega20_ppsmc.h | 3 +- .../drm/amd/powerplay/smumgr/polaris10_smumgr.c | 1 - .../gpu/drm/amd/powerplay/smumgr/smu10_smumgr.c | 1 - drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c | 49 +- drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c | 3 + .../gpu/drm/amd/powerplay/smumgr/vegam_smumgr.c | 1 - drivers/gpu/drm/ast/ast_drv.h | 2 - drivers/gpu/drm/ast/ast_ttm.c | 64 -- drivers/gpu/drm/bochs/bochs.h | 2 - drivers/gpu/drm/bochs/bochs_mm.c | 61 -- drivers/gpu/drm/cirrus/cirrus_drv.h | 2 - drivers/gpu/drm/cirrus/cirrus_ttm.c | 64 -- drivers/gpu/drm/drm_drv.c | 2 - drivers/gpu/drm/drm_global.c | 137 --- drivers/gpu/drm/etnaviv/etnaviv_sched.c | 5 +- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h | 2 - drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c | 57 -- drivers/gpu/drm/mgag200/mgag200_drv.h | 2 - drivers/gpu/drm/mgag200/mgag200_ttm.c | 64 -- drivers/gpu/drm/nouveau/nouveau_drv.h | 2 - drivers/gpu/drm/nouveau/nouveau_ttm.c | 67 -- drivers/gpu/drm/qxl/qxl_drv.h | 3 - drivers/gpu/drm/qxl/qxl_ttm.c | 61 -- drivers/gpu/drm/radeon/r300.c | 4 +- drivers/gpu/drm/radeon/r420.c | 1 + drivers/gpu/drm/radeon/radeon.h | 3 - drivers/gpu/drm/radeon/radeon_legacy_tv.c | 10 - drivers/gpu/drm/radeon/radeon_object.c | 2 - drivers/gpu/drm/radeon/radeon_ttm.c | 65 -- drivers/gpu/drm/scheduler/sched_entity.c | 10 +- drivers/gpu/drm/scheduler/sched_main.c | 33 +- drivers/gpu/drm/ttm/ttm_bo.c | 69 +- drivers/gpu/drm/ttm/ttm_execbuf_util.c | 2 - drivers/gpu/drm/ttm/ttm_memory.c | 14 +- drivers/gpu/drm/v3d/v3d_sched.c | 5 +- drivers/gpu/drm/virtio/virtgpu_drv.h | 3 - drivers/gpu/drm/virtio/virtgpu_ttm.c | 62 -- drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 15 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 6 +- drivers/gpu/drm/vmwgfx/vmwgfx_ttm_glue.c | 54 -- drivers/staging/vboxvideo/vbox_drv.h | 2 - drivers/staging/vboxvideo/vbox_ttm.c | 65 +- include/drm/drmP.h | 1 - include/drm/drm_global.h | 53 -- include/drm/gpu_scheduler.h | 5 + include/drm/ttm/ttm_bo_driver.h | 23 +- include/drm/ttm/ttm_memory.h | 4 +- include/uapi/drm/amdgpu_drm.h | 6 + include/uapi/linux/kfd_ioctl.h | 18 +- 216 files changed, 5716 insertions(+), 5585 deletions(-) create mode 100644 Documentation/gpu/amdgpu-dc.rst create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_csa.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_csa.h create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_rlc.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_rlc.h create mode 100644 drivers/gpu/drm/amd/amdgpu/ta_xgmi_if.h create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_clk_mgr.c rename drivers/gpu/drm/amd/display/dc/dce/{dce_clocks.h => dce_clk_mgr.h} (55%) delete mode 100644 drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_clk_mgr.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_clk_mgr.h rename drivers/gpu/drm/amd/display/dc/inc/hw/{display_clock.h => clk_mgr.h} (63%) create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/dccg.h delete mode 100644 drivers/gpu/drm/drm_global.c delete mode 100644 include/drm/drm_global.h