From patchwork Fri Nov 30 19:25:05 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Alex Deucher X-Patchwork-Id: 10707045 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 1EC6E13AD for ; Fri, 30 Nov 2018 19:25:20 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0FBD93025B for ; Fri, 30 Nov 2018 19:25:20 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 035293025E; Fri, 30 Nov 2018 19:25:20 +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 2F5DB3025B for ; Fri, 30 Nov 2018 19:25:19 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 989316E663; Fri, 30 Nov 2018 19:25:16 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-qk1-x72f.google.com (mail-qk1-x72f.google.com [IPv6:2607:f8b0:4864:20::72f]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3BE616E661; Fri, 30 Nov 2018 19:25:15 +0000 (UTC) Received: by mail-qk1-x72f.google.com with SMTP id y16so3824203qki.7; Fri, 30 Nov 2018 11:25:15 -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=34xlNnWRCQOv7rbtuXWt/TSbcbGUQq4559QIh8uQDVU=; b=A/cpk6zE12cqrNykVhw7jgRn3Udp/Z8hZp3L2GjMIWdMVW700kL1LqLtxV3FtosBdj Udwic1T6Hr3rGkWYAxxjTmI8NkMvMRz2ATzVwjM7aDJpjDcJ3+m1Xe5uxv8OvEHSFGsD LqZ9mHhN5BPQavYCvNepRksRfrw+RwROy4NHaJgsUlJhPhKZw6/pqgztJp1xxvQO5VDz pfE2y+AHlFUOYQAmR7vUpcIk/VgVYFzdAt3X52L2MghUc2eguh4tk6Mr7C0kxo4eBulg /SCmjduPCD1Rw73lLaQdj/X71bBH/pfPpvU82izKU6AudoRVGN8V666oHwdl4XaaPL1D xbEQ== X-Gm-Message-State: AA+aEWYQ/K68U7lWxGL/neCX1FURMO3BOHNaqiaL1QfjhCBrmt/B+sEb In9PF5xHs1JcUBrv3LTAoDDe6r7T X-Google-Smtp-Source: AFSGD/ULjMQR7rZ8YVHlbO9VyexjO5a9rr8YU4JymGL5LMDBZrjkcwpIJP8REixNuLcNMpon9PJFvA== X-Received: by 2002:a37:b0b:: with SMTP id 11mr6440221qkl.45.1543605913971; Fri, 30 Nov 2018 11:25:13 -0800 (PST) Received: from localhost.localdomain ([71.219.49.5]) by smtp.gmail.com with ESMTPSA id r47sm3559808qtc.77.2018.11.30.11.25.12 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 30 Nov 2018 11:25:13 -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, radeon drm-next-4.21 Date: Fri, 30 Nov 2018 14:25:05 -0500 Message-Id: <20181130192505.2946-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, More new features for 4.21: amdgpu and amdkfd: - Freesync support - ABM support in DC - KFD support for vega12 and polaris12 - Add sdma paging queue support for vega - Use ACPI to query backlight range on supported platforms - Clean up doorbell handling - KFD fix for pasid handling under non-HWS - Misc cleanups and fixes scheduler: - Revert "fix timeout handling v2" radeon: - Fix possible overflow on 32 bit ttm: - Fix for LRU handling for ghost objects The following changes since commit 9235dd441af43599b9cdcce599a3da4083fcad3c: Merge branch 'drm-next-4.21' of git://people.freedesktop.org/~agd5f/linux into drm-next (2018-11-19 11:07:52 +1000) are available in the git repository at: git://people.freedesktop.org/~agd5f/linux drm-next-4.21 for you to fetch changes up to 2c486cc4c2774df684d8a43ca7a20670c67ccd76: drm/amdgpu: wait for IB test on first device open (2018-11-30 12:01:35 -0500) ---------------------------------------------------------------- Alex Deucher (4): drm/amdgpu/gfx: use proper offset define for MEC doorbells drm/amdgpu/psp: use define rather than magic number for mode1 reset drm/amdgpu: don't expose fan attributes on APUs drm/amdgpu: add VCN JPEG support amdgpu_ctx_num_entities Andrey Grodzovsky (3): drm/amdgpu: Refactor amdgpu_xgmi_add_device drm/amdgpu: Expose hive adev list and xgmi_mutex drm/amdgpu: Refactor GPU reset for XGMI hive case Bhawanpreet Lakha (2): drm/amd/display: Set RMX_ASPECT as default drm/amd/display: Fix Scaling (RMX_*) for DC driver Brajeswar Ghosh (7): drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c: Remove duplicate header drm/amd/amdgpu/vce_v3_0.c: Remove duplicate header drm/amd/amdgpu: Remove duplicate header drm/amd/display/amdgpu_dm/amdgpu_dm.c: Remove duplicate header drm/amd/amdgpu: Remove duplicate header drm/amd/amdkfd: Remove duplicate header drm/amd/display: Remove duplicate header Charlene Liu (1): drm/amd/display: expose surface confirm color function Chengming Gui (1): Revert "drm/amdgpu: use GMC v9 KIQ workaround only for the GFXHUB" (v2) Chris Wilson (1): drm/amdgpu: Reorder uvd ring init before uvd resume Christian König (3): drm/sched: revert "fix timeout handling v2" v2 drm/ttm: fix LRU handling in ttm_buffer_object_transfer drm/amdgpu: wait for IB test on first device open Colin Ian King (3): drm/amd/display: fix dereference of pointer fs_params before it is null checked drm/amdgpu: fix spelling mistake "Pramater" -> "Parameter" drm/amd/pp: fix spelling mistake "dependancy" -> "dependency" David Francis (10): drm/amd/display: Remove dc_stream_state->status drm/amd/display: Check for dmcu initialization before calling dmcu drm/amd/display: Clean up dp_blank functions drm/amd/display: Get backlight controller id from link drm/amd/display: Clean up DCN1 clock requests drm/amd/display: Load DMCU IRAM drm/amd: Add abm level drm property drm/amd: update ATIF functions in AMD ACPI header drm/amd: Query and use ACPI backlight caps drm/amd/display: Fix compile error with ACPI disabled Dmytro Laktyushkin (2): drm/amd/display: redesign scaling rotation math drm/amd/display: fix pipe interdependent hubp programming Emily Deng (1): drm/amd/amdgpu/sriov: Aligned the definition with libgv Eric Bernstein (1): drm/amd/display: get tail pipe before aquire free pipe Eric Huang (1): drm/amdkfd: change system memory overcommit limit Felix Kuehling (2): drm/amdkfd: Fix and simplify sync object handling for KFD drm/amdgpu: Fix KFD doorbell SG BO mapping Gang Ba (1): drm/amdkfd: Added Vega12 and Polaris12 for KFD. Guttula, Suresh (2): drm/amd/powerplay:add hwmgr callback to update nbpstate on Carrizo drm/amd:Enable/Disable NBPSTATE on On/OFF of UVD Harish Kasiviswanathan (2): drm/amdgpu: Remove explicit wait after VM validate drm/amdgpu: KFD Restore process: Optimize waiting Jerry (Fangzhi) Zuo (1): drm/amd/display: Fix NULL ptr when calculating refresh rate Joerg Roedel (1): drm/amd/powerplay: Ratelimit all "was not implemented" messages Joshua Aberback (1): drm/amd/display: Adjust stream enable sequence Jun Lei (2): drm/amd/display: make underflow status clear explicit drm/amd/display: clear underflow on optc unblank Murton Liu (1): drm/amd/display: fix gamma not being applied correctly Nevenko Stupar (1): drm/amd/display: expose dentist_get_divider_from_did Nicholas Kazlauskas (9): drm/amdgpu: Add amdgpu "max bpc" connector property (v2) drm/amd/display: Support amdgpu "max bpc" connector property (v2) drm/amd/display: Use private obj helpers for dm_atomic_state drm: Add vrr_capable property to the drm connector drm: Add vrr_enabled property to drm CRTC drm: Document variable refresh properties drm/amdgpu: Correct get_crtc_scanoutpos behavior when vpos >= vtotal drm/amdgpu: Set FreeSync state using drm VRR properties drm/amd/display: Fix NULL ptr deref for commit_planes_to_stream Nikola Cornij (1): drm/amd/display: Consolidate two-pixels-per-container check Oak Zeng (9): drm/amdgpu: Add field in amdgpu_dev to hold reserved doorbell index drm/amdgpu: Add asic func interface to init doorbell index drm/amdgpu: Vega10 doorbell index initialization drm/amdgpu: Doorbell index initialization for ASICs before vega10 drm/amdgpu: Doorbell layout for vega20 and future asic drm/amdgpu: Call doorbell index init on device initialization drm/amdgpu: Use asic specific doorbell index instead of macro definition drm/amdgpu: Move doorbell structures to seperate file drm/amdgpu: Fix num_doorbell calculation issue Philip Yang (3): drm/amdgpu: fix typo in function sdma_v4_0_page_resume drm/amdgpu: enable paging queue doorbell support v4 drm/amdgpu: enable paging queue based on FW version (v2) Rex Zhu (2): drm/amdgpu: Remove dead static variable drm/amdgpu: Fix static checker warning Roman Li (1): drm/amd/display: Fix 6x4K displays light-up on Vega20 Shirish S (1): Revert "drm/amd/powerplay: Enable/Disable NBPSTATE on On/OFF of UVD" Steven Chiu (2): drm/amd/display: 3.2.05 drm/amd/display: 3.2.06 Trigger Huang (1): drm/scheduler: Fix bad job be re-processed in TDR Wenjing Liu (1): drm/amd/display: resolve minor log problems Xiaodong Yan (1): drm/amd/display: retry 3 times before successfully reading Yogesh Mohan Marimuthu (1): drm/amd/display: calculate stream->phy_pix_clk before clock mapping Yong Zhao (3): drm/amdkfd: Replace mqd with mqd_mgr as the variable name for mqd_manager drm/amdkfd: Adjust the debug message in KFD ISR drm/amdkfd: Workaround PASID missing in gfx9 interrupt payload under non HWS Yongqiang Sun (1): drm/amd/display: Typo for return check value. Young Xiao (1): drm: radeon: fix overflow on 32bit systems YueHaibing (1): drm/amdgpu: remove set but not used variable 'ring' Documentation/gpu/drm-kms.rst | 7 + drivers/gpu/drm/amd/amdgpu/amdgpu.h | 142 +--- drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c | 114 +++- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 29 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 171 ++--- drivers/gpu/drm/amd/amdgpu/amdgpu_csa.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 393 +++++++---- drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 19 +- drivers/gpu/drm/amd/amdgpu/amdgpu_doorbell.h | 243 +++++++ drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 16 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h | 12 +- drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 26 + drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.h | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h | 24 +- drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 68 +- drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.h | 39 ++ drivers/gpu/drm/amd/amdgpu/cik.c | 1 + drivers/gpu/drm/amd/amdgpu/cik.h | 1 + drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 11 +- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 8 +- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 9 +- drivers/gpu/drm/amd/amdgpu/mxgpu_vi.c | 1 - drivers/gpu/drm/amd/amdgpu/psp_v10_0.c | 3 - drivers/gpu/drm/amd/amdgpu/psp_v3_1.c | 5 +- drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 77 ++- drivers/gpu/drm/amd/amdgpu/soc15.c | 23 +- drivers/gpu/drm/amd/amdgpu/soc15.h | 2 + drivers/gpu/drm/amd/amdgpu/tonga_ih.c | 2 +- drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c | 8 +- drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c | 8 +- drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | 8 +- drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c | 12 +- drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | 1 - drivers/gpu/drm/amd/amdgpu/vce_v4_0.c | 4 +- drivers/gpu/drm/amd/amdgpu/vega10_ih.c | 2 +- drivers/gpu/drm/amd/amdgpu/vega10_reg_init.c | 28 + drivers/gpu/drm/amd/amdgpu/vega20_reg_init.c | 33 + drivers/gpu/drm/amd/amdgpu/vi.c | 19 + drivers/gpu/drm/amd/amdgpu/vi.h | 1 + drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 6 + drivers/gpu/drm/amd/amdkfd/kfd_device.c | 45 ++ .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 14 +- .../drm/amd/amdkfd/kfd_device_queue_manager_vi.c | 1 - drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 2 + drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c | 35 +- drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c | 2 + drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c | 2 + drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 2 + drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 2 + drivers/gpu/drm/amd/display/Makefile | 3 +- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 727 +++++++++++++++------ drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 37 +- drivers/gpu/drm/amd/display/dc/core/dc.c | 13 +- drivers/gpu/drm/amd/display/dc/core/dc_link.c | 15 +- drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 17 +- drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 669 +++++++------------ drivers/gpu/drm/amd/display/dc/core/dc_stream.c | 2 - drivers/gpu/drm/amd/display/dc/dc.h | 11 +- drivers/gpu/drm/amd/display/dc/dc_stream.h | 2 - drivers/gpu/drm/amd/display/dc/dce/dce_clk_mgr.c | 15 +- drivers/gpu/drm/amd/display/dc/dce/dce_clk_mgr.h | 2 + .../drm/amd/display/dc/dce/dce_stream_encoder.c | 23 +- .../amd/display/dc/dce110/dce110_hw_sequencer.c | 2 +- .../gpu/drm/amd/display/dc/dce80/dce80_resource.c | 1 - .../gpu/drm/amd/display/dc/dcn10/dcn10_clk_mgr.c | 14 +- .../gpu/drm/amd/display/dc/dcn10/dcn10_hubbub.c | 2 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.c | 96 +-- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.h | 3 + .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 40 +- .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.h | 10 + .../display/dc/dcn10/dcn10_hw_sequencer_debug.c | 59 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.c | 28 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.h | 2 + .../amd/display/dc/dcn10/dcn10_stream_encoder.c | 3 - drivers/gpu/drm/amd/display/dc/inc/hw/dmcu.h | 7 + drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h | 6 + drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h | 1 + .../drm/amd/display/modules/color/color_gamma.c | 16 +- drivers/gpu/drm/amd/display/modules/power/Makefile | 31 + .../drm/amd/display/modules/power/power_helpers.c | 326 +++++++++ .../drm/amd/display/modules/power/power_helpers.h | 47 ++ drivers/gpu/drm/amd/include/amd_acpi.h | 175 ++--- drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 52 +- drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 6 +- drivers/gpu/drm/amd/powerplay/hwmgr/smu8_hwmgr.c | 6 +- drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 3 + drivers/gpu/drm/drm_atomic_uapi.c | 4 + drivers/gpu/drm/drm_connector.c | 117 ++++ drivers/gpu/drm/drm_crtc.c | 2 + drivers/gpu/drm/drm_mode_config.c | 6 + drivers/gpu/drm/radeon/radeon_vm.c | 2 +- drivers/gpu/drm/scheduler/sched_main.c | 44 +- drivers/gpu/drm/ttm/ttm_bo_util.c | 4 +- include/drm/drm_connector.h | 15 + include/drm/drm_crtc.h | 9 + include/drm/drm_mode_config.h | 5 + 103 files changed, 2921 insertions(+), 1461 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_doorbell.h create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.h create mode 100644 drivers/gpu/drm/amd/display/modules/power/Makefile create mode 100644 drivers/gpu/drm/amd/display/modules/power/power_helpers.c create mode 100644 drivers/gpu/drm/amd/display/modules/power/power_helpers.h