Christian König
789f3317ed
drm/amdgpu: further optimize amdgpu_vm_handle_moved
...
Splice the moved list to a local one to avoid taking the lock over and
over again.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-24 10:07:53 -05:00
Christian König
91ccdd24a1
drm/amdgpu: cleanup amdgpu_vm_validate_pt_bos v2
...
Use list_for_each_entry_safe here.
v2: Drop the optimization, it doesn't work as expected.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-24 10:07:53 -05:00
Christian König
af4c0f650b
drm/amdgpu: rework VM state machine lock handling v2
...
Only the moved state needs a separate spin lock protection. All other
states are protected by reserving the VM anyway.
v2: fix some more incorrect cases
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 >
2018-05-24 10:07:52 -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
61c8e90d96
drm/amdgpu: Enable VCN static PG by default on RV
...
Enable static VCN powergating by default on Raven.
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
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
79953a60e4
drm/amdgpu: Enable VCN CG by default on RV
...
Enable VCN clockgating by default on Raven.
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
Rex Zhu
ac06b4cfd7
drm/amdgpu: Add SOC15_WAIT_ON_RREG macro define
...
Add new macro to wait on a register field to be a specific
value.
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 00:18:02 -05:00
Rex Zhu
8dbb8cdf52
drm/amdgpu: Add CG/PG flags for VCN
...
Define new clock and powergating flags for VCN block.
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 00:16:57 -05:00
Rex Zhu
ca0b949463
drm/amd/pp: Add smu support for VCN powergating on RV
...
Add the powerplay callback for powergating VCN (same
as UVD and VCE).
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 00:15:52 -05:00
Rex Zhu
34319b329f
drm/amdgpu: skip CG for VCN when late_init/fini
...
VCN clockgating is handled manually like VCE and UVD.
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 00:15:44 -05:00
Rex Zhu
e6ee925b79
drm/amd/pp: fix a couple locking issues
...
We should return unlock on the error path
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 00:15:37 -05:00
Rex Zhu
63e138abf0
drm/amd/pp: Fix static checker warning
...
error: uninitialized symbol 'xxxx'
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 00:15:13 -05:00
Alex Deucher
e1d1a7729a
drm/amdgpu/gmc9: disable partial wr rmw if ECC is not enabled
...
The vbios mistakenly sets this bit on some boards without ECC.
This can lead to reduced performance in some workloads. Disable
the bit if the board does not have ECC.
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-23 23:51:22 -05:00
Alex Deucher
1ca2393b73
drm/amdgpu: add a df 1.7 implementation of enable_ecc_force_par_wr_rmw
...
Needed for proper memory setup depending on whether ECC is
enabled on a particular board.
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-23 23:51:21 -05:00
Alex Deucher
8f9b2e5061
drm/amdgpu: add new DF callback for ECC setup
...
The ForceParWrRMW setting needs to be enabled for ECC, but disabled
when ECC is not enabled.
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-23 23:51:21 -05:00
Alex Deucher
9963104586
drm/amdgpu: add new DF 1.7 register defs
...
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-23 23:51:20 -05:00
Andrey Grodzovsky
bf83060408
Remove calls to suspend/resume atomic helpers from amdgpu_device_gpu_recover. (v2)
...
First of all it's already being called from the display code from amd_ip_funcs.suspend/resume hooks.
Second of all, the place in amdgpu_device_gpu_recover it's being called is wrong for GPU stalls since
it is called BEFORE we cancel and force completion of all in flight jobs which were not yet processed.
So, as Bas pointed in the ticket we will try to wait for fence in amdgpu_pm_compute_clocks but the pipe
is hanged so we end up in deadlock.
v2: remove unused variable
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106500
Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com >
Reviewed-by: Harry Wentland <harry.wentland@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-23 23:51:20 -05:00
Leo Liu
def139037b
drm/amdgpu: fix insert nop for UVD4.2 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:32 -05:00
Leo Liu
0232e30623
drm/amdgpu: fix insert nop for UVD5 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:32 -05:00
Leo Liu
1aac3c9180
drm/amdgpu: fix insert nop for UVD6 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
Leo Liu
cbb7a23911
drm/amdgpu: fix insert nop for UVD7 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
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
Rex Zhu
cd3cb7c087
drm/amd/pp: Fix build warning in vegam
...
warning: missing braces around initializer [-Wmissing-braces]
Acked-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-18 16:08:30 -05:00
Mikita Lipski
5326c4525d
drm/amd/display: Clear connector's edid pointer
...
Clear connector's edid pointer on coonnector update, when unplugging
the display.
Fix poison EDID when hotplugging on previously used connector.
Signed-off-by: Mikita Lipski <mikita.lipski@amd.com >
Reviewed-by: Harry Wentland <Harry.Wentland@amd.com >
Cc: stable@vger.kernel.org
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:30 -05:00
Anthony Koo
9fcab85c58
drm/amd/display: fix memory leaks
...
Signed-off-by: Anthony Koo <Anthony.Koo@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:30 -05:00
Eric Bernstein
f0cd0a346d
drm/amd/display: DCN1 link encoder
...
Create DCN1 link encoder files and update AUX and HPD register access.
Signed-off-by: Eric Bernstein <eric.bernstein@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:29 -05:00
Nikola Cornij
a944744ba5
drm/amd/display: Clear underflow status for debug purposes
...
We want to keep underflow sticky bit on for the longevity tests outside
of test environment. For debug purposes it is, however, useful to clear
underflow status after the test that caused it so that the following
tests are not affected. This change fullfils both requirements by clearing
the underflow only from within Windows or Diags test environment.
Signed-off-by: Nikola Cornij <nikola.cornij@amd.com >
Reviewed-by: Nikola Cornij <Nikola.Cornij@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:29 -05:00
Anthony Koo
dab911d535
drm/amd/display: fix bug with index check
...
Signed-off-by: Anthony Koo <Anthony.Koo@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:28 -05:00
Anthony Koo
6474b2824d
drm/amd/display: Add fullscreen transitions to log
...
Signed-off-by: Anthony Koo <Anthony.Koo@amd.com >
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:28 -05:00
Jun Lei
109ece8d43
drm/amd/display: constify a few dc_surface_update fields
...
Signed-off-by: Jun Lei <Jun.Lei@amd.com >
Reviewed-by: Jun Lei <Jun.Lei@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:28 -05:00
Xingyue Tao
8fc06ebc2b
drm/amd/display: Only limit VSR downscaling when actually downscaling
...
Signed-off-by: Xingyue Tao <xingyue.tao@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:27 -05:00
Samson Tam
eb815442e8
drm/amd/display: don't create new dc_sink if nothing changed at detection
...
Signed-off-by: Samson Tam <Samson.Tam@amd.com >
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:27 -05:00
Anthony Koo
5103c56885
drm/amd/display: use macro for logs
...
Signed-off-by: Anthony Koo <Anthony.Koo@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:27 -05:00
Anthony Koo
66dec27a98
drm/amd/display: Fix up dm logging functionality
...
Signed-off-by: Anthony Koo <Anthony.Koo@amd.com >
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:26 -05:00
Dmytro Laktyushkin
cba5e8708e
drm/amd/display: update dml to allow sync with DV
...
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:26 -05:00
Nikola Cornij
a3cb1c1c8e
drm/amd/display: Log DTN only after the atomic commit in Diag
...
Also print HUBP info only if pipe enabled. This fixes having different
DTN logs for different test sequences.
Signed-off-by: Nikola Cornij <nikola.cornij@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:26 -05:00
Yue Hin Lau
07049507fd
drm/amd/display: disable mpo if brightness adjusted
...
Signed-off-by: Yue Hin Lau <Yuehin.Lau@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:25 -05:00
Xingyue Tao
3f460907be
drm/amd/display: Add dc cap to restrict VSR downscaling src size
...
- Adds int max_downscale_src_width in dc struct
- Checks and does not support if downscale size is more than 4k (width > 3840)
Signed-off-by: Xingyue Tao <xingyue.tao@amd.com >
Reviewed-by: Charlene Liu <Charlene.Liu@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:25 -05:00
Dmytro Laktyushkin
7ea034ce81
drm/amd/display: fix a 32 bit shift meant to be 64 warning
...
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:24 -05:00
Dmytro Laktyushkin
a21ddec61c
drm/amd/display: fix 31_32_fixpt shift functions
...
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com >
Reviewed-by: Eric Yang <eric.yang2@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:24 -05:00
Eric Bernstein
6b8e1eb7c6
drm/amd/display: Update HW sequencer initialization
...
Signed-off-by: Eric Bernstein <eric.bernstein@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:24 -05:00
Charlene Liu
3ba43a5992
drm/amd/display: underflow/blankscreen recovery
...
[Description]
for any reason, if driver detects HUBP underflow,
if a debug option enabled to enable recovery.
it will kick in a sequence of recovery.
Signed-off-by: Charlene Liu <charlene.liu@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:23 -05:00
Dmytro Laktyushkin
0002d3ac8a
drm/amd/display: truncate scaling ratios and inits to 19 bit precision
...
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:23 -05:00
Dmytro Laktyushkin
ab9c2062d9
drm/amd/display: add fixed point fractional bit truncation function
...
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:23 -05:00
Anthony Koo
e8838df1cb
drm/amd/display: Make DisplayStats work with just DC DisplayStats minor
...
Remove dependency on the old FREESYNC_SW_STATS log mask used by DAL2
Also rename from profiling to displaystats
Signed-off-by: Anthony Koo <Anthony.Koo@amd.com >
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:22 -05:00
Dmytro Laktyushkin
f3ba7a2fd1
drm/amd/display: inline more of fixed point code
...
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:22 -05:00
Dmytro Laktyushkin
eb0e515464
drm/amd/display: get rid of 32.32 unsigned fixed point
...
32.32 is redundant, 31.32 does everything we use 32.32 for
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com >
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:21 -05:00
Anthony Koo
b79655c37b
drm/amd/display: Cleanup unused SetPlaneConfig
...
Signed-off-by: Anthony Koo <Anthony.Koo@amd.com >
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-05-18 16:08:21 -05:00