Rex Zhu
34955e038a
drm/amdgpu: Modify the argument of emit_ib interface
...
use the point of struct amdgpu_job as the function
argument instand of vmid, so the other members of
struct amdgpu_job can be visit in emit_ib function.
v2: add a wrapper for getting the VMID
add the job before the ib on the parameter list.
v3: refine the wrapper name
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Rex Zhu <Rex.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-11-05 14:21:50 -05:00
Andrey Grodzovsky
c66ed765a0
drm/amdgpu: Retire amdgpu_ring.ready flag v4
...
Start using drm_gpu_scheduler.ready isntead.
v3:
Add helper function to run ring test and set
sched.ready flag status accordingly, clean explicit
sched.ready sets from the IP specific files.
v4: Add kerneldoc and rebase.
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 >
2018-11-05 14:21:23 -05:00
James Zhu
8e16695b4e
drm/amdgpu/vcn:Fix uninitialized symbol error
...
ret_code should be initialized with 0. The check of read/write
ptr should be activate when UVD_POWER_STATUS_TILES is off.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-17 16:13:07 -05:00
James Zhu
9fc9c9b83a
drm/amdgpu/vcn:Update SPG mode UVD status clear
...
Update Static Power Gate mode UVD status clear
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:55:59 -05:00
James Zhu
10b66b2c65
drm/amdgpu/vcn:Set VCPU busy after gate power during vcn SPG start
...
Set VCPU busy after gate power during vcn Static Power Gate start
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:55:52 -05:00
James Zhu
3d904ee4c3
drm/amdgpu/vcn:Apply new UMC enable for VNC DPG mode
...
Apply new UMC enable for VNC Dynamic Power Gate mode
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:55:44 -05:00
James Zhu
ad7187bfe1
drm/amdgpu/vcn:Remove SPG mode unused steps during vcn start
...
Remove Sitatic Power Gate mode unused steps during vcn start
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:55:37 -05:00
James Zhu
3d022a01fe
drm/amdgpu/vcn:Add SPG mode Register XX check
...
Add Static Power Gate mode Register XX check
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:55:30 -05:00
James Zhu
a1584957ff
drm/amdgpu/vcn:Move SPG mode mc resume after MPC control
...
Move Static Power Gate mode mc resume after MPC control
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:55:23 -05:00
James Zhu
92bbdaeb91
drm/amdgpu/vcn:Update SPG mode VCN global tiling
...
Update Static Power Gate mode VCN global tiling
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:55:16 -05:00
James Zhu
298dc39a3a
drm/amdgpu/vcn:Update SPG mode VCN memory control
...
Update Static Power Gate mode VCN memory control
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:55:09 -05:00
James Zhu
f5c5451fef
drm/amdgpu/vcn:Apply new UMC enable for VNC DPG mode start
...
Apply new UMC enable for VNC Dynamic Power Gate mode start
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:55:01 -05:00
James Zhu
fe146873f5
drm/amdgpu/vcn:Remove DPG mode unused steps during vcn start
...
Remove Dynamic Power Gate mode unused steps during VCN start
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:54:55 -05:00
James Zhu
368d0dd81a
drm/amdgpu/vcn:Add DPG mode Register XX check
...
Add Dynamic Power Gate mode Register XX check
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:54:47 -05:00
James Zhu
abd2d47c51
drm/amdgpu/vcn:Update DPG mode VCN global tiling registers
...
Update Dynamic Power Gate mode VCN global tiling registers
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:54:40 -05:00
James Zhu
6747c2021c
drm/amdgpu/vcn:Update DPG mode VCN memory control
...
Update Dynamic Power Gate mode VCN memory control
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:54:33 -05:00
James Zhu
cce9d55585
drm/amdgpu/vcn:Reduce unnecessary local variable
...
Reduce unnecessary local variable.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:54:25 -05:00
James Zhu
15296db706
drm/amdgpu/vcn:Add ring W/R PTR check for VCN DPG mode stop
...
Add ring write/read pointer check for VCN dynamic power gate mode
stop,to make sure that no job is left in ring before turn off DPG mode.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:54:17 -05:00
James Zhu
5866fb929c
drm/amdgpu/vcn:Update latest spg mode stop for VCN
...
Update latest static power gate mode stop function for VCN
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:54:09 -05:00
James Zhu
5327f025dc
drm/amdgpu/vcn:Update latest UVD_MPC register for VCN
...
Update latest UVD_MPC register for VCN. Use defined
macro to replace value for readability.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-12 12:54:02 -05:00
James Zhu
825da4d925
drm/amdgpu/vcn:Correct VCN cache window definition
...
Correct VCN cache window definition. The old one
is reused from UVD, and it is not fully correct.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-09 17:07:39 -05:00
James Zhu
b17c524922
drm/amdgpu/vcn:Replace value with defined macro
...
Replace value with defined macro to make
code more readable
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-09 17:07:33 -05:00
James Zhu
2dc4aa523b
drm/amdgpu/vcn:fix dpg pause mode hang issue
...
Use mmUVD_SCRATCH2 tracking decode write point.
It will help avoid dpg pause mode hang issue.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-09 17:07:26 -05:00
James Zhu
9332ddc915
drm/amdgpu/vcn:Remove unused code
...
The following WREG32_SOC15_DPG_MODE will overwrite register
mmUVD_CGC_CTRL. This code can be removed.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-10-09 17:07:19 -05:00
James Zhu
63e9bb1d98
drm/amdgpu:Add DPG mode support for vcn 1.0
...
Add DPG mode start/stop/mc_resume/clock_gating to
support vcn 1.0 DPG mode.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Reviewed-by: Huang Rui <ray.huang@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-09-26 21:09:24 -05:00
James Zhu
c95f75f4e8
drm/amdgpu:No action when VCN PG state is unchanged
...
When VCN PG state is unchanged, it is unnecessary to reset power
gate state
Signed-off-by: James Zhu <James.Zhu@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-09-26 21:09:12 -05:00
Boyuan Zhang
7ea34ea3e8
drm/amdgpu: fix emit frame size and comments for jpeg
...
Fix vcn jpeg ring emit fence size in dword, and fix the naming in comments.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Acked-by: Leo Liu <leo.liu at amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-08-27 11:10:11 -05:00
Boyuan Zhang
36a12bd0b4
drm/amdgpu: add emit trap for vcn jpeg
...
Add emit trap command in jpeg emit fence call.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Acked-by: Leo Liu <leo.liu at amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-08-27 11:10:11 -05:00
Boyuan Zhang
7f31077cad
drm/amdgpu: enable system interrupt for jrbc
...
Enable system interrupt for jrbc during engine starting time.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Acked-by: Leo Liu <leo.liu at amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-08-27 11:10:10 -05:00
Boyuan Zhang
eb4f699920
drm/amdgpu: add emit reg write reg wait for vcn jpeg
...
The emit_reg_write_reg_wait function was not assigned for vcn jpeg.
This patch adds it back.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Leo Liu <leo.liu at amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-08-27 11:10:09 -05:00
Likun Gao
4d77c0f676
drm/amdgpu:add VCN booting with firmware loaded by PSP
...
Setup psp firmware loading for VCN, and make VCN block
booting from tmr mac address.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Acked-by: Huang Rui <ray.huang@amd.com >
Reviewed-by: Likun Gao <Likun.Gao@amd.com >
Signed-off-by: Likun Gao <Likun.Gao@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: stable@vger.kernel.org
2018-08-13 17:19:46 -05:00
Andrey Grodzovsky
44a99b65fc
drm/amd: Use newly added interrupt source defs for SOC15.
...
Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com >
Reviewed-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 >
2018-07-13 14:45:43 -05:00
Leo Liu
d02f16058e
drm/amdgpu: move cache window setup after power and clock resume
...
To make register read/write reliable
Signed-off-by: Leo Liu <leo.liu@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-07-10 14:18:47 -05:00
Boyuan Zhang
6173040f16
drm/amdgpu: add vcn jpeg ib test
...
Add an ib test for vcn jpeg.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-06-15 12:20:38 -05:00
Boyuan Zhang
b1d3760645
drm/amdgpu: add vcn jpeg ring test
...
Add a ring test for vcn jpeg.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-06-15 12:20:38 -05:00
Boyuan Zhang
b7fe681e35
drm/amdgpu: add patch to jpeg ring
...
Add patch commands to jepg ring by calling set patch ring function.
v2: remove modifications on max_dw, buf_mask and ptr_mask, since we are
now using extra_dw for jpeg ring.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-06-15 12:20:37 -05:00
Boyuan Zhang
c8c1a1d2ef
drm/amdgpu: define and add extra dword for jpeg ring
...
Define extra dword for jpeg ring. Jpeg ring will allocate extra dword to store
the patch commands for fixing the known issue.
v2: dropping extra_dw for rings other than jpeg.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-06-15 12:20:37 -05:00
Boyuan Zhang
8a998052f2
drm/amdgpu: implement patch for fixing a known bug
...
Implement a patch to maunally reset read pointer
v2: using ring assignment instead of amdgpu_ring_write. adding comments
for each steps in the patch function.
v3: fixing a typo bug.
v4: fixing a bug in v3.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-06-15 12:20:36 -05:00
Boyuan Zhang
d2314b48d6
drm/amdgpu: initialize vcn jpeg ring
...
Add implementations for vcn jpeg ring initialization
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-06-15 12:20:36 -05:00
Boyuan Zhang
59dd2b883f
drm/amdgpu: add vcn jpeg irq support
...
Add vcn jpeg irq support.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-06-15 12:20:36 -05:00
Boyuan Zhang
e612bcc3ab
drm/amdgpu: set jpeg ring functions
...
Set all vcn jpeg ring function pointers.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-06-15 12:20:35 -05:00
Boyuan Zhang
221f36c460
drm/amdgpu: implement jpeg ring functions
...
Implement all ring functions needed for jpeg ring
v2: remove unnecessary mem read function.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-06-15 12:20:35 -05:00
kbuild test robot
adea72c504
drm/amdgpu: vcn_v1_0_is_idle() can be static
...
Fixes: 9b4c412a654c ("drm/amdgpu: Add static CG control for VCN on RV")
Signed-off-by: kbuild test robot <fengguang.wu@intel.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-25 11:02:04 -05:00
Rex Zhu
22cc6c5e19
drm/amdgpu: Add runtime VCN PG support
...
Enable support for dynamically powering up/down VCN on demand.
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Rex Zhu <Rex.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-24 10:07:52 -05:00
Rex Zhu
d58c5d9a42
drm/amdgpu: Add VCN static PG support on RV
...
Implement static powergating suport on VCN.
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Rex Zhu <Rex.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-24 10:07:51 -05:00
Rex Zhu
c9dc5abb66
drm/amdgpu: Add static CG control for VCN on RV
...
Implement proper static clockgating support for VCN.
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Rex Zhu <Rex.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-24 10:07:40 -05:00
Leo Liu
6ee21dbfe9
drm/amdgpu: fix insert nop for VCN decode ring
...
NO_OP register should be writen to 0
Signed-off-by: Leo Liu <leo.liu@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:31 -05:00
Tom St Denis
dfe8a0187c
drm/amd/amdgpu: vcn10 Add callback for emit_reg_write_reg_wait
...
The callback .emit_reg_write_reg_wait was missing for vcn decode
which resulted in a kernel oops.
Signed-off-by: Tom St Denis <tom.stdenis@amd.com >
Reviewed-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-15 13:44:19 -05:00
Alex Deucher
f58b85e3ec
drm/amdgpu/vcn1: add emit_reg_write_reg_wait ring callback
...
This adds support for writing and reading back using the
helper since the engines doesn't have a oneshot packet.
Reviewed-by: Huang Rui <ray.huang@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-15 13:43:15 -05:00
Oak Zeng
3760f76cbe
drm/amdgpu: Move IH clientid defs to separate file
...
This is preparation for sharing client ID definitions
between amdgpu and amdkfd
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-03-14 15:16:35 -05:00