Rex Zhu
6fa3ef3a9c
drm/amd/pp: Delete debug info when set power_profile_mode
...
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-02-19 14:19:05 -05:00
Christian König
6b034e25c8
drm/amdgpu: limit the VM address space with older VCE FW versions
...
Older VCE FW versions are buggy and can't work with 48bit address
spaces.
RFC: Should we limit the address space or just reject loading the older
VCE firmware?
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 >
2018-02-19 14:19:05 -05:00
Alex Deucher
3fa203af4b
drm/amdgpu: set DRIVER_ATOMIC flag early
...
The atomic debugfs stuff gets created in drm_dev_alloc()
but this gets called before we've enumerated all of our
IPs, so move the DRIVER_ATOMIC flag setting to fix that.
Since DRIVER_ATOMIC is a driver flag it's currently global
to the driver so setting it affects all GPUs driven by the
driver. Unfortunately, not all GPUs support atomic. Warn
the user if that is the case.
This is the same as our current behavior, but at least the
atomic debugfs stuff gets created now.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:19:03 -05:00
Alex Deucher
367e66870e
drm/amdgpu: remove DC special casing for KB/ML
...
It seems to be working now.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=102372
Reviewed-by: Mike Lothian <mike@fireburn.co.uk >
Reviewed-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:19:02 -05:00
Christian König
4584312d38
drm/amdgpu: fill only the lower range with ATS entries v2
...
At least on x86-64 the upper range is purely used by the kernel,
avoid creating any ATS mappings there as security precaution and to
allow proper page fault reporting in the upper range.
v2: remove unused variable
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:55 -05:00
Christian König
44e1baeb63
drm/amdgpu: revert "Add support for filling a buffer with 64 bit value"
...
This reverts commit 7bdc53f925 and commit
330df03b3a .
Neither are needed any more.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:55 -05:00
Christian König
8febe617d8
drm/amdgpu: revert "Add a parameter to amdgpu_bo_create()"
...
This reverts commit 2046d46db9 .
Not needed any more.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:54 -05:00
Christian König
4c77edbf74
drm/amdgpu: drop root shadow sync
...
Completely pointless, it is the same reservation object as the root PD
anyway.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Roger He <Hongbo.He@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:54 -05:00
Christian König
13307f7e1d
drm/amdgpu: revert "drm/amdgpu: use AMDGPU_GEM_CREATE_VRAM_CLEARED for VM PD/PTs" v2
...
Using the standard clear turned out to be to inflexible.
First of all it is executed on the system queue, together with buffer
moves instead on the per VM queue.
And second we need to fill in the page tables with more than just zero.
We keep the new functionality of initializing the PDEs/PTEs with ATC
routing entries intact.
v2: update commit message.
Signed-off-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:53 -05:00
Christian König
4383736340
drm/amdgpu: fix vcn_v1_0_dec_ring_emit_wreg
...
That got mixed up with the encode ring 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 >
2018-02-19 14:18:52 -05:00
Alex Deucher
0d35bc78ec
drm/amdgpu/pm: rework the hwmon visibility settings
...
Previously we just always exposed everything for asics
supported by powerplay. Make it a bit more fine grained.
In practice this shouldn't change anything.
Acked-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Rex Zhu <Rex.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:52 -05:00
Alex Deucher
21a381f79e
drm/amdgpu/pp: remove the get_temperature API
...
This is also supported with the read_sensor API and there
were no more users of the get_temperature API.
Acked-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Rex Zhu <Rex.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:51 -05:00
Alex Deucher
71c9b9adad
drm/amdgpu/pm: use read_sensor API to get temperature
...
Rather than using the amdgpu_dpm_get_temperature. Both
provide access to the temperature.
Acked-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Rex Zhu <Rex.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:51 -05:00
Alex Deucher
2976fc2622
drm/amdgpu/pm: report gpu average power via hwmon API
...
Expose power via hwmon.
Acked-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Rex Zhu <Rex.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:50 -05:00
Alex Deucher
2bd376bf8f
drm/amdgpu/pm: report gpu voltages via hwmon API
...
Expose vddgfx and vddnb via hwmon.
Acked-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Rex Zhu <Rex.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:49 -05:00
Alex Deucher
5ec36e2d70
drm/amdgpu/pm: handle fan properly when card is powered down
...
Return an error if the user tried to check or set the fan
parameters while the card is powered down (e.g., on a PX/HG
system for example). This makes the fan consistent with the
temperature stuff.
Acked-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Rex Zhu <Rex.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:49 -05:00
Christian König
6f05c4e9d1
drm/amdgpu: move static CSA address to top of address space v2
...
Move the CSA area to the top of the VA space to avoid clashing with
HMM/ATC in the lower range on GFX9.
v2: wrong sign noticed by Roger, rebase on CSA_VADDR cleanup, handle VA
hole on GFX9 as well.
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Acked-by: Monk Liu <monk.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:48 -05:00
Alex Deucher
f75a9a5d6c
drm/amdgpu/soc15: don't abuse IP soft reset for adapter reset
...
The IP soft reset interface is for per IP reset but it was
being abused for adapter reset on soc15 asics. Adjust the
interface to make it explicit.
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:31 -05:00
Alex Deucher
e7f9ccb437
drm/amdgpu/psp: use a function pointer structure
...
This way we can make all of the IP specific functions static,
and we only need a single entry point into the PSP IP modules.
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:31 -05:00
Christian König
97745f6852
drm/amdgpu: consistently use AMDGPU_CSA_VADDR
...
Instead of repeating this multiple times.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Acked-by: Monk Liu <monk.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:30 -05:00
Christian König
a3e9a15a25
drm/amdgpu: apply top reserved VA space to pre Vega10 as well
...
Reserve VA space at the top for older generations as well.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Acked-by: Monk Liu <monk.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:30 -05:00
Christian König
18d09e63e0
drm/amdgpu: reduce reserved VA size
...
1MB should be more than enough, currently we use about 8K.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Acked-by: Monk Liu <monk.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:29 -05:00
Samuel Li
734dd01d56
drm/amdgpu: rename amdgpu_crtc_idx_to_irq_type
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:29 -05:00
Samuel Li
aa8e286a8a
drm/amdgpu: rename amdgpu_get_crtc_scanoutpos
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:28 -05:00
Samuel Li
0c16443a1b
drm/amdgpu: rename amdgpu_crtc_scaling_mode_fixup
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:27 -05:00
Samuel Li
166140fb24
drm/amdgpu: rename amdgpu_update_display_priority
...
Rename as amdgpu_display_update_priority for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:27 -05:00
Samuel Li
3dc9b1ce80
drm/amdgpu: rename amdgpu_modeset_create_props
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:26 -05:00
Samuel Li
4d4772f6ab
drm/amdgpu: rename amdgpu_user_framebuffer_create
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:26 -05:00
Samuel Li
9da3f2d934
drm/amdgpu: rename amdgpu_framebuffer_init
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:25 -05:00
Samuel Li
e0b5b5ec0b
drm/amdgpu: rename amdgpu_ddc_probe
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:24 -05:00
Samuel Li
50af9193b3
drm/amdgpu: rename amdgpu_print_display_setup
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:24 -05:00
Samuel Li
775a836425
drm/amdgpu: rename amdgpu_crtc_set_config
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:23 -05:00
Samuel Li
0cd1193236
drm/amdgpu: rename amdgpu_crtc_page_flip_target
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:23 -05:00
Samuel Li
3a05dc000a
drm/amdgpu: rename static functions in amdgpu_display.c
...
Add display to the name for consistency.
Signed-off-by: Samuel Li <Samuel.Li@amd.com >
Acked-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-02-19 14:18:22 -05:00
Christian König
2ee150cda7
drm/amdgpu: remove now superflous *_hdp operation
...
All HDP invalidation and most flush can now be replaced by the generic
ASIC function.
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:22 -05:00
Christian König
1b9d17db1c
drm/amdgpu: fallback to generic HDP operation
...
When ring special operations aren't available we can fallback to the
generic ASIC operations.
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:21 -05:00
Christian König
698825653f
drm/amdgpu: add optional ring to *_hdp callbacks
...
This adds an optional ring to the invalidate_hdp and flush_hdp
callbacks. If the ring isn't specified or the emit_wreg function not
available the HDP operation will be done with the CPU otherwise by
writing on the ring.
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:20 -05:00
Rex Zhu
e3933f26b6
drm/amd/pp: Add edit/commit/show OD clock/voltage support in sysfs
...
when cat pp_od_clk_voltage it show
OD_SCLK:
0: 300Mhz 800 mV
1: 466Mhz 818 mV
2: 751Mhz 824 mV
3: 1019Mhz 987 mV
4: 1074Mhz 1037 mV
5: 1126Mhz 1087 mV
6: 1169Mhz 1137 mV
7: 1206Mhz 1150 mV
OD_MCLK:
0: 300Mhz 800 mV
1: 1650Mhz 1000 mV
echo "s/m level clock voltage" to change
sclk/mclk's clock and voltage
echo "r" to restore default value.
echo "c" to commit the user setting.
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-02-19 14:18:17 -05:00
Alex Deucher
9950cda2a0
drm/amdgpu: drop the drm irq pre/post/un install callbacks
...
The preinstall callback didn't do anything because not all
of the IPs were initialized when it was called.
Move the postinstall setup into sequence in the driver.
The uninstall callback disabled all interrupt source, but
it got called too late in the driver sequence and caused problems
with IPs who already freed the relevant data structures. Move
the call into the right place in the driver sequence.
Acked-by: Christian König <christian.koenig@amd.com >
Acked-by: Harry Wentland <harry.wentland@amd.com >
Tested-By: Mikita Lipski <mikita.lipski@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:16 -05:00
Hawking Zhang
f797dd5184
drm/amdgpu: include new ip and ip offset headers
...
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:13 -05:00
Andrey Grodzovsky
7cce958431
drm/amdgpu: Use new TTM flag to avoid OOM triggering.
...
Avoid OOM on syatem pages allocations.
v2:
Remove modeprobe parameter, make this behaviour the only option.
v3:
Move setting no_retry flag into amdgpu_ttm_init.
Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:12 -05:00
Christian König
250b422833
drm/amdgpu: add PASID mapping for GMC v9
...
This way we can see the PASID in VM faults.
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-02-19 14:18:11 -05:00
Christian König
86ea2ff698
drm/amdgpu: add PASID mapping for GMC v8
...
This way we can see the PASID in VM faults.
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-02-19 14:18:11 -05:00
Christian König
0da63bbb5b
drm/amdgpu: add PASID mapping for GMC v7
...
This way we can see the PASID in VM faults.
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-02-19 14:18:10 -05:00
Christian König
9096d6e51a
drm/amdgpu: implement gmc_v9_0_emit_flush_gpu_tlb
...
Unify tlb flushing for gmc v9.
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:09 -05:00
Christian König
5518625d6a
drm/amdgpu: implement gmc_v8_0_emit_flush_gpu_tlb
...
Unify tlb flushing for gmc v8.
v2: handle UVD v6 as well
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:09 -05:00
Christian König
d9a701ccd6
drm/amdgpu: implement gmc_v7_0_emit_flush_gpu_tlb
...
Unify tlb flushing for gmc v7.
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:08 -05:00
Christian König
4fef88bd00
drm/amdgpu: implement gmc_v6_0_emit_flush_gpu_tlb
...
Unify tlb flushing for gmc v6.
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:08 -05:00
Christian König
7ef11047c1
drm/amdgpu: add new amdgpu_gmc_emit_flush_gpu_tlb callback
...
Add a new GMC function to unify vm flushing.
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:07 -05:00
Christian König
0b5f83a375
drm/amdgpu: wire up emit_wreg for VCN v1
...
Needed for vm_flush unification.
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2018-02-19 14:18:07 -05:00