Austin Kim
9c9284f9ce
drm/amdgpu: Move null pointer dereference check
...
Null pointer dereference check should have been checked,
ahead of below routine.
struct amdgpu_device *adev = hwmgr->adev;
With this commit, it could avoid potential NULL dereference.
Signed-off-by: Austin Kim <austindh.kim@gmail.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-30 15:37:17 -05:00
Petr Cvek
20c14ee135
drm/amdgpu: Fix undefined dm_ip_block for navi12
...
There is missing "if defined" CONFIG_DRM_AMD_DC block for non DC
configurations. This will cause link error. The patch is fixing that.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=110979
Signed-off-by: Petr Cvek <petrcvekcz@gmail.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-30 15:37:17 -05:00
Aaron Liu
537e3bbfee
drm/amdgpu: fix no interrupt issue for renoir emu (v2)
...
In renoir's vega10_ih model, there's a security change in mmIH_CHICKEN
register, that limits IH to use physical address (FBPA, GPA) directly.
Those chicken bits need to be programmed first.
Signed-off-by: Aaron Liu <aaron.liu@amd.com >
Reviewed-by: Huang Rui <ray.huang@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-30 15:37:17 -05:00
Aaron Liu
7596625588
drm/amdgpu: update IH_CHICKEN in oss 4.0 IP header for VG/RV series
...
In Renoir's emulator, those chicken bits need to be programmed.
Signed-off-by: Aaron Liu <aaron.liu@amd.com >
Reviewed-by: Huang Rui <ray.huang@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-30 15:37:17 -05:00
Aaron Liu
ea1fc5e1ff
drm/amd/powerplay: SMU_MSG_OverridePcieParameters is unsupport for APU
...
For apu, SMU_MSG_OverridePcieParameters is unsupport.
So return directly in smu_override_pcie_parameters function.
Signed-off-by: Aaron Liu <aaron.liu@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Reviewed-by: Evan Quan <evan.quan@amd.com >
Acked-by: Huang Rui <ray.huang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-30 15:37:17 -05:00
Andrey Grodzovsky
0b2d2c2eec
drm/amdgpu: Handle job is NULL use case in amdgpu_device_gpu_recover
...
This should be checked at all places job is accessed.
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 >
2019-08-30 15:02:39 -05:00
Roman Li
e1c14c4339
drm/amdgpu: Enable DC on Renoir
...
Enable DC support for renoir.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Roman Li <Roman.Li@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:34 -05:00
Roman Li
542816ff16
drm/amd/display: Add DCN2.1 changes to DML
...
Hook up the DML changes for renoir.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Roman Li <Roman.Li@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:34 -05:00
Roman Li
f82effc4e5
drm/amd/display: Correct order of RV family clk managers for Renoir
...
Need to check for renoir first.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Roman Li <Roman.Li@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
07842d54b9
drm/amd/display: add Renoir to kconfig
...
Add a kconfig option to enable renoir.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
25f9955b15
drm/amd/display: build dcn21 blocks
...
Enable the building of dcn21 support.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
aa91916770
drm/amd/display: add dcn21 core DC changes
...
Add missing parameters, to make dcn21 compile
without errors
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
dd44a63386
drm/amd/display: add dal_asic_id for renoir
...
Add the rev id for renoir.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
1b2c7b2c6d
drm/amd/display: call update_bw_bounding_box
...
call update_bw_bounding_box in DC construct
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
30221ad875
drm/amd/display: Handle Renoir in amdgpu_dm (v2)
...
Hook up renoir support to KMS.
v2: squash in "Fixes for Renoir in amdgpu_dm"
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
e22ece54ee
drm/amd/display: Handle Renoir in DC
...
add Renoir DCN version in DC and handle it
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
aad37f2606
drm/amd/display: Fix register names
...
rename VM_CONTEXT0 to MMVM_CONTEXT0 as that is the name defined in
the register files
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
b04641a3f4
drm/amd/display: Add Renoir DML
...
DML provides the display configuration validation as provided
by the hw teams.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
64ce485c48
drm/amd/display: Add Renoir GPIO
...
Misc display related configuration details.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
6f4e6361c3
drm/amd/display: Add Renoir resource (v2)
...
Manages the renoir display resources (crtcs, phys, plls, etc.).
v2: rebase (Alex)
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
4edb6fc918
drm/amd/display: Add Renoir clock manager
...
Controls display clocks and interfaces with powerplay for
clock and power requirements.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
6f451b60e0
drm/amd/display: Add Renoir Hubbub (v2)
...
Controls the display hw's interface to memory.
v2: rebase (Alex)
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
35b82ba8f2
drm/amd/display: Add Renoir hubbub registers list
...
These are the registers used to program the hubbub hw.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
eced51f9ba
drm/amd/display: Add hubp block for Renoir (v2)
...
This provides the interface to memory for the display hw.
v2: minor cleanup (Alex)
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
1e768c5b0f
drm/amd/display: Add Renoir irq_services (v2)
...
Provides the interface to configure display interrrupts on renoir.
v2: rebase fix (Alex)
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
82f9146832
drm/amd/display: Add pp_smu functions for Renoir
...
This defines the interface for communicating requirements
between DC and powerplay.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:33 -05:00
Bhawanpreet Lakha
ab61831227
drm/amd/display: Add Renoir hw_seq register list
...
These are the registers used to for the hw sequences
for modesetting.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Bhawanpreet Lakha
ff54ecb095
drm/amd/display: Add Renoir clock registers list
...
These are the registers used to program the clock hw.
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Bhawanpreet Lakha
b593bce59b
drm/amd/display: Add Renoir registers (v3)
...
add registers for dcn, clk, and renoir ip offsets
v2: header cleanup (Alex)
v3: Add DPCS registers (Hersen)
Acked-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Prike Liang
eee3258e8f
drm/amd/powerplay: add the interface for getting ultimate frequency v3
...
add the get_dpm_ultimate_freq for supporting different swSMU.
-v2:
Handle the unsupported clock type and read smc message failed case and return error code.
Move the smu12 uclk frequency retrieved logic to renoir ppt.
-v3:
Use goto clause to handle invalidate clk index.
Add the limited tag for smu_get_dpm_uclk to avoid other likewise interface introduced.
Signed-off-by: Prike Liang <Prike.Liang@amd.com >
Reviewed-by: Evan Quan <evan.quan@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Prike Liang
296ae1038d
drm/amd/powerplay: enable populate DPM clocks table for swSMU APU
...
Should populate DPM clocks tables during hw init,otherwise will
suffer from invalidate table.
Signed-off-by: Prike Liang <Prike.Liang@amd.com >
Reviewed-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Aaron Liu <aaron.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Prike Liang
ffe61cd642
drm/amd/powerplay: regards the APU always enable the dpm feature mask
...
There is no driver message to enable/disable feature mask for APU.
For the sake of APU reusing swSMU interface and assume APU supports all
the feature.
Signed-off-by: Prike Liang <Prike.Liang@amd.com >
Reviewed-by: Evan Quan <evan.quan@amd.com >
Reviewed-by: Aaron Liu <aaron.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Prike Liang
334ffd0daa
drm/amdgpu: Initialize and update SDMA power gating
...
Init SDMA HW base configuration and enable idle INT for rn.
Signed-off-by: Prike Liang <Prike.Liang@amd.com >
Reviewed-by: Aaron Liu <aaron.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Tianci.Yin
12842d02c7
drm/amdgpu/psp: keep TMR in visible vram region for SRIOV
...
Fix compute ring test failure in sriov scenario.
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Tianci.Yin <tianci.yin@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Tianci.Yin
994dcfaa7e
drm/amdgpu: keep the stolen memory in visible vram region
...
stolen memory should be fixed in visible region.
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Tianci.Yin <tianci.yin@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Colin Ian King
92ead9fa6f
drm/amdgpu: fix spelling mistake "jumpimng" -> "jumping"
...
There is a spelling mistake in a DRM_DEBUG_DRIVER debug message.
Fix it.
Signed-off-by: Colin Ian King <colin.king@canonical.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Alex Deucher
53fd9b5ae8
drm/amdgpu/virtual_dce: drop error message in hw_init
...
No need to add new asic cases. This is a sw display
implementation, so just drop the error message so when
we add new asics, all we have to do is add the virtual
dce IP module.
Reviewed-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Jean Delvare
77efe48a72
drm/amdgpu/si: fix ASIC tests
...
Comparing adev->family with CHIP constants is not correct.
adev->family can only be compared with AMDGPU_FAMILY constants and
adev->asic_type is the struct member to compare with CHIP constants.
They are separate identification spaces.
Signed-off-by: Jean Delvare <jdelvare@suse.de >
Fixes: 62a3755341
("drm/amdgpu: add si implementation v10")
Cc: Ken Wang <Qingqing.Wang@amd.com >
Cc: Alex Deucher <alexander.deucher@amd.com >
Cc: "Christian König" <christian.koenig@amd.com >
Cc: "David (ChunMing) Zhou" <David1.Zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Jean Delvare
1cdd229bec
drm/amd/amdgpu: hide voltage and power sensors on SI and KV parts
...
The driver does not support these sensors yet and there is no point in
creating sysfs attributes which will always return an error.
Signed-off-by: Jean Delvare <jdelvare@suse.de >
Cc: Alex Deucher <alexander.deucher@amd.com >
Cc: "Christian König" <christian.koenig@amd.com >
Cc: "David (ChunMing) Zhou" <David1.Zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Monk Liu
e352625796
drm/amdgpu: introduce vram lost for reset (v2)
...
for SOC15/vega10 the BACO reset & mode1 would introduce vram lost
in high end address range, current kmd's vram lost checking cannot
catch it since it only check very ahead visible frame buffer
v2:
cover NV as well
Signed-off-by: Monk Liu <Monk.Liu@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Xiaojie Yuan
514ad79103
drm/amd/powerplay: enable jpeg powergating for navi1x
...
jpeg pg depends on vcn pg
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Xiaojie Yuan
5ef3b8acdc
drm/amdgpu: enable athub powergating for navi12
...
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:32 -05:00
Xiaojie Yuan
c1653ea05b
drm/amdgpu: enable vcn powergating for navi12
...
Signed-off-by: Xiaojie Yuan <xiaojie.yuan@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-29 15:52:31 -05:00
Hawking Zhang
317f9cc97b
drm/amdgpu: correct in_suspend setting for navi series
...
in_suspend flag should be set in amdgpu_device_suspend/resume in pairs,
instead of gfx10 ip suspend/resume function.
Signed-off-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-29 15:52:26 -05:00
Aaron Liu
41940ff50f
drm/amdgpu: fix GFXOFF on Picasso and Raven2
...
For picasso(adev->pdev->device == 0x15d8)&raven2(adev->rev_id >= 0x8),
firmware is sufficient to support gfxoff.
In commit 98f58ada2d
, for picasso&raven2,
return directly and cause gfxoff disabled.
Fixes: 98f58ada2d
("drm/amdgpu/gfx9: update pg_flags after determining if gfx off is possible")
Reviewed-by: Huang Rui <ray.huang@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Aaron Liu <aaron.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: stable@vger.kernel.org
2019-08-27 12:25:20 -05:00
Kai-Heng Feng
317a3aaef9
drm/amdgpu: Add APTX quirk for Dell Latitude 5495
...
Needs ATPX rather than _PR3 to really turn off the dGPU. This can save
~5W when dGPU is runtime-suspended.
Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: stable@vger.kernel.org
2019-08-27 12:24:40 -05:00
Evan Quan
83e09d5bdd
drm/amd/powerplay: correct Vega20 dpm level related settings
...
Correct the settings for auto mode and skip the unnecessary
settings for dcefclk and fclk.
Signed-off-by: Evan Quan <evan.quan@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-27 12:23:40 -05:00
Aaron Liu
c072b0c24e
drm/amdgpu: fix GFXOFF on Picasso and Raven2
...
For picasso(adev->pdev->device == 0x15d8)&raven2(adev->rev_id >= 0x8),
firmware is sufficient to support gfxoff.
In commit 98f58ada2d
, for picasso&raven2,
return directly and cause gfxoff disabled.
Fixes: 98f58ada2d
("drm/amdgpu/gfx9: update pg_flags after determining if gfx off is possible")
Reviewed-by: Huang Rui <ray.huang@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Aaron Liu <aaron.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-27 10:38:40 -05:00
Kai-Heng Feng
c7b33cfb3c
drm/amdgpu: Add APTX quirk for Dell Latitude 5495
...
Needs ATPX rather than _PR3 to really turn off the dGPU. This can save
~5W when dGPU is runtime-suspended.
Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-27 10:09:12 -05:00
YueHaibing
b202c0ff18
drm/amd/display: remove unused function setFieldWithMask
...
After commit a9f54ce3c6
("drm/amd/display: Refactoring VTEM"),
there is no caller in tree.
Reported-by: Hulk Robot <hulkci@huawei.com >
Reviewed-by: Harry Wentland <harry.wentland@amd.com >
Signed-off-by: YueHaibing <yuehaibing@huawei.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2019-08-27 10:09:12 -05:00