Boyuan Zhang
a3219816c4
drm/amdgpu: add Navi12 VCN firmware support
...
Add Navi12 to VCN family
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:41 -05:00
Xiaojie Yuan
6b66ae2e55
drm/amdgpu: add psp ip block for navi12
...
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Jack Xiao <Jack.Xiao@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:41 -05:00
Xiaojie Yuan
7f47efeb9e
drm/amdgpu: add smu ip block for navi12
...
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Jack Xiao <Jack.Xiao@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:41 -05:00
Xiaojie Yuan
e60cc94b26
drm/amdgpu: start autoload till RLCG fw for navi12
...
rlc save restore list is not ready yet for navi12
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Jack Xiao <Jack.Xiao@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:41 -05:00
Xiaojie Yuan
739cdbd6a2
drm/amdgpu/psp11: add psp support for navi12
...
Same as other navi asics.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:41 -05:00
Jack Xiao
02938eed74
drm/amdgpu: correct smu rlc handshake enablement bit
...
Correct the enablement bit of SMU RLC handshake.
Signed-off-by: Jack Xiao <Jack.Xiao@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:41 -05:00
Xiaojie Yuan
c726fbf0fb
drm/amdgpu/sdma5: add golden settings for navi12 (v2)
...
common golden settings are put in golden_settings_sdma_5 array
v2: update settings (Alex)
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Jack Xiao <Jack.Xiao@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
f8984cb9e3
drm/amdgpu/gfx10: add golden settings for navi12 (v2)
...
Add initial golden settings for navi12 gfx.
v2: update settings
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Jack Xiao <Jack.Xiao@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
7990202903
drm/amdgpu: enable virtual display for navi12
...
Virtual display is a sw display interface for
bring up and virtualization or for cards without
display hardware.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
71745cf474
drm/amdgpu/gfx10: set tcp harvest for navi12
...
Same as navi10.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
44e9e7c96c
drm/amdgpu: add ip blocks for navi12
...
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
4a0e815fb3
drm/amdgpu/gmc10: set gart size and vm size for navi12
...
Same as other navi asics.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
f2d6731d77
drm/amdgpu/sdma5: add placeholder for navi12 golden settings
...
None yet.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
6f523fd7b3
drm/amdgpu/sdma5: declare sdma firmwares for navi12
...
Declare the firmwares and load the proper ones for navi12.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
4cdfc4a2be
drm/amdgpu/gfx10: set rlc funcs for navi12
...
Same as other navi asics.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
9ff3dba6d6
drm/amdgpu/gfx10: set number of me(c)/pipe/queue for navi12
...
Same as other navi asics.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
716e9bb099
drm/amdgpu/gfx10: add placeholder for navi12 golden settings
...
Not used yet.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
92c123aec1
drm/amdgpu/gfx10: declare cp/rlc firmwares for navi12
...
Set the name properly to load the right ucode.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
6983469c1a
drm/amdgpu/gfx10: add gfx config for navi12
...
got from mmCP_MAX_CONTEXT and mmPA_SC_FIFO_SIZE
v2: squash all navi asics together because the
settings are the same.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
59ab8c292b
drm/amdgpu/gfx10: set gfx cg for navi12
...
Same as other navi asics.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
7e17e58bdd
drm/amdgpu: set nbio/hdp cg for navi12
...
Same as navi10.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
74b5e509a0
drm/amdgpu: initialize cg/pg flags and external rev id for navi12
...
don't enable any cg/pg features yet.
v2: calculate external revision id from revision id so that we can
differentiate navi12 A0 from A1 directly.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
d4d838ba4e
drm/amdgpu: use front door firmware loading for navi12
...
Same as other navi asics.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:40 -05:00
Xiaojie Yuan
4808cf9c2a
drm/amdgpu: set asic family and ip blocks for navi12
...
same with navi10
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
Xiaojie Yuan
42b325e5ec
drm/amdgpu: add gpu_info firmware for navi12
...
gpu_info firmare store asic configuration details.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
Xiaojie Yuan
9802f5d78b
drm/amdgpu: add navi12 asic type
...
Add asic type.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
Xiaojie Yuan
03d0a073cf
drm/amdgpu: initialize reg base for navi12
...
Set up the register offset map for navi12.
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
John Clements
8c2ef8ca0e
drm/amdgpu: update SDMA V4 microcode init
...
Removed loading duplicate instances of SDMA FW for Arcturus.
We use a single image for all instances.
Signed-off-by: John Clements <john.clements@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
John Clements
b86f8d8b2b
drm/amdgpu: extend PSP FW loading support to 8 SDMA instances
...
Arcturus has 8 instances of SDMA. Update host to PSP interface
to handle it.
Signed-off-by: John Clements <john.clements@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
John Clements
8fda90e821
drm/amdgpu: disable MEC2 JT context init for Arcturus
...
We don't need to handle it like other asics.
Signed-off-by: John Clements <john.clements@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
John Clements
6c37bde9c6
drm/amdgpu: update PSP CMD fail response status print
...
Print the response in hex with the apprpriate mask.
Signed-off-by: John Clements <john.clements@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
John Clements
dc0d962297
drm/amdgpu: add PSP KDB loading support for Arcturus
...
Add support for the arcturus specific psp metadata to the
amdgpu firmware and properly parse it when loading it.
Signed-off-by: John Clements <john.clements@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
John Clements
f36d9ab95f
drm/amdgpu: add PSP SW init support for Arcturus
...
Add arcturus cases to psp init sewquence.
Signed-off-by: John Clements <john.clements@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
John Clements
c0dac3c9f5
drm/amdgpu: removed duplicate line
...
Remove duplicate break.
Signed-off-by: John Clements <john.clements@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
Evan Quan
4abc1765d2
drm/amd/powerplay: enable SW SMU power profile switch support in KFD
...
Hook up the SW SMU power profile switch in KFD routine.
Signed-off-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Kevin Wang <kevin1.wang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:39 -05:00
Tao Zhou
bd2280da46
drm/amdgpu: replace AMDGPU_RAS_UE with AMDGPU_RAS_SUCCESS
...
ce can also trigger interrupt, and even both ce and ue error can be
found in one ras query, distinguishing between ce and ue in interrupt
handler is uncessary.
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Suggested-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-08-02 10:30:39 -05:00
Tao Zhou
91ba68f8d5
drm/amdgpu: only uncorrectable error needs gpu reset
...
we only read error information for correctable error in interrupt
handler, gpu reset is unnecessary since there is no data lost
in correctable error
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Tao Zhou
b1a5895352
drm/amdgpu: update the calc algorithm of umc ecc error count
...
the initial value of ecc error count can be adjusted
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Tao Zhou
b7f92097f5
drm/amdgpu: implement umc ras init function
...
enable umc ce interrupt and initialize ecc error count
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Tao Zhou
51437623a0
drm/amdgpu: support ce interrupt in ras module
...
correctable error can also trigger interrupt in some ras blocks
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Tao Zhou
13b7c46c18
drm/amdgpu: add error address query for umc ras
...
umc error address query can get ce/ue error address and clear error
status
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Tao Zhou
2b671b6049
drm/amdgpu: apply umc_for_each_channel macro to umc_6_1
...
use umc_for_each_channel to make code simpler
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Tao Zhou
fee858ba5f
drm/amdgpu: add macro of umc for each channel
...
common function for all umc versions, loop for each umc channel is
a frequent used operation in umc block, define it as a macro to
simplify code
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Tao Zhou
3aacf4ea11
drm/amdgpu: initialize new parameters and functions for amdgpu_umc structure
...
add initialization for new members of amdgpu_umc structure
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Tao Zhou
33b97cf896
drm/amdgpu: add more parameters and functions to amdgpu_umc structure
...
expose more parameters and functions of specific umc version to common
umc layer, so amdgpu_umc layer and other blocks could access them
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Tao Zhou
a55c8d7bda
drm/amdgpu: remove the clear of MCA_ADDR
...
clearing MCA_STATUS is enough to reset the whole MCA, writing zero to
MCA_ADDR is unnecessary
Signed-off-by: Tao Zhou <tao.zhou1@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Colin Ian King
ac4bf4a1eb
drm/amdgpu: fix unsigned variable instance compared to less than zero
...
Currenly the error check on variable instance is always false because
it is a uint32_t type and this is never less than zero. Fix this by
making it an int type.
Addresses-Coverity: ("Unsigned compared against 0")
Fixes: 7d0e6329df ("drm/amdgpu: update more sdma instances irq support")
Signed-off-by: Colin Ian King <colin.king@canonical.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:30:38 -05:00
Jay Cornwall
5145d57ec5
drm/amdkfd: Extend CU mask to 8 SEs (v3)
...
Following bitmap layout logic introduced by:
"drm/amdgpu: support get_cu_info for Arcturus".
v2: squash in fixup for gfx_v9_0.c (Alex)
v3: squash in debug print output fix
Signed-off-by: Jay Cornwall <Jay.Cornwall@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:19:11 -05:00
Le Ma
857b82d0df
drm/amdgpu: support get_cu_info for Arcturus
...
This change is because SE/SH layout on Arcturus is 8*1, different from
4*2(or 4*1) on Vega ASICs.
Currently the cu bitmap array is 4x4 size, and besides the bitmap is used widely
across SW stack. To mostly reduce the scale of impact, we make the cu bitmap
array compatible with SE/SH layout on Arcturus. Then the store of cu bits of
each shader array for Arcturus will be like below:
SE0,SH0 --> bitmap[0][0]
SE1,SH0 --> bitmap[1][0]
SE2,SH0 --> bitmap[2][0]
SE3,SH0 --> bitmap[3][0]
SE4,SH0 --> bitmap[0][1]
SE5,SH0 --> bitmap[1][1]
SE6,SH0 --> bitmap[2][1]
SE7,SH0 --> bitmap[3][1]
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-08-02 10:19:05 -05:00
Kent Russell
612e4ed99b
drm/amdgpu: Fix pcie_bw on Vega20
...
The registers used for VG20 are different in that certain performance
counters were split off to TXCLK3/4. Vega10/12 doesn't have this, so add
a new vg20_get_pcie_usage to reflect this change.
Signed-off-by: Kent Russell <kent.russell@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-02 10:18:58 -05:00