Jim Qu
8daf94e900
drm/amdgpu: always cancel uvd idle handler in uvd suspend
...
Signed-off-by: Jim Qu <Jim.Qu@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 11:51:59 -05:00
Alex Deucher
041d9d93b5
drm/amdgpu: rename amdgpu_get_pcie_info
...
add device to the name for consistency.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 11:00:08 -05:00
Alex Deucher
6b8f4ee56f
drm/amdgpu: move amdgpu_need_backup to amdgpu_object.c
...
It's the only place it's used.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 11:00:03 -05:00
Alex Deucher
5f152b5e69
drm/amdgpu: rename amdgpu_gpu_recover
...
add device to the name for consistency.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:58 -05:00
Alex Deucher
55e0037aab
drm/amdgpu: move dummy page functions to amdgpu_gart.c
...
It's the only place they are used.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:52 -05:00
Alex Deucher
39c640c086
drm/amdgpu: rename amdgpu_need_post
...
add device to the name for consistency.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:46 -05:00
Alex Deucher
2990a1fc01
drm/amdgpu: rename ip block helper functions
...
add device to the name for consistency.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:40 -05:00
Alex Deucher
f5ec697e37
drm/amdgpu: move fw_reserve functions to amdgpu_ttm.c
...
It's the only place they are used.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:35 -05:00
Alex Deucher
2543e28a81
drm/amdgpu: rename amdgpu_*_location functions
...
add device to the name for consistency.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:28 -05:00
Alex Deucher
22cb016437
drm/amdgpu: move amdgpu_doorbell_get_kfd_info to amdgpu_amdkfd.c
...
It's the only place it's used.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:23 -05:00
Alex Deucher
8111c38727
drm/amdgpu: rename amdgpu_pci_config_reset
...
add device for consistency with other functions in this file.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:18 -05:00
Alex Deucher
9c3f2b5474
drm/amdgpu: rename amdgpu_program_register_sequence
...
add device for consistency with other functions in this file.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:13 -05:00
Alex Deucher
131b4b3686
drm/amdgpu: rename amdgpu_wb_* functions
...
add device for consistency.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:07 -05:00
Alex Deucher
75758255dc
drm/amdgpu: move debugfs functions to their own file
...
amdgpu_device.c was getting pretty cluttered.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:59:01 -05:00
Alex Deucher
cdd61df614
drm/amdgpu: rename amdgpu_suspend to amdgpu_device_ip_suspend
...
for consistency with the other functions in that file.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:58:54 -05:00
Alex Deucher
06ec907054
drm/amdgpu: use consistent naming for static funcs in amdgpu_device.c
...
Prefix the functions with device or device_ip for functions which
deal with ip blocks for consistency.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:58:47 -05:00
Alex Deucher
4e89df63c1
drm/amdgpu: move atom functions from amdgpu_device.c
...
and move them to amdgpu_atombios.c for consistency.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-18 10:58:35 -05:00
Alex Deucher
a7ea6548a5
drm/amdgpu: setup the shared and private apertures on gfx9
...
Same as previous asics. This was not yet set for gfx9.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-15 17:15:09 -05:00
Andrey Grodzovsky
8854695add
drm/amdgpu: Simplify amdgpu_lockup_timeout usage.
...
With introduction of amdgpu_gpu_recovery we don't need any more
to rely on amdgpu_lockup_timeout == 0 for disabling GPU reset.
Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-15 17:15:00 -05:00
Andrey Grodzovsky
dcebf026e6
drm/amdgpu: Add gpu_recovery parameter
...
Add new parameter to control GPU recovery procedure.
v2:
Add auto logic where reset is disabled for bare metal and enabled
for SR-IOV.
Allow forced reset from debugfs.
Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-15 17:14:50 -05:00
Roger He
3e98d829ad
drm/ttm: use an ttm operation ctx for ttm_bo_move_xxx
...
include ttm_bo_move_memcpy and ttm_bo_move_ttm
Signed-off-by: Roger He <Hongbo.He@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-15 17:14:25 -05:00
Roger He
9251859a9a
drm/amdgpu: set allow_reserved_eviction and resv when bo allocation and cs
...
enable eviction of other per VM BOs during allocation and allows
reaping of deleted BOs during CS.
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Roger He <Hongbo.He@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-15 17:10:54 -05:00
Chunming Zhou
196f74897b
drm/amdgpu: add enumerate for PDB/PTB v3
...
v2:
remove SUBPTB member
v3:
remove last_level, use AMDGPU_VM_PTB directly instead.
Signed-off-by: Chunming Zhou <david1.zhou@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-14 11:01:30 -05:00
Chunming Zhou
c4c3351783
drm/amdgpu: fix huge page setting for ATS case
...
Signed-off-by: Chunming Zhou <david1.zhou@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-13 17:31:01 -05:00
Alex Deucher
44da0d57db
drm/amdgpu: drop amdgpu_atombios_scratch_regs_save/restore
...
No longer used.
Reviewed-by: Harry Wentland <harry.wentland@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-13 17:28:09 -05:00
Alex Deucher
88bc1e3c38
drm/amdgpu: drop scratch regs save and restore from GPU reset handling
...
The expectation is that the base driver doesn't mess with these.
Some components interact with these directly so let the components
handle these directly.
Reviewed-by: Harry Wentland <harry.wentland@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-13 17:28:09 -05:00
Alex Deucher
4ec6ecf48c
drm/amdgpu: drop scratch regs save and restore from S3/S4 handling
...
The expectation is that the base driver doesn't mess with these.
Some components interact with these directly so let the components
handle these directly.
Reviewed-by: Harry Wentland <harry.wentland@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-13 17:28:09 -05:00
Alex Deucher
e466c2935f
drm/amdgpu: remove some old gc 9.x registers
...
Leftover from bring up.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-13 17:28:08 -05:00
Alex Deucher
2dd744e0ce
drm/amdgpu: drop soc15_init_golden_registers
...
The golden register arrays were empty so the function was
effectively useless.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-13 17:28:08 -05:00
Alex Deucher
670b603c11
drm/amdgpu: drop the bios scratch reg callbacks from nbio
...
They are not used any longer. We get the scratch register
locations from the vbios directly now.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-13 17:28:07 -05:00
Alex Deucher
bf383fb64e
drm/amdgpu: convert nbio to use callbacks (v2)
...
Cleans up and consolidates all of the per-asic logic.
v2: squash in "drm/amdgpu: fix NULL err for sriov detect" (Chunming)
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-13 17:28:07 -05:00
Alex Deucher
74e1d67c73
drm/amdgpu: make function names consistent in nbio files
...
All functions should have nbio_v* prefix.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:50:17 -05:00
Frank Min
1cb4ca5968
drm/amdgpu: correct vce fw data and stack size
...
this fix the VCE world switch hang issue
Signed-off-by: Frank Min <Frank.Min@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:50:12 -05:00
Monk Liu
f4534f0654
drm/amdgpu: fix MAP_QUEUES paramter
...
Should be 0.
Signed-off-by: Monk Liu <Monk.Liu@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:50:05 -05:00
Monk Liu
d118a62153
drm/amdgpu: no need with INT for fence polling
...
We are polling so no need for INT.
Signed-off-by: Monk Liu <Monk.Liu@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:50:00 -05:00
Monk Liu
b9141cd393
drm/amdgpu: no need to evict VRAM in device_fini
...
this VRAM evict is not needed and also cost 2seconds
to finish because the IRQ is software side disabled
before it.
Signed-off-by: Monk Liu <Monk.Liu@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:49:56 -05:00
Christian König
3de676d8e7
drm/amdgpu: allow get_vm_pde to change flags as well
...
And also provide the level for which we need a PDE.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:46:19 -05:00
Christian König
6989f2460f
drm/amdgpu: batch PDE updates again
...
Now instead of one submission for each PDE batch them together over all
PDs who need an update.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:46:12 -05:00
Christian König
78eb2f0c71
drm/amdgpu: remove keeping the addr of the VM PDs
...
No more double house keeping.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:46:06 -05:00
Christian König
8f19cd78c9
drm/amdgpu: remove last_entry_used from the VM code
...
Not needed any more.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:46:00 -05:00
Christian König
e3a1b32a12
drm/amdgpu: avoid the modulo in amdgpu_vm_get_entry
...
We can do this with a simple mask as well.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:45:54 -05:00
Pixel Ding
2ffe31deb2
drm/amdgpu: use polling mem to set SDMA3 wptr for VF
...
On Tonga VF, there're 2 sources updating wptr registers for
sdma3: 1) polling mem and 2) doorbell. When doorbell and polling
mem are both enabled on sdma3, there will be collision hit in
occasion between those two sources when ucode and h/w are doing
the updating on wptr register in parallel. Issue doesn't happen
on CP GFX/Compute since CP drops all doorbell writes when VF is
inactive. So enable polling mem and don't use doorbell for SDMA3.
Signed-off-by: Pixel Ding <Pixel.Ding@amd.com >
Reviewed-by: Monk Liu <monk.liu@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:45:47 -05:00
Christian König
b852f3d3fb
drm/amdgpu: update one PDE at a time v2
...
Horrible inefficient, but avoids problems when the root PD size becomes
to big.
v2: remove incr as well.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <davdi1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:45:41 -05:00
Christian König
94c6f5e4d1
drm/amdgpu: stop joining PDEs
...
That doesn't hit any more most of the time anyway.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:45:34 -05:00
Christian König
79588d21ad
drm/amdgpu: add amdgpu_evict_vram debugfs file
...
Torture test for MM and VM support, can be used to evict all VRAM while
the system is under load.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:45:28 -05:00
Christian König
763efb6c6f
drm/amdgpu: cleanup debugfs handling a bit
...
Remove the superflous .debugfs_init callback and register all files in
amdgpu_device.c in just one function.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-12 14:45:07 -05:00
Shaoyun Liu
4fd09a19a6
drm/admgpu: Reduce the usage of soc15ip.h
...
Remove the header where it's not used.
Acked-by: Christian Konig <christian.koenig@amd.com >
Signed-off-by: Shaoyun Liu <Shaoyun.Liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-08 11:35:19 -05:00
Shaoyun Liu
cd29253f65
drm/amdgpu: Change SOC15_REG_OFFSET to use dynamic register offset
...
Acked-by: Christian Konig <christian.koenig@amd.com >
Signed-off-by: Shaoyun Liu <Shaoyun.Liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-08 11:32:24 -05:00
Shaoyun Liu
946a4d5b30
drm/amdgpu: Avoid use SOC15_REG_OFFSET in static const array
...
Handle dynamic offsets correctly in static arrays.
Acked-by: Christian Konig <christian.koenig@amd.com >
Signed-off-by: Shaoyun Liu <Shaoyun.Liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-08 11:18:51 -05:00
Shaoyun Liu
b466107e8b
drm/amdgpu: Use dynamic IP offset for register access on SOC15
...
Update the register access macros and functions to take into
account the new dynamic IP base offsets.
Acked-by: Christian Konig <christian.koenig@amd.com >
Signed-off-by: Shaoyun Liu <Shaoyun.Liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2017-12-08 11:17:56 -05:00