Hi Dave, New radeon and amdgpu features for 4.13: - Lots of Vega10 bug fixes - Preliminary Raven support - KIQ support for compute rings - MEC queue management rework from Andres - Audio support for DCE6 - SR-IOV improvements - Improved module parameters for controlling radeon vs amdgpu support for SI and CIK - Bug fixes - General code cleanups The following changes since commit e98c58e55f68f8785aebfab1f8c9a03d8de0afe1: Merge tag 'drm-misc-next-2017-05-16' of git://anongit.freedesktop.org/git/drm-misc into drm-next (2017-05-18 12:57:06 +1000) are available in the git repository at: git://people.freedesktop.org/~agd5f/linux drm-next-4.13 for you to fetch changes up to b58c11314a1706bf094c489ef5cb28f76478c704: drm/amdgpu: drop deprecated drm_get_pci_dev and drm_put_dev (2017-06-08 10:54:39 -0400) ---------------------------------------------------------------- Alex Deucher (61): drm/amdgpu/ci: disable mclk switching for high refresh rates (v2) drm/radeon/ci: disable mclk switching for high refresh rates (v2) drm/amd/powerplay/smu7: add vblank check for mclk switching (v2) drm/amd/powerplay/smu7: disable mclk switching for high refresh rates drm/amdgpu: add gpu_info firmware (v3) drm/amdgpu: parse the gpu_info firmware (v4) drm/amdgpu/gfx9: drop duplicate gfx info init (v3) drm/amdgpu/gfx8: add additional MQD initialization drm/amdgpu/gfx8: set doorbell range for polaris as well Revert "drm/amd/amdgpu: Disable GFX_PG on Carrizo until compute issues solved" drm/amdgpu/gfx8: wait for completion in KIQ init drm/amdgpu: split gfx_v8_0_kiq_init_queue into two drm/amdgpu/gfx8: wait once for all KCQs to be created drm/amdgpu/gfx8: move SET_RESOURCES into the same command stream drm/amdgpu/gfx8: use new KIQ packet defines drm/amdgpu/gfx8: properly disable the KCQs in hw_fini drm/amdgpu/gfx8: fix resume of KIQ and KCQs drm/amdgpu/gfx8: move MEC doorbell range setting drm/amdgpu/gfx7: enable cp/rlc ints after we disable clockgating drm/amdgpu/gfx8: enable cp/rlc ints after we disable clockgating drm/amdgpu/gfx8: unify the HQD deactivation code drm/amdgpu/gfx8: move CP_PQ_STATUS after doorbell range setting (v2) drm/amdgpu/gfx9: create mqd backups drm/amdgpu/gfx9: clear the compute ring on reset drm/amdgpu: add KIQ packet defines to soc15d.h drm/amdgpu/gfx9: use new KIQ packet defines drm/amdgpu/gfx9: wait for completion in KIQ init drm/amdgpu/gfx9: move define to header file drm/amdgpu: add register headers for DCN 1.0 drm/amdgpu: add register headers for GC 9.1 drm/amdgpu: add register headers for MMHUB 9.1 drm/amdgpu: add register headers for MP 10.0 drm/amdgpu: add register headers for NBIO 7.0 drm/amdgpu: add register headers for SDMA 4.1 drm/amdgpu: add register headers for THM 10.0 drm/amdgpu: add register headers for VCN 1.0 drm/amdgpu/raven: power up/down VCN via the SMU (v2) drm/amdgpu/vcn: remove duplicate mask drm/amdgpu: add raven gpu_info support drm/amdgpu: properly byteswap gpu_info firmware drm/amdgpu: split gfx_v9_0_kiq_init_queue into two drm/amdgpu/gfx9: wait once for all KCQs to be created drm/amdgpu/gfx9: move SET_RESOURCES into the same command stream drm/amdgpu/gfx9: fix resume of KIQ and KCQs (v2) drm/amdgpu/gfx9: Switch baremetal to use KIQ for compute ring management. (v4) drm/amdgpu/gfx9: allocate queues horizontally across pipes drm/amdgpu/gfx9: new queue policy, take first 2 queues of each pipe drm/amdgpu/gfx6: properly cache mc_arb_ramcfg drm/amdgpu/gfx8: drop per-APU CU limits drm/amdgpu/gfx: create a common bitmask function (v2) drm/amdgpu: fix mec queue policy on single MEC asics drm/amdgpu: move gfx_v*_0_compute_queue_acquire to common code drm/amdgpu/gfx9: Raven has two MECs drm/amdgpu/gfx8: whitespace change drm/amdgpu/gfx9: remove spurious line in kiq setup drm/amdgpu: move mec queue helpers to amdgpu_gfx.h drm/amdgpu/gfx: move more common KIQ code to amdgpu_gfx.c drm/amdgpu/gfx: move mec parameter setup into sw_init drm/amdgpu/gfx: consolidate mqd buffer setup code drm/amdgpu: call pci_[un]register_driver() directly drm/amdgpu: drop deprecated drm_get_pci_dev and drm_put_dev Alex Xie (5): drm/amdgpu: fix errors in comments. drm/amdgpu: Fix comments in source code drm/amdgpu: Optimize a function called by every IB sheduling drm/amdgpu: Remove two ! operations in an if condition drm/amdgpu: Move compute vm bug logic to amdgpu_vm.c Andres Rodriguez (23): drm/amdgpu: clarify MEC_HPD_SIZE is specific to a gfx generation drm/amdgpu: refactor MQD/HQD initialization v3 drm/amdgpu: detect timeout error when deactivating hqd drm/amdgpu: remove duplicate definition of cik_mqd drm/amdgpu: unify MQD programming sequence for kfd and amdgpu v2 drm/amdgpu: fix kgd_hqd_load failing to update shadow_wptr drm/amdgpu: rename rdev to adev drm/radeon: take ownership of pipe initialization drm/amdgpu: take ownership of per-pipe configuration v3 drm/amdgpu: allow split of queues with kfd at queue granularity v4 drm/amdgpu: teach amdgpu how to enable interrupts for any pipe v3 drm/amdkfd: allow split HQD on per-queue granularity v5 drm/amdgpu: remove duplicate magic constants from amdgpu_amdkfd_gfx*.c drm/amdgpu: allocate queues horizontally across pipes drm/amdgpu: remove hardcoded queue_mask in PACKET3_SET_RESOURCES drm/amdgpu: avoid KIQ clashing with compute or KFD queues v2 drm/amdgpu: new queue policy, take first 2 queues of each pipe v2 drm/amdgpu: condense mqd programming sequence drm/amdgpu: workaround tonga HW bug in HQD programming sequence drm/amdgpu: untie user ring ids from kernel ring ids v6 drm/amdgpu: implement lru amdgpu_queue_mgr policy for compute v4 drm/amdgpu: guarantee bijective mapping of ring ids for LRU v3 drm/amdgpu: use LRU mapping policy for SDMA engines Andrey Grodzovsky (1): drm/amd: Add DCN ivsrcids (v2) Christian König (12): drm/amdgpu: fix fundamental suspend/resume issue drm/amdgpu: drop support for untouched registers drm/amdgpu: drop support for per ASIC read registers drm/amdgpu: remove unsed amdgpu_gem_handle_lockup (v2) drm/amdgpu: cleanup VM manager init/fini drm/amdgpu: change default of amdgpu_vram_page_split to 512 drm/amdgpu: move adjust adjust_mc_addr into the GFX9 vm_flush functions drm/amdgpu: fix merge of vcn_v1_0.c v2 drm/amdgpu: cleanup adjust_mc_addr handling v4 drm/amdgpu: add some extra VM error handling drm/amdgpu: cache the complete pde drm/amdgpu: stop joining VM PTE updates Chunming Zhou (32): drm/amdgpu: fix NULL pointer panic of emit_gds_switch drm/amdgpu: add vm ioctl drm/amdgpu: add reserved vmid field in vm struct v2 drm/amdgpu: reserve/unreserve vmid by vm ioctl v4 drm/amdgpu: add limitation for dedicated vm number v4 drm/amdgpu: implement grab reserved vmid V4 drm/amdgpu: bump module verion for reserved vmid drm/amdgpu: fix ring0 failed on pro card drm/amdgpu: print when gpu reset successed drm/amdgpu: add sched sync for amdgpu job v2 drm/amdgpu: make pipeline sync be in same place v2 drm/amdgpu: id reset count only is updated when used end v2 drm/amdgpu: add RAVEN family id definition drm/amdgpu: add Raven ip blocks (v2) drm/amdgpu/soc15: add Raven golden setting drm/amdgpu: add Raven chip id case for ucode drm/amdgpu: add module firmware for raven drm/amdgpu: add gc9.1 golden setting (v2) drm/amdgpu/gfx9: add chip name for raven when initializing microcode drm/amdgpu/gfx9: add raven gfx config drm/amdgpu: add raven case for gmc9 golden setting drm/amdgpu/gmc9: set mc vm fb offset for raven drm/amdgpu/gmc9: change fb offset sequence so that used wider drm/amdgpu: add Raven sdma golden setting and chip id case drm/amdgpu: add nbio7 support drm/amdgpu: apply nbio7 for Raven (v3) drm/amd/powerplay/rv: power up/down sdma via the SMU drm/amdgpu: add RAVEN pci id (v2) drm/amdgpu: check if vram is lost v2 drm/amdgpu: return -ENODEV to user space when vram is lost v2 drm/amdgpu: skip all jobs of guilty vm drm/amdgpu: add dep_sync for amdgpu job Dan Carpenter (1): drm/amd/powerplay: fix a signedness bugs David Panariti (1): drm/amdgpu: Switch baremetal to use KIQ for compute ring management. (v3) Eric Huang (5): drm/amd/powerplay: add power profile support for Vega10 (v2) drm/amd/powerplay: fix pcie dpm table for vega10 drm/amd/powerplay: fix soft pptable size for Vega10 drm/amd/powerplay: fix set tools address for Vega10 drm/amd/powerplay: add sclk and mclk overdrive for vega10 Felix Kuehling (6): drm/amd/powerplay: Fix Vega10 power profile switching drm/radeon: Add module param to control CIK support drm/amdgpu: Add module param to control CIK support drm/radeon: Add module param to control SI support drm/amdgpu: Add module param to control SI support drm/amdgpu: Update Kconfig help for SI and CIK support Flora Cui (1): drm/amdgpu: fix ocl test performance drop Frank Min (1): drm/amdgpu: clean doorbell after sending init table to mmsch Harish Kasiviswanathan (1): drm/amdgpu: Return EINVAL if no PT BO Hawking Zhang (28): drm/amd/amdgpu: fill in raven case in soc15 early init drm/amdgpu/gfx9: extend rlc fw setup drm/amdgpu/gfx9: enable cp interrupt for CGCG/CGLS/MGCG drm/amdgpu: correct gfx9 csb size drm/amdgpu/gfx9: add rlc bo init/fini drm/amdgpu/gfx9: rlc save&restore list programming drm/amdgpu: init gfx power gating on raven drm/amdgpu/gfx9: enable/disable sck slowdown thru rlc-smu handshake drm/amdgpu/gfx9: add enable/disable funcs for cp power gating drm/amdgpu/gfx9: allow updating sck slowdown and cp pg state drm/amdgpu/gfx9: allow updating gfx cgpg state drm/amdgpu/gfx9: allow updating gfx mgpg state drm/amdgpu/powerplay/raven: add smu block and enable powerplay drm/amdgpu: correct vmhub for vcn dec/enc ring drm/amdgpu: correct emit frame size for vcn dec/enc ring drm/amd/powerplay: using MinFClock/MaxFclock to report Min/Max memory clock limits drm/amd/powerplay: update magic number for rv hw backend drm/amd/powerplay: add get_temperature interface for raven drm/amd/powerplay: bypass pptable process on raven drm/amd/powerplay: set powerplay support cap on raven drm/amdgpu: remove unnecessary debug message drm/amdgpu: update GC 9.1 golden settings drm/amdgpu: update GC 9.1 raven specific golden settings drm/amdgpu: update sdma 4.1 raven specific golden settings drm/amdgpu: init lbpw on raven drm/amdgpu: enable lbpw on raven drm/amd/powerplay: fix memory leak in rv_hwmgr backend drm/amd/powerplay: fix memory leak in cz_hwmgr backend Huang Rui (38): drm/amdgpu/soc15: add clock gating functions for raven drm/amdgpu: enable soc15 clock gating flags for raven drm/amdgpu: add gfx clock gating for raven drm/amdgpu: add raven clock gating and light sleep for mmhub drm/amdgpu: enable MC MGCG and LS for raven drm/amdgpu: reuse sdma v4 MGCG and LS function for raven drm/amdgpu: enable sdma v4 MGCG and LS for raven drm/amdgpu: init sdma power gating for raven drm/amdgpu/sdma4: add dynamic power gating for raven drm/amdgpu: enable sdma power gating for raven drm/amdgpu: add nbio MGCG for raven drm/amdgpu: add psp v10 function callback for raven drm/amdgpu: add psp v10 ip block drm/amdgpu: register the psp v10 function pointers at psp sw_init drm/amdgpu/soc15: add psp ip block drm/amdgpu/vcn: add sw clock gating drm/amdgpu: enable sw clock gating for vcn drm/amdgpu: abstract gart table initialization for gfxhub/mmhub drm/amdgpu: abstract gart aperture initialization for gfxhub/mmhub drm/amdgpu: abstract system aperture initialization for gfxhub/mmhub drm/amdgpu: abstract TLB initialization for gfxhub/mmhub drm/amdgpu: abstract cache initialization for gfxhub/mmhub drm/amdgpu: abstract system domain enablement for gfxhub/mmhub drm/amdgpu: abstract disable identity aperture for gfxhub/mmhub drm/amdgpu: abstract setup vmid config for gfxhub/mmhub drm/amdgpu: fix to miss program invalidation at resume drm/amdgpu: export gfxhub sw_init into gmc drm/amdgpu: export mmhub sw_init into gmc drm/amdgpu: export mmhub set clockgating into gmc drm/amdgpu: export mmhub get clockgating into gmc drm/amdgpu: remove gfxhub ip drm/amdgpu: remove mmhub ip drm/amdgpu: add ip name print for selecting ips with ip_block_mask drm/amdgpu: add ip block number prints drm/amdgpu: fix the gart table cleared issue for S3 drm/amdgpu: update to use RREG32_SOC15/WREG32_SOC15 for gfxhub drm/amdgpu: update to use RREG32_SOC15/WREG32_SOC15 for mmhub drm/amdgpu: update to use RREG32_SOC15/WREG32_SOC15 for gmc9 Ken Wang (1): drm/amdgpu/gfx9: update golden settings Leo Liu (36): drm/amdgpu: add initial vcn support and decode tests drm/amdgpu: add encode tests for vcn drm/amdgpu: add vcn ip block functions (v2) drm/amdgpu: add vcn decode ring support drm/amdgpu: add vcn decode ring type and functions drm/amdgpu: add vcn irq functions drm/amdgpu: add vcn ip block and type drm/amdgpu: move amdgpu_vcn structure to vcn header drm/amdgpu: re-group the functions in amdgpu_vcn.c drm/amdgpu: move vcn ring test to amdgpu_vcn.c drm/amdgpu: expose vcn RB command drm/amdgpu: add a ring func for vcn start command drm/amdgpu: implement vcn start RB command drm/amdgpu: implement insert end ring function for vcn decode drm/amdgpu/vcn: implement ib tests with new message buffer interface uapi/drm: add AMDGPU_HW_IP_VCN_DEC for decode CS uapi/drm: add AMDGPU_HW_IP_VCN_ENC for encode CS drm/amdgpu: add AMDGPU_HW_IP_VCN_DEC to info query drm/amdgpu: get cs support of AMDGPU_HW_IP_VCN_DEC drm/amdgpu: Disable uvd and vce free handles for raven drm/amdgpu: implement new vcn cache window programming drm/amdgpu: add vcn ip block to soc15 drm/amdgpu: change vcn dec rb command specific for decode drm/amdgpu: add vcn enc rings drm/amdgpu: add vcn enc ring type and functions drm/amdgpu: add vcn enc irq support drm/amdgpu: enable vcn encode ring tests drm/amdgpu: add vcn enc ib test drm/amdgpu: add AMDGPU_HW_IP_VCN_ENC to info query drm/amdgpu: get cs support for AMDGPU_HW_IP_VCN_ENC drm/amdgpu: add vcn firmware header offset drm/amdgpu: update vcn decode create msg drm/amdgpu: Program ring for vce instance 1 at its register space drm/amdgpu: add vcpu_bo cpu address for vce drm/amdgpu: use existing function amdgpu_bo_create_kernel drm/amdgpu: add saved_bo to save vce 4.0 context when suspend Lyude (4): drm/radeon: Unbreak HPD handling for r600+ drm/radeon: Cleanup display interrupt handling for evergreen, si drm/radeon: Cleanup HDMI audio interrupt handling for evergreen drm/radeon: Cleanup pageflipping IRQ handling for evergreen, si Marek Olšák (1): drm/amdgpu: add an INFO query for monitoring VRAM CPU page faults Michel Dänzer (2): drm/radeon: Make si_support and cik_support parameters always available drm/amdgpu/radeon: Use radeon by default for CIK GPUs Monk Liu (16): drm/amdgpu:kiq reg access need timeout(v2) drm/amdgpu:fix cannot receive rcv/ack irq bug drm/amdgpu:need som change on vega10 mailbox drm/amdgpu:re-write sriov_reinit_early/late (v2) drm/amdgpu:cleanup indent/format for gfx_v9_0.c drm/amdgpu:unify gfx8/9 ce/de meta_data drm/amdgpu:change SR-IOV DMAframe scheme drm/amdgpu:new PM4 entry for VI/AI drm/amdgpu:use FRAME_CNTL for new GFX ucode (v2) drm/amdgpu:cleanup flag not used drm/amdgpu:don't invoke srio-gpu-reset in gpu-reset (v2) drm/amdgpu:use job* to replace voluntary drm/amdgpu:only call flr_work under infinite timeout drm/amdgpu:don't init entity for KIQ drm/amdgpu/SRIOV:implement guilty job TDR for(V2) drm/amdgpu:use job's list instead of check fence Nikola Pajkovsky (1): drm/amd/amdgpu: get rid of else branch Rex Zhu (32): drm/amd/powerplay: add avfs fuse overdriver func. drm/amd/powerplay: fix bug in processing CKS_Enable bit. drm/amd/powerplay: convert from number of lanes to lane bits on vega10 drm/amd/powerplay: Add Vega10 Powertune Table v3 support. drm/amd/powerplay: delete dead code in vega10_thermal.c drm/amd/powerplay: update vega10 smu interface version to E. drm/amdgpu: set cpg doorbell for fiji and polaris. drm/amdgpu: fix typo in dmesg in gfx_v8_0_kiq_kcq_disable. drm/amdgpu: delete redundant kiq irq funcs type check in gfx8. drm/amdgpu: fix s3 ring test failed on Vi caused by KIQ enabled. drm/amdgpu:fix get wrong gfx always on cu masks. drm/amdgpu/powerplay: add header file for smu10. (v2) drm/amdgpu: add raven related define in pptable.h. drm/amd/powerplay: add ppt_v3 define drm/amd/powerplay: add raven support in smumgr. (v2) drm/amd/powerplay: add raven support in hwmgr. (v2) drm/amd/powerplay: delete duplicated code in vega10_hwmgr.c drm/amd/powerplay: add new smu message for Rv drm/amd/powerplay: print msg id when smu failed. drm/amd/powerplay: add new clock type for Rv drm/amd/powerplay: add new clock type in struct gfx_arbit. drm/amd/powerplay: add function set_clock_limit for Rv. drm/amd/powerplay: PP/DAL interface changes for dynamic clock switch drm/amdgpu: fix null point error when rmmod amdgpu. drm/amd/powerplay: enable ulv feature by default for vega10. drm/amd/powerplay: enable deep sleep by default for vega10 Revert "drm/amd/powerplay: disable engine spread spectrum feature on Vega10." drm/amd/powerplay: code clean up in vega10_hwmgr.c drm/amd/powerplay: Add floor DCEF for DS on boot. drm/amd/powerplay: Align with VBIOS to support AVFS parameters. drm/amd/powerplay: enable CKS by default on vega10. drm/amd/powerplay: fix populate dpm level failed when s3 on vega10. Roger.He (1): drm/amdgpu: extend lock range for race condition when gpu reset Shaoyun Liu (1): drm/amdgpu: Move kiq ring lock out of virt structure Shirish S (1): drm/amdgpu: optimize amdgpu driver load & resume time Tom St Denis (7): drm/amd/amdgpu: Clean up GFX6 tilemode programming drm/amd/amdgpu: gfx6 tidy up raster config drm/amd/amdgpu: Tidy up of gfx_v6_0_setup_rb() drm/amd/amdgpu: Drop commented out stub function drm/amd/amdgpu: Tidy up static int dce_v6_0_get_num_crtc() drm/amd/amdgpu: Clean up gmc6 wait_for_idle drm/amd/amdgpu: Return error if initiating read out of range on vram Trigger Huang (2): drm/amdgpu: Enable chained IB MCBP support drm/amdgpu: Bypass GMC/UVD/VCE hw_fini in SR-IOV Xiangliang Yu (4): drm/amdgpu/virt: bypass cg and pg setting for SRIOV drm/amdgpu/virt: change the place of virt_init_setting drm/amdgpu/psp: Do not load asd for SRIOV drm/amdgpu/virt: change AI ack-irq message to debug level Xiaojie Yuan (2): drm/amdgpu: add DP audio support for si dce6 (v3) drm/amdgpu: add HDMI audio support for si dce6 Yintian Tao (1): drm/amdgpu/sdma3: correct wptr initialization for sdma kbuild test robot (1): drm/amd/powerplay: fix array_size.cocci warnings drivers/gpu/drm/amd/amdgpu/Kconfig | 16 +- drivers/gpu/drm/amd/amdgpu/Makefile | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 138 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 101 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 14 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 76 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 64 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 125 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 10 + drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 369 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 61 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 7 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 12 + drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 54 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 206 + drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.h | 60 + drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 16 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 42 +- drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 72 +- drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 23 + drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_queue_mgr.c | 299 + drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 83 + drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h | 12 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 27 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c | 30 + drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h | 25 + drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | 30 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vce.h | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 654 + drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.h | 77 + drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c | 24 +- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 414 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 12 +- drivers/gpu/drm/amd/amdgpu/ci_dpm.c | 6 + drivers/gpu/drm/amd/amdgpu/cik.c | 121 +- drivers/gpu/drm/amd/amdgpu/dce_v6_0.c | 598 +- drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c | 1615 +- drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 685 +- drivers/gpu/drm/amd/amdgpu/gfx_v7_0.h | 5 + drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 1290 +- drivers/gpu/drm/amd/amdgpu/gfx_v8_0.h | 5 + drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 1825 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c | 426 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.h | 3 +- drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c | 91 +- drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 108 +- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 108 +- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 168 +- drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c | 509 +- drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.h | 4 + drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c | 35 +- drivers/gpu/drm/amd/amdgpu/mxgpu_vi.c | 25 +- drivers/gpu/drm/amd/amdgpu/nbio_v7_0.c | 220 + drivers/gpu/drm/amd/amdgpu/nbio_v7_0.h | 49 + drivers/gpu/drm/amd/amdgpu/psp_v10_0.c | 309 + drivers/gpu/drm/amd/amdgpu/psp_v10_0.h | 41 + drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 152 +- drivers/gpu/drm/amd/amdgpu/si.c | 84 +- drivers/gpu/drm/amd/amdgpu/soc15.c | 180 +- drivers/gpu/drm/amd/amdgpu/soc15.h | 1 + drivers/gpu/drm/amd/amdgpu/soc15d.h | 90 + drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c | 19 +- drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | 95 +- drivers/gpu/drm/amd/amdgpu/vce_v4_0.c | 61 +- drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c | 1189 + drivers/gpu/drm/amd/amdgpu/vcn_v1_0.h | 29 + drivers/gpu/drm/amd/amdgpu/vega10_ih.c | 10 +- drivers/gpu/drm/amd/amdgpu/vi.c | 214 +- drivers/gpu/drm/amd/amdgpu/vid.h | 6 + drivers/gpu/drm/amd/amdkfd/kfd_device.c | 4 + .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 149 +- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 10 +- .../drm/amd/amdkfd/kfd_device_queue_manager_cik.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 3 +- .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c | 2 +- drivers/gpu/drm/amd/include/amd_shared.h | 4 +- .../drm/amd/include/asic_reg/dce/dce_6_0_sh_mask.h | 2 + .../include/asic_reg/raven1/DCN/dcn_1_0_default.h | 7988 ++ .../include/asic_reg/raven1/DCN/dcn_1_0_offset.h | 14087 +++ .../include/asic_reg/raven1/DCN/dcn_1_0_sh_mask.h | 54316 ++++++++ .../include/asic_reg/raven1/GC/gc_9_1_default.h | 4005 + .../amd/include/asic_reg/raven1/GC/gc_9_1_offset.h | 7491 ++ .../include/asic_reg/raven1/GC/gc_9_1_sh_mask.h | 31191 +++++ .../asic_reg/raven1/MMHUB/mmhub_9_1_default.h | 1028 + .../asic_reg/raven1/MMHUB/mmhub_9_1_offset.h | 1999 + .../asic_reg/raven1/MMHUB/mmhub_9_1_sh_mask.h | 9790 ++ .../include/asic_reg/raven1/MP/mp_10_0_default.h | 182 + .../include/asic_reg/raven1/MP/mp_10_0_offset.h | 336 + .../include/asic_reg/raven1/MP/mp_10_0_sh_mask.h | 886 + .../asic_reg/raven1/NBIO/nbio_7_0_default.h | 14865 +++ .../include/asic_reg/raven1/NBIO/nbio_7_0_offset.h | 4640 + .../asic_reg/raven1/NBIO/nbio_7_0_sh_mask.h | 118945 ++++++++++++++++++ .../asic_reg/raven1/SDMA0/sdma0_4_1_default.h | 242 + .../asic_reg/raven1/SDMA0/sdma0_4_1_offset.h | 459 + .../asic_reg/raven1/SDMA0/sdma0_4_1_sh_mask.h | 1658 + .../include/asic_reg/raven1/THM/thm_10_0_default.h | 141 + .../include/asic_reg/raven1/THM/thm_10_0_offset.h | 257 + .../include/asic_reg/raven1/THM/thm_10_0_sh_mask.h | 885 + .../include/asic_reg/raven1/VCN/vcn_1_0_default.h | 202 + .../include/asic_reg/raven1/VCN/vcn_1_0_offset.h | 376 + .../include/asic_reg/raven1/VCN/vcn_1_0_sh_mask.h | 1308 + drivers/gpu/drm/amd/include/atomfirmware.h | 12 +- .../gpu/drm/amd/include/ivsrcid/irqsrcs_dcn_1_0.h | 1134 + drivers/gpu/drm/amd/include/kgd_kfd_interface.h | 18 +- drivers/gpu/drm/amd/include/pptable.h | 57 +- drivers/gpu/drm/amd/powerplay/eventmgr/eventmgr.c | 4 +- drivers/gpu/drm/amd/powerplay/hwmgr/Makefile | 3 +- drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c | 6 + drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c | 9 + .../gpu/drm/amd/powerplay/hwmgr/pp_overdriver.c | 1276 + .../gpu/drm/amd/powerplay/hwmgr/pp_overdriver.h | 48 + drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.c | 43 +- drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.h | 3 + .../gpu/drm/amd/powerplay/hwmgr/processpptables.c | 10 + drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c | 1059 + drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.h | 301 + drivers/gpu/drm/amd/powerplay/hwmgr/rv_inc.h | 43 + drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 32 +- drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c | 472 +- drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.h | 2 + .../gpu/drm/amd/powerplay/hwmgr/vega10_pptable.h | 31 + .../amd/powerplay/hwmgr/vega10_processpptables.c | 49 +- .../gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c | 3 - drivers/gpu/drm/amd/powerplay/inc/amd_powerplay.h | 5 +- drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 16 +- drivers/gpu/drm/amd/powerplay/inc/rv_ppsmc.h | 77 + drivers/gpu/drm/amd/powerplay/inc/smu10.h | 188 + .../gpu/drm/amd/powerplay/inc/smu10_driver_if.h | 116 + drivers/gpu/drm/amd/powerplay/inc/smu9_driver_if.h | 38 +- drivers/gpu/drm/amd/powerplay/inc/smumgr.h | 1 + drivers/gpu/drm/amd/powerplay/smumgr/Makefile | 2 +- drivers/gpu/drm/amd/powerplay/smumgr/rv_smumgr.c | 398 + drivers/gpu/drm/amd/powerplay/smumgr/rv_smumgr.h | 62 + drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c | 9 + .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c | 4 +- drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 11 +- drivers/gpu/drm/amd/scheduler/gpu_scheduler.h | 7 + drivers/gpu/drm/radeon/ci_dpm.c | 6 + drivers/gpu/drm/radeon/cik.c | 31 +- drivers/gpu/drm/radeon/evergreen.c | 943 +- drivers/gpu/drm/radeon/r600.c | 2 +- drivers/gpu/drm/radeon/radeon.h | 29 +- drivers/gpu/drm/radeon/radeon_drv.c | 8 + drivers/gpu/drm/radeon/radeon_irq_kms.c | 35 + drivers/gpu/drm/radeon/radeon_kfd.c | 34 +- drivers/gpu/drm/radeon/radeon_kms.c | 25 + drivers/gpu/drm/radeon/si.c | 655 +- include/uapi/drm/amdgpu_drm.h | 29 +- 156 files changed, 292250 insertions(+), 6118 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_queue_mgr.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.h create mode 100644 drivers/gpu/drm/amd/amdgpu/nbio_v7_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/nbio_v7_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/psp_v10_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/psp_v10_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/vcn_v1_0.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/DCN/dcn_1_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/DCN/dcn_1_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/DCN/dcn_1_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/GC/gc_9_1_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/GC/gc_9_1_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/GC/gc_9_1_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/MMHUB/mmhub_9_1_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/MMHUB/mmhub_9_1_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/MMHUB/mmhub_9_1_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/MP/mp_10_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/MP/mp_10_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/MP/mp_10_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/NBIO/nbio_7_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/NBIO/nbio_7_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/NBIO/nbio_7_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/SDMA0/sdma0_4_1_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/SDMA0/sdma0_4_1_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/SDMA0/sdma0_4_1_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/THM/thm_10_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/THM/thm_10_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/THM/thm_10_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/VCN/vcn_1_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/VCN/vcn_1_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/raven1/VCN/vcn_1_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/ivsrcid/irqsrcs_dcn_1_0.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/pp_overdriver.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/pp_overdriver.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/rv_inc.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/rv_ppsmc.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu10.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu10_driver_if.h create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/rv_smumgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/rv_smumgr.h