OpenCloudOS-Kernel/drivers/gpu/drm/amd/amdgpu
Junwei Zhang b85891bd6d drm/amdgpu: IOCTL interface for PRT support v4
Till GFX8 we can only enable PRT support globally, but with the next hardware
generation we can do this on a per page basis.

Keep the interface consistent by adding PRT mappings and enable
support globally on current hardware when the first mapping is made.

v2: disable PRT support delayed and on all error paths
v3: PRT and other permissions are mutal exclusive,
    PRT mappings don't need a BO.
v4: update PRT mappings durign CS as well, make va_flags 64bit

Signed-off-by: Junwei Zhang <Jerry.Zhang@amd.com>
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2017-03-29 23:52:56 -04:00
..
Kconfig drm/amdgpu: remove DRM_AMD_POWERPLAY 2016-10-04 11:15:59 -04:00
Makefile drm/amdgpu/virt: implement VI virt operation interfaces 2017-01-27 11:13:24 -05:00
ObjectID.h Revert "drm/amdgpu: Add virtual connector and encoder macros." 2016-10-25 14:38:06 -04:00
amdgpu.h drm/amdgpu: IOCTL interface for PRT support v4 2017-03-29 23:52:56 -04:00
amdgpu_acp.c drm/virtio: fix busid in a different way, allocate more vbufs. 2016-11-30 14:18:51 +10:00
amdgpu_acp.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
amdgpu_acpi.c drm/amdgpu: Remove checking for atombios 2017-01-27 11:12:39 -05:00
amdgpu_afmt.c drm/amdgpu: add core driver (v4) 2015-06-03 21:03:15 -04:00
amdgpu_amdkfd.c drm/amdgpu: remove unused functions 2016-09-22 10:24:16 -04:00
amdgpu_amdkfd.h drm/amdgpu: Return -EPROBE_DEFER when amdkfd not loaded 2016-02-27 22:52:40 +02:00
amdgpu_amdkfd_gfx_v7.c drm/amdkfd: Fix possible infinite loop 2016-09-19 20:58:35 +03:00
amdgpu_amdkfd_gfx_v8.c drm/amdkfd: Fix possible infinite loop 2016-09-19 20:58:35 +03:00
amdgpu_atombios.c drm/amdgpu/atom: remove a bunch of unused functions 2016-10-25 14:38:56 -04:00
amdgpu_atombios.h drm/amdgpu/atom: remove a bunch of unused functions 2016-10-25 14:38:56 -04:00
amdgpu_atpx_handler.c drm/amdgpu: fix check for port PM availability 2016-11-29 09:23:39 -05:00
amdgpu_benchmark.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_bios.c drm/amd/amdgpu: post card if there is real hw resetting performed 2017-02-17 16:12:58 -05:00
amdgpu_bo_list.c idr: Return the deleted entry from idr_remove 2017-02-13 21:44:03 -05:00
amdgpu_cgs.c drm/amd/powerplay: add kicker flag into smumgr 2017-02-16 11:43:11 -05:00
amdgpu_connectors.c drm/virtio: fix busid in a different way, allocate more vbufs. 2016-11-30 14:18:51 +10:00
amdgpu_connectors.h drm/amdgpu: add core driver (v4) 2015-06-03 21:03:15 -04:00
amdgpu_cs.c drm/amdgpu: IOCTL interface for PRT support v4 2017-03-29 23:52:56 -04:00
amdgpu_ctx.c idr: Return the deleted entry from idr_remove 2017-02-13 21:44:03 -05:00
amdgpu_device.c drm/amdgpu:use hw_init for sriov_gpu_reset 2017-03-29 23:52:54 -04:00
amdgpu_display.c drm/amdgpu: Refactor flip into prepare submit and submit. (v3) 2017-01-27 11:13:31 -05:00
amdgpu_dpm.c drm/amdgpu/dpm: add an implementation for get_vce_clock_state (v2) 2016-10-25 14:38:41 -04:00
amdgpu_dpm.h drm/amd/amdgpu: add power profile sysfs entry 2017-03-29 23:52:48 -04:00
amdgpu_drv.c drm/amd/amdgpu: add POLARIS12 PCI ID 2017-03-17 14:44:34 -04:00
amdgpu_drv.h drm/amdgpu: merge amdgpu_family.h into amd_shared.h (v2) 2015-08-17 16:50:21 -04:00
amdgpu_encoders.c drm/amdgpu: add core driver (v4) 2015-06-03 21:03:15 -04:00
amdgpu_fb.c drm/amdgpu: clean framebuffer with GPU 2017-03-29 23:52:40 -04:00
amdgpu_fence.c drm/amdgpu:no gpu scheduler for KIQ 2016-11-11 10:20:58 -05:00
amdgpu_gart.c drm/amdgpu: add AMDGPU_GEM_CREATE_VRAM_CONTIGUOUS flag v3 2016-10-25 14:38:13 -04:00
amdgpu_gds.h amdgpu: move ttm stuff to amdgpu_ttm.h 2016-08-19 12:30:58 -04:00
amdgpu_gem.c drm/amdgpu: IOCTL interface for PRT support v4 2017-03-29 23:52:56 -04:00
amdgpu_gfx.c drm/amdgpu: simplify allocation of scratch regs 2017-01-27 11:13:32 -05:00
amdgpu_gfx.h drm/amdgpu: change function declarations and add missing header dependencies 2016-10-25 14:38:58 -04:00
amdgpu_gtt_mgr.c drm: Improve drm_mm search (and fix topdown allocation) with rbtrees 2017-02-03 11:10:32 +01:00
amdgpu_i2c.c drm/amdgpu: Remove checking for atombios 2017-01-27 11:12:39 -05:00
amdgpu_i2c.h drm/amdgpu/i2c: add const where appropriate 2016-09-27 13:00:52 -04:00
amdgpu_ib.c drm/amd/amdgpu: remove the uncessary parameter for ib scheduler 2017-01-27 12:20:37 -05:00
amdgpu_ih.c drm/amdgpu: free the BO in kernel by helper amdgpu_bo_free_kernel() 2016-09-14 15:10:27 -04:00
amdgpu_ih.h drm/amdgpu: Implement irq interfaces for CGS 2015-08-17 16:50:09 -04:00
amdgpu_ioc32.c drm/amdgpu: add core driver (v4) 2015-06-03 21:03:15 -04:00
amdgpu_irq.c drm/radeon|amdgpu: Remove redundant num_connectors check 2016-12-18 14:18:12 +01:00
amdgpu_irq.h drm/amdgpu: remove amdgpu_irq_get_delayed 2016-11-23 15:08:43 -05:00
amdgpu_job.c drm/amd/amdgpu: remove the uncessary parameter for ib scheduler 2017-01-27 12:20:37 -05:00
amdgpu_kms.c drm/amdgpu: IOCTL interface for PRT support v4 2017-03-29 23:52:56 -04:00
amdgpu_mn.c drm/amdgpu: remove adev pointer from struct amdgpu_bo v2 2016-10-25 14:38:26 -04:00
amdgpu_mode.h drm/amdgpu: Refactor flip into prepare submit and submit. (v3) 2017-01-27 11:13:31 -05:00
amdgpu_object.c drm/amdgpu: report the number of bytes moved at buffer creation 2017-02-09 11:29:44 -05:00
amdgpu_object.h drm/amd/amdgpu: add amdgpu_bo_gpu_accessible helper function 2017-01-27 11:13:17 -05:00
amdgpu_pll.c drm/amdgpu: add missing header dependencies 2016-09-14 15:10:37 -04:00
amdgpu_pll.h drm/amdgpu: add core driver (v4) 2015-06-03 21:03:15 -04:00
amdgpu_pm.c drm/amd/powerplay: add power consumption display support in debugfs 2017-03-29 23:52:53 -04:00
amdgpu_pm.h drm/amdgpu: add parse clock gating state 2017-01-27 11:13:07 -05:00
amdgpu_powerplay.c drm/amdgpu:fix powerplay logic 2017-03-29 23:52:37 -04:00
amdgpu_powerplay.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
amdgpu_prime.c drm/amdgpu: Attach exclusive fence to prime exported bo's. (v5) 2016-11-11 10:20:04 -05:00
amdgpu_ring.c drm/amdgpu:set cond_exec polling value to 1 in ring_init 2017-01-27 11:13:37 -05:00
amdgpu_ring.h drm/damdgpu:add new mqd member in ring 2017-03-29 23:52:41 -04:00
amdgpu_sa.c drm/amd/amdgpu : Fix NULL pointer comparison 2016-11-11 10:21:07 -05:00
amdgpu_sync.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_sync.h Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_test.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_trace.h drm/amd/amdgpu: Widen mmio trace register address width 2017-01-27 11:12:39 -05:00
amdgpu_trace_points.c drm/amdgpu: add core driver (v4) 2015-06-03 21:03:15 -04:00
amdgpu_ttm.c drm/amdgpu: refuse to reserve io mem for split VRAM buffers 2017-02-21 17:16:28 -05:00
amdgpu_ttm.h drm/amdgpu: user BO priority instead of self coding it (v2) 2017-01-27 12:20:33 -05:00
amdgpu_ucode.c drm/amdgpu:properly fix some JumpTable issues 2016-10-25 14:38:23 -04:00
amdgpu_ucode.h drm/amdgpu:add MEC_STORAGE ucode id for sriov 2016-10-25 14:38:23 -04:00
amdgpu_uvd.c drm/amdgpu: when dpm disabled, also can enable uvd cg/pg. 2017-02-08 17:20:03 -05:00
amdgpu_uvd.h drm/amd/amdgpu: get maximum and used UVD handles (v4) 2017-01-27 11:12:38 -05:00
amdgpu_vce.c drm/amdgpu: when dpm disabled, also need to stop/start vce. 2017-02-08 17:22:09 -05:00
amdgpu_vce.h Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_virt.c drm/amdgpu:add lock_reset for SRIOV 2017-03-29 23:52:46 -04:00
amdgpu_virt.h drm/amdgpu:add lock_reset for SRIOV 2017-03-29 23:52:46 -04:00
amdgpu_vm.c drm/amdgpu: add basic PRT support (v2) 2017-03-29 23:52:56 -04:00
amdgpu_vm.h drm/amdgpu: add basic PRT support (v2) 2017-03-29 23:52:56 -04:00
amdgpu_vram_mgr.c drm: Improve drm_mm search (and fix topdown allocation) with rbtrees 2017-02-03 11:10:32 +01:00
atom.c drm/amdgpu/atom: add support for new div32 opcodes (v3) 2015-10-14 16:16:24 -04:00
atom.h drm/amd: cleanup remaining spaces and tabs v2 2016-05-11 12:31:20 -04:00
atombios_crtc.c drm/amdgpu: change function declarations and add missing header dependencies 2016-10-25 14:38:58 -04:00
atombios_crtc.h drm/amdgpu/atom: add SetDCEClock helper 2016-05-04 20:23:53 -04:00
atombios_dp.c drm/amdgpu: Don't retry 7 times in amdgpu_atombios_dp_get_dpcd() 2016-08-08 13:28:39 -04:00
atombios_dp.h drm/amdgpu: add core driver (v4) 2015-06-03 21:03:15 -04:00
atombios_encoders.c drm/amdgpu: Remove checking for atombios 2017-01-27 11:12:39 -05:00
atombios_encoders.h drm/amdgpu: add core driver (v4) 2015-06-03 21:03:15 -04:00
atombios_i2c.c drm/amdgpu: add missing header dependencies 2016-09-14 15:10:37 -04:00
atombios_i2c.h drm/amdgpu: fix power distribution issue for Polaris10 XT 2016-07-14 16:39:35 -04:00
ci_dpm.c drm/amd/amdgpu: add power profile support for CI 2017-03-29 23:52:52 -04:00
ci_dpm.h drm/amd/amdgpu: add power profile support for CI 2017-03-29 23:52:52 -04:00
ci_smc.c drm/amdgpu: Add support for CIK parts 2015-06-03 21:03:17 -04:00
cik.c drm/amd/amdgpu: post card if there is real hw resetting performed 2017-02-17 16:12:58 -05:00
cik.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cik_dpm.h drm/amdgpu: rename amdgpu_ip_funcs to amd_ip_funcs (v2) 2015-06-03 21:03:51 -04:00
cik_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cik_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cik_sdma.c drm/amd/amdgpu: remove the uncessary parameter for ib scheduler 2017-01-27 12:20:37 -05:00
cik_sdma.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cikd.h drm/amdgpu/dce8: simplify hpd code 2016-10-25 14:38:08 -04:00
clearstate_ci.h drm/amdgpu: Add support for CIK parts 2015-06-03 21:03:17 -04:00
clearstate_defs.h
clearstate_si.h drm/amdgpu: move misc si headers into amdgpu 2017-01-27 12:20:41 -05:00
clearstate_vi.h drm/amdgpu: Add initial VI support 2015-06-03 21:03:17 -04:00
cz_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cz_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v6_0.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next 2017-01-27 11:00:42 +10:00
dce_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v8_0.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next 2017-01-27 11:00:42 +10:00
dce_v8_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v10_0.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next 2017-01-27 11:00:42 +10:00
dce_v10_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v11_0.c drm/amdgpu: add more cases to DCE11 possible crtc mask setup 2017-02-10 12:07:33 -05:00
dce_v11_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_virtual.c drm/amdgpu: fix unload driver issue for virtual display 2017-01-23 16:47:18 -05:00
dce_virtual.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gfx_v6_0.c drm/amd/gfx6: update gb_addr_config 2017-02-08 17:25:19 -05:00
gfx_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gfx_v7_0.c drm/amdgpu: Initialize pipe priority order on graphic initialization 2017-02-13 15:08:33 -05:00
gfx_v7_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gfx_v8_0.c drm/amdgpu:divide KCQ mqd init to sw and hw 2017-03-29 23:52:44 -04:00
gfx_v8_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gmc_v6_0.c drm/amdgpu/si: fix crash on headless asics 2017-02-02 11:13:50 -05:00
gmc_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gmc_v7_0.c drm/amdgpu: access stolen VRAM directly on KV/KB (v2) 2017-01-27 12:20:44 -05:00
gmc_v7_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gmc_v8_0.c drm/amdgpu:cg & pg shouldn't active on VF device 2017-03-29 23:52:40 -04:00
gmc_v8_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
iceland_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
iceland_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
iceland_sdma_pkt_open.h drm/amdgpu: add count field for the SDMA NOP packet v2 2015-09-02 12:21:35 -04:00
kv_dpm.c drm/amdgpu: refine code for VCE2.0 and related dpm code. 2017-02-08 17:22:27 -05:00
kv_dpm.h drm/amdgpu: Add support for CIK parts 2015-06-03 21:03:17 -04:00
kv_smc.c drm/amdgpu: Add support for CIK parts 2015-06-03 21:03:17 -04:00
mxgpu_vi.c drm/amdgpu/virt: implement VI virt operation interfaces 2017-01-27 11:13:24 -05:00
mxgpu_vi.h drm/amdgpu/virt: increase mailbox timeout to 5000ms 2017-03-29 23:52:38 -04:00
ppsmc.h drm/amdgpu: add new definitions into ppsmc.h for iceland 2016-07-15 12:33:31 -04:00
r600_dpm.h drm/amdgpu: add SI DPM support (v4) 2016-08-31 15:21:09 -04:00
sdma_v2_4.c drm/amd/amdgpu: remove the uncessary parameter for ib scheduler 2017-01-27 12:20:37 -05:00
sdma_v2_4.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
sdma_v3_0.c drm/amdgpu:cg & pg shouldn't active on VF device 2017-03-29 23:52:40 -04:00
sdma_v3_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si.c drm/amdgpu: refine si_read_register 2017-02-08 17:24:26 -05:00
si.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_dma.c drm/amdgpu: move misc si headers into amdgpu 2017-01-27 12:20:41 -05:00
si_dma.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_dpm.c drm/amdgpu: reinstate oland workaround for sclk 2017-03-16 10:06:11 -04:00
si_dpm.h drm/amdgpu: add SI DPM support (v4) 2016-08-31 15:21:09 -04:00
si_enums.h drm/amdgpu: update HAINAN_GB_ADDR_CONFIG_GOLDEN 2017-02-08 17:25:02 -05:00
si_ih.c drm/amdgpu: move misc si headers into amdgpu 2017-01-27 12:20:41 -05:00
si_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_smc.c drm/amdgpu: move misc si headers into amdgpu 2017-01-27 12:20:41 -05:00
sid.h drm/amdgpu: move misc si headers into amdgpu 2017-01-27 12:20:41 -05:00
sislands_smc.h drm/amdgpu/si/dpm: fix phase shedding setup 2016-09-28 16:13:17 -04:00
tonga_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
tonga_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
tonga_sdma_pkt_open.h drm/amdgpu: add count field for the SDMA NOP packet v2 2015-09-02 12:21:35 -04:00
uvd_v4_2.c drm/amd/amdgpu: Fix flow control in uvd_v4_2_stop() 2017-02-16 11:43:44 -05:00
uvd_v4_2.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
uvd_v5_0.c drm/amdgpu: read hw register to check pg status. 2017-02-13 12:43:04 -05:00
uvd_v5_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
uvd_v6_0.c drm/amdgpu: read hw register to check pg status. 2017-02-13 12:43:04 -05:00
uvd_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vce_v2_0.c drm/amdgpu: move subfunctions to the front of vce_v2_0.c. 2017-02-08 17:23:03 -05:00
vce_v2_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vce_v3_0.c drm/amdgpu: read hw register to check pg status. 2017-02-13 12:43:04 -05:00
vce_v3_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vi.c drm/amdgpu:cg & pg shouldn't active on VF device 2017-03-29 23:52:40 -04:00
vi.h drm/amdgpu:add META_DATA struct for CSA/SRIOV v2 2017-01-27 11:13:33 -05:00
vi_dpm.h drm/amdgpu: cleanup useless extern functions 2017-01-27 11:12:43 -05:00
vid.h drm/amdgpu/gfx8: add support kernel interface queue(KIQ) 2017-01-27 11:13:03 -05:00