Tao Zhou
181c93e5ec
drm/amdgpu: move umc ras fini to umc block
...
it's more suitable to put umc ras fini in umc block
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
f2575941e6
drm/amdgpu: add ras fini for xgmi
...
add ras fini for xgmi to cleanup xgmi ras framework
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
de9bbd5273
drm/amdgpu: add ras fini for nbio
...
add a common nbio ras fini implementation to cleanup nbio ras framework
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
0771b0bf07
drm/amdgpu: simplify the access to eeprom_control struct
...
simplify the code of accessing to eeprom_control struct
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
41190cd733
drm/amdgpu: remove ih_info parameter of gfx_ras_late_init
...
gfx_ras_late_init can get the info by itself
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
56c54b25c3
drm/amdgpu: remove ih_info parameter of umc_ras_late_init
...
umc_ras_late_init can get the info by itself
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
e536c81850
drm/amdgpu: add common sdma_ras_fini function
...
sdma_ras_fini can be shared among all generations of sdma
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
3b7b7647be
drm/amdgpu: add common gfx_ras_fini function
...
gfx_ras_fini can be shared among all generations of gfx
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
2adf13440a
drm/amdgpu: add common gmc_ras_fini function
...
gmc_ras_fini can be shared among all generations of gmc
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
65bc47a659
drm/amdgpu: move mmhub_ras_if from gmc to mmhub block
...
mmhub_ras_if is relevant to mmhub
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
d65bf1f8a7
drm/amdgpu: replace mmhub_funcs with mmhub.funcs
...
remove mmhub_funcs in adev
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
d3a5a121b8
drm/amdgpu: add common mmhub member for adev
...
put mmhub_funcs and ras_if pointer into mmhub struct
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
03740baab3
drm/amdgpu: move umc_ras_if from gmc to umc block
...
umc_ras_if is relevant to umc
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
fc04e6b484
drm/amdgpu: refine sdma4 ras_data_cb
...
simplify code logic and refine return value
v2: remove unused error source code
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
4c65dd1041
drm/amdgpu: move sdma ecc functions to generic sdma file
...
sdma ras ecc functions can be reused among all sdma generations
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
725253ab9b
drm/amdgpu: move gfx ecc functions to generic gfx file
...
gfx ras ecc common functions could be reused among all gfx generations
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:02 -05:00
Tao Zhou
34cc4fd9ff
drm/amdgpu: move umc ras irq functions to umc block
...
move umc ras irq functions from gmc v9 to generic umc block, these
functions are relevant to umc and they can be shared among all
generations of umc
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
Tao Zhou
f5f06e21e9
drm/amdgpu: update parameter of ras_ih_cb
...
change struct ras_err_data *err_data to void *err_data, align with
umc code and the callback's declaration in each ras block could
pay no attention to the structure type
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Guchun Chen <guchun.chen@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
Monk Liu
e7da754b00
drm/amdgpu: fix an UMC hw arbitrator bug(v3)
...
issue:
the UMC6 h/w bug is that when MCLK is doing the switch
in the middle of a page access being preempted by high
priority client (e.g. DISPLAY) then UMC and the mclk switch
would stuck there due to deadlock
how:
fixed by disabling auto PreChg for UMC to avoid high
priority client preempting other client's access on
the same page, thus the deadlock could be avoided
v2:
put the patch in callback of UMC6
v3:
rename the callback to "init_registers"
Signed-off-by: Monk Liu <Monk.Liu@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Reviewed-by: Hawking Zhang <hawking.zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
Marek Olšák
6de088a08d
drm/amdgpu: remove gfx9 NGG
...
Never used.
Signed-off-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
Alex Deucher
631cdbd27e
drm/amdgpu/atomfirmware: simplify the interface to get vram info
...
fetch both the vram type and width in one function call. This
avoids having to parse the same data table twice to get the two
pieces of data.
Reviewed-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
Alex Deucher
bd5520273c
drm/amdgpu/atomfirmware: use proper index for querying vram type (v3)
...
The index is stored in scratch register 4 after asic init. Use
that index. No functional change since all asics in a family
use the same type of vram (G5, G6, HBM) and that is all we use
at the monent, but if we ever need to query other info, we will
now have the proper index.
v2: module array is variable sized, handle that.
v3: fix off by one in array handling
Reviewed-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
Shirish S
52510a4035
drm/amdgpu/psp: silence response status warning
...
log the response status related error to the driver's
debug log since psp response status is not 0 even though
there was no problem while the command was submitted.
This warning misleads, hence this change.
Signed-off-by: Shirish S <shirish.s@amd.com >
Acked-by: Huang Rui <ray.huang@amd.com >
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
Jesse Zhang
df99ac0fcc
drm/amd/amdgpu:Fix compute ring unable to detect hang.
...
When compute fence did not signal, compute ring cannot detect hardware hang
because its timeout value is set to be infinite by default.
In SR-IOV and passthrough mode, if user does not declare custome timeout
value for compute ring, then use gfx ring timeout value as default. So
that when there is a ture hardware hang, compute ring can detect it.
Signed-off-by: Jesse Zhang <zhexi.zhang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
chen gong
90a08351f7
drm/amdgpu: Use mode2 mode to perform GPU RESET for Renoir
...
Renoir need to use mode2 mode to implement GPU RESET
Signed-off-by: chen gong <curry.gong@amd.com >
Reviewed-by: Aaron Liu <aaron.liu@amd.com >
Reviewed-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
Yong Zhao
40463bdc22
drm/amdkfd: Sync gfx10 kfd2kgd_calls function pointers
...
get_hive_id was not set. Also, adjust the function setting sequence.
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
Yong Zhao
c637b36aea
drm/amdkfd: Fix NULL pointer dereference for set_scratch_backing_va()
...
Currently this function pointer is missing for GFX10. Considering it is
a void function since GFX9, fix it by checking the function pointer
before dereferencing it.
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:01 -05:00
Yong Zhao
812330eb69
drm/amdkfd: Add an error print if SDMA RLC is not idle
...
The message will be useful when troubleshooting the issues.
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Le Ma
05ba0095fb
drm/amdgpu: correct condition check for psp rlc autoload
...
Otherwise non-autoload case will go into the wrong routine and fail.
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Le Ma <le.ma@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Hawking Zhang
1f01cd9905
drm/amdgpu: add command id in psp response failure message
...
For better clarification of issue.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Le Ma <Le.Ma@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Le Ma
90c88dab8e
drm/amdgpu: enable psp front door loading by default on Arcturus
...
Front door firmware loading is done via the psp rather than the
driver.
Signed-off-by: Le Ma <le.ma@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Le Ma
9a018e5a85
drm/amdgpu: disable vcn ip block for front door loading on Arcturus
...
Needs more work to enable via front door loading.
Signed-off-by: Le Ma <le.ma@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Tianci.Yin
4db37544ce
drm/amdgpu/gfx10: add support for wks firmware loading
...
load different cp firmware according to the DID and RID
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Tianci.Yin <tianci.yin@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Alex Deucher
f77c7109c0
drm/amdgpu/ras: fix and update the documentation for RAS
...
Add new sections to amdgpu.rst, fix up formatting issues,
add additional documentation to each section.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Alex Deucher
a667b75c1e
drm/amdgpu: fix documentation for amdgpu_pm.c
...
Fix DOC link name, clean up formatting in pp_dpm_* section.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Alex Deucher
fc9c7f8470
drm/amdgpu/ih: fix documentation in amdgpu_irq_dispatch
...
Fix parameters.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Alex Deucher
1d614ded87
drm/amdgpu/vm: fix up documentation in amdgpu_vm.c
...
Missing parameters, wrong comment type, etc.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Alex Deucher
4d8e54d2b9
drm/amdgpu/mn: fix documentation for amdgpu_mn_read_lock
...
Document the new parameter.
Fixes: 93065ac753
("mm, oom: distinguish blockable mode for mmu notifiers")
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Alex Deucher
ebc52c1692
drm/amdgpu: fix documentation for amdgpu_gem_prime_export
...
Drop extra function parameter.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
yu kuai
d0580c09c6
drm/amdgpu: remove excess function parameter description
...
Fixes gcc warning:
drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c:431: warning: Excess function
parameter 'sw' description in 'vcn_v2_5_disable_clock_gating'
drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c:550: warning: Excess function
parameter 'sw' description in 'vcn_v2_5_enable_clock_gating'
Fixes: cbead2bdfc
("drm/amdgpu: add VCN2.5 VCPU start and stop")
Signed-off-by: yu kuai <yukuai3@huawei.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Guchun Chen
e53aec7e41
drm/amdgpu: enable full ras by default
...
Enable full ras by default, user does not need to enable it by
boot parameter.
Signed-off-by: Guchun Chen <guchun.chen@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:11:00 -05:00
Jiange Zhao
57d4f3b7fd
drm/amdgpu/SRIOV: add navi12 pci id for SRIOV (v2)
...
Add Navi12 PCI id support.
v2: flag as experimental for now (Alex)
Signed-off-by: Jiange Zhao <Jiange.Zhao@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:10:59 -05:00
Tianci.Yin
7677b0dbce
drm/amdgpu/gfx10: update gfx golden settings for navi14
...
update registers: mmUTCL1_CTRL
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Tianci.Yin <tianci.yin@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:10:59 -05:00
Tianci.Yin
aa4604b6e4
drm/amdgpu/gfx10: update gfx golden settings
...
update registers: mmUTCL1_CTRL
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Tianci.Yin <tianci.yin@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:10:59 -05:00
Alex Deucher
ade9a34e7d
drm/amdgpu: flag navi12 and 14 as experimental for 5.4
...
We can remove this later as things get closer to launch.
Reviewed-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:10:59 -05:00
Alex Deucher
01b40c98ed
drm/amdgpu/psp: invalidate the hdp read cache before reading the psp response
...
Otherwise we may get stale data.
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:10:59 -05:00
Alex Deucher
e8186eeccb
drm/amdgpu/psp: flush HDP write fifo after submitting cmds to the psp
...
We need to make sure the fifo is flushed before we ask the psp to
process the commands.
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:10:59 -05:00
Guchun Chen
5222d26146
drm/amdgpu: remove redundant variable definition
...
No need to define the same variables in each loop of the function.
Signed-off-by: Guchun Chen <guchun.chen@amd.com >
Reviewed-by: Tao Zhou <tao.zhou1@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:10:59 -05:00
Guchun Chen
8a3e801f19
drm/amdgpu: avoid null pointer dereference
...
null ptr should be checked first to avoid null ptr access
Signed-off-by: Guchun Chen <guchun.chen@amd.com >
Reviewed-by: Tao Zhou <tao.zhou1@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:10:59 -05:00
Hawking Zhang
fec6a08aae
drm/amdgpu: do not init mec2 jt for renoir
...
For ASICs like renoir/arct, driver doesn't need to load mec2 jt.
when mec1 jt is loaded, mec2 jt will be loaded automatically
since the write is actaully broadcasted to both.
We need to more time to test other gfx9 asic. but for now we should
be able to draw conclusion that mec2 jt is not needed for renoir and
arct.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-10-03 09:10:59 -05:00