linux/drivers/gpu/drm/amd/amdgpu
Horace Chen 3c7388936a drm/amdgpu: refine SR-IOV firmware VRAM reservation to protect data
The previous solution will create a zero buffer on the system
domain and then move the zeroes to the VRAM. This will break the
original data on the VRAM.

Refine the code to create bo on VRAM domain directly and then remove
and re-create mem node to the exact position before bo_pin. This can
avoid breaking the data and will not cause eviction.

Signed-off-by: Horace Chen <horace.chen@amd.com>
Reviewed-by: monk liu <monk.liu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2017-12-04 16:41:42 -05:00
..
amdgpu.h drm/amdgpu: move GART recovery into GTT manager v2 2017-12-04 16:41:33 -05:00
amdgpu_acp.c Merge branch 'linus-4.14-rc4-acp-prereq' of git://people.freedesktop.org/~agd5f/linux into drm-next 2017-11-14 05:53:39 +10:00
amdgpu_acp.h
amdgpu_acpi.c drm/amdgpu: Make amdgpu_atif_handler static 2017-08-15 14:46:08 -04:00
amdgpu_afmt.c
amdgpu_amdkfd.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
amdgpu_amdkfd.h drm/amd: Update MEC HQD loading code for KFD 2017-08-15 23:00:17 -04:00
amdgpu_amdkfd_gfx_v7.c drm/amdgpu: Fix SDMA load/unload sequence on HWS disabled mode 2017-11-26 11:31:32 +02:00
amdgpu_amdkfd_gfx_v8.c drm/amdgpu: Fixed a potential circular lock 2017-10-06 16:48:00 -04:00
amdgpu_atombios.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
amdgpu_atombios.h drm/amdgpu/atombios: add function for whether we need asic_init 2017-07-14 11:06:05 -04:00
amdgpu_atomfirmware.c drm/amdgpu:add fw-vram-usage for atomfirmware 2017-11-01 23:31:12 -04:00
amdgpu_atomfirmware.h drm/amdgpu: add get_clock_info for atomfirmware 2017-07-14 11:06:38 -04:00
amdgpu_atpx_handler.c
amdgpu_benchmark.c drm/amdgpu: Add a parameter to amdgpu_bo_create() 2017-08-15 14:45:58 -04:00
amdgpu_bios.c drm/amdgpu: Remove check which is not valid for certain VBIOS 2017-11-09 18:10:42 -05:00
amdgpu_bo_list.c drm/amdgpu: Fix preferred typo 2017-08-15 14:46:16 -04:00
amdgpu_cgs.c drm/amdgpu: delete duplicated code. 2017-12-04 16:33:19 -05:00
amdgpu_connectors.c Merge airlied/drm-next into drm-misc-next 2017-11-21 14:17:56 +01:00
amdgpu_connectors.h
amdgpu_cs.c drm/amdgpu: remove extra parameter from amdgpu_ttm_bind() v2 2017-12-04 16:33:16 -05:00
amdgpu_ctx.c drm/amdgpu:implement ctx query2 2017-12-04 16:33:12 -05:00
amdgpu_device.c drm/amdgpu: refine SR-IOV firmware VRAM reservation to protect data 2017-12-04 16:41:42 -05:00
amdgpu_display.c Revert "drm/amdgpu: Pulling old prepare and submit for flip back" 2017-09-26 17:17:10 -04:00
amdgpu_display.h drm/amdgpu: fix indentation in amdgpu_display.h 2017-12-04 16:41:29 -05:00
amdgpu_dpm.c drm/amdgpu: rename amdgpu_dpm_funcs to amd_pm_funcs 2017-09-18 23:30:34 -04:00
amdgpu_dpm.h drm/amdgpu: add new pp function point notify_smu_memory_info 2017-12-04 16:33:18 -05:00
amdgpu_drv.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
amdgpu_drv.h
amdgpu_encoders.c
amdgpu_fb.c drm/amdgpu: Enable DRIVER_ATOMIC flag for DAL. 2017-09-26 18:07:30 -04:00
amdgpu_fence.c drm/amdgpu:implement new GPU recover(v3) 2017-12-04 16:41:30 -05:00
amdgpu_gart.c drm/amdgpu: don't flush the TLB before initializing GART 2017-10-25 23:09:40 -04:00
amdgpu_gart.h drm/amdgpu: move default gart size setting into gmc modules 2017-08-29 15:27:43 -04:00
amdgpu_gds.h
amdgpu_gem.c fixes/cleanups for rc1, non-desktop flags for VR 2017-11-23 21:04:56 -10:00
amdgpu_gfx.c drm/amdgpu: busywait KIQ register accessing (v4) 2017-10-19 15:27:19 -04:00
amdgpu_gfx.h drm/amdgpu/gfx: consolidate mqd buffer setup code 2017-06-07 18:20:59 -04:00
amdgpu_gtt_mgr.c drm/amdgpu: move GART recovery into GTT manager v2 2017-12-04 16:41:33 -05:00
amdgpu_i2c.c
amdgpu_i2c.h
amdgpu_ib.c drm/amdgpu:fix world switch hang 2017-07-14 11:06:10 -04:00
amdgpu_ih.c drm/amdgpu: Track pending retry faults in IH and VM (v2) 2017-09-26 14:53:20 -04:00
amdgpu_ih.h drm/amdgpu: Track pending retry faults in IH and VM (v2) 2017-09-26 14:53:20 -04:00
amdgpu_ioc32.c
amdgpu_irq.c drm/amdgpu:implement new GPU recover(v3) 2017-12-04 16:41:30 -05:00
amdgpu_irq.h
amdgpu_job.c drm/amdgpu:implement new GPU recover(v3) 2017-12-04 16:41:30 -05:00
amdgpu_kms.c drm/amdgpu: retry init if it fails due to exclusive mode timeout (v3) 2017-12-04 16:33:14 -05:00
amdgpu_mn.c Merge branch 'drm-next-4.15' of git://people.freedesktop.org/~agd5f/linux into drm-next 2017-09-28 08:37:02 +10:00
amdgpu_mn.h drm/amdgpu: move MMU notifier related defines to amdgpu_mn.h 2017-09-12 14:29:37 -04:00
amdgpu_mode.h amdgpu: Remove AMDGPU_{HPD,CRTC_IRQ,PAGEFLIP_IRQ}_LAST 2017-12-04 16:41:40 -05:00
amdgpu_object.c drm/amdgpu: nuke amdgpu_ttm_is_bound() v2 2017-12-04 16:41:32 -05:00
amdgpu_object.h drm/amdgpu: nuke amdgpu_ttm_is_bound() v2 2017-12-04 16:41:32 -05:00
amdgpu_pll.c
amdgpu_pll.h
amdgpu_pm.c drm/amdgpu: add header kgd_pp_interface.h 2017-12-04 16:33:18 -05:00
amdgpu_pm.h drm/amdgpu: Fix amdgpu_pm_acpi_event_handler warning 2017-08-15 14:46:06 -04:00
amdgpu_powerplay.c Revert "drm/amdgpu: fix rmmod KCQ disable failed error" 2017-11-28 17:44:13 -05:00
amdgpu_powerplay.h
amdgpu_prime.c drm/amdgpu: set f_mapping on exported DMA-bufs 2017-11-14 11:35:43 -05:00
amdgpu_psp.c drm/amdgpu/sriov:fix memory leak in psp_load_fw 2017-12-04 16:41:31 -05:00
amdgpu_psp.h drm/amdgpu: Add GPU reset functionality for Vega10 2017-09-26 15:14:06 -04:00
amdgpu_queue_mgr.c drm/amdgpu: Use unsigned ring indices in amdgpu_queue_mgr_map 2017-11-28 17:44:14 -05:00
amdgpu_ring.c drm/amdgpu: bypass lru touch for KIQ ring submission 2017-11-08 17:55:14 -05:00
amdgpu_ring.h drm/amdgpu:cleanup force_completion 2017-12-04 16:33:08 -05:00
amdgpu_sa.c drm/amdgpu: Add a parameter to amdgpu_bo_create() 2017-08-15 14:45:58 -04:00
amdgpu_sched.c drm/amdgpu: rename context priority levels 2017-10-19 15:26:48 -04:00
amdgpu_sched.h drm/amdgpu: add interface for editing a foreign process's priority v3 2017-10-09 16:30:24 -04:00
amdgpu_sync.c drm/amdgpu: introduce AMDGPU_GEM_CREATE_EXPLICIT_SYNC v2 2017-10-09 16:30:19 -04:00
amdgpu_sync.h drm/amdgpu: introduce AMDGPU_GEM_CREATE_EXPLICIT_SYNC v2 2017-10-09 16:30:19 -04:00
amdgpu_test.c drm/amdgpu: Add a parameter to amdgpu_bo_create() 2017-08-15 14:45:58 -04:00
amdgpu_trace.h main drm pull request for v4.15 2017-11-15 20:42:10 -08:00
amdgpu_trace_points.c main drm pull request for v4.15 2017-11-15 20:42:10 -08:00
amdgpu_ttm.c drm/amdgpu: move GART recovery into GTT manager v2 2017-12-04 16:41:33 -05:00
amdgpu_ttm.h drm/amdgpu: move GART recovery into GTT manager v2 2017-12-04 16:41:33 -05:00
amdgpu_ucode.c drm/amdgpu:cleanup ucode_init_bo 2017-12-04 16:41:31 -05:00
amdgpu_ucode.h drm/amdgpu: add new member in gpu_info fw 2017-06-15 11:50:22 -04:00
amdgpu_uvd.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
amdgpu_uvd.h
amdgpu_vce.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
amdgpu_vce.h
amdgpu_vcn.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
amdgpu_vcn.h
amdgpu_vf_error.c drm/amdgpu:fix vf_error_put 2017-10-20 13:28:44 -04:00
amdgpu_vf_error.h drm/amdgpu: fix vf error handling 2017-09-28 16:03:20 -04:00
amdgpu_virt.c drm/amdgpu:cleanup in_sriov_reset and lock_reset 2017-12-04 16:41:31 -05:00
amdgpu_virt.h drm/amdgpu:cleanup in_sriov_reset and lock_reset 2017-12-04 16:41:31 -05:00
amdgpu_vm.c drm/amd/scheduler:introduce guilty pointer member 2017-12-04 16:33:09 -05:00
amdgpu_vm.h drm/amdgpu: make AMDGPU_VA_RESERVED_SIZE 64bit 2017-11-13 14:36:40 -05:00
amdgpu_vram_mgr.c drm/amdgpu:fix memleak in takedown 2017-11-16 13:35:48 -05:00
atom.c drm/amdgpu: Add debugfs file for VBIOS and version 2017-08-29 15:27:54 -04:00
atom.h drm/amdgpu: Add debugfs file for VBIOS and version 2017-08-29 15:27:54 -04:00
atombios_crtc.c drm/amdgpu/atom: fix ps allocation size for EnableDispPowerGating 2017-06-20 12:06:49 -04:00
atombios_crtc.h
atombios_dp.c
atombios_dp.h
atombios_encoders.c
atombios_encoders.h
atombios_i2c.c
atombios_i2c.h
ci_dpm.c drm/amd/powerplay: describe the PCIE link speed in right GT/s 2017-12-04 16:33:14 -05:00
ci_dpm.h
ci_smc.c
cik.c drm/amdgpu: used cached gca values for cik_read_register 2017-11-28 17:44:12 -05:00
cik.h
cik_dpm.h drm/amdgpu: unify the interface of amd_pm_funcs 2017-09-18 23:30:35 -04:00
cik_ih.c drm/amdgpu: Handle GPUVM fault storms 2017-09-28 16:03:30 -04:00
cik_ih.h
cik_sdma.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
cik_sdma.h
cikd.h
clearstate_ci.h
clearstate_defs.h
clearstate_gfx9.h drm/amdgpu: fix header on gfx9 clear state 2017-07-27 11:17:45 -04:00
clearstate_si.h
clearstate_vi.h
cz_ih.c drm/amdgpu: Handle GPUVM fault storms 2017-09-28 16:03:30 -04:00
cz_ih.h
dce_v6_0.c amdgpu/dce: Use actual number of CRTCs and HPDs in set_irq_funcs 2017-12-04 16:41:40 -05:00
dce_v6_0.h
dce_v8_0.c amdgpu/dce: Use actual number of CRTCs and HPDs in set_irq_funcs 2017-12-04 16:41:40 -05:00
dce_v8_0.h
dce_v10_0.c amdgpu/dce: Use actual number of CRTCs and HPDs in set_irq_funcs 2017-12-04 16:41:40 -05:00
dce_v10_0.h
dce_v11_0.c amdgpu/dce: Use actual number of CRTCs and HPDs in set_irq_funcs 2017-12-04 16:41:40 -05:00
dce_v11_0.h
dce_virtual.c drm: Pass struct drm_file * to __drm_mode_object_find [v2] 2017-10-12 10:03:04 +10:00
dce_virtual.h
gfx_v6_0.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
gfx_v6_0.h
gfx_v7_0.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
gfx_v7_0.h
gfx_v8_0.c drm/amdgpu:cleanup in_sriov_reset and lock_reset 2017-12-04 16:41:31 -05:00
gfx_v8_0.h
gfx_v9_0.c drm/amdgpu:cleanup in_sriov_reset and lock_reset 2017-12-04 16:41:31 -05:00
gfx_v9_0.h drm/amdgpu: set gfx_v9_0_ip_funcs as static 2017-08-15 14:46:13 -04:00
gfxhub_v1_0.c drm/amdgpu:halt when vm fault 2017-09-26 15:14:22 -04:00
gfxhub_v1_0.h drm/amdgpu: drop old ip definitions for gfxhub and mmhub 2017-08-15 14:46:00 -04:00
gmc_v6_0.c drm/amdgpu:fix firmware memoryleak(v2) 2017-09-26 15:14:25 -04:00
gmc_v6_0.h
gmc_v7_0.c drm/amdgpu:fix firmware memoryleak(v2) 2017-09-26 15:14:25 -04:00
gmc_v7_0.h
gmc_v8_0.c drm/amdgpu:fix firmware memoryleak(v2) 2017-09-26 15:14:25 -04:00
gmc_v8_0.h
gmc_v9_0.c drm/amdgpu: Properly allocate VM invalidate eng v2 2017-11-14 11:35:08 -05:00
gmc_v9_0.h
iceland_ih.c drm/amdgpu: Handle GPUVM fault storms 2017-09-28 16:03:30 -04:00
iceland_ih.h
iceland_sdma_pkt_open.h
Kconfig drm/amd/dc: Add dc display driver (v2) 2017-09-26 17:01:32 -04:00
kv_dpm.c drm/amdgpu: move common pm sysfs code to amdgpu_device.c 2017-09-28 16:03:31 -04:00
kv_dpm.h
kv_smc.c
Makefile amdgpu DC display code for Vega. 2017-11-17 14:34:42 -08:00
mmhub_v1_0.c drm/amdgpu:halt when vm fault 2017-09-26 15:14:22 -04:00
mmhub_v1_0.h drm/amdgpu: drop old ip definitions for gfxhub and mmhub 2017-08-15 14:46:00 -04:00
mmsch_v1_0.h
mxgpu_ai.c drm/amdgpu:fix random missing of FLR NOTIFY 2017-12-04 16:41:32 -05:00
mxgpu_ai.h drm/amdgpu/sriov:increate mailbox polling timeout 2017-09-26 15:14:12 -04:00
mxgpu_vi.c drm/amdgpu: return error when sriov access requests get timeout 2017-12-04 16:41:41 -05:00
mxgpu_vi.h drm/amdgpu/sriov:increate mailbox polling timeout 2017-09-26 15:14:12 -04:00
nbio_v6_1.c amdgpu/nbio: use constant nbio_hdp_flush_reg structs. 2017-09-29 12:24:39 -04:00
nbio_v6_1.h amdgpu/nbio: use constant nbio_hdp_flush_reg structs. 2017-09-29 12:24:39 -04:00
nbio_v7_0.c amdgpu/nbio: use constant nbio_hdp_flush_reg structs. 2017-09-29 12:24:39 -04:00
nbio_v7_0.h amdgpu/nbio: use constant nbio_hdp_flush_reg structs. 2017-09-29 12:24:39 -04:00
ObjectID.h
ppsmc.h
psp_gfx_if.h
psp_v3_1.c drm/amdgpu/psp: prevent page fault by checking write_frame address(v4) 2017-10-25 23:09:38 -04:00
psp_v3_1.h drm/amdgpu: Add GPU reset functionality for Vega10 2017-09-26 15:14:06 -04:00
psp_v10_0.c drm/amdgpu/psp: prevent page fault by checking write_frame address(v4) 2017-10-25 23:09:38 -04:00
psp_v10_0.h drm/amdgpu: Add GPU reset functionality for Vega10 2017-09-26 15:14:06 -04:00
r600_dpm.h
sdma_v2_4.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
sdma_v2_4.h
sdma_v3_0.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
sdma_v3_0.h
sdma_v4_0.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
sdma_v4_0.h
si.c drm/amdgpu: Fix undue fallthroughs in golden registers initialization 2017-08-15 14:46:05 -04:00
si.h
si_dma.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
si_dma.h
si_dpm.c drm/amdgpu: move common pm sysfs code to amdgpu_device.c 2017-09-28 16:03:31 -04:00
si_dpm.h drm/amdgpu: unify the interface of amd_pm_funcs 2017-09-18 23:30:35 -04:00
si_enums.h
si_ih.c drm/amdgpu: Add prescreening stage in IH processing (v2) 2017-09-26 13:07:04 -04:00
si_ih.h
si_smc.c
sid.h
sislands_smc.h
soc15.c amdgpu DC display code for Vega. 2017-11-17 14:34:42 -08:00
soc15.h
soc15_common.h drm/amdgpu: Add WREG32_SOC15_NO_KIQ macro define 2017-07-14 11:06:10 -04:00
soc15d.h drm/amdgpu: fix vega10 graphic hang issue in S3 test 2017-08-18 12:02:11 -04:00
tonga_ih.c drm/amdgpu: Handle GPUVM fault storms 2017-09-28 16:03:30 -04:00
tonga_ih.h
tonga_sdma_pkt_open.h
uvd_v4_2.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
uvd_v4_2.h
uvd_v5_0.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
uvd_v5_0.h
uvd_v6_0.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
uvd_v6_0.h
uvd_v7_0.c drm/amdgpu: change redundant init logs to debug level 2017-12-04 16:33:12 -05:00
uvd_v7_0.h
vce_v2_0.c
vce_v2_0.h
vce_v3_0.c drm/amdgpu: allow harvesting check for Polaris VCE 2017-11-01 23:37:16 -04:00
vce_v3_0.h
vce_v4_0.c drm/amdgpu: remove the clearance of vce 4.0 interrupt mask 2017-09-26 15:14:03 -04:00
vce_v4_0.h
vcn_v1_0.c drm/amdgpu: Set adev->vcn.irq.num_types for VCN 2017-11-28 17:44:13 -05:00
vcn_v1_0.h
vega10_ih.c drm/amdgpu: Handle GPUVM fault storms 2017-09-28 16:03:30 -04:00
vega10_ih.h
vega10_sdma_pkt_open.h
vi.c Merge branch 'drm-next-4.15-dc' of git://people.freedesktop.org/~agd5f/linux into drm-next 2017-10-09 11:21:15 +10:00
vi.h
vi_dpm.h
vid.h drm/amdgpu: add uvd enc command in header 2017-10-06 17:43:56 -04:00